184 enum phaseType { tpOff, tpRun, tpSpinUp, tpStart, tpStall, tpSeize, tpTrim };
188 double GetPowerAvailable(
void);
195 double Seek(
double* var,
double target,
double accel,
double decel);
197 phaseType GetPhase(
void) {
return phase; }
199 bool GetOvertemp(
void)
const {
return Overtemp; }
200 bool GetInjection(
void)
const {
return Injection;}
201 bool GetFire(
void)
const {
return Fire; }
202 bool GetAugmentation(
void)
const {
return Augmentation;}
203 bool GetReversed(
void)
const {
return Reversed; }
204 bool GetCutoff(
void)
const {
return Cutoff; }
205 int GetIgnition(
void)
const {
return Ignition;}
207 double GetInlet(
void)
const {
return InletPosition; }
208 double GetNozzle(
void)
const {
return NozzlePosition; }
209 double GetBleedDemand(
void)
const {
return BleedDemand;}
210 double GetN1(
void)
const {
return N1;}
211 double GetN2(
void)
const {
return N2;}
212 double GetEPR(
void)
const {
return EPR;}
213 double GetEGT(
void)
const {
return EGT_degC;}
215 double GetMaxN1(
void)
const {
return MaxN1;}
216 double GetMaxN2(
void)
const {
return MaxN2;}
217 double getOilPressure_psi ()
const {
return OilPressure_psi;}
219 double GetInjectionTimer(
void)
const {
return InjectionTimer;}
220 double GetInjWaterNorm(
void)
const {
return InjWaterNorm;}
221 double GetInjN1increment(
void)
const {
return InjN1increment;}
222 double GetInjN2increment(
void)
const {
return InjN2increment;}
224 void SetInjection(
bool injection) {Injection = injection;}
225 void SetIgnition(
int ignition) {Ignition = ignition;}
226 void SetAugmentation(
bool augmentation) {Augmentation = augmentation;}
227 void SetPhase( phaseType p ) { phase = p; }
228 void SetEPR(
double epr) {EPR = epr;}
229 void SetBleedDemand(
double bleedDemand) {BleedDemand = bleedDemand;}
230 void SetReverse(
bool reversed) { Reversed = reversed; }
231 void SetCutoff(
bool cutoff) { Cutoff = cutoff; }
232 void SetMaxN1(
double maxn1) {MaxN1 = maxn1;}
233 void SetMaxN2(
double maxn2) {MaxN2 = maxn2;}
234 void SetInjectionTimer(
double injtimer) {InjectionTimer = injtimer;}
235 void SetInjWaterNorm(
double injwater) {InjWaterNorm = injwater;}
236 void SetInjN1increment(
double injN1inc) {InjN1increment = injN1inc;}
237 void SetInjN2increment(
double injN2inc) {InjN2increment = injN2inc;}
239 int InitRunning(
void);
242 std::string GetEngineLabels(
const std::string& delimiter);
243 std::string GetEngineValues(
const std::string& delimiter);
269 double N1_start_rate;
270 double N2_start_rate;
281 bool disableWindmill;
290 double OilPressure_psi;
293 double InletPosition;
294 double NozzlePosition;
295 double correctedTSFC;
296 double InjectionTimer;
297 double InjectionTime;
299 double InjN1increment;
300 double InjN2increment;
322 void Debug(
int from);
331 : turb(_turb), delay(factor * 90.0 / (BPR + 3.0)) {}
332 string GetName(
void)
const {
return string(); };
333 double GetValue(
void)
const {
335 double n = std::min(1.0, turb->N2norm + 0.1);
336 return delay / (1 + 3 * (1-n)*(1-n)*(1-n) + (1 - turb->in.DensityRatio));