-
Notifications
You must be signed in to change notification settings - Fork 0
Optimum and Maximum Profitable Fuel Mass
Disclaimer: These equations are only calculated in the Scratch version, currently, because they assume constant gravity and no atmospheric drag. The Python version doesn't assume these, so it would have to use trial-and-error to find the values.
Syntax: i is specific impulse (s), m is non-fuel mass (t), f is fuel mass (t), g is gravity (g), c is rate of fuel consumption (t/s) and t is thrust (measured by the game in tonnes but equivalent to the mass acceleratable to 1g).
These equations were derived from the Tsiolkovsky rocket equation, that a continuously-propellant-burning spacecraft's total possible change in velocity, is i*ln((m+f)/m). Gravity's total downwards delta-v is g*f/c.
Spaceflight Simulator has fuel in tanks. 1/10th of their mass (r) persists after their fuel is exhausted, meaning the equations are derived from i*ln((r+m)/(r/10+m))-g*r*0.9/c.
Optimum fuel mass is the threshold at which any additional fuel is detrimental to delta-v, because its extra thrust is outweighed by the gravity undergone during its operation time.
It's calculated by f=t/g-m, because thrust is total liftable mass at Earth surface gravity, but liftable mass is inversely proportional to gravity, and optimum fuel mass initially balances it to begin with no acceleration, any less fuel would reduce initial upwards acceleration (which is the entire operation) and any more would cause initial downwards acceleration.
Optimum tank mass is calculated by r=-5.5(m±sqrt(gm*(40ci+81gm))).
Maximum profitable fuel mass is the threshold at which the total acceleration throughout operation is zero, because the total upwards delta-v during operation below the optimum fuel mass is equal to the downwards delta-v above it.
It can't be computed exactly in a single equation (because doing so requires the Lambert W function, which is only computable by convergent series), but the simplest iterative equation is f’ = c*i*ln((f+m)/m)/g.
Maximum profitable tank mass is r’ = c*i*ln((r+m)/m+r/10)/g, it's the same except you add non-fuel tank mass to non-fuel mass.
These only work when pointing directly upwards, opposing gravity, not at an angle.
In orbital stages, where gravity undergone is 0, both the maximum and optimal fuel equations will output infinity because additional fuel always increases delta-v (its derivative approaching 0 at higher values instead of a number beneath it). Only optimum tank mass still applies, above it additional tank mass becomes detrimental because its reduction in future efficiency (as unnecessary payload) after its use outweighs its use's delta-v. A program like the engine calculator would have to be written for solving the discrete problem of stage sizes (too low causing the mass of decouplers to be too high a proportion of mass, too high causing the mass of used fuel tanks to be too high), these equations only yield upper limits.