++ed by:
1 non-PAUSE user
and 1 contributors

# 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 += \$_; \$dr += \$_; \$db += \$_ };

\$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.

# 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")

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)`

c1, s1, c2, s2

# AUTHOR

Sergey Krushinsky, `<krushi at cpan.org>`