faa.tg.aircraft.adm.engine
Class JetEngine

java.lang.Object
  extended by faa.tg.aircraft.adm.engine.Engine
      extended by faa.tg.aircraft.adm.engine.JetEngine
All Implemented Interfaces:
Immutable, java.io.Serializable

public final class JetEngine
extends Engine
implements Immutable

 JetEngine represents the object for the JetEngine Engine. This
 Engine determines the actual thrust and fuel flow of the aircraft used
 to meet the desired commands determined by the Control Logic. In order to
 calculate the thrust and fuel flow, the current atmospheric conditions will
 be considered.

 See section 11.2 of the Detailed Design Document for a discussion
 of design issues.
 
See the source: JetEngine.java

Version:
$Id: JetEngine.java,v 3.9 2008/10/20 21:37:15 lykensj Exp $
Author:
Rich Henthorn
See Also:
Engine, Thrust, FuelFlowRate, Serialized Form

Field Summary
static java.lang.String CVS_VERSION_ID
          The CVS Version ID
private  EngineCoeff engineCoeff
           
static double IDLE_THRUST_FACTOR
          This factor is used to determine the percentage of thrust used in an Idle thrust maneuver.
private static int JET_SPOOLING_TIME_SEC
           
private  double kLag
          Deprecated.  
private static TrueAirspeed LANDING_GEAR_MAX_TAS_LIMIT
           
private static IndicatedAirspeed ROTATION_SPEED_INCREMENT
           
(package private) static long serialVersionUID
           
private static double TAKEOFF_THRUST_FACTOR
          Takeoff Thrust is more than standard climb thrust (often called Max).
private static double TOUCHDOWN_THRUST_FACTOR
          Even at touchdown, a jet engine still has thrust.
 
Constructor Summary
JetEngine(EngineCoeff jetEngineCoeff)
          Standard constructor accepts EngineCoeff object containing coefficient to describe the Engine's behavior with respect to the AMT (Aircraft Modeling Tool) model.
 
Method Summary
 FuelFlowRate calcFuelFlowRate(Thrust thrustval, Altitude alt, TrueAirspeed trueAirSpeed)
          Method to get the calculated fuel flow.
 Thrust getClimbThrust(Altitude altitude, TrueAirspeed trueAirSpeed)
          Calculates and returns the maximum thrust of the jet engine.
 Thrust getDescentThrust(Altitude altitude, TrueAirspeed trueAirSpeed)
          Method to calculate and return the idle thrust of the engine: this is determined by a percentage of max thrust: zero thrust is unrealistic for an idle.
 Thrust getGroundThrust()
           
 TrueAirspeed getMaxSpeedForLandingGear()
           
 java.lang.String getName()
          Return the name of the engine.
 IndicatedAirspeed getRotationSpeedIncrement()
          This is the amount of speed beyond the rotation speed that the aircraft has to achieve before it's allowed to lift off.
 Thrust getTakeoffThrust(Altitude alt, TrueAirspeed tas)
          Method to return the takeoff thrust of the engine.
 Thrust getTouchdownThrust(Altitude alt, TrueAirspeed tas)
          Method to return the touchdown thrust of the engine.
protected  double spoolingTime()
           
 java.lang.String toString()
          Returns a string representation of the object.
 
Methods inherited from class faa.tg.aircraft.adm.engine.Engine
getMaxThrustChange, temperThrustChange, temperThrustLimit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

serialVersionUID

static final long serialVersionUID
See Also:
Constant Field Values

CVS_VERSION_ID

public static final java.lang.String CVS_VERSION_ID
The CVS Version ID

See Also:
Constant Field Values

JET_SPOOLING_TIME_SEC

private static final int JET_SPOOLING_TIME_SEC
See Also:
Constant Field Values

TOUCHDOWN_THRUST_FACTOR

private static final double TOUCHDOWN_THRUST_FACTOR
Even at touchdown, a jet engine still has thrust. Import this as an engine coeff.

See Also:
getTouchdownThrust(Altitude, TrueAirspeed), Constant Field Values

TAKEOFF_THRUST_FACTOR

private static final double TAKEOFF_THRUST_FACTOR
Takeoff Thrust is more than standard climb thrust (often called Max). Here it is 1.2*Max.

See Also:
getTakeoffThrust(Altitude, TrueAirspeed), Constant Field Values

IDLE_THRUST_FACTOR

