Class AbstractVariableStepFieldIntegratorBuilder<T extends CalculusFieldElement<T>,W extends AdaptiveStepsizeFieldIntegrator<T>>
- java.lang.Object
-
- org.orekit.propagation.conversion.FieldAbstractIntegratorBuilder<T,W>
-
- org.orekit.propagation.conversion.AbstractVariableStepFieldIntegratorBuilder<T,W>
-
- Type Parameters:
T- type of the field elements
- All Implemented Interfaces:
FieldODEIntegratorBuilder<T>
- Direct Known Subclasses:
AbstractLimitedVariableStepFieldIntegratorBuilder,DormandPrince54FieldIntegratorBuilder,DormandPrince853FieldIntegratorBuilder,HighamHall54FieldIntegratorBuilder
public abstract class AbstractVariableStepFieldIntegratorBuilder<T extends CalculusFieldElement<T>,W extends AdaptiveStepsizeFieldIntegrator<T>> extends FieldAbstractIntegratorBuilder<T,W>
Abstract class for integrator builder using variable step size.- Author:
- Vincent Cucchietti
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractVariableStepFieldIntegratorBuilder(double minStep, double maxStep, ToleranceProvider toleranceProvider)Constructor with expected velocity error.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract WbuildIntegrator(Field<T> field, double[][] tolerances)Build integrator from absolute and relative tolerances.WbuildIntegrator(Field<T> field, Orbit orbit, OrbitType orbitType, PositionAngleType angleType)Build a first order integrator.WbuildIntegrator(FieldAbsolutePVCoordinates<T> fieldAbsolutePVCoordinates)Build a first order integrator.protected static ToleranceProvidergetDefaultToleranceProvider(double dP)Get a default tolerance provider.doublegetMaxStep()Getter for the maximum step.doublegetMinStep()Getter for the minimum step.ToleranceProvidergetToleranceProvider()Getter for the integration tolerance provider.protected double[][]getTolerances(Orbit orbit, OrbitType orbitType, PositionAngleType angleType)Computes tolerances.protected double[][]getTolerances(FieldAbsolutePVCoordinates<T> fieldAbsolutePVCoordinates)Computes tolerances.-
Methods inherited from class org.orekit.propagation.conversion.FieldAbstractIntegratorBuilder
buildIntegrator, buildIntegrator
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.orekit.propagation.conversion.FieldODEIntegratorBuilder
toODEIntegratorBuilder
-
-
-
-
Constructor Detail
-
AbstractVariableStepFieldIntegratorBuilder
protected AbstractVariableStepFieldIntegratorBuilder(double minStep, double maxStep, ToleranceProvider toleranceProvider)Constructor with expected velocity error.- Parameters:
minStep- minimum step size (s)maxStep- maximum step size (s)toleranceProvider- integration tolerance provider- Since:
- 13.0
-
-
Method Detail
-
getMaxStep
public double getMaxStep()
Getter for the maximum step.- Returns:
- max stepsize
- Since:
- 13.0
-
getMinStep
public double getMinStep()
Getter for the minimum step.- Returns:
- min stepsize
- Since:
- 13.0
-
getToleranceProvider
public ToleranceProvider getToleranceProvider()
Getter for the integration tolerance provider.- Returns:
- tolerance provider
- Since:
- 13.0
-
getTolerances
protected double[][] getTolerances(Orbit orbit, OrbitType orbitType, PositionAngleType angleType)
Computes tolerances.- Parameters:
orbit- initial orbitorbitType- orbit type to useangleType- position angle type to use- Returns:
- integrator tolerances
- Since:
- 13.0
-
getTolerances
protected double[][] getTolerances(FieldAbsolutePVCoordinates<T> fieldAbsolutePVCoordinates)
Computes tolerances.- Parameters:
fieldAbsolutePVCoordinates- position-velocity vector- Returns:
- integrator tolerances
- Since:
- 13.0
-
buildIntegrator
public W buildIntegrator(Field<T> field, Orbit orbit, OrbitType orbitType, PositionAngleType angleType)
Build a first order integrator.- Specified by:
buildIntegratorin interfaceFieldODEIntegratorBuilder<T extends CalculusFieldElement<T>>- Specified by:
buildIntegratorin classFieldAbstractIntegratorBuilder<T extends CalculusFieldElement<T>,W extends AdaptiveStepsizeFieldIntegrator<T>>- Parameters:
field- fieldorbit- reference orbitorbitType- orbit type to useangleType- position angle type to use- Returns:
- a first order integrator ready to use
-
buildIntegrator
public W buildIntegrator(FieldAbsolutePVCoordinates<T> fieldAbsolutePVCoordinates)
Build a first order integrator. Non-orbit version.- Specified by:
buildIntegratorin interfaceFieldODEIntegratorBuilder<T extends CalculusFieldElement<T>>- Overrides:
buildIntegratorin classFieldAbstractIntegratorBuilder<T extends CalculusFieldElement<T>,W extends AdaptiveStepsizeFieldIntegrator<T>>- Parameters:
fieldAbsolutePVCoordinates- absolute position-velocity- Returns:
- a first order integrator ready to use
-
buildIntegrator
protected abstract W buildIntegrator(Field<T> field, double[][] tolerances)
Build integrator from absolute and relative tolerances.- Parameters:
field- fieldtolerances- array of tolerances- Returns:
- integrator
- Since:
- 13.0
-
getDefaultToleranceProvider
protected static ToleranceProvider getDefaultToleranceProvider(double dP)
Get a default tolerance provider.- Parameters:
dP- expected position error (m)- Returns:
- tolerance provider
- Since:
- 13.0
-
-