Class SphericalConstantThrustPropulsionModel
java.lang.Object
org.orekit.forces.maneuvers.propulsion.AbstractConstantThrustPropulsionModel
org.orekit.forces.maneuvers.propulsion.SphericalConstantThrustPropulsionModel
- All Implemented Interfaces:
PropulsionModel,ThrustPropulsionModel,EventDetectorsProvider,ParameterDriversProvider
Constant thrust propulsion model with:
- Constant thrust direction in spacecraft frame
- Parameter drivers (for estimation) for the thrust vector in spherical coordinates.
- Since:
- 13.1
- Author:
- Romain Serra
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringParameter name for thrust declination.static final StringParameter name for thrust magnitude.static final StringParameter name for thrust right ascension.static final doubleThrust scaling factor.Fields inherited from interface org.orekit.propagation.events.EventDetectorsProvider
DATATION_ACCURACY -
Constructor Summary
ConstructorsConstructorDescriptionSphericalConstantThrustPropulsionModel(double isp, double thrustMagnitude, Vector3D thrustDirection, String name) Generic constructor.SphericalConstantThrustPropulsionModel(double isp, Vector3D thrustVector, String name) Constructor with thrust vector. -
Method Summary
Modifier and TypeMethodDescriptiondoubleGet the flow rate (kg/s).doublegetFlowRate(double[] parameters) Get the flow rate (kg/s).doublegetFlowRate(AbsoluteDate date) Get the flow rate (kg/s).<T extends CalculusFieldElement<T>>
TgetFlowRate(T[] parameters) Get the flow rate (kg/s).Get the drivers for parameters.Get the thrust vector in spacecraft frame (N).getThrustVector(double[] parameters) Get the thrust vector in spacecraft frame (N).getThrustVector(AbsoluteDate date) Get the thrust vector in spacecraft frame (N).<T extends CalculusFieldElement<T>>
FieldVector3D<T> getThrustVector(T[] parameters) Get the thrust vector in spacecraft frame (N).Methods inherited from class org.orekit.forces.maneuvers.propulsion.AbstractConstantThrustPropulsionModel
getControl3DVectorCostType, getDirection, getDirection, getFlowRate, getFlowRate, getFlowRate, getInitialFlowRate, getInitialThrustVector, getIsp, getIsp, getName, getThrustMagnitude, getThrustMagnitude, getThrustVector, getThrustVector, getThrustVectorMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.orekit.propagation.events.EventDetectorsProvider
getDateDetector, getEventDetectors, getFieldDateDetector, getFieldEventDetectorsMethods inherited from interface org.orekit.utils.ParameterDriversProvider
getNbParametersDriversValue, getParameterDriver, getParameters, getParameters, getParameters, getParameters, getParametersAllValues, getParametersAllValues, isSupportedMethods inherited from interface org.orekit.forces.maneuvers.propulsion.PropulsionModel
getEventDetectors, getFieldEventDetectors, init, initMethods inherited from interface org.orekit.forces.maneuvers.propulsion.ThrustPropulsionModel
getAcceleration, getAcceleration, getDirection, getIsp, getMassDerivatives, getMassDerivatives
-
Field Details
-
THRUST_MAGNITUDE
Parameter name for thrust magnitude.- See Also:
-
THRUST_RIGHT_ASCENSION
Parameter name for thrust right ascension.- See Also:
-
THRUST_DECLINATION
Parameter name for thrust declination.- See Also:
-
THRUST_SCALE
public static final double THRUST_SCALEThrust scaling factor.We use a power of 2 to avoid numeric noise introduction in the multiplications/divisions sequences.
-
-
Constructor Details
-
SphericalConstantThrustPropulsionModel
public SphericalConstantThrustPropulsionModel(double isp, double thrustMagnitude, Vector3D thrustDirection, String name) Generic constructor.- Parameters:
isp- isp (s)thrustMagnitude- thrust magnitude (N)thrustDirection- thrust direction in spacecraft framename- name of the maneuver
-
SphericalConstantThrustPropulsionModel
Constructor with thrust vector.- Parameters:
isp- isp (s)thrustVector- thrust vector in spacecraft frame (N)name- name of the maneuver
-
-
Method Details
-
getThrustVector
Get the thrust vector in spacecraft frame (N). Here it does not depend on current S/C state.- Specified by:
getThrustVectorin classAbstractConstantThrustPropulsionModel- Returns:
- thrust vector in spacecraft frame (N), will throw an exception if used on driver containing several value spans
-
getThrustVector
Get the thrust vector in spacecraft frame (N). Here it does not depend on current S/C state.- Specified by:
getThrustVectorin classAbstractConstantThrustPropulsionModel- Parameters:
date- date at which the thrust vector wants to be known, often the date parameter will not be important and can be whatever if the thrust parameter driver as only value estimated over the all orbit determination interval- Returns:
- thrust vector in spacecraft frame (N)
-
getFlowRate
public double getFlowRate()Get the flow rate (kg/s). Here it does not depend on current S/C.- Specified by:
getFlowRatein classAbstractConstantThrustPropulsionModel- Returns:
- flow rate (kg/s) will throw an exception if used on driver containing several value spans
-
getFlowRate
Get the flow rate (kg/s). Here it does not depend on current S/C.- Specified by:
getFlowRatein classAbstractConstantThrustPropulsionModel- Parameters:
date- date at which the thrust vector wants to be known, often the date parameter will not be important and can be whatever if the thrust parameter driver as only value estimated over the all orbit determination interval- Returns:
- flow rate (kg/s)
-
getParametersDrivers
Get the drivers for parameters.- Returns:
- drivers for parameters
-
getThrustVector
Get the thrust vector in spacecraft frame (N). Here it does not depend on current S/C state.- Specified by:
getThrustVectorin classAbstractConstantThrustPropulsionModel- Parameters:
parameters- propulsion model parameters- Returns:
- thrust vector in spacecraft frame (N)
-
getFlowRate
public double getFlowRate(double[] parameters) Get the flow rate (kg/s). Here it does not depend on current S/C state.- Specified by:
getFlowRatein classAbstractConstantThrustPropulsionModel- Parameters:
parameters- propulsion model parameters- Returns:
- flow rate (kg/s)
-
getThrustVector
Get the thrust vector in spacecraft frame (N). Here it does not depend on current S/C state.- Specified by:
getThrustVectorin classAbstractConstantThrustPropulsionModel- Type Parameters:
T- extends CalculusFieldElement<T>- Parameters:
parameters- propulsion model parameters- Returns:
- thrust vector in spacecraft frame (N)
-
getFlowRate
Get the flow rate (kg/s). Here it does not depend on current S/C state.- Specified by:
getFlowRatein classAbstractConstantThrustPropulsionModel- Type Parameters:
T- extends CalculusFieldElement<T>- Parameters:
parameters- propulsion model parameters- Returns:
- flow rate (kg/s)
-