Class LeastSquaresTleGenerationAlgorithm
- java.lang.Object
-
- org.orekit.propagation.analytical.tle.generation.LeastSquaresTleGenerationAlgorithm
-
- All Implemented Interfaces:
TleGenerationAlgorithm
public class LeastSquaresTleGenerationAlgorithm extends Object implements TleGenerationAlgorithm
Least squares method to generate a usable TLE from a spacecraft state.- Since:
- 12.0
- Author:
- Mark Rutten
-
-
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_MAX_ITERATIONS
Default value for maximum number of iterations.
-
Constructor Summary
Constructors Constructor Description LeastSquaresTleGenerationAlgorithm()
Default constructor.LeastSquaresTleGenerationAlgorithm(int maxIterations)
Default constructor.LeastSquaresTleGenerationAlgorithm(int maxIterations, TimeScale utc, Frame teme)
Constructor.LeastSquaresTleGenerationAlgorithm(TimeScale utc, Frame teme, LeastSquaresConverter converter)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T extends CalculusFieldElement<T>>
FieldTLE<T>generate(FieldSpacecraftState<T> state, FieldTLE<T> templateTLE)
Generate a TLE from a given spacecraft state and a template TLE.TLE
generate(SpacecraftState state, TLE templateTLE)
Generate a TLE from a given spacecraft state and a template TLE.double
getRms()
Get the Root Mean Square of the TLE estimation.
-
-
-
Field Detail
-
DEFAULT_MAX_ITERATIONS
public static final int DEFAULT_MAX_ITERATIONS
Default value for maximum number of iterations.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
LeastSquaresTleGenerationAlgorithm
@DefaultDataContext public LeastSquaresTleGenerationAlgorithm()
Default constructor.Uses:
-
LeastSquaresTleGenerationAlgorithm
@DefaultDataContext public LeastSquaresTleGenerationAlgorithm(int maxIterations)
Default constructor.Uses:
- Parameters:
maxIterations
- maximum number of iterations for convergence
-
LeastSquaresTleGenerationAlgorithm
public LeastSquaresTleGenerationAlgorithm(int maxIterations, TimeScale utc, Frame teme)
Constructor.Uses the
LevenbergMarquardtOptimizer
.- Parameters:
maxIterations
- maximum number of iterations for convergenceutc
- UTC time scaleteme
- TEME frame
-
LeastSquaresTleGenerationAlgorithm
public LeastSquaresTleGenerationAlgorithm(TimeScale utc, Frame teme, LeastSquaresConverter converter)
Constructor.Enables to select the
optimizer
for theleast-squares converter
.- Parameters:
utc
- UTC time scaleteme
- TEME frameconverter
- osculating to mean orbit converter using a least-squares algorithm
-
-
Method Detail
-
generate
public TLE generate(SpacecraftState state, TLE templateTLE)
Generate a TLE from a given spacecraft state and a template TLE.The template TLE is only used to get identifiers like satellite number, launch year, etc. In other words, the keplerian elements contained in the generated TLE are based on the provided state and not the template TLE.
- Specified by:
generate
in interfaceTleGenerationAlgorithm
- Parameters:
state
- spacecraft statetemplateTLE
- template TLE- Returns:
- a TLE corresponding to the given state
-
getRms
public double getRms()
Get the Root Mean Square of the TLE estimation.Be careful that the RMS is updated each time the
generate(SpacecraftState, TLE)
method is called.- Returns:
- the RMS
-
generate
public <T extends CalculusFieldElement<T>> FieldTLE<T> generate(FieldSpacecraftState<T> state, FieldTLE<T> templateTLE)
Generate a TLE from a given spacecraft state and a template TLE.The template TLE is only used to get identifiers like satellite number, launch year, etc. In other words, the keplerian elements contained in the generated TLE are based on the provided state and not the template TLE.
- Specified by:
generate
in interfaceTleGenerationAlgorithm
- Type Parameters:
T
- type of the elements- Parameters:
state
- spacecraft statetemplateTLE
- template TLE- Returns:
- a TLE corresponding to the given state
-
-