// for a single EngineModule, get thrust + isp + massFlowRate public static void EngineValuesAtConditions(this ModuleEngines e, double throttle, double atmPressure, double atmDensity, double machNumber, out Vector3d thrust, out double isp, out double massFlowRate, bool cosLoss = true) { isp = e.ISPAtConditions(throttle, atmPressure, atmDensity, machNumber); double flowMultiplier = e.FlowMultiplierAtConditions(atmDensity, machNumber); massFlowRate = e.FlowRateAtConditions(throttle, flowMultiplier); thrust = e.ThrustAtConditions(massFlowRate, isp, cosLoss); Log.dbg("thrust = {0} isp = {1} massFlowRate = {2}", thrust, isp, massFlowRate); }