Okay. This is not directly related to actual space travel, but it is semi-related, and definitely a practical, actual problem I face. It's about Kerbal Space Program and SSTO spaceplanes. And I believe this is the place where I'm most likely to get an answer.

They need good thrust on ascent, requiring a chemical engine operating on Liquid Fuel + Oxidizer mix. Once in orbit, they switch to efficient, high ISp thermal nuclear engines, which run only on Liquid Fuel.

Sometimes, though, they arrive into orbit with some oxidizer to spare.

In real life scenario, at this point the crew would likely vent the excess oxidizer into space. The game engine doesn't allow this though. Either I burn the spare oxidizer in stochiometric ratio with liquid fuel, at the low ISp of the high-thrust chemical engine, or haul it along the whole journey with me, and this is the decision I must make, looking at curent tank contents (which will be different every time, so $m_{ship}, m_{lf}, m_{ox}$ are variables in the equation.

Using Tsiolkovski's Rocket Equation, this is as far as I got...

$$ \begin{align} &\Delta v = { {I_{sp} }\cdot {g_0}} ln {m_{full} \over m_{dry}} \\ &1) &\\ &m_{full} = m_{ship}+m_{ox}+m_{lf} \\ &m_{dry} = m_{ship}+m_{ox} \\ &I_{sp} = A \\ &2) \\ &m_{full_1} = m_{ship}+m_{ox}+m_{lf} \\ &m_{dry_1} = m_{ship}+m_{lf}-m_{ox}\cdot R \\ &I_{sp_1} = B \\ &m_{full_2} = m_{dry_1} = m_{ship}+m_{lf}-m_{ox} \cdot R \\ &m_{dry_2} = m_{ship} \\ &I_{sp_2} = A \\ \\ &\Delta v_1 > \Delta v_2 ?\\ \\ &R = 9/11 = 0.818\\ &A = 800 \\ &B = 305\\ &m_{lf} > m_{ox} \cdot R\\ \\ &\Delta v_1 = { {A }\cdot {g_0}} ln {{m_{ship}+m_{ox}+m_{lf}} \over {m_{ship}+m_{ox}}} = ln \left({{m_{ship}+m_{ox}+m_{lf}} \over {m_{ship}+m_{ox}}}\right)^{ {A }\cdot {g_0}}\\ \\ &\Delta v_2 = { { B }\cdot {g_0}} ln {{m_{ship}+m_{ox}+m_{lf}} \over { m_{ship}+m_{lf}-m_{ox}\cdot R}} + { {A }\cdot {g_0}} ln {{m_{ship}+m_{lf}-m_{ox}\cdot R} \over {m_{ship}}} \\ & = ln \left({{m_{ship}+m_{ox}+m_{lf}} \over { m_{ship}+m_{lf}-m_{ox}\cdot R}}\right)^{ { B }\cdot {g_0}} \cdot \left({{m_{ship}+m_{lf}-m_{ox}\cdot R} \over {m_{ship}}}\right)^{ {A }\cdot {g_0}} \\ & = ln {({m_{ship}+m_{ox}+m_{lf}})^{{B}\cdot {g_0}} \over {(m_{ship}+m_{lf}-m_{ox}\cdot R})^{{B}\cdot {g_0}}} \cdot {({m_{ship}+m_{lf}-m_{ox}\cdot R})^{{A}\cdot {g_0}} \over ({m_{ship}})^{{A}\cdot {g_0}}} \\ & = ln {({m_{ship}+m_{ox}+m_{lf}})^{{B}\cdot {g_0}} \cdot ({m_{ship}+m_{lf}-m_{ox}\cdot R})^{{(A-B)}\cdot {g_0}} \over ({m_{ship}})^{{A}\cdot {g_0}}} \\ \\ & \left({{m_{ship}+m_{ox}+m_{lf}} \over {m_{ship}+m_{ox}}}\right)^{ {A }\cdot {g_0}} > {({m_{ship}+m_{ox}+m_{lf}})^{{B}\cdot {g_0}} \cdot ({m_{ship}+m_{lf}-m_{ox}\cdot R})^{{(A-B)}\cdot {g_0}} \over ({m_{ship}})^{{A}\cdot {g_0}}}\\ & {({{m_{ship}+m_{ox}+m_{lf}} })^{ {(A-B) }\cdot {g_0}}\over ({m_{ship}+m_{ox}})^{ {A}\cdot {g_0}}} > {({m_{ship}+m_{lf}-m_{ox}\cdot R})^{{(A-B)}\cdot {g_0}} \over ({m_{ship}})^{{A}\cdot {g_0}}}\\ & {({m_{ship}})^{{A}\cdot {g_0}} \over ({m_{ship}+m_{ox}})^{ {A}\cdot {g_0}}} > {({m_{ship}+m_{lf}-m_{ox}\cdot R})^{{(A-B)}\cdot {g_0}} \over ({{m_{ship}+m_{ox}+m_{lf}} })^{ {(A-B) }\cdot {g_0}}}\\ & \left({m_{ship} \over {m_{ship}+m_{ox}}}\right)^{ {A}\cdot {g_0}} > \left({{m_{ship}+m_{lf}-m_{ox}\cdot R} \over {{m_{ship}+m_{ox}+m_{lf}} }}\right)^{ {(A-B) }\cdot {g_0}}\\ & \left({m_{ship} \over {m_{ship}+m_{ox}}}\right)^A > \left({{m_{ship}+m_{lf}-m_{ox}\cdot R} \over {{m_{ship}+m_{ox}+m_{lf}} }}\right)^ {(A-B) }\\ \end{align} $$

