Lunar computations for calendars
Requires
- module:deltat
- module:time-units.js
- module:chronos
- module:extdate
Methods
(static) getCELunarDate(theDate) → {Object}
The lunar Milesian era calendar date coordinate at this date, 0h UTC. First day of this calendar is 4 1m 000
First day of this lunar calendar is on 4 1m 000, and is expressed day 1 month 1 year 0.
an adjustement to Terrestrial Time (TT) is applied
Parameters:
Name | Type | Description |
---|---|---|
theDate |
Date | UTC date. |
Returns:
Lunar date {year: number, month: number, day: integer number (1 to 30) }.
- Type
- Object
(static) getCEMoonDate(theDate) → {Object}
The complete moon date coordinate at this date and time UTC. Moon age may change during a calendar day.
Origin morning of 3 1m 000
an adjustement to Terrestrial Time (TT) is applied
Parameters:
Name | Type | Description |
---|---|---|
theDate |
Date | UTC date. |
Returns:
Lunar date with age as a decimal figure {year: integer, month: integer, age: decimal number}.
- Type
- Object
(static) getDraconiticNodes(theDate) → {Array}
Estimate dates of caput draconis and of cauda draconis that wrap the given date.
Parameters:
Name | Type | Description |
---|---|---|
theDate |
Date | UTC date. |
Returns:
two dates and a Boolean: caput draconis, cauda draconis (both within same year), and whether eclipse season is running.
- Type
- Array
(static) getHegirianLunarDate(theDate) → {Object}
The lunar "mean" Hegirian calendar date coordinate at this date, 0h UTC.
First day of this lunar calendar is on 26 7m 622, and is expressed day 1 month 1 year 1.
It corresponds to 1 9 641 of CE lunar calendar
an adjustment to Terrestrial Time (TT) is applied
Parameters:
Name | Type | Description |
---|---|---|
theDate |
Date | UTC date. |
Returns:
Lunar date {{year: number, month: number, date: number (1 to 30)}
- Type
- Object
(static) getHegirianMoonDate(theDate) → {Object}
The complete moon date coordinate at this date and time UTC. Moon age may change during a calendar day.
Origin is evening of 25 7m 622
an adjustment to Terrestrial Time (TT) is applied
Parameters:
Name | Type | Description |
---|---|---|
theDate |
Date | UTC date. |
Returns:
Lunar date with age as a decimal figure {year: integer, month: integer, age: decimal number}.
- Type
- Object
(static) getLunarDateTime(theDate) → {Date}
Lunar date and time is such that the moon is at the same place on the Ecliptic that the sun at that date and time.
The moon is rising for lunar dates from 1 1m to 31 6m, falling for lunar dates from 1 7m to last day of the year.
Parameters:
Name | Type | Description |
---|---|---|
theDate |
Date | UTC date. |
Returns:
Instant that corresponds to the Lunar date.
Note that the time of the returned instant is the lunar time. When getting this time, DST applies following lunar Date.
- Type
- Date
(static) getLunarSunTimeAngle(theDate) → {number}
Angle between the moon position and the sun position.
Parameters:
Name | Type | Description |
---|---|---|
theDate |
Date | UTC date. |
Returns:
delay to add to current time in order to get lunar time
- Type
- number
(static) getTemperedDate(theDate) → {Object}
The date in the tempered tropical year, i.e. the date from the instant of the last winter solstice.
Parameters:
Name | Type | Description |
---|---|---|
theDate |
Date | UTC date. |
Returns:
Year and milliseconds in year.
- Type
- Object