Engine Models

These components allow you to model the thrust and specific impulse (Isp) of a rocket engine.

Syntax

ComponentBrowser */ SetValue "Engine Models" {Component} {Attribute} <Value> [{Unit}]

ComponentBrowser */ Duplicate "Engine Models" {Component} <Duplicate Component Name>

Description

The Engine Models components are:

Component Description
Constant Thrust and Isp This model employs user-supplied, constant values for thrust and Isp.
Custom Engine Engine that uses Custom Functions to compute values
Ion Engine Engine that uses ion propulsion
Plugin Engine Engine that uses a COM interface to compute values
Polynomial Thrust and Isp Engine with polynomial functions for Thrust and Isp

The attributes for each component are described individually below.

Note:The default value is the value the model will have if you do not send a command.

Constant Thrust and Isp

Attribute Description Values
g Gravitational acceleration constant at sea level on the Earth. Enter a value in the selected distance unit per the selected time unit squared (e.g. km/sec^2). This is the value used to convert Isp to exhaust velocity Ve:

Ve = Isp(g)

<Numerical> Default: 0.00980665 km/sec^2
Thrust The thrust for this engine. Enter a value in the selected force unit, e.g., in Newtons (N). <Numerical> Default: 500 N
Isp The specific impulse for this engine. Enter a value in the scenario specific impulse unit (seconds). <Numerical> Default: 300 s

Custom Engine

Attribute Description Values
g Earth surface gravity acceleration for Isp conversions. <Numerical> Default: 0.00980665 km/sec^2
PreFunction Custom function to call before any propagation begins. <Custom Function Component>
SegStartFunction Custom function to call at the beginning of each segment. <Custom Function Component>
UpdateFunction Custom function to call at the beginning of each integration step. <Custom Function Component>
EvalFunction Custom function to call at every thrust evaluation. <Custom Function Component>
PostFunction Custom function to call at the beginning of each integration step. <Custom Function Component>

Ion Engine

The Ion Engine model calculates three parameters: Thrust, Ve (Exhaust Velocity) and(mass flow rate).

Ve = Ispg

where Isp is specific impulse (in seconds), and g is the gravitational acceleration on the surface of the Earth.

where MassFlowRate is described below. Note thatshould be negative; this represents the loss of mass when the engine is on. The MassFlowRate coefficients should return a positive number, and STK enforces the correct sign.

where D is the degradation factor (PercentageDegradationPerYear) measured from the reference epoch.

Note that bothand Thrust are affected by the throttle setting. The input power is clipped based on the minimum and maximum power attributes.


Attribute Description Values
g Gravitational acceleration constant at sea level on the Earth. Enter a value in the selected distance unit per the selected time unit squared (e.g. km/sec^2). <Numerical> Default: 0.00980665 km/sec^2
InputPowerSource Object that computes the power input to the engine. "InternalPower", "ProcessedPower", "SolarArrayPower", or a custom Power Source component. Default: ProcessedPower
MinRequiredPower Minimum power required for the engine to produce thrust. <Numerical> Default: 27 dBW
MaxInputPower Maximum power that can be used by the engine to produce thrust. <Numerical> Default: 33.6 dBW
PercentDegradationPerYear The degradation factor is (1 - x)n, where n is the time since epoch in years, and x is the percent degradation per year. <Numerical> Default: 0
ReferenceEpoch Date and time used as a reference epoch for degradation. <Date and time> Default: 1 Jan 1992 00:00:00.000 UTCG
PercentThrottle Percentage of available thrust to use (100 is full on, 0 is off). <Numerical> Default: 100
IspModel.C0 Constant coefficient <Numerical> Default: 3800
IspModel.C1 Linear coefficient <Numerical> Default: 0
IspModel.C2 Quadratic coefficient <Numerical> Default: 0
IspModel.C3 Cubic coefficient <Numerical> Default: 0
FlowRateModel.EquationType "Isp", "Power", "PowerAndIsp"
FlowRateModel.C0 Constant coefficient <Numerical> Default: 4.43e-008
FlowRateModel.C1 Linear coefficient <Numerical> Default: 0
FlowRateModel.C2 Quadratic coefficient <Numerical> Default: 0
FlowRateModel.C3 Cubic coefficient <Numerical> Default: 0
MassFlowEfficiencyModel.IndependentVar "Power", "Isp"
MassFlowEfficiencyModel.C0 Constant coefficient <Numerical> Default: 1
MassFlowEfficiencyModel.C1 Linear coefficient <Numerical> Default: 0
MassFlowEfficiencyModel.C2 Quadratic coefficient <Numerical> Default: 0
MassFlowEfficiencyModel.C3 Cubic coefficient <Numerical> Default: 0
PowerEfficiencyModel.IndependentVar "Power", "Isp"
PowerEfficiencyModel.C0 Constant coefficient <Numerical> Default: 1
PowerEfficiencyModel.C1 Linear coefficient <Numerical> Default: 0
PowerEfficiencyModel.C2 Quadratic coefficient <Numerical> Default: 0
PowerEfficiencyModel.C3 Cubic coefficient <Numerical> Default: 0

