libTheSky
Routines to compute sky positions of Sun, Moon, planets and more
All Namespaces Files Functions Variables Pages
thesky_comets Module Reference

Procedures for comets. More...

Functions/Subroutines

subroutine cometxyz (t1, comid, x, y, z)
 Calculate heliocentric xyz coordinates for comet com at t1 (in J.mill DT). Usually called by cometgc() below.
 
subroutine cometgc (t, t0, comid, r, l, b, d)
 Calc geocentric lbr coordinates for comet com at t1 (in Julian millennia Dynamical Time)
 

Detailed Description

Procedures for comets.

Function/Subroutine Documentation

◆ cometgc()

subroutine thesky_comets::cometgc ( real(double), intent(in) t,
real(double), intent(in) t0,
integer, intent(in) comid,
real(double), intent(out) r,
real(double), intent(out) l,
real(double), intent(out) b,
real(double), intent(out) d )

Calc geocentric lbr coordinates for comet com at t1 (in Julian millennia Dynamical Time)

Note
This a computational detour to allow correction for aberration, fk5 and nutation in planet_position (and keep overview there)
Parameters
tApparent time (taking light time into account) in Julian millennia Dynamical Time
t0True time in Julian millennia DT
comIDComet ID
rApparent heliocentric distance of comet (output). Note: r=0 if calculation diverged!
lApparent geocentric ecliptic longitude of comet (output)
bApparent geocentric ecliptic latitude of comet (output)
dApparent geocentric distance of comet (output)

Definition at line 264 of file comets.f90.

References thesky_cometdata::comepoche, cometxyz(), thesky_coordinates::ecl_spher_2_eq_rect(), thesky_coordinates::eq_2_ecl(), thesky_coordinates::fk5(), thesky_nutation::nutation(), thesky_coordinates::precess_xyz(), and thesky_vsop::vsop87d_lbr().

Referenced by thesky_visibility::comet_invisible(), and thesky_planets::planet_position().

Here is the call graph for this function:

◆ cometxyz()

subroutine thesky_comets::cometxyz ( real(double), intent(in) t1,
integer, intent(in) comid,
real(double), intent(out) x,
real(double), intent(out) y,
real(double), intent(out) z )

Calculate heliocentric xyz coordinates for comet com at t1 (in J.mill DT). Usually called by cometgc() below.

Parameters
t1Time in Julian millennia DT
comIDComet ID
xHeliocentric x coordinate (output)
yHeliocentric y coordinate (output)
zHeliocentric z coordinate (output)
Note
x=y=z=0 is returned if the calculation does not converge.
See also
Meeus, Astronomical Algorithms, 1998, Ch. 30, 33-35. Equation and page numbers refer to this book.
Todo
Use "hyperbolic method" for 0.98 < e < 1 as well? - see CHECK

Definition at line 45 of file comets.f90.

References thesky_cometdata::comepoche, thesky_cometdata::cometelems, thesky_cometdata::cometnames, thesky_nutation::nutation(), and thesky_constants::thesky_verbosity.

Referenced by cometgc().

Here is the call graph for this function: