Jump to content

[1.8+] Real Fuels


NathanKell

Recommended Posts

Hey Nathan, do you get the feeling that the volume utilization is a little too high with stretchy tanks, particularly when using really wide tanks? My Saturn-IC is about 10m too short at the correct mass, and by attempt at building the Nova GD-B concept ended up with all its tanks being quite a bit shorter than they should have been. A lot of these tanks look like they'd have to have really, really sharp corners to make use of the amount of volume they're taking up. Would it be possible to have volume utilization dynamically vary with tank length and radius, at least for stretchy tanks?

Link to comment
Share on other sites

Quite possible. I have not yet gone back over stretchies to try to get accurate volume utilization since I first determined a KVU as ~5L (utilization *should* be approx 80% of the total volume of the cylinder). Could definitely use another pass. Also, yes, it's very possible to set volume to something nonlinear in ST, although I would like to then also add a tweak such that basemass and tank mass isn't linear vs tank volume.

For the case of a stretchytank where length > diameter * 2, in the usual usage of bipropellant tankage, it can be modeled (roughly!) as two capsule tanks of radius diamater/2 and sidelength (length - diameter*2) * 0.5. That assumes there is no wasted mounting space above or below the tank (a good assumption for KSP with those ridiculous engine mounts) and no wasted space for skin (not a good assumption, but ok for a rough model). It also assumes that fuel and oxidizer take up the same volume (a *bad* assumption where LOX is concerned but not far wrong for kerolox or hypergolics). It is also a bad assumption if other resources (like hydrazine or nitrogen) are kept in the tank, but there's so little of that vs. the main fuels that it's again ok for rough modeling.

Anyway, close enough. The problem is modeling usable pressure volume when length < diameter * 2. At that point, perhaps divide the diameter by 3 and calculate again, and then multiply by 7? And recurse as necessary? Sound reasonable?

That said, none of that should fix the issues you're running into, since S-IC and Nova have relatively-normal-aspect-ratio tanks, which means *on the whole* my utilization is too high.

Link to comment
Share on other sites

Honestly, the way utilization gets handled with the current stretchy tanks it seems less like there are a pair of capsule tanks in there and more like super-sized versions of Cluster's Last Stand are hiding in there based on the utilization. I'm honestly not sure if the math is right, since I only barely glanced at the code, all I know is that my attempt at a Saturn V/4-260 looks awfully squat. Also, the KJR pre-release doesn't like it very much; the solids pop off on the pad, but that's another matter entirely.

Link to comment
Share on other sites

Question: does LH2 and LO2 still boil-off, and is there a part like a 'cryocooler' that stops boil-off with use of electrical power?

Yes and yes. Except that I think you can specify the resource. There is a radiator part with RF that works, I think.... it looks bland and textureless so I used its config as the basis for the radiator that zzz made for the interstellar mod.

If you download that part, you can use this config for it:

The sensor code is redundant if you have Deadly Re-entry. I stuck it in there to debug how well the part was dissipating heat.

Note that resource is configurable.... even optional IIRC


@PART[radiator1]:Final
{
@mass = 0.025
MODULE
{
name = ModuleHeatPump
heatTransfer = 50
heatDissipation = 5000
RESOURCE
{
name = ElectricCharge
rate = 0.01666667
}
}
MODULE
{
name = ModuleEnviroSensor
sensorType = TEMP
}
}

Link to comment
Share on other sites

Ferram: that math was my suggestion/my idea of what to change it to, not what actually happens. What actually happens is I still use AncientGammoner's volume code, which is designed so that a stretchytank of the same size as a stock Rockomax tank will have the same unit capacity. I then multiply it by five.

For right now, if you want to play around, you can edit the volume multipliers in stretchy's cfg in RealFuels. Maybe try 4.8 instead of 5?

Link to comment
Share on other sites

Sorry to rehash this subject again, but I've finally figured out the cause of the SpaceX rocket instability that I've been on about for the past several pages of this thread. I (finally!) know the cause, but don't know the solution and I hope the intelligent people here can help. Instead of cluttering this thread with pictures more so than I already have, if you could take a look at this 6 picture album that explains the problem.

Link to comment
Share on other sites

yes and yes. Except that i think you can specify the resource. There is a radiator part with rf that works, i think.... It looks bland and textureless so i used its config as the basis for the radiator that zzz made for the interstellar mod.

