libnova  v 0.16.0
Functions
Mars

Functions

double LIBNOVA_EXPORT ln_get_mars_sdiam (double JD)
 Calculate the semidiameter of Mars in arc seconds. More...
 
int LIBNOVA_EXPORT ln_get_mars_rst (double JD, struct ln_lnlat_posn *observer, struct ln_rst_time *rst)
 Calculate the time of rise, set and transit for Mars. More...
 
void LIBNOVA_EXPORT ln_get_mars_helio_coords (double JD, struct ln_helio_posn *position)
 Calculate Mars heliocentric coordinates. More...
 
void LIBNOVA_EXPORT ln_get_mars_equ_coords (double JD, struct ln_equ_posn *position)
 Calculate Mars equatorial coordinates. More...
 
double LIBNOVA_EXPORT ln_get_mars_earth_dist (double JD)
 Calculate the distance between Mars and the Earth. More...
 
double LIBNOVA_EXPORT ln_get_mars_solar_dist (double JD)
 Calculate the distance between Mars and the Sun. More...
 
double LIBNOVA_EXPORT ln_get_mars_magnitude (double JD)
 Calculate the visible magnitude of Mars. More...
 
double LIBNOVA_EXPORT ln_get_mars_disk (double JD)
 Calculate the illuminated fraction of Mars disk. More...
 
double LIBNOVA_EXPORT ln_get_mars_phase (double JD)
 Calculate the phase angle of Mars. More...
 
void LIBNOVA_EXPORT ln_get_mars_rect_helio (double JD, struct ln_rect_posn *position)
 Calculate Mars rectangular heliocentric coordinates. More...
 

Detailed Description

Functions relating to the planet Mars.

All angles are expressed in degrees.

Function Documentation

double ln_get_mars_disk ( double  JD)

Calculate the illuminated fraction of Mars disk.

Returns
Illuminated fraction of Mars disk
Parameters
JDJulian Day.
Returns
Illuminated fraction of Mars disk (Value between 0 - 1)

Calculates the illuminated fraction of Mars disk for given julian day.

References ln_get_earth_solar_dist(), ln_get_mars_earth_dist(), ln_get_mars_solar_dist(), and ln_helio_posn::R.

double ln_get_mars_earth_dist ( double  JD)

Calculate the distance between Mars and the Earth.

Calculate the distance between Mars and the Earth in AU.

Returns
Distance in AU
Parameters
JDJulian Day
Returns
Distance in AU

Calculates the distance in AU between the Earth and Mars for the given julian day.

References ln_get_earth_helio_coords(), ln_get_mars_helio_coords(), ln_get_rect_from_helio(), ln_rect_posn::X, ln_rect_posn::Y, and ln_rect_posn::Z.

Referenced by ln_get_mars_disk(), ln_get_mars_magnitude(), ln_get_mars_phase(), and ln_get_mars_sdiam().

void ln_get_mars_equ_coords ( double  JD,
struct ln_equ_posn position 
)

Calculate Mars equatorial coordinates.

Parameters
JDjulian Day
positionPointer to store position

Calculates Mars equatorial position for given julian day. This function includes calculations for planetary aberration and refers to the FK5 reference frame.

To get the complete equatorial coordinates, corrections for nutation have to be applied.

The position returned is accurate to within 0.1 arcsecs.

References ln_equ_posn::dec, ln_get_mars_helio_coords(), ln_get_rect_from_helio(), ln_get_solar_geom_coords(), ln_rad_to_deg(), ln_range_degrees(), ln_equ_posn::ra, ln_rect_posn::X, ln_rect_posn::Y, and ln_rect_posn::Z.

Referenced by ln_get_mars_rst().

void ln_get_mars_helio_coords ( double  JD,
struct ln_helio_posn position 
)

Calculate Mars heliocentric coordinates.

Parameters
JDJulian Day
positionPointer to store heliocentric position

Calculate Mars heliocentric (refered to the centre of the Sun) coordinates in the FK5 reference frame for the given julian day. Longitude and Latitude are in degrees, whilst radius vector is in AU.

References ln_helio_posn::B, ln_helio_posn::L, ln_rad_to_deg(), ln_range_degrees(), ln_vsop87_to_fk5(), and ln_helio_posn::R.

Referenced by ln_get_mars_earth_dist(), ln_get_mars_equ_coords(), ln_get_mars_rect_helio(), and ln_get_mars_solar_dist().

double ln_get_mars_magnitude ( double  JD)

Calculate the visible magnitude of Mars.

Returns
Visible magnitude of Mars
Parameters
JDJulian Day
Returns
Magnitude of Mars

Calculate the visisble magnitude of Mars for given julian day.

References ln_get_mars_earth_dist(), ln_get_mars_phase(), and ln_get_mars_solar_dist().

double ln_get_mars_phase ( double  JD)

Calculate the phase angle of Mars.

Calculate the phase angle of Mars (Sun - Mars - Earth)

Returns
Phase angle of Mars (degrees)
Parameters
JDJulian Day
Returns
Phase angle of Mars (degrees)

Calculates the phase angle of Mars for the given julian day.

References ln_get_earth_solar_dist(), ln_get_mars_earth_dist(), ln_get_mars_solar_dist(), ln_rad_to_deg(), and ln_helio_posn::R.

Referenced by ln_get_mars_magnitude().

void ln_get_mars_rect_helio ( double  JD,
struct ln_rect_posn position 
)

Calculate Mars rectangular heliocentric coordinates.

Parameters
JDJulian day.
positionpointer to return position

Calculate Mars rectangular heliocentric coordinates for the given Julian day. Coordinates are in AU.

References ln_get_mars_helio_coords(), and ln_get_rect_from_helio().

double ln_get_mars_rst ( double  JD,
struct ln_lnlat_posn observer,
struct ln_rst_time rst 
)

Calculate the time of rise, set and transit for Mars.

Parameters
JDJulian day
observerObservers position
rstPointer to store Rise, Set and Transit time in JD
Returns
0 for success, else 1 for circumpolar.

Calculate the time the rise, set and transit (crosses the local meridian at upper culmination) time of Mars for the given Julian day.

Note: this functions returns 1 if Mars is circumpolar, that is it remains the whole day either above or below the horizon.

References ln_get_body_rst_horizon(), and ln_get_mars_equ_coords().

double ln_get_mars_sdiam ( double  JD)

Calculate the semidiameter of Mars in arc seconds.

Parameters
JDJulian day
Returns
Semidiameter in arc seconds

Calculate the semidiameter of Mars in arc seconds for the given julian day.

References ln_get_mars_earth_dist().

double ln_get_mars_solar_dist ( double  JD)

Calculate the distance between Mars and the Sun.

Calculate the distance between Mars and the Sun in AU.

Returns
Distance in AU
Parameters
JDJulian Day.
Returns
Distance in AU.

Calculates the distance in AU between the Sun and Mars for the given julian day.

References ln_get_mars_helio_coords(), and ln_helio_posn::R.

Referenced by ln_get_mars_disk(), ln_get_mars_magnitude(), and ln_get_mars_phase().