public class ProfileThrustPropulsionModel extends Object implements ThrustPropulsionModel
| Constructor and Description |
|---|
ProfileThrustPropulsionModel(TimeSpanMap<PolynomialThrustSegment> profile,
double isp,
Control3DVectorCostType control3DVectorCostType,
String name)
Generic constructor.
|
| Modifier and Type | Method and Description |
|---|---|
Control3DVectorCostType |
getControl3DVectorCostType()
Get the control vector's cost type.
|
Stream<EventDetector> |
getEventDetectors()
Get the discrete events related to the model.
|
<T extends org.hipparchus.CalculusFieldElement<T>> |
getFieldEventDetectors(org.hipparchus.Field<T> field)
Get the discrete events related to the model.
|
<T extends org.hipparchus.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).
|
String |
getName()
Get the maneuver name.
|
List<ParameterDriver> |
getParametersDrivers()
Get the drivers for parameters.
|
<T extends org.hipparchus.CalculusFieldElement<T>> |
getThrustVector(FieldSpacecraftState<T> s,
T[] parameters)
Get the thrust vector in spacecraft frame (N).
|
org.hipparchus.geometry.euclidean.threed.Vector3D |
getThrustVector(SpacecraftState s)
Get the thrust vector in spacecraft frame (N).
|
org.hipparchus.geometry.euclidean.threed.Vector3D |
getThrustVector(SpacecraftState s,
double[] parameters)
Get the thrust vector in spacecraft frame (N).
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetAcceleration, getAcceleration, getDirection, getIsp, getMassDerivatives, getMassDerivativesinit, initgetNbParametersDriversValue, getParameterDriver, getParameters, getParameters, getParameters, getParameters, getParametersAllValues, getParametersAllValues, isSupportedgetEventDetectors, getFieldEventDetectorspublic ProfileThrustPropulsionModel(TimeSpanMap<PolynomialThrustSegment> profile, double isp, Control3DVectorCostType control3DVectorCostType, String name)
profile - thrust profile (N)isp - specific impulse (s)control3DVectorCostType - control vector's cost typename - name of the maneuverpublic String getName()
getName in interface PropulsionModelpublic Control3DVectorCostType getControl3DVectorCostType()
getControl3DVectorCostType in interface PropulsionModelpublic org.hipparchus.geometry.euclidean.threed.Vector3D getThrustVector(SpacecraftState s)
getThrustVector in interface ThrustPropulsionModels - current spacecraft statepublic double getFlowRate(SpacecraftState s)
getFlowRate in interface ThrustPropulsionModels - current spacecraft statepublic org.hipparchus.geometry.euclidean.threed.Vector3D getThrustVector(SpacecraftState s, double[] parameters)
Here the thrust vector does not depend on parameters
getThrustVector in interface ThrustPropulsionModels - current spacecraft stateparameters - propulsion model parameterspublic double getFlowRate(SpacecraftState s, double[] parameters)
Here the flow rate does not depend on parameters
getFlowRate in interface ThrustPropulsionModels - current spacecraft stateparameters - propulsion model parameterspublic <T extends org.hipparchus.CalculusFieldElement<T>> org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> getThrustVector(FieldSpacecraftState<T> s, T[] parameters)
Here the thrust vector does not depend on parameters
getThrustVector in interface ThrustPropulsionModelT - extends CalculusFieldElement<T>s - current spacecraft stateparameters - propulsion model parameterspublic <T extends org.hipparchus.CalculusFieldElement<T>> T getFlowRate(FieldSpacecraftState<T> s, T[] parameters)
Here the flow rate does not depend on parameters
getFlowRate in interface ThrustPropulsionModelT - extends CalculusFieldElement<T>s - current spacecraft stateparameters - propulsion model parameterspublic Stream<EventDetector> getEventDetectors()
This method is not intended to be called several time, only once by a propagator, as it has the side effect of rebuilding the events detectors when called..
The single detector returned triggers Action.RESET_DERIVATIVES events
at every thrust segments boundaries.
getEventDetectors in interface PropulsionModelgetEventDetectors in interface EventDetectorsProviderpublic <T extends org.hipparchus.CalculusFieldElement<T>> Stream<FieldEventDetector<T>> getFieldEventDetectors(org.hipparchus.Field<T> field)
This method is not intended to be called several time, only once by a propagator, as it has the side effect of rebuilding the events detectors when called..
The single detector returned triggers Action.RESET_DERIVATIVES events
at every thrust segments boundaries.
getFieldEventDetectors in interface PropulsionModelgetFieldEventDetectors in interface EventDetectorsProviderT - extends CalculusFieldElement<T>field - field to which the state belongspublic List<ParameterDriver> getParametersDrivers()
ParameterDriversProvidergetParametersDrivers in interface ParameterDriversProviderCopyright © 2002-2023 CS GROUP. All rights reserved.