That's what that God damn part is! Could anyone give more careful detail about how exactly it works?

Edited by TomatoSoup
Link to comment
Share on other sites

Best option: ask LazarusLuan to fix it and re-export.

Temporary fix: change the first and third numbers for both node_stack_top and node_stack_bottom until the attach nodes *are* centered in the engine.

another fix is to add and set CoMOffset in the part's cfg file which for best results requires knowing how much it's off by.

Link to comment
Share on other sites

Three historical/real life rocket design/fuel questions:

1. What advantages are there to using a hypergolic lower stage, like Proton or early Ariane rockets? Is it simply storage/handling, or is there a performance consideration?

2. Similarly, why use LH2/LOX lower stages if they have lower TWR and need bigger tanks (Space shuttle, Delta IV)?

3. I've been browsing wikipedia, and several launcher types feature solid rockets as final engines, for apogee kick or to boost a payload into an interplanetary transfer. Some of these operations, like placing satellites into geosynchronous orbit or getting an interplanetary transfer, seem like they would need a high degree of precision. How is this done with a rocket that has a fixed burn time and can't be shut off? Do computers calculate when and which direction to do the burn given the fixed burn time (something that would seem very hard to replicate in ksp?), or is precision not as important as I think it is?

Edited by andqui
Link to comment
Share on other sites

1. It's pretty much storage of the rocket and the fact that you don't need to launch the rocket immediately after it's fueled or enough LOX will boiloff to reduce the dV enough to harm the mission. There is the nice advantage that it's denser than all the other fuel types, which means that the tanks can be smaller. I don't know of any other reasons for using it.

2. Actually, I've launched a few GEO sats using kick stages way, and with the right timing you can get within 1 m/s of your target velocity. It really does just come down to figuring out where to make the fixed dV burn; for some sats I ended up not using all the dV in the stage before it, while with others I just made the payload as heavy as possible. Unfortunately, none of the maneuver node editors seem to include a "set the maneuver node to burn x dV, just change the angle and time" function, which would make it a lot easier. All that said, the payload makes the necessary corrections after burnout, and done properly there aren't that many corrections needed.

Link to comment
Share on other sites

For solid final stages or PAMs, the previous stages place the payload into a precise orbit so that the PAM or solid final stage has the exact delta-v to get it to it's final orbit. Does that make sense?

I really like the precise node mod for this. It lets you tweak your maneuver nodes exactly the way you want. You can set your dV down to the hundreths of m/s, including +/-rad and +/-norm, and you can set your burn ignition time down to the second.

Link to comment
Share on other sites

Unfortunately, none of the maneuver node editors seem to include a "set the maneuver node to burn x dV, just change the angle and time" function, which would make it a lot easier.

Basically you want to be able to lock the magnitude while you fiddle with the xyz values of the vector? There are some implementation snags but I'm sure it's possible. That's a good idea.

Link to comment
Share on other sites

Unfortunately, none of the maneuver node editors seem to include a "set the maneuver node to burn x dV, just change the angle and time" function, which would make it a lot easier. All that said, the payload makes the necessary corrections after burnout, and done properly there aren't that many corrections needed.

MJ's maneuver node editor allows you to do that if my memory serves me.

Link to comment
Share on other sites

I'm having trouble with the new Stock Engines configuration file, where the masses of the engines isn't changed when the UseRealisticMass setting is changed from true to false (or vice-versa). They always have the heavier stock masses.

Link to comment
Share on other sites

That's what that God damn part is! Could anyone give more careful detail about how exactly it works?

When you activate it, it will drain your batteries at a ferocious rate while also draining heat from whatever part it's attached to, in turn allowing the cooled part to absorb more heat from secondary parts attached to it. I've used it to cool tanks attached to engines that had a tendency to overheat and explode.

Link to comment
Share on other sites

Buddy431:

1. Download and install the *latest* RF, v4.2, from post 1 of this thread.

2. Download and place in GameData/RealFuels the *latest* StockEngines from post 2 of this thread.

3. Open GameData/RealFuels/RealSetting.cfg and find the line "useRealisticMass = true" and set "useRealisticMass = false"

If that's still causing problems let me know.

Link to comment
Share on other sites

Buddy431:

