DateTime-Astro
    
    
  
  
  
view release on metacpan or search on metacpan
[](https://travis-ci.org/lestrrat-p5/DateTime-Astro)
# NAME
DateTime::Astro - Functions For Astromical Calendars
# DESCRIPTION
DateTime::Astro implements functions used in astronomical calendars, such
as calculation of lunar longitudea and solar longitude.
This module is best used in environments where a C compiler and the MPFR arbitrary precision math library is installed. It can fallback to using Math::BigInt, but that would pretty much render it useless because of its speed and loss of accuracy that...
# DISCLAIMER
This module works, but there are several caveats you should be aware of:
## MPFR Is Required / PurePerl Version Not Functional
lib/DateTime/Astro.pm view on Meta::CPAN
1;
__END__
=head1 NAME
DateTime::Astro - Functions For Astromical Calendars
=head1 DESCRIPTION
DateTime::Astro implements functions used in astronomical calendars, such
as calculation of lunar longitudea and solar longitude.
This module is best used in environments where a C compiler and the MPFR arbitrary precision math library is installed. It can fallback to using Math::BigInt, but that would pretty much render it useless because of its speed and loss of accuracy that...
=head1 DISCLAIMER
This module works, but there are several caveats you should be aware of:
=head2 MPFR Is Required / PurePerl Version Not Functional
xs/dt_astro_lunar.inc view on Meta::CPAN
        dt_astro_global_cache.cache[n_int] = new_data;
#if (0)
        PerlIO_printf(PerlIO_stderr(), "CACHE set for %d\n", n_int);
#endif
    }
    return 1;
}
/* TODO: Check out errata 269 on 
    http://emr.cs.uiuc.edu/home/reingold/calendar-book/second-edition/errata.pdf
*/
STATIC_INLINE
int
new_moon_before_from_moment(mpfr_t *result, mpfr_t *o_moment) {
    mpfr_t t0, phi, big_n, radian, delta;
    mpfr_t fullangle;
    long n;
    mpfr_init(t0);
    nth_new_moon(&t0, 0);
( run in 0.465 second using v1.01-cache-2.11-cpan-5dc5da66d9d )