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, wait
getAcceleration, getAcceleration, getDirection, getIsp, getMassDerivatives, getMassDerivatives, getThrust
getParametersDrivers, init, init
public 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 PropulsionModel
public double getIsp()
public Vector3D getDirection()
public double getThrust()
public Vector3D getThrustVector(SpacecraftState s)
getThrustVector
in interface ThrustPropulsionModel
s
- current spacecraft statepublic double getFlowRate(SpacecraftState s)
getFlowRate
in interface ThrustPropulsionModel
s
- current spacecraft statepublic Vector3D getThrustVector(SpacecraftState s, double[] parameters)
getThrustVector
in interface ThrustPropulsionModel
s
- current spacecraft stateparameters
- propulsion model parameterspublic double getFlowRate(SpacecraftState s, double[] parameters)
getFlowRate
in interface ThrustPropulsionModel
s
- current spacecraft stateparameters
- propulsion model parameterspublic <T extends CalculusFieldElement<T>> FieldVector3D<T> getThrustVector(FieldSpacecraftState<T> s, T[] parameters)
getThrustVector
in interface ThrustPropulsionModel
T
- extends CalculusFieldElement<T>s
- current spacecraft stateparameters
- propulsion model parameterspublic <T extends CalculusFieldElement<T>> T getFlowRate(FieldSpacecraftState<T> s, T[] parameters)
getFlowRate
in interface ThrustPropulsionModel
T
- 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-2022 CS GROUP. All rights reserved.