Note: For details on testing coefficients, see the Astrogator graphical user interface (GUI) help.

Plugin Engine

Attribute Description Values
g Gravitational acceleration constant at sea level on the Earth. Enter a value in the selected distance unit per the selected time unit squared (e.g. km/sec^2). This is the value used to convert Isp to exhaust velocity Ve:

Ve = Isp(g)

<Numerical>
PluginIdentifier The ProgID of the COM component you are using for this model. <Prog Id for Plugin Engine Model>
PluginConfig.<Attribute> Typically multiple attributes, each one displaying an attribute of the selected COM component. Dependent on attribute

Polynomial Thrust and Isp

Attribute Description Values
g Gravitational acceleration constant at sea level on the Earth. Enter a value in the selected distance unit per the selected time unit squared (e.g. km/sec^2). <Numerical> Default: 0.00980665000 km/sec^2
Thrust.ReferenceTemp Enter the appropriate value for each coefficient, depending upon the thrust equation you are using. <Numerical> Defaults: C0: 490; T/Tr: 293 K
Thrust.C0 <Numerical>
Thrust.C1 <Numerical>
Thrust.C2 <Numerical>
Thrust.C3 <Numerical>
Thrust.C4 <Numerical>
Thrust.C5 <Numerical>
Thrust.C6 <Numerical>
Thrust.C7 <Numerical>
Thrust.E4 <Numerical>
Thrust.E5 <Numerical>
Thrust.E6 <Numerical>
Thrust.E7 <Numerical>
Thrust.B7 <Numerical>
Thrust.K0 <Numerical>
Thrust.K1 <Numerical>
Isp.ReferenceTemp Enter the appropriate value for each coefficient, depending upon the Isp equation you are using.

Note: Thrust coefficients must be entered in terms of Newtons and Pascals, regardless of the selected unit settings. Similarly, Isp coefficients must be entered in terms of seconds and Pascals.

<Numerical> Defaults: C0: 300; T/Tr: 293 K
Isp.C0 <Numerical>
Isp.C1 <Numerical>
Isp.C2 <Numerical>
Isp.C3 <Numerical>
Isp.C4 <Numerical>
Isp.C5 <Numerical>
Isp.C6 <Numerical>
Isp.C7 <Numerical>
Isp.E4 <Numerical>
Isp.E5 <Numerical>
Isp.E6 <Numerical>
Isp.E7 <Numerical>
Isp.B7 <Numerical>
Isp.K0 <Numerical>
Isp.K1 <Numerical>

Examples

Duplicating an Engine Models component

ComponentBrowser */ Duplicate "Engine Models" "Ion Engine" "My Ion Engine"

Defining the power source of a custom Ion Engine

ComponentBrowser */ SetValue "Engine Models" "My Ion Engine" InputPowerSource InternalPower

Defining the Isp reference temperature of a custom Polynomial Engine

ComponentBrowser */ SetValue "Engine Models" "My Polynomial Engine" Isp.ReferenceTemp 290 K

Setting the Segment Start Function of a Custom Engine

ComponentBrowser */ SetValue "Engine Models" "My CustomEngine" SegStartFunction “my engine segment start custom function”

STK Programming Interface 11.0.1