public TurbopumpCalculator(BiPropellantConfig config, EngineCalculatorBase engineCalc) { this.engineCalc = engineCalc; this.biPropConfig = config; fuelAux = PropellantMixtureLibrary.AuxPropellantProperties[config.Fuel]; oxAux = PropellantMixtureLibrary.AuxPropellantProperties[config.Oxidizer]; if ((object)pumpEffFromSpecificSpeed == null) { LoadEfficiencyCurves(); } if (turbopumpArrangementSelector == null) { string[] turbopumpString = new string[] { "Direct Drive", "Gear Reduction", "Two Turbine" }; TurbopumpArrangementEnum[] turbopumpEnums = new TurbopumpArrangementEnum[] { TurbopumpArrangementEnum.DIRECT_DRIVE, TurbopumpArrangementEnum.GEAR_REDUCTION, TurbopumpArrangementEnum.TWO_TURBINE }; turbopumpArrangementSelector = new GUIDropDown <TurbopumpArrangementEnum>(turbopumpString, turbopumpEnums); } }
double CalculateNetPositiveSuctionHead(PropellantProperties properties, double dens, double tankPresMPa) { double NPSH = tankPresMPa - properties.vaporPresMPaAtStorageTemp; NPSH /= G0 * dens; return(NPSH); }