Function Reference

heniautos

Exceptions

exception heniautos.HeniautosError
exception heniautos.HeniautosNoMatchError
exception heniautos.HeniautosNoDataError
exception heniautos.HeniautosNoDayInYearError
exception heniautos.HeniautosDateNotFoundError

Enums and Classes

enum heniautos.CalendarMonth(value)

Base class for month enums

Member Type:

int

enum heniautos.GenericMonths(value)

Represents Generic calendar months

Member Type:

int

Valid values are as follows:

M01 = <GenericMonths.M01: 1>
M02 = <GenericMonths.M02: 2>
M03 = <GenericMonths.M03: 3>
M04 = <GenericMonths.M04: 4>
M05 = <GenericMonths.M05: 5>
M06 = <GenericMonths.M06: 6>
M07 = <GenericMonths.M07: 7>
M08 = <GenericMonths.M08: 8>
M09 = <GenericMonths.M09: 9>
M10 = <GenericMonths.M10: 10>
M11 = <GenericMonths.M11: 11>
M12 = <GenericMonths.M12: 12>
enum heniautos.ArgiveMonths(value)

Represents months on the Argive calendar

Member Type:

int

Valid values are as follows:

AGU = <ArgiveMonths.AGU: 1>
KAR = <ArgiveMonths.KAR: 2>
ERI = <ArgiveMonths.ERI: 3>
HER = <ArgiveMonths.HER: 4>
GAM = <ArgiveMonths.GAM: 5>
TEL = <ArgiveMonths.TEL: 6>
ARN = <ArgiveMonths.ARN: 7>
ART = <ArgiveMonths.ART: 8>
AGR = <ArgiveMonths.AGR: 9>
AMU = <ArgiveMonths.AMU: 10>
PAN = <ArgiveMonths.PAN: 11>
APE = <ArgiveMonths.APE: 12>
enum heniautos.AthenianMonths(value)

Represents months on the Athenian calendar

Member Type:

int

Valid values are as follows:

HEK = <AthenianMonths.HEK: 1>
MET = <AthenianMonths.MET: 2>
BOE = <AthenianMonths.BOE: 3>
PUA = <AthenianMonths.PUA: 4>
MAI = <AthenianMonths.MAI: 5>
POS = <AthenianMonths.POS: 6>
GAM = <AthenianMonths.GAM: 7>
ANT = <AthenianMonths.ANT: 8>
ELA = <AthenianMonths.ELA: 9>
MOU = <AthenianMonths.MOU: 10>
THA = <AthenianMonths.THA: 11>
SKI = <AthenianMonths.SKI: 12>
enum heniautos.CorinthianMonths(value)

Represents months on the Corinthian calendar

Member Type:

int

Valid values are as follows:

PHO = <CorinthianMonths.PHO: 1>
KRA = <CorinthianMonths.KRA: 2>
LAN = <CorinthianMonths.LAN: 3>
MAK = <CorinthianMonths.MAK: 4>
DOD = <CorinthianMonths.DOD: 5>
EUK = <CorinthianMonths.EUK: 6>
ART = <CorinthianMonths.ART: 7>
PSU = <CorinthianMonths.PSU: 8>
GAM = <CorinthianMonths.GAM: 9>
AGR = <CorinthianMonths.AGR: 10>
PAN = <CorinthianMonths.PAN: 11>
APE = <CorinthianMonths.APE: 12>
enum heniautos.DelianMonths(value)

Represents months on the Delian calendar

Member Type:

int

Valid values are as follows:

LEN = <DelianMonths.LEN: 1>
IER = <DelianMonths.IER: 2>
GAL = <DelianMonths.GAL: 3>
ART = <DelianMonths.ART: 4>
THA = <DelianMonths.THA: 5>
PAN = <DelianMonths.PAN: 6>
HEK = <DelianMonths.HEK: 7>
MET = <DelianMonths.MET: 8>
BOU = <DelianMonths.BOU: 9>
APA = <DelianMonths.APA: 10>
ARE = <DelianMonths.ARE: 11>
POS = <DelianMonths.POS: 12>
enum heniautos.DelphianMonths(value)

Represents months on the Delphian calendar

Member Type:

int

Valid values are as follows:

APE = <DelphianMonths.APE: 1>
BOU = <DelphianMonths.BOU: 2>
BOA = <DelphianMonths.BOA: 3>
HER = <DelphianMonths.HER: 4>
DAD = <DelphianMonths.DAD: 5>
POI = <DelphianMonths.POI: 6>
AMA = <DelphianMonths.AMA: 7>
BUS = <DelphianMonths.BUS: 8>
THE = <DelphianMonths.THE: 9>
END = <DelphianMonths.END: 10>
HKL = <DelphianMonths.HKL: 11>
ILA = <DelphianMonths.ILA: 12>
enum heniautos.Seasons(value)

Constants representing the solar year seasons.

Member Type:

int

Valid values are as follows:

SPRING_EQUINOX = <Seasons.SPRING_EQUINOX: 0>
SUMMER_SOLSTICE = <Seasons.SUMMER_SOLSTICE: 1>
AUTUMN_EQUINOX = <Seasons.AUTUMN_EQUINOX: 2>
WINTER_SOLSTICE = <Seasons.WINTER_SOLSTICE: 3>
enum heniautos.TZOptions(value)

Options for time zones

Valid values are as follows:

GMT = <TZOptions.GMT: 'GMT'>
ALT = <TZOptions.ALT: 'ALT'>
enum heniautos.MonthNameOptions(value)

Options for displaying Greek month names.

Member Type:

int

Valid values are as follows:

TRANSLITERATION = <MonthNameOptions.TRANSLITERATION: 0>
ABBREV = <MonthNameOptions.ABBREV: 1>
GREEK = <MonthNameOptions.GREEK: 2>
class heniautos.FestivalDay(jdn, month_name, month_index, month, month_length, day, doy, year, year_length, astronomical_year)
class heniautos.PrytanyDay(jdn, prytany_index, prytany, prytany_length, day, doy, year, year_length, astronomical_year)

Calendar Functions

heniautos.festival_calendar(year, calendar=Cal.GENERIC, intercalate=6, name_as=MonthNameOptions.TRANSLITERATION, event=Seasons.SUMMER_SOLSTICE, before_event=False, v_off=1, s_off=0, data=<function load_data>)

Return a tuple representing festival calendar.

Parameters: year (int) – The year for the calendar calendar (Cal) – A Cal constant for the requested calendar intercalate (int) – Month index of month to intercalate if necessary (default: 6) name_as (MonthNameOption) – Option corresponding to desired form of the month name (transliteration, abbreviation, Greek, default: MonthNameOptions.TRANSLITERATION) event (Season) – The solar event with the year begins (default: Seasons.SUMMER_SOLSTICE) before_event (bool) – True if the first month of year begins immediately before the solar_event, False (default) if it begins after v_off (int) – Offset from the conjunction for lunar visibility (default: 1) s_off (int) – Offet for solar event in days (default: 0) data – Astronomical data for calculations. By default this is returned from load_data()

See visible_new_moons for documentation of visibility offset.

Returns a tuple of FestivalDay objects with one member for each day.

If intercalation is necessary, the month indicated by the intercalate parameter will be intercalated. For example, the 6th month if intercalate=6 (the default).

If the calendar parameter is None, a generic calendar will be returned with the month and month_name members of each FestivalDay being None.

heniautos.athenian_festival_calendar(year, intercalate=AthenianMonths.POS, name_as=MonthNameOptions.TRANSLITERATION, v_off=1, s_off=0, data=<function load_data>)

Return a tuple representing festival calendar. Parameters: year (int) – The year for the calendar intercalate (int) – Month index of month to intercalate if necessary (default: 6) name_as (MonthNameOption) – Option corresponding to desired version of the month name (transliteration, abbreviation, Greek, default: MonthNameOptions.TRANSLITERATION) v_off (int) – Offset from the conjunction for lunar visibility (default: 1) s_off (int) – Offet for solar event in days (default: 0) data – Astronomical data for calculations. By default this is returned from load_data()

Get an Athenian festival calendar (calls festival_calendar with appropriate options).

heniautos.argive_festival_calendar(year, intercalate=6, name_as=MonthNameOptions.TRANSLITERATION, v_off=1, s_off=0, data=<function load_data>)

Return a tuple representing festival calendar. Parameters: year (int) – The year for the calendar intercalate (int) – Month index of month to intercalate if necessary (default: 6) name_as (MonthNameOption) – Option corresponding to desired version of the month name (transliteration, abbreviation, Greek, default: MonthNameOptions.TRANSLITERATION) v_off (int) – Offset from the conjunction for lunar visibility (default: 1) s_off (int) – Offet for solar event in days (default: 0) data – Astronomical data for calculations. By default this is returned from load_data()

Get an Argive festival calendar (calls festival_calendar with appropriate options).

heniautos.corinthian_festival_calendar(year, intercalate=CorinthianMonths.MAK, name_as=MonthNameOptions.TRANSLITERATION, v_off=1, s_off=0, data=<function load_data>)

Return a tuple representing festival calendar. Parameters: year (int) – The year for the calendar intercalate (int) – Month index of month to intercalate if necessary (default: 6) name_as (MonthNameOption) – Option corresponding to desired version of the month name (transliteration, abbreviation, Greek, default: MonthNameOptions.TRANSLITERATION) v_off (int) – Offset from the conjunction for lunar visibility (default: 1) s_off (int) – Offet for solar event in days (default: 0) data – Astronomical data for calculations. By default this is returned from load_data()

Get a Corinthian festival calendar (calls festival_calendar with appropriate options).

heniautos.delian_festival_calendar(year, intercalate=DelianMonths.PAN, name_as=MonthNameOptions.TRANSLITERATION, v_off=1, s_off=0, data=<function load_data>)

Return a tuple representing festival calendar. Parameters: year (int) – The year for the calendar intercalate (int) – Month index of month to intercalate if necessary (default: 6) name_as (MonthNameOption) – Option corresponding to desired version of the month name (transliteration, abbreviation, Greek, default: MonthNameOptions.TRANSLITERATION) v_off (int) – Offset from the conjunction for lunar visibility (default: 1) s_off (int) – Offet for solar event in days (default: 0) data – Astronomical data for calculations. By default this is returned from load_data()

Get a Delian festival calendar (calls festival_calendar with appropriate options).

heniautos.delphian_festival_calendar(year, intercalate=DelphianMonths.POI, name_as=MonthNameOptions.TRANSLITERATION, v_off=1, s_off=0, data=<function load_data>)

Return a tuple representing festival calendar. Parameters: year (int) – The year for the calendar intercalate (int) – Month index of month to intercalate if necessary (default: 6) name_as (MonthNameOption) – Option corresponding to desired version of the month name (transliteration, abbreviation, Greek, default: MonthNameOptions.TRANSLITERATION) v_off (int) – Offset from the conjunction for lunar visibility (default: 1) s_off (int) – Offet for solar event in days (default: 0) data – Astronomical data for calculations. By default this is returned from load_data()

Get a Delphian festival calendar (calls festival_calendar with appropriate options).

heniautos.spartan_festival_calendar(year, intercalate=6, name_as=MonthNameOptions.TRANSLITERATION, v_off=1, s_off=0, data=<function load_data>)

Return a tuple representing festival calendar. Parameters: year (int) – The year for the calendar intercalate (int) – Month index of month to intercalate if necessary (default: 6) name_as (MonthNameOption) – Option corresponding to desired version of the month name (transliteration, abbreviation, Greek, default: MonthNameOptions.TRANSLITERATION) v_off (int) – Offset from the conjunction for lunar visibility (default: 1) s_off (int) – Offet for solar event in days (default: 0) data – Astronomical data for calculations. By default this is returned from load_data()

Get a Spartan festival calendar (calls festival_calendar with appropriate options).

heniautos.by_months(p)

Return festival calendar grouped into a tuple of tuples by months.

heniautos.jdn_to_festival_day(jdn, year=None, calendar=Cal.ATHENIAN, intercalate=6, name_as=MonthNameOptions.TRANSLITERATION, v_off=1, s_off=0, data=<function load_data>)

Find the Athenian date corresponding to a Julian Day Number

Parameters: jdn (int) – The Julian Day Number year (int) – Hint for year to find (can usually be +/- 1) calendar (Cal) – A Cal constant for the requested calendar name_as (MonthNameOption) – Option corresponding to desired version of the month name (transliteration, abbreviation, Greek, default: MonthNameOptions.TRANSLITERATION) intercalate (Months) – Month constant for month to intercalate if necessary (default Months.POS) v_off (int) – Offset from the conjunction for lunar visibility (default: 1) s_off (int) – Offet for solar event in days (default: 0) data – Astronomical data for calculations. By default this is returned from load_data()

heniautos.julian_to_festival_day(year, month, day, calendar=Cal.ATHENIAN, intercalate=6, name_as=MonthNameOptions.TRANSLITERATION, v_off=1, s_off=0, data=<function load_data>)

Find the Athenian date corresponding to a Julian date

Parameters: year (int) – The Julian year, negative for BCE month (int) – The Julian month day (int) – The Julian day calendar (Cal) – A Cal constant for the requested calendar name_as (MonthNameOption) – Option corresponding to desired version of the month name (transliteration, abbreviation, Greek, default: MonthNameOptions.TRANSLITERATION) intercalate (Months) – Month constant for month to intercalate if necessary (default Months.POS) v_off (int) – Offset from the conjunction for lunar visibility (default: 1) s_off (int) – Offet for solar event in days (default: 0) data – Astronomical data for calculations. By default this is returned from load_data()

heniautos.gregorian_to_festival_day(year, month, day, calendar=Cal.ATHENIAN, intercalate=6, name_as=MonthNameOptions.TRANSLITERATION, v_off=1, s_off=0, data=<function load_data>)

Find the Athenian date corresponding to a Gregorian date

Parameters: year (int) – The Gregorian year, negative for BCE month (int) – The Gregorian month day (int) – The Gregorian day calendar (Cal) – A Cal constant for the requested calendar name_as (MonthNameOption) – Option corresponding to desired version of the month name (transliteration, abbreviation, Greek, default: MonthNameOptions.TRANSLITERATION) intercalate (Months) – Month constant for month to intercalate if necessary (default Months.POS) v_off (int) – Offset from the conjunction for lunar visibility (default: 1) s_off (int) – Offet for solar event in days (default: 0) data – Astronomical data for calculations. By default this is returned from load_data()

Date Formatting

heniautos.bce_as_negative(year)

Convert positive year (considered BCE) to astronomical year numbering.

Parameters:

year (int) – Year to convert to astronomical year.

Returns:

Year as BCE astronomical year.

Return type:

int

BCE years are represented as years less than 1. 1 BCE is 0 so all numbers are offset by 1 in the positive direction.

heniautos.negative_as_bce(year)

Inverse of bce_as_negative(). Treats a negative integer as astronomical year numbering as converts to a positive integer to be understood as a year BCE

heniautos.arkhon_year(year)

Format year as an arkhon year, eg. ‘431/430 BCE’

Parameters:

year (int) – Year to be formatted.

Returns:

Formatted arkhon year.

Return type:

str

Formats a single integer year (astronomical year numbering) as a span of two years (the given and the following year), with epoch (BCE or CE) appended.

For instance, -430 will be formatted as ‘431/430 BCE’, 25 as ‘25/26 CE’.

heniautos.month_name(month, name_as=MonthNameOptions.TRANSLITERATION)

Returns the month name corresponding to the given constant

heniautos.as_julian(t, full=False, tz=TZOptions.GMT)

Return a string representation of Julian date object as a Julian calendar date.

Parameters:
  • t (float, int) – Julian date.

  • full (bool) – Return a full date if True, short date if False

  • tz (TZOptions, float) – Longitude or TZOptions for conversion to local time (default, TZOptions.GMT is no conversion)

Returns:

Formatted date as a Julian date

Return type:

str

Returns a brief (default) or full date representation of a Julian date. The full date representation of 1685074.3287423, for example is ‘BCE 0100-Jun-25 19:53:23 GMT’, the brief BCE ‘BCE 0100-Jun-25’.

Dates following the start of the gregorian calendar (10/15/1682) are returned as Gregorian calendar dates.

heniautos.as_gregorian(t, full=False, tz=TZOptions.GMT)

Return a string representation of Julian date object as a Gregorian calendar date.

Parameters: t – A Julian date (float or int) full – Boolean. Return a full date if True, short date if False tz – TZOptions. Convert GMT (default) or “Athens Local Time” (AST)

The full date representation of 1685074.3287423, for example is ‘BCE 0100-Jun-25 19:53:23 GMT’, the short BCE ‘BCE 0100-Jun-25’.

heniautos.to_jdn(t)

Converts a Julian date to a Julian Day Number.

Parameters:

t (float, int) – Julian date to be rounded to a JDN

Returns:

Corresponding Julian day number

Return type:

int

Rounds a Julian date to the nearest whole Julian Day Number.

heniautos.tz_offset(jd, tz=TZOptions.GMT)

Adjust a Julian date to represent local time of a given longitude.

Parameters:
  • jd (float, int) – Julian date.

  • tz (TZOptions, float) – Longitude or constant for offset.

Returns:

Adjusted Julian date

Return type:

float

Offset a Julian date to a value that represents the local time for a longitude. If tz is TZOptions.ALT time will be offset for Athens (23.728056 degrees east), or for Greenwich (0 degrees) with TZOptions.GMT.

Astronomical Dates

heniautos.solar_event(year, e, data=<function load_data>)

Return a Julian date (float) for the event e in the given year.

Parameters: year (int) – The year e (Seasons) – Constant from Seasons indicating the event data – Astronomical data for calculations. By default this is returned from load_data()

heniautos.observed_solar_event(year, e, s_off=0, data=<function load_data>)

Return solar_event round to JDN and ‘observed’ according to the offset

heniautos.new_moons(year, data=<function load_data>)

Return a list of Julian dates for all new moons e in the given year.

Parameters: year – The year for which the new moons are requested data – Astronomical data for calculations. By default this is returned from load_data()

heniautos.visible_new_moons(year, v_off=1, data=<function load_data>)
Return a list of Julian dates for all visible new moons according

to given visibility offset.

Parameters: year (int) – The year v_off (int) – Offset from the conjunction for lunar visibility data – Astronomical data for calculations. By default this is returned from load_data()

new_moons() returns the time of new moons according to an astronomical calculation, not when the waxing crescent of the new moon was first visible to human eyes. This is taken to be the day of the conjunction + v_off. For example. v_off = 1 (the default) means that the lunar crescent is assumed to be first visible 1 day after the day of the conjunction. v_off = 0 would mean the lunar crescent is assumed to be visible the day of the conjunction.

heniautos.prytanies

enum heniautos.prytanies.Prytanies(value)
Member Type:

int

Valid values are as follows:

I = <Prytanies.I: 1>
II = <Prytanies.II: 2>
III = <Prytanies.III: 3>
IV = <Prytanies.IV: 4>
V = <Prytanies.V: 5>
VI = <Prytanies.VI: 6>
VII = <Prytanies.VII: 7>
VIII = <Prytanies.VIII: 8>
IX = <Prytanies.IX: 9>
X = <Prytanies.X: 10>
XI = <Prytanies.XI: 11>
XII = <Prytanies.XII: 12>
XIII = <Prytanies.XIII: 13>
enum heniautos.prytanies.Prytany(value)

Constants representing choices of conciilar calendars.

Member Type:

int

Valid values are as follows:

AUTO = <Prytany.AUTO: 0>
QUASI_SOLAR = <Prytany.QUASI_SOLAR: 1>
ALIGNED_10 = <Prytany.ALIGNED_10: 2>
ALIGNED_12 = <Prytany.ALIGNED_12: 3>
ALIGNED_13 = <Prytany.ALIGNED_13: 4>
heniautos.prytanies.prytany_calendar(year, pryt_type=Prytany.AUTO, pryt_start=Prytany.AUTO, v_off=1, s_off=0, rule_of_aristotle=False, data=<function load_data>)

Return a tuple representing Athenian conciliar calendar.

Parameters: year (int) – The year for the calendar pryt_type (Prytany) – Constant representign the type of prytanies (default Prytany,AUTO) pryt_start – start day (JDN) for quasi-solar prytanies. If Prytany.AUTO it will be calculated as the first day of 407 BCE (which was also Prytany 1.1 that year) If an integer (a JDN), 366-day prytanies will be calculated relative to this day. rule (heniautos.Visible) – Constant from heniautos.Visible indicating the desired rule (default heniautos.Visible.SECOND_DAY) data – Astronomical data for calculations. By default this is returned from load_data()

See calendar_months for documentation of visibility rules.

Each member of the returned tuple is a dict containing: “prytany”: the number of the prytany “constant”: Prytanies constant for the prytany “days”: a tuple with one member for day of the month.

Each member of the “days” tuple is a dict containing: “day”: the day of the month “date”: the Julian date of the day “doy”: the day of the year the day represents.

heniautos.prytanies.by_prytanies(p)

Return prytany calendar grouped into a tuple of tuples by prytany.

heniautos.prytanies.prytany_label(p)
heniautos.prytanies.prytany_type(year)

Determine prytany type base on year.

heniautos.prytanies.prytany_to_julian(year, prytany, day, v_off=1, s_off=0, data=<function load_data>)

Return the Julian Day Number for a prytany date.

Parameters: year (int) – The year prytany (Prytanies) – Constant from Prytanies indicating the desired prytany day (int) – The day rule (heniautos.Visible) – Constant from heniautos.Visible indicating the desired rule data – Astronomical data for calculations. By default this is returned from heniautos.load_data()

heniautos.prytanies.jdn_to_prytany_day(jdn, year=None, pryt_type=Prytany.AUTO, pryt_start=Prytany.AUTO, v_off=1, s_off=0, rule_of_aristotle=False, data=<function load_data>)
heniautos.prytanies.julian_to_prytany_day(year, month, day, pryt_type=Prytany.AUTO, pryt_start=Prytany.AUTO, v_off=1, s_off=0, rule_of_aristotle=False, data=<function load_data>)
heniautos.prytanies.gregorian_to_prytany_day(year, month, day, pryt_type=Prytany.AUTO, pryt_start=Prytany.AUTO, v_off=1, s_off=0, rule_of_aristotle=False, data=<function load_data>)

heniautos.equations

Classes

class heniautos.equations.FestivalDOY(date, doy, preceding, intercalation)
class heniautos.equations.PrytanyDOY(date, doy, preceding, intercalation)
class heniautos.equations.Equation(festival, conciliar)
class heniautos.equations.Partition(festival, conciliar)
class heniautos.equations.Collation(equations, partitions)

Functions

heniautos.equations.festival_doy(month, day)

Return possible DOYs for a given month and day.

Parameters:
Returns:

List of possible days of the year.

Return type:

tuple

Calculates every possible DOY for a month and day with all the possible combinations of full and hollow months preceding it.

Returns a tuple of FestivalDOY objects, one for each DOY, and each consisting of:

  • date: Month and day supplied

  • doy: The day of the year

  • preceding: tuple of ints that are the lengths of the months preceding the given date, which goes in the DOY calculation

  • intercalation: True if the DOY requires an intercalation among the months preceding the given date. False otherwise

heniautos.equations.prytany_doy(pry, day, pryt_type)

Return possible DOYs for a given prytany and day.

Parameters:
Returns:

List of possible days of the year

Return type:

tuple

Raises:

heniautos.HeniautosError – If heniautos.prytanies.Prytany.AUTO or other unrecognized prytany type is supplied

Calculates every possible DOY for a prytany and day with all the possible combinations of long and short prytanies preceding it. Returns a tuple of FestivalDOY objects, one for each DOY.

heniautos.equations.equations(months, prytanies, pryt_type)

Return possible solutions for a calendar equation

Parameters:
Returns:

List of matching Equation objects

Return type:

tuple

Raises:

heniautos.HeniautosError – If heniautos.prytanies.Prytany.AUTO or other unrecognized prytany type is supplied

Returns a tuple of Equation objects, each containing a pair of FestivalDOY and PrytanyDOY that together a solution for the given calendar equation(s) (months = prytanies)

Intercalation means something slightly different for the festival and conciliar calendar solutions. For the conciliar calendar True means that the year is intercalary because that affects the lengths of all the prytanies. For the festival calendar, True means that an intercalation must precede the date because that effects the number of months, not the lengths. If a pair has intercalation = False in the festival solution but py:attr:intercalation = True in the conciliar, it indicates that that solution is valid for an intercalary, but only if the intercalation follows the festival date.

heniautos.equations.collations(*args, failures=False)

Collate multiple equations, looking for those that fit together.

Parameters:

args (heniautos.equations.Equation) – Arbitrary number of equation results

Returns:

tuple of Collation objects

Take an arbitrary number of calendar Equation results (i.e. results from equations()) and find those that fit together according to the following criteria:

  1. required conciliar years are all normal or all intercalary

  2. all equations that require festival year intercalation follow any that require no intercalations

  3. Each sequence of month and prytany lengths fits into the following sequences.

Each equation result probably has multiple solutions. This tests all combinations of solutions. Returns results as a tuple Collation objects.

heniautos.ephemeris