public final class ConstantThrustError extends JacobiansParameterizable implements ForceModel, GradientModel
This class is a model of the error of a simple maneuver with constant thrust.
The architecture of this force model is similar to ConstantThrustManeuver class.
The maneuver is associated to two triggering EventDetector
(one to start the thrust, the other one to stop the thrust): the maneuver is triggered only if
the underlying event generates a STOP
event, in which case this class will generate a
RESET_STATE
event (the stop event
from the underlying object is therefore filtered out).
Constructor and Description |
---|
ConstantThrustError(AbsoluteDate date,
double duration,
double cx,
double cy,
double cz)
Create a constant thrust error model whose x, y and z components are constant functions:
fx = cx fy = cy fz = cz |
ConstantThrustError(AbsoluteDate date,
double duration,
double ax,
double bx,
double ay,
double by,
double az,
double bz,
AbsoluteDate date0)
Create a constant thrust error model whose x, y and z components are linear functions:
fx = ax*t + bx fy = ay*t + by fz = az*t + bz |
ConstantThrustError(AbsoluteDate date,
double duration,
Frame frame,
double cx,
double cy,
double cz)
Create a constant thrust error model whose x, y and z components are constant functions:
fx = cx fy = cy fz = cz |
ConstantThrustError(AbsoluteDate date,
double duration,
Frame frame,
double ax,
double bx,
double ay,
double by,
double az,
double bz,
AbsoluteDate date0)
Create a constant thrust error model whose x, y and z components are linear functions:
fx = ax*t + bx fy = ay*t + by fz = az*t + bz |
ConstantThrustError(AbsoluteDate date,
double duration,
Frame frame,
IParamDiffFunction fx,
IParamDiffFunction fy,
IParamDiffFunction fz)
Create a constant thrust error model whose x, y and z components are parameterizable and differentiable function.
|
ConstantThrustError(AbsoluteDate date,
double duration,
Frame frame,
Parameter cx,
Parameter cy,
Parameter cz)
Create a constant thrust error model whose x, y and z components are constant functions:
fx = cx fy = cy fz = cz |
ConstantThrustError(AbsoluteDate date,
double duration,
Frame frame,
Parameter ax,
Parameter bx,
Parameter ay,
Parameter by,
Parameter az,
Parameter bz,
AbsoluteDate date0)
Create a constant thrust error model whose x, y and z components are linear functions:
fx = ax*t + bx fy = ay*t + by fz = az*t + bz |
ConstantThrustError(AbsoluteDate date,
double duration,
IParamDiffFunction fx,
IParamDiffFunction fy,
IParamDiffFunction fz)
Create a constant thrust error model whose x, y and z components are parameterizable and differentiable function.
|
ConstantThrustError(AbsoluteDate date,
double duration,
LOFType lofType,
double cx,
double cy,
double cz)
Create a constant thrust error model whose x, y and z components are constant functions:
fx = cx fy = cy fz = cz |
ConstantThrustError(AbsoluteDate date,
double duration,
LOFType lofType,
double ax,
double bx,
double ay,
double by,
double az,
double bz,
AbsoluteDate date0)
Create a constant thrust error model whose x, y and z components are linear functions:
fx = ax*t + bx fy = ay*t + by fz = az*t + bz |
ConstantThrustError(AbsoluteDate date,
double duration,
LOFType lofType,
IParamDiffFunction fx,
IParamDiffFunction fy,
IParamDiffFunction fz)
Create a constant thrust error model whose x, y and z components are parameterizable and differentiable function.
|
ConstantThrustError(AbsoluteDate date,
double duration,
LOFType lofType,
Parameter cx,
Parameter cy,
Parameter cz)
Create a constant thrust error model whose x, y and z components are constant functions:
fx = cx fy = cy fz = cz |
ConstantThrustError(AbsoluteDate date,
double duration,
LOFType lofType,
Parameter ax,
Parameter bx,
Parameter ay,
Parameter by,
Parameter az,
Parameter bz,
AbsoluteDate date0)
Create a constant thrust error model whose x, y and z components are linear functions:
fx = ax*t + bx fy = ay*t + by fz = az*t + bz |
ConstantThrustError(AbsoluteDate date,
double duration,
Parameter cx,
Parameter cy,
Parameter cz)
Create a constant thrust error model whose x, y and z components are constant functions:
fx = cx fy = cy fz = cz |
ConstantThrustError(AbsoluteDate date,
double duration,
Parameter ax,
Parameter bx,
Parameter ay,
Parameter by,
Parameter az,
Parameter bz,
AbsoluteDate date0)
Create a constant thrust error model whose x, y and z components are linear functions:
fx = ax*t + bx fy = ay*t + by fz = az*t + bz |
ConstantThrustError(EventDetector startEventDetector,
EventDetector stopEventDetector,
Frame frame,
IParamDiffFunction fx,
IParamDiffFunction fy,
IParamDiffFunction fz)
Create a constant thrust error model whose x, y and z components are constant functions:
fx = cx fy = cy fz = cz |
ConstantThrustError(EventDetector startEventDetector,
EventDetector stopEventDetector,
Frame frame,
Parameter cx,
Parameter cy,
Parameter cz)
Create a constant thrust error model whose x, y and z components are constant functions:
fx = cx fy = cy fz = cz |
ConstantThrustError(EventDetector startEventDetector,
EventDetector stopEventDetector,
IParamDiffFunction fx,
IParamDiffFunction fy,
IParamDiffFunction fz)
Create a constant thrust error model whose x, y and z components are constant functions:
fx = cx fy = cy fz = cz |
ConstantThrustError(EventDetector startEventDetector,
EventDetector stopEventDetector,
LOFType lofType,
IParamDiffFunction fx,
IParamDiffFunction fy,
IParamDiffFunction fz)
Create a constant thrust error model whose x, y and z components are constant functions:
fx = cx fy = cy fz = cz |
ConstantThrustError(EventDetector startEventDetector,
EventDetector stopEventDetector,
LOFType lofType,
Parameter cx,
Parameter cy,
Parameter cz)
Create a constant thrust error model whose x, y and z components are constant functions:
fx = cx fy = cy fz = cz |
ConstantThrustError(EventDetector startEventDetector,
EventDetector stopEventDetector,
Parameter cx,
Parameter cy,
Parameter cz)
Create a constant thrust error model whose x, y and z components are constant functions:
fx = cx fy = cy fz = cz |
Modifier and Type | Method and Description |
---|---|
void |
addContribution(SpacecraftState s,
TimeDerivativesEquations adder)
Compute the contribution of the constant thrust error model to the perturbing acceleration.
|
void |
addDAccDParam(SpacecraftState state,
Parameter param,
double[] dAccdParam)
Compute acceleration derivatives with respect to additional parameters.
|
void |
addDAccDState(SpacecraftState state,
double[][] dAccdPos,
double[][] dAccdVel)
Compute acceleration derivatives with respect to state parameters.
|
Vector3D |
computeAcceleration(SpacecraftState s)
Compute the acceleration due to the force.
|
boolean |
computeGradientPosition()
This method returns true if the acceleration partial derivatives with
respect to position have to be computed.
|
boolean |
computeGradientVelocity()
This method returns true if the acceleration partial derivatives with
respect to velocity have to be computed.
|
AbsoluteDate |
getEndDate()
Return the maneuver stop date (if a date or a
DateDetector as been provided). |
EventDetector[] |
getEventsDetectors()
Get the discrete events related to the model.
|
AbsoluteDate |
getStartDate()
Return the maneuver start date (if a date or a
DateDetector as been provided). |
boolean |
isFiring()
Returns maneuver status (firing or not).
|
void |
setFiring(boolean isFiring)
Set maneuver status.
|
addJacobiansParameter, addJacobiansParameter, addJacobiansParameter, supportsJacobianParameter
addParameter, getParameters, supportsParameter
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getParameters, supportsParameter
public ConstantThrustError(AbsoluteDate date, double duration, IParamDiffFunction fx, IParamDiffFunction fy, IParamDiffFunction fz)
Errors components are expressed in spacecraft frame.
date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)fx
- the parameterizable and differentiable function representing the x component of the thrust error.fy
- the parameterizable and differentiable function representing the y component of the thrust error.fz
- the parameterizable and differentiable function representing the z component of the thrust error.public ConstantThrustError(AbsoluteDate date, double duration, Parameter ax, Parameter bx, Parameter ay, Parameter by, Parameter az, Parameter bz, AbsoluteDate date0)
Errors components are expressed in spacecraft frame.
date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)ax
- the parameter representing the slope of the linear function
for the x component of the constant thrust error.bx
- the parameter representing the zero value of the linear function
for the x component of the constant thrust error.ay
- the parameter representing the slope of the linear function
for the y component of the constant thrust error.by
- the parameter representing the zero value of the linear function
for the y component of the constant thrust error.az
- the parameter representing the slope of the linear function
for the z component of the constant thrust error.bz
- the parameter representing the zero value of the linear function
for the z component of the constant thrust error.date0
- the zero value datepublic ConstantThrustError(AbsoluteDate date, double duration, double ax, double bx, double ay, double by, double az, double bz, AbsoluteDate date0)
Errors components are expressed in spacecraft frame.
date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)ax
- the slope of the linear function for the x component of the constant thrust error.bx
- the zero value of the linear function for the x component of the constant thrust error.ay
- the slope of the linear function for the y component of the constant thrust error.by
- the zero value of the linear function for the y component of the constant thrust erroraz
- the slope of the linear function for the z component of the constant thrust errorbz
- the zero value of the linear function for the z component of the constant thrust errordate0
- the zero value datepublic ConstantThrustError(AbsoluteDate date, double duration, Parameter cx, Parameter cy, Parameter cz)
Errors components are expressed in spacecraft frame.
date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)cx
- the parameter for the x component of the constant thrust errorcy
- the parameter for the y component of the constant thrust errorcz
- the parameter for the z component of the constant thrust errorpublic ConstantThrustError(AbsoluteDate date, double duration, double cx, double cy, double cz)
Errors components are expressed in spacecraft frame.
date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)cx
- the x component of the constant thrust errorcy
- the y component of the constant thrust errorcz
- the z component of the constant thrust errorpublic ConstantThrustError(AbsoluteDate date, double duration, Frame frame, IParamDiffFunction fx, IParamDiffFunction fy, IParamDiffFunction fz)
Errors components are expressed in provided frame.
WARNING : This constructor must not be used with aLocalOrbitalFrame
,
acceleration computation would fail.date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)frame
- the maneuver framefx
- the parameterizable and differentiable function representing the x component of the thrust error.fy
- the parameterizable and differentiable function representing the y component of the thrust error.fz
- the parameterizable and differentiable function representing the z component of the thrust error.public ConstantThrustError(AbsoluteDate date, double duration, Frame frame, Parameter ax, Parameter bx, Parameter ay, Parameter by, Parameter az, Parameter bz, AbsoluteDate date0)
Errors components are expressed in provided frame.
WARNING : This constructor must not be used with aLocalOrbitalFrame
,date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)frame
- the maneuver frameax
- the parameter representing the slope of the linear function
for the x component of the constant thrust error.bx
- the parameter representing the zero value of the linear function
for the x component of the constant thrust error.ay
- the parameter representing the slope of the linear function
for the y component of the constant thrust error.by
- the parameter representing the zero value of the linear function
for the y component of the constant thrust error.az
- the parameter representing the slope of the linear function
for the z component of the constant thrust error.bz
- the parameter representing the zero value of the linear function
for the z component of the constant thrust error.date0
- the zero value datepublic ConstantThrustError(AbsoluteDate date, double duration, Frame frame, double ax, double bx, double ay, double by, double az, double bz, AbsoluteDate date0)
Errors components are expressed in provided frame.
WARNING : This constructor must not be used with aLocalOrbitalFrame
,date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)frame
- the maneuver frameax
- the slope of the linear function for the x component of the constant thrust error.bx
- the zero value of the linear function for the x component of the constant thrust error.ay
- the slope of the linear function for the y component of the constant thrust error.by
- the zero value of the linear function for the y component of the constant thrust erroraz
- the slope of the linear function for the z component of the constant thrust errorbz
- the zero value of the linear function for the z component of the constant thrust errordate0
- the zero value datepublic ConstantThrustError(AbsoluteDate date, double duration, Frame frame, Parameter cx, Parameter cy, Parameter cz)
Errors components are expressed in provided frame.
WARNING : This constructor must not be used with aLocalOrbitalFrame
,date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)frame
- the maneuver framecx
- the parameter for the x component of the constant thrust errorcy
- the parameter for the y component of the constant thrust errorcz
- the parameter for the z component of the constant thrust errorpublic ConstantThrustError(AbsoluteDate date, double duration, Frame frame, double cx, double cy, double cz)
Errors components are expressed in provided frame.
WARNING : This constructor must not be used with aLocalOrbitalFrame
,date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)frame
- the maneuver framecx
- the x component of the constant thrust errorcy
- the y component of the constant thrust errorcz
- the z component of the constant thrust errorpublic ConstantThrustError(AbsoluteDate date, double duration, LOFType lofType, IParamDiffFunction fx, IParamDiffFunction fy, IParamDiffFunction fz)
Errors components are expressed in provided local orbital frame.
date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)lofType
- the LOF type of the maneuver framefx
- the parameterizable and differentiable function representing the x component of the thrust error.fy
- the parameterizable and differentiable function representing the y component of the thrust error.fz
- the parameterizable and differentiable function representing the z component of the thrust error.public ConstantThrustError(AbsoluteDate date, double duration, LOFType lofType, Parameter ax, Parameter bx, Parameter ay, Parameter by, Parameter az, Parameter bz, AbsoluteDate date0)
Errors components are expressed in provided local orbital frame.
date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)lofType
- the LOF type of the maneuver frameax
- the parameter representing the slope of the linear function
for the x component of the constant thrust errorbx
- the parameter representing the zero value of the linear function
for the x component of the constant thrust erroray
- the parameter representing the slope of the linear function
for the y component of the constant thrust errorby
- the parameter representing the zero value of the linear function
for the y component of the constant thrust erroraz
- the parameter representing the slope of the linear function
for the z component of the constant thrust errorbz
- the parameter representing the zero value of the linear function
for the z component of the constant thrust errordate0
- the zero value datepublic ConstantThrustError(AbsoluteDate date, double duration, LOFType lofType, double ax, double bx, double ay, double by, double az, double bz, AbsoluteDate date0)
Errors components are expressed in provided local orbital frame.
date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)lofType
- the LOF type of the maneuver frameax
- the slope of the linear function
for the x component of the constant thrust errorbx
- the zero value of the linear function
for the x component of the constant thrust erroray
- the slope of the linear function
for the y component of the constant thrust errorby
- the zero value of the linear function
for the y component of the constant thrust erroraz
- the slope of the linear function
for the z component of the constant thrust errorbz
- the zero value of the linear function
for the z component of the constant thrust errordate0
- the zero value datepublic ConstantThrustError(AbsoluteDate date, double duration, LOFType lofType, Parameter cx, Parameter cy, Parameter cz)
Errors components are expressed in provided local orbital frame.
date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)lofType
- the LOF type of the maneuver framecx
- the parameter for the x component of the constant thrust errorcy
- the parameter for the y component of the constant thrust errorcz
- the parameter for the z component of the constant thrust errorpublic ConstantThrustError(AbsoluteDate date, double duration, LOFType lofType, double cx, double cy, double cz)
Errors components are expressed in provided local orbital frame.
date
- maneuver dateduration
- the duration of the thrust (s) (if negative, the date is considered to be the stop date)lofType
- the LOF type of the maneuver framecx
- the x component of the constant thrust errorcy
- the y component of the constant thrust errorcz
- the z component of the constant thrust errorpublic ConstantThrustError(EventDetector startEventDetector, EventDetector stopEventDetector, IParamDiffFunction fx, IParamDiffFunction fy, IParamDiffFunction fz)
Errors components are expressed in spacecraft frame.
startEventDetector
- event detector upon which thrust should startsstopEventDetector
- event detector upon which thrust should stopsfx
- the parameterizable and differentiable function representing the x component of the thrust error.fy
- the parameterizable and differentiable function representing the y component of the thrust error.fz
- the parameterizable and differentiable function representing the z component of the thrust error.public ConstantThrustError(EventDetector startEventDetector, EventDetector stopEventDetector, Parameter cx, Parameter cy, Parameter cz)
Errors components are expressed in spacecraft frame.
startEventDetector
- event detector upon which thrust should startsstopEventDetector
- event detector upon which thrust should stopscx
- the x component of the constant thrust errorcy
- the y component of the constant thrust errorcz
- the z component of the constant thrust errorpublic ConstantThrustError(EventDetector startEventDetector, EventDetector stopEventDetector, Frame frame, IParamDiffFunction fx, IParamDiffFunction fy, IParamDiffFunction fz)
Errors components are expressed in provided frame.
WARNING : This constructor must not be used with aLocalOrbitalFrame
,startEventDetector
- event detector upon which thrust should startsstopEventDetector
- event detector upon which thrust should stopsframe
- the maneuver framefx
- the parameterizable and differentiable function representing the x component of the thrust error.fy
- the parameterizable and differentiable function representing the y component of the thrust error.fz
- the parameterizable and differentiable function representing the z component of the thrust error.public ConstantThrustError(EventDetector startEventDetector, EventDetector stopEventDetector, Frame frame, Parameter cx, Parameter cy, Parameter cz)
Errors components are expressed in provided frame.
WARNING : This constructor must not be used with aLocalOrbitalFrame
,startEventDetector
- event detector upon which thrust should startsstopEventDetector
- event detector upon which thrust should stopsframe
- the maneuver framecx
- the x component of the constant thrust errorcy
- the y component of the constant thrust errorcz
- the z component of the constant thrust errorpublic ConstantThrustError(EventDetector startEventDetector, EventDetector stopEventDetector, LOFType lofType, IParamDiffFunction fx, IParamDiffFunction fy, IParamDiffFunction fz)
Errors components are expressed in provided local orbital frame.
startEventDetector
- event detector upon which thrust should startsstopEventDetector
- event detector upon which thrust should stopslofType
- the LOF type of the maneuver framefx
- the parameterizable and differentiable function representing the x component of the thrust error.fy
- the parameterizable and differentiable function representing the y component of the thrust error.fz
- the parameterizable and differentiable function representing the z component of the thrust error.public ConstantThrustError(EventDetector startEventDetector, EventDetector stopEventDetector, LOFType lofType, Parameter cx, Parameter cy, Parameter cz)
Errors components are expressed in provided local orbital frame.
startEventDetector
- event detector upon which thrust should startsstopEventDetector
- event detector upon which thrust should stopslofType
- the LOF type of the maneuver framecx
- the x component of the constant thrust errorcy
- the y component of the constant thrust errorcz
- the z component of the constant thrust errorpublic void setFiring(boolean isFiring)
Used in conjunction with isFiring()
, the user can stop/restart a propagation during a maneuver.
isFiring
- true if propagation should start during the maneuverpublic boolean isFiring()
Used in conjunction with setFiring(boolean)
, the user can stop/restart a propagation during a maneuver.
public AbsoluteDate getStartDate()
DateDetector
as been provided).DateDetector
as been provided, null otherwise.public AbsoluteDate getEndDate()
DateDetector
as been provided).DateDetector
as been provided, null otherwise.public void addContribution(SpacecraftState s, TimeDerivativesEquations adder) throws PatriusException
addContribution
in interface ForceModel
s
- current state information: date, kinematics, attitudeadder
- object where the contribution should be addedPatriusException
- if some specific error occurspublic Vector3D computeAcceleration(SpacecraftState s) throws PatriusException
computeAcceleration
in interface ForceModel
s
- current state information: date, kinematics, attitudeSpacecraftState frame
PatriusException
- if some specific error occurspublic EventDetector[] getEventsDetectors()
getEventsDetectors
in interface ForceModel
public void addDAccDState(SpacecraftState state, double[][] dAccdPos, double[][] dAccdVel) throws PatriusException
IJacobiansParameterizable
addDAccDState
in interface IJacobiansParameterizable
state
- spacecraft statedAccdPos
- acceleration derivatives with respect to positiondAccdVel
- acceleration derivatives with respect to velocityPatriusException
- if derivatives cannot be computedpublic void addDAccDParam(SpacecraftState state, Parameter param, double[] dAccdParam) throws PatriusException
IJacobiansParameterizable
addDAccDParam
in interface IJacobiansParameterizable
state
- spacecraft stateparam
- the parameter with respect to which derivatives are requireddAccdParam
- acceleration derivatives with respect to specified parametersPatriusException
- if derivatives cannot be computedpublic boolean computeGradientPosition()
computeGradientPosition
in interface GradientModel
public boolean computeGradientVelocity()
computeGradientVelocity
in interface GradientModel
Copyright © 2017 CNES. All rights reserved.