public void DoEngineFit() { SolverJet jetEngine = engineSolver as SolverJet; jetEngine.FitEngine(dryThrust * 1000d, drySFC, wetThrust * 1000d, idleNPR, defaultTPR: defaultTPR); Area = (float)jetEngine.GetAref(); FHV = (float)jetEngine.GetFHV(); TAB = (float)jetEngine.GetTAB(); minThrottle = (float)jetEngine.GetMinThrottle(); turbineAreaRatio = (float)jetEngine.GetTurbineAreaRatio(); PushAreaToInlet(); }
public override void CreateEngine() { // bool DREactive = AssemblyLoader.loadedAssemblies.Any( // a => a.assembly.GetName().Name.Equals("DeadlyReentry.dll", StringComparison.InvariantCultureIgnoreCase)); // heatProduction = (float)part.maxTemp * 0.1f; engineSolver = solverJet = new SolverJet(); solverJet.InitializeOverallEngineData( Area, BPR, CPR, FPR, Mdes, Tdes, eta_c, eta_t, eta_n, FHV, TIT, TAB, minThrottle, turbineAreaRatio, exhaustMixer, adjustableNozzle, unifiedThrottle ); useAtmCurve = atmChangeFlow = useVelCurve = useAtmCurveIsp = useVelCurveIsp = false; maxEngineTemp = maxT3; if (autoignitionTemp < 0f || float.IsInfinity(autoignitionTemp)) { autoignitionTemp = 500f; // Autoignition of Kerosene is 493.15K } PushAreaToInlet(); // set heat production heatProduction = Mathf.Min(10f, (1f - eta_c) * (1f - eta_t) * (1f - eta_n) * (10000f + TAB * 10f) / (1f + BPR * 0.5f)); }