I write patch for changes of JSB turbine starter spin time. diff -u FGTurbine.cpp.orig FGTurbine.cpp --- FGTurbine.cpp.orig 2009-03-24 00:46:08.000000000 +0300 +++ FGTurbine.cpp 2009-03-24 12:32:25.000000000 +0300 @@ -68,6 +68,7 @@ Augmented = AugMethod = Injected = 0; BypassRatio = BleedDemand = 0.0; IdleThrustLookup = MilThrustLookup = MaxThrustLookup = InjectionLookup = 0; + SpinCoeff = 1.0;
ResetToIC(); @@ -255,8 +256,8 @@ { Running = false; FuelFlow_pph = 0.0; - N2 = Seek(&N2, 25.18, 3.0, N2/2.0); - N1 = Seek(&N1, 5.21, 1.0, N1/2.0); + N2 = Seek(&N2, 25.18, 3.0*SpinCoeff, N2/2.0); + N1 = Seek(&N1, 5.21, 1.0*SpinCoeff, N1/2.0); EGT_degC = Seek(&EGT_degC, TAT, 11.7, 7.3); OilPressure_psi = N2 * 0.62; OilTemp_degK = Seek(&OilTemp_degK, TAT + 273.0, 0.2, 0.2); @@ -427,6 +428,11 @@ Injected = (int)el->FindElementValueAsNumber("injected"); if (el->FindElement("injection-time")) InjectionTime = el->FindElementValueAsNumber("injection-time"); + if (el->FindElement("spin-coeff")) + { + SpinCoeff = el->FindElementValueAsNumber("spin-coeff"); + cout << "Spin Coeff: " << SpinCoeff << endl; + } Element *function_element; string name; @@ -462,6 +468,7 @@ return true; } + //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% string FGTurbine::GetEngineLabels(string delimeter) @@ -557,6 +564,7 @@ cout << " AugMethod: " << AugMethod << endl; cout << " Injected: " << Injected << endl; cout << " MinThrottle: " << MinThrottle << endl; + cout << " SpinCoeff: " << SpinCoeff << endl; cout << endl; } diff -u FGTurbine.cpp.orig FGTurbine.cpp > patch1.diff --- FGTurbine.h.orig 2009-03-24 12:35:34.000000000 +0300 +++ FGTurbine.h 2009-03-24 12:34:19.000000000 +0300 @@ -99,6 +99,7 @@ <augmethod> {0 | 1 | 2} </augmethod> <injected> {0 | 1} </injected> <injection-time> {number} </injection-time> + <spin-coeff>{number}</spin-coeff> </turbine_engine> @endcode @@ -234,6 +235,7 @@ double ThrottlePos; ///< FCS-supplied throttle position double AugmentCmd; ///< modulated afterburner command (0.0 to 1.0) double TAT; ///< total air temperature (deg C) + double SpinCoeff; ///< starter spin coefficient (decrease it for increase spin) bool Stalled; ///< true if engine is compressor-stalled bool Seized; ///< true if inner spool is seized bool Overtemp; ///< true if EGT exceeds limits -- Best regard!!! Yaroslav Zavarzin Registered Linux user #419120 ------------------------------------------------------------------------------ Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are powering Web 2.0 with engaging, cross-platform capabilities. Quickly and easily build your RIAs with Flex Builder, the Eclipse(TM)based development software that enables intelligent coding and step-through debugging. Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com _______________________________________________ Flightgear-devel mailing list Flightgear-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/flightgear-devel