public class NumericalOrbitDetermination extends AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
Constructor and Description |
---|
NumericalOrbitDetermination() |
Modifier and Type | Method and Description |
---|---|
protected void |
createGravityField(KeyValueFileParser<ParameterKey> parser)
Create a gravity field from input parameters.
|
protected org.orekit.propagation.conversion.NumericalPropagatorBuilder |
createPropagatorBuilder(org.orekit.orbits.Orbit referenceOrbit,
org.orekit.propagation.conversion.ODEIntegratorBuilder builder,
double positionScale)
Create a propagator builder from input parameters.
|
protected double |
getMu()
Get the central attraction coefficient.
|
static void |
main(String[] args)
Program entry point.
|
protected void |
setAttitudeProvider(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder,
org.orekit.attitudes.AttitudeProvider attitudeProvider)
Set attitude provider.
|
protected org.orekit.utils.ParameterDriver[] |
setDrag(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder,
org.orekit.models.earth.atmosphere.Atmosphere atmosphere,
org.orekit.forces.drag.DragSensitive spacecraft)
Set drag force model.
|
protected org.orekit.utils.ParameterDriver[] |
setGravity(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder,
org.orekit.bodies.OneAxisEllipsoid body)
Set gravity force model.
|
protected void |
setMass(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder,
double mass)
Set satellite mass.
|
protected org.orekit.utils.ParameterDriver[] |
setOceanTides(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder,
org.orekit.utils.IERSConventions conventions,
org.orekit.bodies.OneAxisEllipsoid body,
int degree,
int order)
Set third body attraction force model.
|
protected org.orekit.utils.ParameterDriver[] |
setPolynomialAcceleration(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder,
String name,
org.hipparchus.geometry.euclidean.threed.Vector3D direction,
int degree)
Set polynomial acceleration force model.
|
protected org.orekit.utils.ParameterDriver[] |
setRelativity(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder)
Set relativity force model.
|
protected org.orekit.utils.ParameterDriver[] |
setSolarRadiationPressure(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder,
org.orekit.bodies.CelestialBody sun,
double equatorialRadius,
org.orekit.forces.radiation.RadiationSensitive spacecraft)
Set solar radiation pressure force model.
|
protected org.orekit.utils.ParameterDriver[] |
setSolidTides(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder,
org.orekit.utils.IERSConventions conventions,
org.orekit.bodies.OneAxisEllipsoid body,
org.orekit.bodies.CelestialBody[] solidTidesBodies)
Set third body attraction force model.
|
protected org.orekit.utils.ParameterDriver[] |
setThirdBody(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder,
org.orekit.bodies.CelestialBody thirdBody)
Set third body attraction force model.
|
run
public static void main(String[] args)
args
- program arguments (unused here)protected void createGravityField(KeyValueFileParser<ParameterKey> parser) throws NoSuchElementException
createGravityField
in class AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
parser
- input file parserNoSuchElementException
- if input parameters are missingprotected double getMu()
getMu
in class AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
protected org.orekit.propagation.conversion.NumericalPropagatorBuilder createPropagatorBuilder(org.orekit.orbits.Orbit referenceOrbit, org.orekit.propagation.conversion.ODEIntegratorBuilder builder, double positionScale)
The advantage of using the DSST instead of the numerical propagator is that it is possible to use greater values for the minimum and maximum integration steps.
createPropagatorBuilder
in class AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
referenceOrbit
- reference orbit from which real orbits will be builtbuilder
- first order integrator builderpositionScale
- scaling factor used for orbital parameters normalization
(typically set to the expected standard deviation of the position)protected void setMass(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder, double mass)
setMass
in class AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
propagatorBuilder
- propagator buildermass
- initial massprotected org.orekit.utils.ParameterDriver[] setGravity(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder, org.orekit.bodies.OneAxisEllipsoid body)
setGravity
in class AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
propagatorBuilder
- propagator builderbody
- central bodyprotected org.orekit.utils.ParameterDriver[] setOceanTides(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder, org.orekit.utils.IERSConventions conventions, org.orekit.bodies.OneAxisEllipsoid body, int degree, int order)
setOceanTides
in class AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
propagatorBuilder
- propagator builderconventions
- IERS conventions to usebody
- central bodydegree
- degree of the tide model to loadorder
- order of the tide model to loadprotected org.orekit.utils.ParameterDriver[] setSolidTides(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder, org.orekit.utils.IERSConventions conventions, org.orekit.bodies.OneAxisEllipsoid body, org.orekit.bodies.CelestialBody[] solidTidesBodies)
setSolidTides
in class AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
propagatorBuilder
- propagator builderconventions
- IERS conventions to usebody
- central bodysolidTidesBodies
- third bodies generating solid tidesprotected org.orekit.utils.ParameterDriver[] setThirdBody(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder, org.orekit.bodies.CelestialBody thirdBody)
setThirdBody
in class AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
propagatorBuilder
- propagator builderthirdBody
- third bodyprotected org.orekit.utils.ParameterDriver[] setDrag(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder, org.orekit.models.earth.atmosphere.Atmosphere atmosphere, org.orekit.forces.drag.DragSensitive spacecraft)
setDrag
in class AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
propagatorBuilder
- propagator builderatmosphere
- atmospheric modelspacecraft
- spacecraft modelprotected org.orekit.utils.ParameterDriver[] setSolarRadiationPressure(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder, org.orekit.bodies.CelestialBody sun, double equatorialRadius, org.orekit.forces.radiation.RadiationSensitive spacecraft)
setSolarRadiationPressure
in class AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
propagatorBuilder
- propagator buildersun
- Sun modelequatorialRadius
- central body equatorial radius (for shadow computation)spacecraft
- spacecraft modelprotected org.orekit.utils.ParameterDriver[] setRelativity(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder)
setRelativity
in class AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
propagatorBuilder
- propagator builderprotected org.orekit.utils.ParameterDriver[] setPolynomialAcceleration(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder, String name, org.hipparchus.geometry.euclidean.threed.Vector3D direction, int degree)
setPolynomialAcceleration
in class AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
propagatorBuilder
- propagator buildername
- name of the accelerationdirection
- normalized direction of the accelerationdegree
- polynomial degreeprotected void setAttitudeProvider(org.orekit.propagation.conversion.NumericalPropagatorBuilder propagatorBuilder, org.orekit.attitudes.AttitudeProvider attitudeProvider)
setAttitudeProvider
in class AbstractOrbitDetermination<org.orekit.propagation.conversion.NumericalPropagatorBuilder>
propagatorBuilder
- propagator builderattitudeProvider
- attitude providerCopyright © 2002–2020 CS Systèmes d'Information. All rights reserved.