....and...uh, I'm swamped and probably going nowhere. Help?

  • $\begingroup$ Why would you carry it along? Can it be used for something at the end of your flight? $\endgroup$ – Hobbes Nov 24 '16 at 13:51
  • $\begingroup$ @Hobbes: Because I can't dump it. The only "benefit" is absolutely minuscule amount of cash saved on craft recovery. It's leftover after the high-thrust burn to reach orbital speed. There's just no option to "vent oxidizer into space", and the amounts on launch are pretty much eyeballed, you don't know exactly how much you'll use up to reach orbit - and better to use too much than too little (because you won't reach orbit). $\endgroup$ – SF. Nov 24 '16 at 14:01
  • $\begingroup$ And you have one fuel tank to supply both to the chemical engines and the NTR? So you're trying to decide between high Isp+dead weight or low Isp+a shorter NTR burn. $\endgroup$ – Hobbes Nov 24 '16 at 14:08
  • $\begingroup$ @Hobbes: Exactly. Think hydrogen + oxygen, hydrogen can be burned with oxygen or heated with NTR. Obviously the latter provides better delta-V, caveat, I can't dump the oxygen I don't need. $\endgroup$ – SF. Nov 24 '16 at 14:22
  • 2
    $\begingroup$ You could also install Hyperedit or some other mod which would allow you to ditch the oxidizer. It's kind of a silly oversight in KSP that you can pump resources from anywhere to anywhere on the ship, but not vent them. $\endgroup$ – Russell Borogove Nov 24 '16 at 17:50

When you burn that oxidiser, you are losing $\Delta v$ due to using engines with lower $I_{sp}$, but gaining $\Delta v$ because you are getting rid of unnecessary mass. Then the right question to ask is "How much oxidiser should be burnt to maximise the $\Delta v$?". In some cases the best solution might even be "burn some oxidiser, but not all of it."

To calculate that we take the formula for $\Delta v$ based on the starting mass, because that's our constant: $$\Delta v=B\cdot g_0\cdot ln\left({{m_{start}}\over{m_{start}-{20 \over 11}m_{ox}}}\right)+A\cdot g_0\cdot ln\left({{m_{start}-{20 \over 11}m_{ox}}\over m_{start}-m_{lf}-m_{ox}}\right)$$

