Astro-Montenbruck

 view release on metacpan or  search on metacpan

lib/Astro/Montenbruck/Ephemeris/Planet/Jupiter.pm  view on Meta::CPAN

use base qw/Astro::Montenbruck::Ephemeris::Planet/;
use Math::Trig qw/:pi/;
use Astro::Montenbruck::Ephemeris::Pert qw/pert/;
use Astro::Montenbruck::MathUtils qw /frac ARCS/;
use Astro::Montenbruck::Ephemeris::Planet qw/$JU/;

our $VERSION = 0.01;

sub new {
    my $class = shift;
    $class->SUPER::new( id => $JU);
}


sub heliocentric {
    my ($self, $t) = @_;

    # Mean anomalies of planets in [rad]
    my $m5 = pi2 * frac ( 0.0565314 + 8.4302963 * $t );
    my $m6 = pi2 * frac ( 0.8829867 + 3.3947688 * $t );
    my $m7 = pi2 * frac ( 0.3969537 + 1.1902586 * $t );

lib/Astro/Montenbruck/Ephemeris/Planet/Mars.pm  view on Meta::CPAN


use Math::Trig qw/:pi/;
use Astro::Montenbruck::Ephemeris::Pert qw /pert/;
use Astro::Montenbruck::MathUtils qw /frac ARCS/;
use Astro::Montenbruck::Ephemeris::Planet qw/$MA/;

our $VERSION = 0.01;

sub new {
    my $class = shift;
    $class->SUPER::new( id => $MA );
}

sub heliocentric {
    my ( $self, $t ) = @_;

    # Mean anomalies of planets in [rad]
    my $m2 = pi2 * frac( 0.1382208 + 162.5482542 * $t );
    my $m3 = pi2 * frac( 0.9926208 + 99.9970236 * $t );
    my $m4 = pi2 * frac( 0.0538553 + 53.1662736 * $t );
    my $m5 = pi2 * frac( 0.0548944 + 8.4290611 * $t );

lib/Astro/Montenbruck/Ephemeris/Planet/Mercury.pm  view on Meta::CPAN

use base qw/Astro::Montenbruck::Ephemeris::Planet/;

use Astro::Montenbruck::Ephemeris::Pert qw /pert/;
use Astro::Montenbruck::MathUtils qw /frac ARCS/;
use Astro::Montenbruck::Ephemeris::Planet qw/$ME/;

our $VERSION = 0.01;

sub new {
    my $class = shift;
    $class->SUPER::new( id => $ME );
}

sub heliocentric {
    my ( $self, $t ) = @_;

    # Mean anomalies of planets in [rad]
    my $m1 = pi2 * frac( 0.4855407 + 415.2014314 * $t );
    my $m2 = pi2 * frac( 0.1394222 + 162.5490444 * $t );
    my $m3 = pi2 * frac( 0.9937861 + 99.9978139 * $t );
    my $m5 = pi2 * frac( 0.0558417 + 8.4298417 * $t );

lib/Astro/Montenbruck/Ephemeris/Planet/Moon.pm  view on Meta::CPAN

use Astro::Montenbruck::MathUtils qw /frac sine ARCS reduce_deg cart polar/;
use Astro::Montenbruck::Ephemeris::Pert qw /addthe/;

our $VERSION = 0.02;

Readonly our $ARC => 206264.81; # 3600 * 180 / PI = arcsec per radian
Readonly our $RADII_TO_AU => 4.26354E-5;

sub new {
    my $class = shift;
    $class->SUPER::new( id => $MO );
}

# calculate long-periodic changes of the mean elements
# l,l',F,D and L0 as well as dgamma
sub _long_periodic {
    my $t = shift;

    my $s1 = sine( 0.19833 + 0.05611 * $t );
    my $s2 = sine( 0.27869 + 0.04508 * $t );
    my $s3 = sine( 0.16827 - 0.36903 * $t );

lib/Astro/Montenbruck/Ephemeris/Planet/Neptune.pm  view on Meta::CPAN

use base qw/Astro::Montenbruck::Ephemeris::Planet/;
use Math::Trig qw/:pi/;
use Astro::Montenbruck::Ephemeris::Pert qw/pert/;
use Astro::Montenbruck::MathUtils qw /frac ARCS/;
use Astro::Montenbruck::Ephemeris::Planet qw/$NE/;

our $VERSION = 0.02;

sub new {
    my $class = shift;
    $class->SUPER::new( id => $NE );
}

sub heliocentric {
    my ( $self, $t ) = @_;

    # Mean anomalies of planets in [rad]
    my $m5 = pi2 * frac( 0.0563867 + 8.4298907 * $t );
    my $m6 = pi2 * frac( 0.8825086 + 3.3957748 * $t );
    my $m7 = pi2 * frac( 0.3965358 + 1.1902851 * $t );
    my $m8 = pi2 * frac( 0.7214906 + 0.6068526 * $t );

lib/Astro/Montenbruck/Ephemeris/Planet/Pluto.pm  view on Meta::CPAN

use base qw/Astro::Montenbruck::Ephemeris::Planet/;
use Astro::Montenbruck::Ephemeris::Planet qw/$PL/;

use Astro::Montenbruck::Ephemeris::Pert qw/pert/;
use Astro::Montenbruck::MathUtils qw /frac ARCS/;

our $VERSION = 0.01;

sub new {
    my $class = shift;
    $class->SUPER::new( id => $PL );
}


sub heliocentric {
    my ( $self, $t ) = @_;

    # Mean anomalies of planets in [rad]
    my $m5 = pi2 * frac( 0.0565314 + 8.4302963 * $t );
    my $m6 = pi2 * frac( 0.8829867 + 3.3947688 * $t );
    my $m9 = pi2 * frac( 0.0385795 + 0.4026667 * $t );

lib/Astro/Montenbruck/Ephemeris/Planet/Saturn.pm  view on Meta::CPAN

use Math::Trig qw/:pi/;
use base qw/Astro::Montenbruck::Ephemeris::Planet/;
use Astro::Montenbruck::Ephemeris::Pert qw/pert/;
use Astro::Montenbruck::MathUtils qw/frac ARCS/;
use Astro::Montenbruck::Ephemeris::Planet qw/$SA/;

our $VERSION = 0.01;

sub new {
    my $class = shift;
    $class->SUPER::new( id => $SA );
}

sub heliocentric {
    my ( $self, $t ) = @_;

    # Mean anomalies of planets in [rad]
    my $m5 = pi2 * frac( 0.0565314 + 8.4302963 * $t );
    my $m6 = pi2 * frac( 0.8829867 + 3.3947688 * $t );
    my $m7 = pi2 * frac( 0.3969537 + 1.1902586 * $t );
    my $m8 = pi2 * frac( 0.7208473 + 0.6068623 * $t );

lib/Astro/Montenbruck/Ephemeris/Planet/Sun.pm  view on Meta::CPAN

use base qw/Astro::Montenbruck::Ephemeris::Planet/;
use Math::Trig qw/:pi rad2deg deg2rad/;
use Astro::Montenbruck::MathUtils qw /frac ARCS reduce_rad cart polar/;
use Astro::Montenbruck::Ephemeris::Pert qw/pert/;
use Astro::Montenbruck::Ephemeris::Planet qw/$SU/;

our $VERSION = 0.01;

sub new {
    my $class = shift;
    $class->SUPER::new( id => $SU );
}

sub sunpos {
  my ( $self, $t ) = @_;

  # mean anomalies of planets and mean arguments of lunar orbit [rad]
  my $m2 = pi2 * frac( 0.1387306 + 162.5485917 * $t );
  my $m3 = pi2 * frac( 0.9931266 + 99.9973604 * $t );
  my $m4 = pi2 * frac( 0.0543250 + 53.1666028 * $t );
  my $m5 = pi2 * frac( 0.0551750 + 8.4293972 * $t );

lib/Astro/Montenbruck/Ephemeris/Planet/Uranus.pm  view on Meta::CPAN

use base qw/Astro::Montenbruck::Ephemeris::Planet/;
use Math::Trig qw/:pi/;
use Astro::Montenbruck::Ephemeris::Pert qw /pert/;
use Astro::Montenbruck::MathUtils qw /frac ARCS/;
use Astro::Montenbruck::Ephemeris::Planet qw/$UR/;

our $VERSION = 0.01;

sub new {
    my $class = shift;
    $class->SUPER::new( id => $UR );
}

sub heliocentric {
    my ( $self, $t ) = @_;

    # Mean anomalies of planets in [rad]
    my $m5 = pi2 * frac( 0.0564472 + 8.4302889 * $t );
    my $m6 = pi2 * frac( 0.8829611 + 3.3947583 * $t );
    my $m7 = pi2 * frac( 0.3967117 + 1.1902849 * $t );
    my $m8 = pi2 * frac( 0.7216833 + 0.6068528 * $t );

lib/Astro/Montenbruck/Ephemeris/Planet/Venus.pm  view on Meta::CPAN

use Math::Trig qw/:pi/;

use Astro::Montenbruck::Ephemeris::Pert qw /pert/;
use Astro::Montenbruck::MathUtils qw /frac ARCS/;
use Astro::Montenbruck::Ephemeris::Planet qw/$VE/;

our $VERSION = 0.01;

sub new {
    my $class = shift;
    $class->SUPER::new( id => $VE );
}

# Venus heliocentric position
sub heliocentric {
    my ( $self, $t ) = @_;

    # mean anomalies of planets in [rad]
    my $m1 = pi2 * frac( 0.4861431 + 415.2018375 * $t );
    my $m2 = pi2 * frac( 0.1400197 + 162.5494552 * $t );
    my $m3 = pi2 * frac( 0.9944153 + 99.9982208 * $t );

lib/Astro/Montenbruck/Utils/Theme/Colorless.pm  view on Meta::CPAN

  table_row_title    => undef,
  table_row_data     => undef,
  table_row_error    => undef,
  table_col_title    => undef
);

our $VERSION = 0.01;

sub new {
    my $class = shift;
    $class->SUPER::new( name => 'colorless', scheme => \%SCHEME);
}

# return only the text
sub decorate { $_[1] } 

1;


=pod

lib/Astro/Montenbruck/Utils/Theme/Dark.pm  view on Meta::CPAN

  table_row_title    => 'white',
  table_row_data     => 'bright_yellow',
  table_row_error    => 'red',
  table_col_title    => 'white'
);

our $VERSION = 0.01;

sub new {
    my $class = shift;
    $class->SUPER::new( name => 'dark', scheme => \%SCHEME);
}

1;


=pod

=encoding UTF-8

=head1 NAME

lib/Astro/Montenbruck/Utils/Theme/Light.pm  view on Meta::CPAN

  table_row_title    => 'bright_blue',
  table_row_data     => 'black',
  table_row_error    => 'red',
  table_col_title    => 'bright_blue'
);

our $VERSION = 0.01;

sub new {
    my $class = shift;
    $class->SUPER::new( name => 'light', scheme => \%SCHEME);
}

1;

__END__

=pod

=encoding UTF-8



( run in 0.397 second using v1.01-cache-2.11-cpan-a9ef4e587e4 )