Class AbstractIndirectShooting
- java.lang.Object
-
- org.orekit.control.indirect.shooting.AbstractIndirectShooting
-
- Direct Known Subclasses:
AbstractFixedBoundaryCartesianSingleShooting
public abstract class AbstractIndirectShooting extends Object
Abstract class for indirect shooting methods with numerical propagation.- Since:
- 12.2
- Author:
- Romain Serra
-
-
Field Summary
Fields Modifier and Type Field Description static double
DEFAULT_TOLERANCE_MASS_ADJOINT
Default value for convergence tolerance on mass adjoint variable.
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractIndirectShooting(ShootingPropagationSettings propagationSettings)
Constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected <T extends CalculusFieldElement<T>>
FieldExplicitRungeKuttaIntegrator<T>buildFieldIntegrator(FieldSpacecraftState<T> initialState)
Create Field integrator.protected abstract <T extends CalculusFieldElement<T>>
FieldOrdinaryDifferentialEquation<T>buildFieldODE(FieldAbsoluteDate<T> referenceDate)
Build Ordinary Differential Equation for Field.protected NumericalPropagator
buildPropagator(SpacecraftState initialState)
Create numerical propagator.ShootingPropagationSettings
getPropagationSettings()
Getter for the propagation settings.abstract ShootingBoundaryOutput
solve(double initialMass, double[] initialGuess)
Solve for the boundary conditions, given an initial mass and an initial guess for the adjoint variables.
-
-
-
Field Detail
-
DEFAULT_TOLERANCE_MASS_ADJOINT
public static final double DEFAULT_TOLERANCE_MASS_ADJOINT
Default value for convergence tolerance on mass adjoint variable.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
AbstractIndirectShooting
protected AbstractIndirectShooting(ShootingPropagationSettings propagationSettings)
Constructor.- Parameters:
propagationSettings
- propagation settings
-
-
Method Detail
-
getPropagationSettings
public ShootingPropagationSettings getPropagationSettings()
Getter for the propagation settings.- Returns:
- propagation settings
-
solve
public abstract ShootingBoundaryOutput solve(double initialMass, double[] initialGuess)
Solve for the boundary conditions, given an initial mass and an initial guess for the adjoint variables.- Parameters:
initialMass
- initial massinitialGuess
- initial guess- Returns:
- boundary problem solution
-
buildPropagator
protected NumericalPropagator buildPropagator(SpacecraftState initialState)
Create numerical propagator.- Parameters:
initialState
- initial state- Returns:
- numerical propagator
-
buildFieldIntegrator
protected <T extends CalculusFieldElement<T>> FieldExplicitRungeKuttaIntegrator<T> buildFieldIntegrator(FieldSpacecraftState<T> initialState)
Create Field integrator.- Type Parameters:
T
- field type- Parameters:
initialState
- initial state- Returns:
- integrator.
-
buildFieldODE
protected abstract <T extends CalculusFieldElement<T>> FieldOrdinaryDifferentialEquation<T> buildFieldODE(FieldAbsoluteDate<T> referenceDate)
Build Ordinary Differential Equation for Field.- Type Parameters:
T
- field type- Parameters:
referenceDate
- date defining the origin of times- Returns:
- Field ODE
- Since:
- 13.0
-
-