public static final double IDLE_THRUST_FACTOR
This factor is used to determine the percentage of thrust used in an Idle thrust maneuver. (Not 0 thrust which doesn't make sense, but however much thrust is produced when the engine is at idle.

See Also:
Constant Field Values

ROTATION_SPEED_INCREMENT

private static final IndicatedAirspeed ROTATION_SPEED_INCREMENT

LANDING_GEAR_MAX_TAS_LIMIT

private static final TrueAirspeed LANDING_GEAR_MAX_TAS_LIMIT

kLag

private double kLag
Deprecated. 
Spooling lag coefficient for jet engines: ratio of the time for the engine to spool from zero thrust to max thrust, divided by the timestep.


engineCoeff

private final EngineCoeff engineCoeff
Constructor Detail

JetEngine

public JetEngine(EngineCoeff jetEngineCoeff)
Standard constructor accepts EngineCoeff object containing coefficient to describe the Engine's behavior with respect to the AMT (Aircraft Modeling Tool) model.

Parameters:
jetEngineCoeff - object containing the engine coefficients
Method Detail

getClimbThrust

public Thrust getClimbThrust(Altitude altitude,
                             TrueAirspeed trueAirSpeed)
Calculates and returns the maximum thrust of the jet engine. This method is needed to extend Engine.

Specified by:
getClimbThrust in class Engine
Parameters:
altitude - Altitude of the aircraft.
trueAirSpeed - The true airspeed of the aircraft.
Returns:
The maximum achievable thrust at the given altitude and speed.

getTouchdownThrust

public Thrust getTouchdownThrust(Altitude alt,
                                 TrueAirspeed tas)
Method to return the touchdown thrust of the engine.

Specified by:
getTouchdownThrust in class Engine
Parameters:
alt - The altitude of the runway
tas - The true airspeed of the aircraft
Returns:
Thrust used after touchdown.

getTakeoffThrust

public Thrust getTakeoffThrust(Altitude alt,
                               TrueAirspeed tas)
Description copied from class: Engine
Method to return the takeoff thrust of the engine. This allows the thrust to be set higher than the thrust typically used in a climb.

Specified by:
getTakeoffThrust in class Engine
Parameters:
alt - The altitude of the runway
tas - The true airspeed of the aircraft
Returns:
Thrust used during takeoff.
See Also:
Engine.getTakeoffThrust(Altitude, TrueAirspeed)

getRotationSpeedIncrement

public final IndicatedAirspeed getRotationSpeedIncrement()
Description copied from class: Engine
This is the amount of speed beyond the rotation speed that the aircraft has to achieve before it's allowed to lift off. This varies per engine.

Specified by:
getRotationSpeedIncrement in class Engine
See Also:
Engine.getRotationSpeedIncrement()

getMaxSpeedForLandingGear

public final TrueAirspeed getMaxSpeedForLandingGear()
Specified by:
getMaxSpeedForLandingGear in class Engine
See Also:
Engine.getMaxSpeedForLandingGear()

getDescentThrust

public Thrust getDescentThrust(Altitude altitude,
                               TrueAirspeed trueAirSpeed)
Method to calculate and return the idle thrust of the engine: this is determined by a percentage of max thrust: zero thrust is unrealistic for an idle.

Specified by:
getDescentThrust in class Engine
Parameters:
altitude - Altitude of the aircraft.
trueAirSpeed - The true airspeed of the aircraft.
Returns:
Thrust object containing the idle thrust value at the given altitude and speed.

calcFuelFlowRate

public FuelFlowRate calcFuelFlowRate(Thrust thrustval,
                                     Altitude alt,
                                     TrueAirspeed trueAirSpeed)
Method to get the calculated fuel flow. This method is needed to implement Engine

Specified by:
calcFuelFlowRate in class Engine
Parameters:
thrustval - The thrust of the engine.
alt - The altitude of the aircraft.
trueAirSpeed - The true airspeed of the aircraft.
Returns:
FuelFlowRate The calculated fuel flow rate at the given altitude and speed.
See Also:
Engine

toString

public java.lang.String toString()
Returns a string representation of the object.

Overrides:
toString in class java.lang.Object

getGroundThrust

public Thrust getGroundThrust()

spoolingTime

protected double spoolingTime()
Specified by:
spoolingTime in class Engine

getName

public java.lang.String getName()
Return the name of the engine.

Specified by:
getName in class Engine