|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.orekit.propagation.numerical.NumericalPropagator
org.orekit.propagation.numerical.NumericalPropagatorWithJacobians
public class NumericalPropagatorWithJacobians
This class propagates orbits using
numerical integration and enables jacobians computation for orbit parameters
and partial derivatives computation with respect to some force models parameters.
As of 5.0, this class is still considered experimental, so use it with care, the API could change in the future.
The underlying numerical integrator configuration can be exactly the same
as these for a simple numerical integration.
The Jacobian for the six equinoctial orbit parameters
(a, ex, ey, hx, hy, lv)
and the mass is computed as a 7x7 array such as:
dFdY[i][j] = dyi/dyj
with: y0 = a, y1 = ex, y2 = ey, y3 = hx, y4 = hy, y5 = lv, y6 = mass
Partial derivatives can also be computed for the 7 elements state vector with
respect to n selected parameters from
force models. They are computed as a 7xn array:
dFdP[i][j] = dyi/dpj
NumericalPropagator,
ForceModelWithJacobians,
Serialized Form| Field Summary |
|---|
| Fields inherited from class org.orekit.propagation.numerical.NumericalPropagator |
|---|
attitudeLaw, calls, currentState, detectors, forceModels, initialState, integrator, mode, modeHandler, mu, startDate, stateVector |
| Fields inherited from interface org.orekit.propagation.Propagator |
|---|
EPHEMERIS_GENERATION_MODE, MASTER_MODE, SLAVE_MODE |
| Constructor Summary | |
|---|---|
NumericalPropagatorWithJacobians(org.apache.commons.math.ode.FirstOrderIntegrator integrator)
Create a new instance of NumericalPropagatorWithJacobians. |
|
| Method Summary | |
|---|---|
void |
addForceModel(ForceModel model)
Add a force model to the global perturbation model. |
java.lang.String[] |
getParameterNames()
Get the parameters selected for jacobian processing. |
SpacecraftState |
propagate(AbsoluteDate finalDate,
double[][] dFdY,
double[][] dFdP)
Propagate towards a target date and compute partial derivatives. |
void |
removeForceModels()
Remove all perturbing force models from the global perturbation model. |
void |
selectParameters(java.lang.String[] parameters)
Select the parameters to consider for jacobian processing. |
| Methods inherited from class org.orekit.propagation.numerical.NumericalPropagator |
|---|
addEventDetector, clearEventsDetectors, getCalls, getEventsDetectors, getGeneratedEphemeris, getInitialState, getMode, getMu, getPVCoordinates, propagate, resetInitialState, setAttitudeLaw, setEphemerisMode, setInitialState, setIntegrator, setMasterMode, setMasterMode, setMu, setSlaveMode, setUpEventDetector |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public NumericalPropagatorWithJacobians(org.apache.commons.math.ode.FirstOrderIntegrator integrator)
addForceModel is not
called after creation, the integrated orbit will follow a keplerian
evolution only.
integrator - numerical integrator to use for propagation.| Method Detail |
|---|
public void addForceModel(ForceModel model)
addForceModel in class NumericalPropagatormodel - perturbing force model to addremoveForceModels(),
removeForceModels()public void removeForceModels()
Once all perturbing forces have been removed (and as long as no new force model is added), the integrated orbit will follow a keplerian evolution only.
removeForceModels in class NumericalPropagatoraddForceModel(ForceModel)public void selectParameters(java.lang.String[] parameters)
Parameters names have to be consistent with some
ForceModelWithJacobians added elsewhere.
parameters - parameters to consider for jacobian processingaddForceModel(ForceModel),
ForceModelWithJacobians,
Parameterizablepublic java.lang.String[] getParameterNames()
selectParameters(String[])
public SpacecraftState propagate(AbsoluteDate finalDate,
double[][] dFdY,
double[][] dFdP)
throws PropagationException
Propagation is the same as the
basic one.
Jacobian for orbit parameters is given as a 7x7 array.
Partial derivatives will be computed as a 7xn array
when n parameters have been selected
(n may be 0).
Those parameters are related to some force models
which must have been added elsewhere.
finalDate - target date towards which orbit state should be propagateddFdY - equinoctial orbit parameters + mass jacobian (7x7 array)dFdP - partial derivatives with respect to selected parameters (7xn)
PropagationException - if state cannot be propagated
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||