|
CelestialCalendar 1.0.0 · unreleased development @ 67a7c4c79a4a4a6aa7e703c9e6f0039ae34bee82
|
#include <array>#include <cassert>#include <chrono>#include <cmath>#include <cstdint>#include <format>#include <limits>#include <stdexcept>#include "delta_t.hpp"#include "leap_second.hpp"#include "ymd.hpp"#include "datetime.hpp"Classes | |
| struct | astro::julian_day::Times |
| Modelled UT1 and TT at the same instant, in Julian days. More... | |
Namespaces | |
| namespace | astro |
| namespace | astro::julian_day |
Enumerations | |
| enum class | astro::julian_day::Scale : uint8_t { astro::julian_day::UTC , astro::julian_day::UT1 } |
| The explicitly declared scale of a civil datetime. More... | |
Functions | |
| auto | astro::julian_day::ut1_to_jd (const calendar::Datetime &ut1_dt) -> double |
| Convert UT1 datetime to julian day number. | |
| auto | astro::julian_day::jd_to_ut1 (const double jd) -> calendar::Datetime |
| Convert julian day number to UT1 datetime. | |
| auto | astro::julian_day::tt_to_jde (const calendar::Datetime &tt_dt) -> double |
| Converts a TT datetime to julian ephemeris day number. | |
| auto | astro::julian_day::jde_to_tt (const double jde) -> calendar::Datetime |
| Converts a julian ephemeris day number to TT datetime. | |
| auto | astro::julian_day::civil_to_tt (const calendar::Datetime &civil_dt, const Scale scale, const astro::delta_t::Model model=astro::delta_t::DEFAULT_MODEL) -> calendar::Datetime |
| Convert one explicitly scaled civil datetime to TT, with strict modern UTC admission. | |
| auto | astro::julian_day::resolve_times (const calendar::Datetime &civil_dt, const Scale scale, const astro::delta_t::Model model=astro::delta_t::DEFAULT_MODEL) -> Times |
| Resolve UT1 and TT without additional civil-year or derived-TT admission policy. | |
| auto | astro::julian_day::jde_to_ut1 (const double jde) -> calendar::Datetime |
| Converts a julian ephemeris day number to UT1 datetime. | |
| auto | astro::julian_day::ut1_to_jde (const calendar::Datetime &ut1_dt) -> double |
| Converts a UT1 datetime to julian ephemeris day number. | |
| auto | astro::julian_day::jde_to_utc (const double jde) -> calendar::Datetime |
| Converts a julian ephemeris day number to UTC datetime. | |
| auto | astro::julian_day::utc_to_jde (const calendar::Datetime &utc_dt) -> double |
| Converts a UTC datetime to julian ephemeris day number. | |
| auto | astro::julian_day::utc_year_start_jde (const std::chrono::year year) -> double |
| Return the JDE(TT) of January 1 at 00:00 UTC in a calendar year. | |
| auto | astro::julian_day::validate_annual_year (const int32_t year) -> void |
| Validate a Gregorian year for an annual (whole-year) query. | |
| auto | astro::julian_day::utc_year_jde_window (const int32_t year) -> std::array< double, 2 > |
| Return the half-open UTC year window expressed as JDE(TT) bounds. | |
| constexpr auto | astro::julian_day::jde_to_jm (const double jde) -> double |
| Converts a julian ephemeris day number to julian millennium. | |
| constexpr auto | astro::julian_day::jm_to_jde (const double jm) -> double |
| Converts a julian millennium to julian ephemeris day number. | |
| constexpr auto | astro::julian_day::jde_to_jc (const double jde) -> double |
| Converts a julian ephemeris day number to julian century. | |
| constexpr auto | astro::julian_day::jc_to_jde (const double jc) -> double |
| Converts a julian century to julian ephemeris day number. | |
Variables | |
| constexpr double | astro::julian_day::J2000 |
| The julian day number of 2000-01-01, 12:00:00.0 (noon). | |
| constexpr double | astro::julian_day::DAYS_PER_JULIAN_CENTURY |
| The number of days in one Julian century (36525 days). | |