public abstract class AbstractConstantThrustPropulsionModel extends Object implements ThrustPropulsionModel
ThrustPropulsionModel
and removes their dependencies to current spacecraft state.
Indeed since the thrust is constant (i.e. not variable during the maneuver), most of the
calculated parameters (thrust vector, flow rate etc.) do not depend on current spacecraft state.| Constructor and Description |
|---|
AbstractConstantThrustPropulsionModel(double thrust,
double isp,
Vector3D direction,
String name)
Generic constructor.
|
| Modifier and Type | Method and Description |
|---|---|
Vector3D |
getDirection()
Get the thrust direction in S/C frame.
|
abstract double |
getFlowRate()
Get the flow rate (kg/s).
|
abstract double |
getFlowRate(double[] parameters)
Get the flow rate (kg/s).
|
<T extends CalculusFieldElement<T>> |
getFlowRate(FieldSpacecraftState<T> s,
T[] parameters)
Get the flow rate (kg/s).
|
double |
getFlowRate(SpacecraftState s)
Get the flow rate (kg/s).
|
double |
getFlowRate(SpacecraftState s,
double[] parameters)
Get the flow rate (kg/s).
|
abstract <T extends CalculusFieldElement<T>> |
getFlowRate(T[] parameters)
Get the flow rate (kg/s).
|
protected double |
getInitialFlowrate() |
protected Vector3D |
getInitialThrustVector() |
double |
getIsp()
Get the specific impulse.
|
String |
getName()
Get the maneuver name.
|
double |
getThrust()
Get the thrust value (N).
|
abstract Vector3D |
getThrustVector()
Get the thrust vector in spacecraft frame (N).
|
abstract Vector3D |
getThrustVector(double[] parameters)
Get the thrust vector in spacecraft frame (N).
|
<T extends CalculusFieldElement<T>> |
getThrustVector(FieldSpacecraftState<T> s,
T[] parameters)
Get the thrust vector in spacecraft frame (N).
|
Vector3D |
getThrustVector(SpacecraftState s)
Get the thrust vector in spacecraft frame (N).
|
Vector3D |
getThrustVector(SpacecraftState s,
double[] parameters)
Get the thrust vector in spacecraft frame (N).
|
abstract <T extends CalculusFieldElement<T>> |
getThrustVector(T[] parameters)
Get the thrust vector in spacecraft frame (N).
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetAcceleration, getAcceleration, getDirection, getIsp, getMassDerivatives, getMassDerivatives, getThrustgetParametersDrivers, init, initpublic AbstractConstantThrustPropulsionModel(double thrust,
double isp,
Vector3D direction,
String name)
thrust - initial thrust value (N)isp - initial isp value (s)direction - initial thrust direction in S/C framename - name of the maneuverprotected Vector3D getInitialThrustVector()
protected double getInitialFlowrate()
public String getName()
getName in interface PropulsionModelpublic double getIsp()
public Vector3D getDirection()
public double getThrust()
public Vector3D getThrustVector(SpacecraftState s)
getThrustVector in interface ThrustPropulsionModels - current spacecraft statepublic double getFlowRate(SpacecraftState s)
getFlowRate in interface ThrustPropulsionModels - current spacecraft statepublic Vector3D getThrustVector(SpacecraftState s, double[] parameters)
getThrustVector in interface ThrustPropulsionModels - current spacecraft stateparameters - propulsion model parameterspublic double getFlowRate(SpacecraftState s, double[] parameters)
getFlowRate in interface ThrustPropulsionModels - current spacecraft stateparameters - propulsion model parameterspublic <T extends CalculusFieldElement<T>> FieldVector3D<T> getThrustVector(FieldSpacecraftState<T> s, T[] parameters)
getThrustVector in interface ThrustPropulsionModelT - extends CalculusFieldElement<T>s - current spacecraft stateparameters - propulsion model parameterspublic <T extends CalculusFieldElement<T>> T getFlowRate(FieldSpacecraftState<T> s, T[] parameters)
getFlowRate in interface ThrustPropulsionModelT - extends CalculusFieldElement<T>s - current spacecraft stateparameters - propulsion model parameterspublic abstract Vector3D getThrustVector()
public abstract double getFlowRate()
public abstract Vector3D getThrustVector(double[] parameters)
parameters - propulsion model parameterspublic abstract double getFlowRate(double[] parameters)
parameters - propulsion model parameterspublic abstract <T extends CalculusFieldElement<T>> FieldVector3D<T> getThrustVector(T[] parameters)
T - extends CalculusFieldElement<T>parameters - propulsion model parameterspublic abstract <T extends CalculusFieldElement<T>> T getFlowRate(T[] parameters)
T - extends CalculusFieldElement<T>parameters - propulsion model parametersCopyright © 2002-2023 CS GROUP. All rights reserved.