Class AbstractFixedBoundaryCartesianSingleShooting
- java.lang.Object
-
- org.orekit.control.indirect.shooting.AbstractIndirectShooting
-
- org.orekit.control.indirect.shooting.AbstractFixedInitialCartesianSingleShooting
-
- org.orekit.control.indirect.shooting.AbstractFixedBoundaryCartesianSingleShooting
-
- Direct Known Subclasses:
NewtonFixedBoundaryCartesianSingleShooting
public abstract class AbstractFixedBoundaryCartesianSingleShooting extends AbstractFixedInitialCartesianSingleShooting
Abstract class for indirect single shooting methods with Cartesian coordinates for fixed time fixed boundary. Terminal mass is assumed to be free, thus corresponding adjoint must vanish at terminal time. On the other hand, other terminal adjoint variables are free because the Cartesian state is fixed.- Since:
- 12.2
- Author:
- Romain Serra
- See Also:
CartesianAdjointDerivativesProvider
,FieldCartesianAdjointDerivativesProvider
-
-
Field Summary
-
Fields inherited from class org.orekit.control.indirect.shooting.AbstractIndirectShooting
DEFAULT_TOLERANCE_MASS_ADJOINT
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractFixedBoundaryCartesianSingleShooting(ShootingPropagationSettings propagationSettings, FixedTimeBoundaryOrbits boundaryConditions, CartesianBoundaryConditionChecker conditionChecker)
Constructor with boundary conditions as orbits.protected
AbstractFixedBoundaryCartesianSingleShooting(ShootingPropagationSettings propagationSettings, FixedTimeCartesianBoundaryStates boundaryConditions, CartesianBoundaryConditionChecker conditionChecker)
Constructor with boundary conditions as orbits.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ShootingBoundaryOutput
computeCandidateSolution(SpacecraftState initialState, int iterationCount)
Form solution container with input initial state.protected CartesianBoundaryConditionChecker
getConditionChecker()
Getter for the boundary condition checker.double
getScalePositionDefects()
Getter for scale of position defects.double
getScaleVelocityDefects()
Getter for scale of velocity defects.protected TimeStampedPVCoordinates
getTerminalCartesianState()
Getter for the target terminal Cartesian state vector.void
setScalePositionDefects(double scalePositionDefects)
Setter for scale of position defects.void
setScaleVelocityDefects(double scaleVelocityDefects)
Setter for scale of velocity defects.void
setToleranceMassAdjoint(double toleranceMassAdjoint)
Setter for mass adjoint tolerance.-
Methods inherited from class org.orekit.control.indirect.shooting.AbstractFixedInitialCartesianSingleShooting
buildFieldODE, buildPropagator, createFieldInitialStateWithMassAndAdjoint, createFieldState, createInitialStateWithMass, getMaximumIterationCount, getScales, solve, solve, updateShootingVariables
-
Methods inherited from class org.orekit.control.indirect.shooting.AbstractIndirectShooting
buildFieldIntegrator, getPropagationSettings
-
-
-
-
Constructor Detail
-
AbstractFixedBoundaryCartesianSingleShooting
protected AbstractFixedBoundaryCartesianSingleShooting(ShootingPropagationSettings propagationSettings, FixedTimeCartesianBoundaryStates boundaryConditions, CartesianBoundaryConditionChecker conditionChecker)
Constructor with boundary conditions as orbits.- Parameters:
propagationSettings
- propagation settingsboundaryConditions
- boundary conditions asFixedTimeCartesianBoundaryStates
conditionChecker
- boundary condition checker
-
AbstractFixedBoundaryCartesianSingleShooting
protected AbstractFixedBoundaryCartesianSingleShooting(ShootingPropagationSettings propagationSettings, FixedTimeBoundaryOrbits boundaryConditions, CartesianBoundaryConditionChecker conditionChecker)
Constructor with boundary conditions as orbits.- Parameters:
propagationSettings
- propagation settingsboundaryConditions
- boundary conditions asFixedTimeBoundaryOrbits
conditionChecker
- boundary condition checker
-
-
Method Detail
-
setScalePositionDefects
public void setScalePositionDefects(double scalePositionDefects)
Setter for scale of position defects.- Parameters:
scalePositionDefects
- new scale
-
getScalePositionDefects
public double getScalePositionDefects()
Getter for scale of position defects.- Returns:
- scale
-
setScaleVelocityDefects
public void setScaleVelocityDefects(double scaleVelocityDefects)
Setter for scale of velocity defects.- Parameters:
scaleVelocityDefects
- new scale
-
getScaleVelocityDefects
public double getScaleVelocityDefects()
Getter for scale of velocity defects.- Returns:
- scale
-
getConditionChecker
protected CartesianBoundaryConditionChecker getConditionChecker()
Getter for the boundary condition checker.- Returns:
- checker
-
getTerminalCartesianState
protected TimeStampedPVCoordinates getTerminalCartesianState()
Getter for the target terminal Cartesian state vector.- Returns:
- expected terminal state
-
setToleranceMassAdjoint
public void setToleranceMassAdjoint(double toleranceMassAdjoint)
Setter for mass adjoint tolerance.- Parameters:
toleranceMassAdjoint
- new tolerance value
-
computeCandidateSolution
public ShootingBoundaryOutput computeCandidateSolution(SpacecraftState initialState, int iterationCount)
Form solution container with input initial state.- Specified by:
computeCandidateSolution
in classAbstractFixedInitialCartesianSingleShooting
- Parameters:
initialState
- initial stateiterationCount
- iteration count- Returns:
- candidate solution
-
-