|
CelestialCalendar 1.0.0 · unreleased development @ 67a7c4c79a4a4a6aa7e703c9e6f0039ae34bee82
|
Namespaces | |
| namespace | algo1 |
| namespace | algo2 |
| namespace | algo3 |
| namespace | algo4 |
| namespace | algo5 |
Enumerations | |
| enum class | Model : uint8_t { ALGO1 , ALGO2 , ALGO3 , ALGO4 , ALGO5 } |
| A selectable ΔT algorithm. More... | |
Functions | |
| constexpr auto | compute (const Model model, const double year) -> double |
| Evaluate a selected ΔT model at a decimal Gregorian year. | |
| constexpr auto | compute (const double year) noexcept -> double |
| Compute ΔT for a decimal Gregorian year using the default model. | |
| constexpr auto | compute (const Model model, const calendar::Datetime &dt) -> double |
| Evaluate a selected ΔT model at a valid calendar datetime. | |
| constexpr auto | compute (const calendar::Datetime &dt) -> double |
| Evaluate Algo 5 at a valid calendar datetime. | |
| constexpr auto | ut1_to_tt (const Model model, const calendar::Datetime &ut1_dt) -> calendar::Datetime |
| Convert UT1 to TT with one ΔT evaluation at the UT1 datetime. | |
| constexpr auto | ut1_to_tt (const calendar::Datetime &ut1_dt) -> calendar::Datetime |
| Convert a calendar::Datetime in UT1 to a new calendar::Datetime in TT. | |
| constexpr auto | tt_to_ut1 (const Model model, const calendar::Datetime &tt_dt) -> calendar::Datetime |
| Convert TT to modelled UT1 with one ΔT evaluation at the TT datetime. | |
| constexpr auto | tt_to_ut1 (const calendar::Datetime &tt_dt) -> calendar::Datetime |
| Convert a calendar::Datetime in TT to a new calendar::Datetime in UT1. | |
Variables | |
| constexpr Model | DEFAULT_MODEL |
| Default for operations with a selectable ΔT model; fixed-Algo5 shortcuts stay fixed. | |
| constexpr double | ALGO1_START_JDE_TT |
| constexpr double | ALGO3_END_JDE_TT |
| constexpr double | ALGO4_END_JDE_TT |
This file computes ΔT (TT − UT1) and converts between the UT1 and TT time scales. The time scales (UT1, UTC, TT) and ΔT = TT − UT1 are defined in the Time Scales section of docs/DESIGN.md.
|
strong |
|
nodiscardconstexpr |
Evaluate Algo 5 at a valid calendar datetime.
| std::invalid_argument | If the datetime is invalid. |
|
nodiscardconstexprnoexcept |
Compute ΔT for a decimal Gregorian year using the default model.
| year | The year, of double type. The year has fractional part, indicating the time elapsed in the year. |
Algo5 is used for all finite years, with continuous joins and no upper year bound.
|
nodiscardconstexpr |
Evaluate a selected ΔT model at a valid calendar datetime.
| std::invalid_argument | If the datetime or model is invalid, or the year leaves the model's domain. |
|
nodiscardconstexpr |
Evaluate a selected ΔT model at a decimal Gregorian year.
| std::invalid_argument | If the model is unknown or the year leaves its domain. |
|
nodiscardconstexpr |
Convert a calendar::Datetime in TT to a new calendar::Datetime in UT1.
| tt_dt | The datetime in TT. |
| std::invalid_argument | If the datetime is invalid or the shift leaves the representable years. |
|
nodiscardconstexpr |
Convert TT to modelled UT1 with one ΔT evaluation at the TT datetime.
| model | The ΔT model. |
| tt_dt | The datetime in TT. |
| std::invalid_argument | If the datetime or model is invalid, the shift leaves the representable years, or the datetime leaves the model's domain. |
|
nodiscardconstexpr |
Convert a calendar::Datetime in UT1 to a new calendar::Datetime in TT.
| ut1_dt | The datetime in UT1. |
| std::invalid_argument | If the datetime is invalid or the shift leaves the representable years. |
|
nodiscardconstexpr |
Convert UT1 to TT with one ΔT evaluation at the UT1 datetime.
| model | The ΔT model. |
| ut1_dt | The datetime in UT1. |
| std::invalid_argument | If the datetime or model is invalid, the shift leaves the representable years, or the datetime leaves the model's domain. |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
|
inlineconstexpr |
Default for operations with a selectable ΔT model; fixed-Algo5 shortcuts stay fixed.