Package org.orekit.propagation
Interface ToleranceProvider
- All Superinterfaces:
CartesianToleranceProvider
- All Known Implementing Classes:
SimpleToleranceProvider
Interface to define integration tolerances for adaptive schemes (like the embedded Runge-Kutta ones) propagating
the position-velocity vector (or an equivalent set of coordinates) and the mass, for a total of 7 primary dependent variables (in that order).
The tolerances are given as an array of array: each row has 7 elements, whilst the first column is the absolute tolerances and the second the relative ones.
- Since:
- 13.0
- Author:
- Romain Serra
- See Also:
-
Field Summary
Fields inherited from interface org.orekit.propagation.CartesianToleranceProvider
DEFAULT_ABSOLUTE_MASS_TOLERANCE -
Method Summary
Modifier and TypeMethodDescriptionstatic ToleranceProvidergetDefaultToleranceProvider(double dP) Defines a default tolerance provider.default <T extends CalculusFieldElement<T>>
double[][]getTolerances(FieldOrbit<T> referenceOrbit, OrbitType propagationOrbitType) Retrieve the integration tolerances given a reference Field orbit.default <T extends CalculusFieldElement<T>>
double[][]getTolerances(FieldOrbit<T> referenceOrbit, OrbitType propagationOrbitType, PositionAngleType positionAngleType) Retrieve the integration tolerances given a reference Field orbit.default double[][]getTolerances(Orbit referenceOrbit, OrbitType propagationOrbitType) Retrieve the integration tolerances given a reference orbit.double[][]getTolerances(Orbit referenceOrbit, OrbitType propagationOrbitType, PositionAngleType positionAngleType) Retrieve the integration tolerances given a reference orbit.static ToleranceProviderof(CartesianToleranceProvider cartesianToleranceProvider) Build a provider based on a tolerance provider for Cartesian coordinates.Methods inherited from interface org.orekit.propagation.CartesianToleranceProvider
getTolerances, getTolerances, getTolerances, getTolerances, getTolerances, getTolerances
-
Method Details
-
getTolerances
double[][] getTolerances(Orbit referenceOrbit, OrbitType propagationOrbitType, PositionAngleType positionAngleType) Retrieve the integration tolerances given a reference orbit.- Parameters:
referenceOrbit- orbitpropagationOrbitType- orbit type for propagation (can be different from the input orbit one)positionAngleType- reference position angle type- Returns:
- absolute and relative tolerances
-
getTolerances
Retrieve the integration tolerances given a reference orbit.- Parameters:
referenceOrbit- orbitpropagationOrbitType- orbit type for propagation (can be different from the input orbit one)- Returns:
- absolute and relative tolerances
-
getTolerances
default <T extends CalculusFieldElement<T>> double[][] getTolerances(FieldOrbit<T> referenceOrbit, OrbitType propagationOrbitType, PositionAngleType positionAngleType) Retrieve the integration tolerances given a reference Field orbit.- Type Parameters:
T- field type- Parameters:
referenceOrbit- orbitpropagationOrbitType- orbit type for propagation (can be different from the input orbit one)positionAngleType- reference position angle type- Returns:
- absolute and relative tolerances
-
getTolerances
default <T extends CalculusFieldElement<T>> double[][] getTolerances(FieldOrbit<T> referenceOrbit, OrbitType propagationOrbitType) Retrieve the integration tolerances given a reference Field orbit.- Type Parameters:
T- field type- Parameters:
referenceOrbit- orbitpropagationOrbitType- orbit type for propagation (can be different from the input orbit one)- Returns:
- absolute and relative tolerances
-
of
Build a provider based on a tolerance provider for Cartesian coordinates.Orbits Jacobian matrices are used to get consistent errors on orbital parameters.
- Parameters:
cartesianToleranceProvider- tolerance provider dedicated to Cartesian propagation- Returns:
- tolerance provider
-
getDefaultToleranceProvider
Defines a default tolerance provider. It is consistent with values from previous versions of Orekit obtained via other APIs.The tolerances are only orders of magnitude, and integrator tolerances are only local estimates, not global ones. So some care must be taken when using these tolerances. Setting 1mm as a position error does NOT mean the tolerances will guarantee a 1mm error position after several orbits integration.
- Parameters:
dP- expected position error- Returns:
- tolerances
-