Astro:...SolEqu(3pm)

πŸ“¦ version 1.26, in alpine 3.24

πŸ’« NAME πŸ’«

Astro::Montenbruck::SolEqu β€” Solstices and Equinoxes, bestie. The whole module, in one vibe.


✨ SYNOPSIS ✨

use Astro::Montenbruck::SolEqu qw/:all/;

# find solstices and equinoxes for year 2020
for my $event (@SOLEQU_EVENTS)
{
    my $jd = solequ(2020, $event);
    # ...
}

okay so literally just import everything with qw/:all/, loop over the events, and hit solequ with a year and an event type. that's the whole thing. slay. πŸ’…


🌸 DESCRIPTION 🌸

so the times of the equinoxes and solstices are the exact instants when the Sun's apparent longitude is a multiple of 90 degrees. that's it, that's the definition, no cap. 🌈

this module searches for those solstices and equinoxes, and the algorithms are based on "Astronomical Formulae for Calculators" by Jean Meeus, Forth Edition, Willmann-Bell, Inc., 1988. iconic source material fr fr. πŸ“šβœ¨


πŸŽ€ EXPORT πŸŽ€

CONSTANTS

EVENTS

  • $MARCH_EQUINOX
  • $JUNE_SOLSTICE
  • $SEPTEMBER_EQUINOX
  • $DECEMBER_SOLSTICE

ARRAY OF THE EVENTS

  • @SOLEQU_EVENTS β€” the array of EVENTS in proper order. it's giving "pre-sorted for your convenience" energy 🫢

πŸ¦‹ SUBROUTINES πŸ¦‹

solequ

find the Julian Day of a solstice or equinox for a given year, bestie.

use Astro::Montenbruck::SolEqu qw/:all/;

    my $jd = Astro::Montenbruck::Ephemeris::Sun->solequ($year, $k);
the result is accurate within 5 minutes of Universal Time. yes, minutes β€” not seconds, don't come for me 😭

Arguments

  1. number of a year (negative for B.C., astronomical)
  2. type of event, defined by the constants (see Events)

Result

in scalar context it returns Standard Julian Day. in list context you get an array of:

  1. Standard Julian Day and Sun's longitude, in arc-degrees.
  2. Sun's longitude, arc-degrees.

so like β€” scalar context, one number. list context, the whole little bundle. pick your fighter πŸ’œ


πŸ‘‘ AUTHOR πŸ‘‘

Sergey Krushinsky, <krushi at cpan.org> β€” absolute legend, we stan. 🫢✨


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.


and that's the page! brought to you by perl v5.42.2, dated 2026-02-15, filed under User Contributed Perl Documentation β€” mwah, go compute some equinoxes bestie πŸŽ€πŸŒ·πŸ’«

πŸ“¦ where this page comes from