libnova  v 0.16.0
Functions
Solar

Functions

int LIBNOVA_EXPORT ln_get_solar_rst_horizon (double JD, struct ln_lnlat_posn *observer, double horizon, struct ln_rst_time *rst)
 Return solar rise/set time over local horizon (specified in degrees).
 
int LIBNOVA_EXPORT ln_get_solar_rst (double JD, struct ln_lnlat_posn *observer, struct ln_rst_time *rst)
 Calculate the time of rise, set and transit for the Sun. More...
 
void LIBNOVA_EXPORT ln_get_solar_geom_coords (double JD, struct ln_helio_posn *position)
 Calculate solar geometric coordinates. More...
 
void LIBNOVA_EXPORT ln_get_solar_equ_coords (double JD, struct ln_equ_posn *position)
 Calculate apparent equatorial coordinates. More...
 
void LIBNOVA_EXPORT ln_get_solar_ecl_coords (double JD, struct ln_lnlat_posn *position)
 Calculate apparent ecliptical coordinates. More...
 
void LIBNOVA_EXPORT ln_get_solar_geo_coords (double JD, struct ln_rect_posn *position)
 Calculate geocentric coordinates (rectangular) More...
 
double LIBNOVA_EXPORT ln_get_solar_sdiam (double JD)
 Calculate the semidiameter of the Sun in arc seconds. More...
 

Detailed Description

Calculate solar ecliptical/equatorial coordinates for a given julian date. Accuracy 0.01 arc second error - uses VSOP87 solution.

All angles are expressed in degrees.

Function Documentation

void ln_get_solar_ecl_coords ( double  JD,
struct ln_lnlat_posn position 
)

Calculate apparent ecliptical coordinates.

Parameters
JDJulian day
positionPointer to store calculated solar position.

Calculate apparent ecliptical solar coordinates for given julian day. This function includes the effects of aberration and nutation.

References ln_helio_posn::B, ln_helio_posn::L, ln_lnlat_posn::lat, ln_get_nutation(), ln_get_solar_geom_coords(), ln_lnlat_posn::lng, ln_nutation::longitude, and ln_helio_posn::R.

Referenced by ln_get_lunar_phase().

void ln_get_solar_equ_coords ( double  JD,
struct ln_equ_posn position 
)

Calculate apparent equatorial coordinates.

Parameters
JDJulian day
positionPointer to store calculated solar position.

Calculate apparent equatorial solar coordinates for given julian day. This function includes the effects of aberration and nutation.

Examples:
sun.c.

References ln_helio_posn::B, ln_helio_posn::L, ln_lnlat_posn::lat, ln_get_equ_from_ecl(), ln_get_nutation(), ln_get_solar_geom_coords(), ln_lnlat_posn::lng, ln_nutation::longitude, and ln_helio_posn::R.

Referenced by ln_get_lunar_bright_limb(), and ln_get_solar_rst_horizon().

void ln_get_solar_geo_coords ( double  JD,
struct ln_rect_posn position 
)

Calculate geocentric coordinates (rectangular)

Parameters
JDJulian day
positionPointer to store calculated solar position.

Calculate geocentric coordinates (rectangular) for given julian day. Accuracy 0.01 arc second error - uses VSOP87 solution. Position returned is in units of AU.

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

Referenced by ln_get_ell_body_equ_coords(), ln_get_hyp_body_equ_coords(), and ln_get_par_body_equ_coords().

void ln_get_solar_geom_coords ( double  JD,
struct ln_helio_posn position 
)

Calculate solar geometric coordinates.

Parameters
JDJulian day
positionPointer to store calculated solar position.

Calculate geometric coordinates and radius vector accuracy 0.01 arc second error - uses VSOP87 solution.

Latitude and Longitude returned are in degrees, whilst radius vector returned is in AU.

Examples:
sun.c.

References ln_helio_posn::B, ln_helio_posn::L, ln_get_earth_helio_coords(), and ln_range_degrees().

Referenced by ln_get_ecl_aber(), ln_get_jupiter_equ_coords(), ln_get_mars_equ_coords(), ln_get_mercury_equ_coords(), ln_get_neptune_equ_coords(), ln_get_pluto_equ_coords(), ln_get_saturn_equ_coords(), ln_get_solar_ecl_coords(), ln_get_solar_equ_coords(), ln_get_uranus_equ_coords(), and ln_get_venus_equ_coords().

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

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

Calls get_solar_rst_horizon with horizon set to LN_SOLAR_STANDART_HORIZON.

Examples:
sun.c.

References ln_get_solar_rst_horizon().

double ln_get_solar_sdiam ( double  JD)

Calculate the semidiameter of the Sun in arc seconds.

Parameters
JDJulian day
Returns
Semidiameter in arc seconds

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

References ln_get_earth_solar_dist().