1. Download and install the *latest* RF, v4.2, from post 1 of this thread.

2. Download and place in GameData/RealFuels the *latest* StockEngines from post 2 of this thread.

3. Open GameData/RealFuels/RealSetting.cfg and find the line "useRealisticMass = true" and set "useRealisticMass = false"

If that's still causing problems let me know.

OK, I have a clean install with just real fuels v4.2 (from the first post), and the stock engine configs from post 2 from 2 days ago. If useRealisticMass = true in RealSettings.cfg (the default), the engines weigh the stock amounts at the first tech level, and then decrease in mass as the tech level rises (i.e. the LV-T30 has a mass of 1.25 at tech level 1, and decreases to 1.020 at tech level 7. The action group menu displays that it "was 1.250"

If I set useRealisticMass - false, the engines still weigh the same (i.e. the Lv-T30 weighs 1.25 at tech level 1, down to 1.020 at tech level 5). However, the Action group panel now says "was 4.000". Obviously the game is taking into account the 3.2 multiplier, but not in the correct way, I think.

Link to comment
Share on other sites

Three historical/real life rocket design/fuel questions:

1. What advantages are there to using a hypergolic lower stage, like Proton or early Ariane rockets? Is it simply storage/handling, or is there a performance consideration?

2. Similarly, why use LH2/LOX lower stages if they have lower TWR and need bigger tanks (Space shuttle, Delta IV)?

3. I've been browsing wikipedia, and several launcher types feature solid rockets as final engines, for apogee kick or to boost a payload into an interplanetary transfer. Some of these operations, like placing satellites into geosynchronous orbit or getting an interplanetary transfer, seem like they would need a high degree of precision. How is this done with a rocket that has a fixed burn time and can't be shut off? Do computers calculate when and which direction to do the burn given the fixed burn time (something that would seem very hard to replicate in ksp?), or is precision not as important as I think it is?

1) The proton rocket was originally built as an ICBM. So was the Titan II rocket that the US launched for a while, so it also used a storable fuel (as did the Titan III and Titan IV that were derived from it). When you want a rocket that can be stored in a missile silo for years at a time with minimal maintenance, but be ready to launch in minutes, liquid oxygen isn't going to cut it.

I'm not sure why the early Ariane rockets used it. They weren't, as far as I know, ever intended to be missiles. It does make a simpler engine (no igniter needed). The Ariane 5 upper stage used to deliver the ATVs to the space station uses hypergolic fuel because the cryogenic upper stage (which is more powerful, and used to launch satellites into a geostationary transfer orbit) cannot be restarted, while the storable upper stage can be.

2) LH2/LOX still does have the highest specific impulse of any fuel, so it's not unreasonable to use it as a first stage, even if it does require larger tanks. The space shuttle and Ariane 5 both have solid boosters to help provide additional thrust in the early stages of flight. The delta IV can (though doesn't necessarily) also use solid rockets to help it out. And anyway, LH2/LOX engines don't necessarily do too poorly in the thrust to weight department. The Vulcain on the Ariane 5 and the Space Shuttle Main engine are pretty comparable to the RD-180 used on the Atlas V.

3) While it's true that solid rocket motors have a fixed burn time and cannot be shut off, that's also more-or-less true for liquid fuel motors too, in that the burn profile is pre-programmed into them before launch. Real motors used on launchers are not, for the most part, like KSP motors: they generally do not have throttle ability, and are not used to fine-tune the orbit. The booster delivers the spacecraft into an approximate orbit (which is generally pretty good: they can get within a few dozen m/s of the desired velocity), and then the spacecraft itself will do the fine-tuning with much smaller motors, making course corrections as needed. Most launchers will not put a satellite into a geostationary orbit: They will put the satellite into a highly elliptical geostationary transfer orbit and let the spacecraft maneuver itself into the final orbit. This is true of interplanetary launches as well: The launcher will get the spacecraft headed in approximately the right direction, but multiple course corrections will be needed during the cruise phase.

Link to comment
Share on other sites

The masses appear to work now. One thing I did notice is that the 2.5 m nuclear engine from Nova Punch doesn't seem to like to load. It's not a huge deal to me so I just deleted the part, but something either in real fuels of the engine config file probably isn't right for that engine.

Thanks a lot for the update. That was a quick turnaround.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...