$$=B\cdot g_0\cdot ln\left({{m_{start}}}\right)+(A-B)\cdot g_0\cdot ln\left({{m_{start}-{20 \over 11}m_{ox}}}\right)-A\cdot g_0\cdot ln\left({{m_{start}-m_{ox}-m_{lf}}}\right)$$

To maximise the $\Delta v$ in terms of burnt oxidiser we then take the derivative of $\Delta v$ in terms of $m_{ox}$ and equate it to zero (in all honesty I used an online derivative calculator for this step):

$${{\partial \Delta v} \over \partial{m_{ox}}} = {{A}\over{m_{start}-m_{ox}-m_{lf}}}-{{20\cdot (A-B)}\over{11\cdot(m_{start}-{20\over 11}\cdot m_{ox})}}=0$$

After some rearranging we get:

$$(9\cdot A-20\cdot B)\cdot m_{start} - 20 \cdot (A-B)\cdot m_{lf} + 20 \cdot B \cdot m_{ox}=0$$

Plugging in the numbers we have, we get:

$$m_{ox}={11\over 61}(9\cdot m_{lf} - m_{start}) $$

Thus, for these specific $I_{sp}$ you want to burn that oxidiser as long as at least $1\over 9$ of your current mass is liquid fuel. If you have less liquid fuel than that, the gains from the decreasing mass become lower than the losses from the lower $I_{sp}$ engines.


If the mass of extra oxidizer is much smaller than the mass of the craft, you can treat it as a linear problem instead of using the rocket equation -- the exponential curves described by the rocket equation are, at small scales, approximately linear.

In this case, you want the greatest delta-v, which is acceleration times time. Isp is "mass-specific impulse", that is, impulse produced per mass unit of propellant, so compute chemical rocket Isp times (oxidizer mass + fuel mass) versus NTR Isp times (fuel mass), then divide by average ship mass over the burn. (Impulse is force times time; force over mass is acceleration, so this gets you acceleration times time which is delta-v).

If the results are not close, you have a clear winner, and if the results are very close then it doesn't matter much which you use.

In stock KSP, for small oxidizer quantities, due to the high density of KSP LiquidFuel, you should find the NTR to be the winner. Over larger burns, or using Realism Overhaul, the balance might shift to the chemical rocket.


You can partially fill the tanks prior to launch in the VAB.

just subtract the excess amount and you should arrive in orbit with only trace amounts left. how fine you cut this margin is up to you.

Of course, this requires a new launch, but maybe that's ok for you.

Another idea is to have a small tank which you can jettison. Launch with it empty, transfer the remaining undesired oxidizer into it, and throw it away?

  • $\begingroup$ I know, but it's really hard to determine the delta-V needed for the closed-cycle mode. I run out of intake air anywhere between 1100 and 1400m/s, and then during the ascent LV-N contributes some indeterminate amount of delta-V on LF alone, plus depending on ascent angle I lose more or less to atmospheric drag, and I must reach the 2200m/s by apoapsis or I'll plunge back into atmosphere, and while I don't have to reach all of it in closed cycle mode, I must reach as much that I can finish circularization on LV-N on time... that makes determining the right amount of oxidizer really hard. $\endgroup$ – SF. Nov 25 '16 at 11:07
  • $\begingroup$ moar boosters... $\endgroup$ – Innovine Nov 25 '16 at 11:13
  • $\begingroup$ Doesn't work for SSTO. Moar boosters = moar dry mass to haul all the way to Laythe. $\endgroup$ – SF. Nov 25 '16 at 11:15
  • $\begingroup$ and more delta-v before they become dry mass. I dunno, I don't get the point of ssto, I just chuck the used bits away. ssto seems like an arbitrary design choice to me. $\endgroup$ – Innovine Nov 25 '16 at 11:19
  • 1
    $\begingroup$ True that in stock gameplay balance SSTO is pointless, for the simple reason you can earn 3x the savings in the same gameplay time simply completing more contracts faster at lower profit margin. But SSTO is a challenge - it's difficult, and that's why it's fun! $\endgroup$ – SF. Nov 25 '16 at 11:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.