void UpdateTurbineExhaust(TurbineExhaustEnum turbineExhaustType, double nozzleExhaustArea) { bool unchanged = true; if (nozzleExhaustArea > areaRatio) { nozzleExhaustArea = areaRatio; } if (nozzleExhaustArea < enginePrefab.frozenAreaRatio) { nozzleExhaustArea = enginePrefab.frozenAreaRatio; } unchanged &= this.nozzleExhaustArea == nozzleExhaustArea; unchanged &= this.turbineExhaustType == turbineExhaustType; if (!unchanged) { this.nozzleExhaustArea = nozzleExhaustArea; this.turbineExhaustType = turbineExhaustType; CalculateEngineProperties(); } }
public override void CalculateEngineProperties() { if (turbopump == null) { turbopump = new TurbopumpCalculator(biPropConfig, this); string[] turbineExhaustString = new string[] { "Direct", "Into Nozzle" }; TurbineExhaustEnum[] turbExhaustEnums = new TurbineExhaustEnum[] { TurbineExhaustEnum.DIRECT, TurbineExhaustEnum.INTO_NOZZLE }; turbineExhaustSelector = new GUIDropDown <TurbineExhaustEnum>(turbineExhaustString, turbExhaustEnums); } CalculateMainCombustionChamberParameters(); AssumePumpPressureRise(); SolveGasGenTurbine(oxRich); CalculateEngineAndNozzlePerformanceProperties(); }