NAME

Astro::Montenbruck::Ephemeris::Pert - Calculation of perturbations.

SYNOPSIS

 use Astro::Montenbruck::Ephemeris::Pert qw /pert/;

 ($dl, $dr, $db) = (0, 0, 0); # Corrections in longitude ["],
 $pert_cb = sub { $dl += $_[0]; $dr += $_[1]; $db += $_[2] };

 $term
   = pert( T     => $t,
           M     => $m1,
           m     => $m3,
           I_min => 0,
           I_max => 2,
           i_min =>-4,
           i_max =>-1,
           callback => $pert_cb);
$term->(-1, -1,0, -0.2, 1.4, 2.0,  0.6,  0.1, -0.2);
$term->( 0, -1,0,  9.4, 8.9, 3.9, -8.3, -0.4, -1.4);
...

DESCRIPTION

Calculates perturbations for Sun, Moon and the 8 planets. Used internally by Astro::Montenbruck::Ephemeris module.

EXPORT

SUBROUTINES/METHODS

pert(%args)

Calculates perturbations to ecliptic heliocentric coordinates of the planet.

Named arguments

  • T — time in centuries since epoch 2000.0

  • M, m, I_min, I_max, i_min, i_max — internal indices

  • callback — reference to a function which recievs corrections to the 3 coordinates and typically applies them (see "SYNOPSIS")

addthe($a, $b, $c, $d)

Calculates c=cos(a1+a2) and s=sin(a1+a2) from the addition theorems for c1=cos(a1), s1=sin(a1), c2=cos(a2) and s2=sin(a2)

Arguments

c1, s1, c2, s2

AUTHOR

Sergey Krushinsky, <krushi at cpan.org>

COPYRIGHT AND LICENSE

Copyright (C) 2009-2022 by Sergey Krushinsky

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.