Ginan
Loading...
Searching...
No Matches
planets.hpp File Reference

Functions

bool jplEphPos (struct jpl_eph_data *jplEph_ptr, MjDateTT mjdTT, E_ThirdBody thirdBody, Vector3d &pos, Vector3d *vel_ptr=nullptr)
 
bool planetPosEcef (GTime time, E_ThirdBody thirdBody, VectorEcef &ecef, ERPValues erpv={})
 
double sunVisibility (Vector3d &rSat, Vector3d &rSun, Vector3d &rMoon)
 Calculates fraction of Sun's disk visible by spacecraft 0 = full eclipse (umbra) 0 < fraction < 1 = partial eclipse (within penumbra) 1 = no eclipse (outside penumbra)
 

Enumerations

enum  E_SolarSysStarType {
  eMercury = 1 , eVenus = 2 , eEarth = 3 , eMars = 4 ,
  eJupiter = 5 , eSaturn = 6 , eUranus = 7 , eNeptune = 8 ,
  ePluto = 9 , eMoon = 10 , eSun = 11 , eSolarSysBarycenter = 12 ,
  eEarthMoonBaryCenter = 13 , eJplNutation = 14 , eJPLLnrLibration = 15 , eJPLLunarMantle = 16 ,
  eJPLTT_TDB = 17 , eSelfDefinedStarType = 99
}
 If nutations are wanted, set ntarg = 14. More...
 

Enumeration Type Documentation

◆ E_SolarSysStarType

If nutations are wanted, set ntarg = 14.


For librations, set ntarg = 15. set ncent= 0.
For TT-TDB, set ntarg = 17.
I've not actually seen an ntarg = 16 case yet.)

Enumerator
eMercury 

Mercury.

eVenus 

Venus.

eEarth 

Earth.

eMars 

Mars.

eJupiter 

Jupiter.

eSaturn 

Saturn.

eUranus 

Uranus.

eNeptune 

Neptune.

ePluto 

Pluto.

eMoon 

Moon.

eSun 

Sun.

eSolarSysBarycenter 

Solar System barycenter.

eEarthMoonBaryCenter 

Earth Moon barycenter.

eJplNutation 

nutations (longitude and obliq)

eJPLLnrLibration 

Lunar Librations.

eJPLLunarMantle 

Lunar Mantle omega_x,omega_y,omega_z.

eJPLTT_TDB 

TT-TDB, if on eph. file.

eSelfDefinedStarType 

Function Documentation

◆ jplEphPos()

bool jplEphPos ( struct jpl_eph_data * jplEph_ptr,
MjDateTT mjdTT,
E_ThirdBody thirdBody,
Vector3d & pos,
Vector3d * vel_ptr = nullptr )
Parameters
jplEph_ptrPointer to jpl binary data
mjdTTJulian_TT
thirdBodyStar to Calculate the Velocity and Position
posUnit: m
vel_ptrvel (m/s)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ planetPosEcef()

bool planetPosEcef ( GTime time,
E_ThirdBody thirdBody,
VectorEcef & ecef,
ERPValues erpv = {} )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ sunVisibility()

double sunVisibility ( Vector3d & rSat,
Vector3d & rSun,
Vector3d & rMoon )

Calculates fraction of Sun's disk visible by spacecraft 0 = full eclipse (umbra) 0 < fraction < 1 = partial eclipse (within penumbra) 1 = no eclipse (outside penumbra)

Parameters
rSatSatellite position (ECEF)
rSunSun position (ECEF)
rMoonMoon position (ECEF)
Here is the call graph for this function:
Here is the caller graph for this function: