public class KeplerianParameters extends AbstractOrbitalParameters
The parameters used internally are the classical keplerian elements:
a e i ω Ω vwhere ω stands for the Perigee Argument, Ω stands for the Right Ascension of the Ascending Node and v stands for the true anomaly.
The eccentricity must be greater than or equal to zero.
This class supports hyperbolic orbits, using the convention that semi major axis is negative for such orbits (and of course eccentricity is greater than 1).
When orbit is either equatorial or circular, some keplerian elements (more precisely ω and Ω) become
ambiguous so this class should not be used for such orbits. For this reason, equinoctial
parameters
is the recommended way to represent orbits.
Constructor and Description |
---|
KeplerianParameters(double aIn,
double eIn,
double iIn,
double paIn,
double raanIn,
double anomaly,
PositionAngle type,
double mu)
Creates a new instance.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object object)
Test for the equality of two orbits.
|
double |
getA()
Get the semi-major axis.
|
AlternateEquinoctialParameters |
getAlternateEquinoctialParameters()
Convert current orbital parameters into alternate equinoctial parameters.
|
double |
getAnomaly(PositionAngle type)
Get the anomaly.
|
ApsisAltitudeParameters |
getApsisAltitudeParameters(double ae)
Convert current orbital parameters into apsis (using altitude) parameters.
|
ApsisRadiusParameters |
getApsisRadiusParameters()
Convert current orbital parameters into apsis (using radius) parameters.
|
CartesianParameters |
getCartesianParameters()
Convert current orbital parameters into cartesian parameters.
|
CircularParameters |
getCircularParameters()
Convert current orbital parameters into circular parameters.
|
double |
getE()
Get the eccentricity.
|
double |
getEccentricAnomaly()
Get the eccentric anomaly.
|
EquatorialParameters |
getEquatorialParameters()
Convert current orbital parameters into equatorial parameters.
|
EquinoctialParameters |
getEquinoctialParameters()
Convert current orbital parameters into equinoctial parameters.
|
double |
getI()
Get the inclination.
|
KeplerianParameters |
getKeplerianParameters()
Convert current orbital parameters into Keplerian parameters.
|
double |
getMeanAnomaly()
Get the mean anomaly.
|
double |
getPerigeeArgument()
Get the perigee argument.
|
ReentryParameters |
getReentryParameters(double ae,
double f)
Convert current orbital parameters into reentry parameters.
|
double |
getRightAscensionOfAscendingNode()
Get the right ascension of the ascending node.
|
StelaEquinoctialParameters |
getStelaEquinoctialParameters()
Convert current orbital parameters into Stela equinoctial parameters.
|
double |
getTrueAnomaly()
Get the true anomaly.
|
int |
hashCode()
Get a hashCode for the orbit.
|
String |
toString()
Returns a string representation of this keplerian parameters object.
|
getMu
public KeplerianParameters(double aIn, double eIn, double iIn, double paIn, double raanIn, double anomaly, PositionAngle type, double mu)
aIn
- semi-major axis (m), negative for hyperbolic orbitseIn
- eccentricity (e >= 0)iIn
- inclination (rad)paIn
- perigee argument (ω, rad)raanIn
- right ascension of ascending node (Ω, rad)anomaly
- mean, eccentric or true anomaly (rad)type
- type of anomalymu
- central attraction coefficient (m3/s2)IllegalArgumentException
- a and e don't match for hyperbolic orbits,
or v is out of range for hyperbolic orbitspublic double getA()
public double getE()
public double getI()
public double getPerigeeArgument()
public double getRightAscensionOfAscendingNode()
public double getAnomaly(PositionAngle type)
type
- type of the anglepublic double getTrueAnomaly()
public double getEccentricAnomaly()
public double getMeanAnomaly()
public CartesianParameters getCartesianParameters()
CartesianParameters
public KeplerianParameters getKeplerianParameters()
KeplerianParameters
public CircularParameters getCircularParameters()
CircularParameters
public EquatorialParameters getEquatorialParameters()
EquatorialParameters
public EquinoctialParameters getEquinoctialParameters()
EquinoctialParameters
public ApsisAltitudeParameters getApsisAltitudeParameters(double ae)
ae
- equatorial radius (m)ApsisAltitudeParameters
public ApsisRadiusParameters getApsisRadiusParameters()
ApsisRadiusParameters
public ReentryParameters getReentryParameters(double ae, double f)
ae
- equatorial radius (m)f
- flattening (f = (a-b)/a)ReentryParameters
public StelaEquinoctialParameters getStelaEquinoctialParameters()
StelaEquinoctialParameters
public AlternateEquinoctialParameters getAlternateEquinoctialParameters()
AlternateEquinoctialParameters
public String toString()
public boolean equals(Object object)
Orbits are considered equals if they have the same type and all their attributes are equals. In particular, the orbits frame are considered equals if they represent the same instance. If they have the same attributes but are not the same instance, the method will return false.
equals
in interface IOrbitalParameters
equals
in class Object
object
- Object to test for equality to thispublic int hashCode()
hashCode
in interface IOrbitalParameters
hashCode
in class Object
Copyright © 2021 CNES. All rights reserved.