Stellarium  0.20.4
Public Member Functions | Static Public Member Functions
KeplerOrbit Class Reference

Public Member Functions

 KeplerOrbit (double pericenterDistance, double eccentricity, double inclination, double ascendingNode, double argOfPerhelion, double timeAtPerihelion, double orbitGoodDays, double meanMotion, double parentRotObliquity, double parentRotAscendingnode, double parentRotJ2000Longitude, double centralMass=1.0)
virtual void positionAtTimevInVSOP87Coordinates (double JDE, double *v) Q_DECL_OVERRIDE
 Compute the object position for a specified Julian day. More...
bool getUpdateTails () const
 updating comet tails is a bit expensive. try not to overdo it.
void setUpdateTails (const bool update)
virtual Vec3d getVelocity () const Q_DECL_OVERRIDE
 return speed value [AU/d] last computed by positionAtTimevInVSOP87Coordinates(JDE, v)
virtual void getVelocity (double *vel) const Q_DECL_OVERRIDE
 write speed value [AU/d] into first 3 elements of vel. (zero in the base class)
virtual double getSemimajorAxis () const Q_DECL_OVERRIDE
 Returns semimajor axis [AU] for elliptic orbit, 0 for a parabolic orbit, and a negative value [AU] for hyperbolic orbit.
virtual double getEccentricity () const Q_DECL_OVERRIDE
 return orbit eccentricity. (zero in the base class)
bool objectDateValid (const double JDE) const
double calculateSiderealPeriod () const
 Calculate sidereal period in days from semi-major axis and central mass. If SMA<=0 (hyperbolic orbit), return 0.
- Public Member Functions inherited from Orbit
void setParentOrientation (const double parentRotObliquity, const double parentRotAscendingNode, const double parentRotJ2000Longitude)
 For planet moons which have orbits given in relation to their parent planet's equator. More...

Static Public Member Functions

static double calculateSiderealPeriod (const double semiMajorAxis, const double centralMass)

Additional Inherited Members

- Protected Attributes inherited from Orbit
double rotateToVsop87 [9]

Member Function Documentation

◆ calculateSiderealPeriod()

static double KeplerOrbit::calculateSiderealPeriod ( const double  semiMajorAxis,
const double  centralMass 
semiMajorAxisin AU. If SMA<=0 (hyperbolic orbit), return 0.
centralMassin units of Solar masses

◆ positionAtTimevInVSOP87Coordinates()

virtual void KeplerOrbit::positionAtTimevInVSOP87Coordinates ( double  JDE,
double *  v 
JDEJulian Ephemeris Day
vdouble vector of at least 3 elements. The first three will receive X/Y/Z values in AU.

Reimplemented from Orbit.