Class CR3BPMultipleShooter
- java.lang.Object
-
- org.orekit.utils.AbstractMultipleShooting
-
- org.orekit.propagation.numerical.cr3bp.CR3BPMultipleShooter
-
- All Implemented Interfaces:
MultipleShooting
public class CR3BPMultipleShooter extends AbstractMultipleShooting
Multiple shooting method applicable for orbits, either propagation in CR3BP, or in an ephemeris model.- Author:
- William Desprats
- See Also:
- "TRAJECTORY DESIGN AND ORBIT MAINTENANCE STRATEGIES IN MULTI-BODY DYNAMICAL REGIMES by Thomas A. Pavlak, Purdue University"
-
-
Constructor Summary
Constructors Constructor Description CR3BPMultipleShooter(List<SpacecraftState> initialGuessList, List<NumericalPropagator> propagatorList, List<AdditionalEquations> additionalEquations, double arcDuration, double tolerance)
Deprecated.as of 11.1, replaced byCR3BPMultipleShooter(List, List, List, double, double, int)
CR3BPMultipleShooter(List<SpacecraftState> initialGuessList, List<NumericalPropagator> propagatorList, List<STMEquations> stmEquations, double arcDuration, double tolerance, int maxIter)
Simple Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected double[]
computeAdditionalConstraints(List<SpacecraftState> propagatedSP)
Compute the additional constraints.protected double[][]
computeAdditionalJacobianMatrix(List<SpacecraftState> propagatedSP)
Compute a part of the Jacobian matrix from additional constraints.protected double[][]
computeEpochJacobianMatrix(List<SpacecraftState> propagatedSP)
Compute a part of the Jacobian matrix with derivatives from epoch.protected SpacecraftState
getAugmentedInitialState(int i)
Compute the additional state from the additionalEquations.-
Methods inherited from class org.orekit.utils.AbstractMultipleShooting
addConstraint, compute, getAugmentedInitialState, getConstraintsMap, getFreeEpochMap, getFreePatchPointMap, getNumberOfConstraints, getNumberOfFreeEpoch, getNumberOfFreeVariables, getPatchedSpacecraftState, getPatchPoint, getPropagatorList, isClosedOrbit, setClosedOrbitConstraint, setEpochFreedom, setPatchPointComponentFreedom, updateAdditionalConstraints
-
-
-
-
Constructor Detail
-
CR3BPMultipleShooter
@Deprecated public CR3BPMultipleShooter(List<SpacecraftState> initialGuessList, List<NumericalPropagator> propagatorList, List<AdditionalEquations> additionalEquations, double arcDuration, double tolerance)
Deprecated.as of 11.1, replaced byCR3BPMultipleShooter(List, List, List, double, double, int)
Simple Constructor.Standard constructor for multiple shooting which can be used with the CR3BP model.
- Parameters:
initialGuessList
- initial patch points to be corrected.propagatorList
- list of propagators associated to each patch point.additionalEquations
- list of additional equations linked to propagatorList.arcDuration
- initial guess of the duration of each arc.tolerance
- convergence tolerance on the constraint vector
-
CR3BPMultipleShooter
public CR3BPMultipleShooter(List<SpacecraftState> initialGuessList, List<NumericalPropagator> propagatorList, List<STMEquations> stmEquations, double arcDuration, double tolerance, int maxIter)
Simple Constructor.Standard constructor for multiple shooting which can be used with the CR3BP model.
- Parameters:
initialGuessList
- initial patch points to be corrected.propagatorList
- list of propagators associated to each patch point.stmEquations
- list of additional derivatives providers linked to propagatorList.arcDuration
- initial guess of the duration of each arc.tolerance
- convergence tolerance on the constraint vectormaxIter
- maximum number of iterations
-
-
Method Detail
-
getAugmentedInitialState
protected SpacecraftState getAugmentedInitialState(int i)
Compute the additional state from the additionalEquations.- Overrides:
getAugmentedInitialState
in classAbstractMultipleShooting
- Parameters:
i
- index of the state- Returns:
- augmentedSP SpacecraftState with the additional state within.
-
computeAdditionalJacobianMatrix
protected double[][] computeAdditionalJacobianMatrix(List<SpacecraftState> propagatedSP)
Compute a part of the Jacobian matrix from additional constraints.- Specified by:
computeAdditionalJacobianMatrix
in classAbstractMultipleShooting
- Parameters:
propagatedSP
- propagatedSP- Returns:
- jacobianMatrix Jacobian sub-matrix
-
computeEpochJacobianMatrix
protected double[][] computeEpochJacobianMatrix(List<SpacecraftState> propagatedSP)
Compute a part of the Jacobian matrix with derivatives from epoch. The CR3BP is a time invariant problem. The derivatives w.r.t. epoch are zero.- Overrides:
computeEpochJacobianMatrix
in classAbstractMultipleShooting
- Parameters:
propagatedSP
- propagatedSP- Returns:
- jacobianMatrix Jacobian sub-matrix
-
computeAdditionalConstraints
protected double[] computeAdditionalConstraints(List<SpacecraftState> propagatedSP)
Compute the additional constraints.- Specified by:
computeAdditionalConstraints
in classAbstractMultipleShooting
- Parameters:
propagatedSP
- propagated SpacecraftState- Returns:
- fxAdditionnal additional constraints
-
-