|
CelestialCalendar 1.0.0 · unreleased development @ 67a7c4c79a4a4a6aa7e703c9e6f0039ae34bee82
|
#include <span>#include <array>#include <algorithm>#include <cmath>#include <functional>#include <ranges>#include <cstdint>#include "toolbox.hpp"#include "julian_day.hpp"#include "vsop87d/vsop87d.hpp"#include "vsop87d/defines.hpp"Classes | |
| struct | astro::earth::nutation::θCoeffs |
| struct | astro::earth::nutation::ψCoeffs |
| struct | astro::earth::nutation::εCoeffs |
| struct | astro::earth::nutation::NutationCoeffs |
| struct | astro::earth::aberration::DailyVariationTerm |
| A term of the Δλ series: amplitude × τ^tau_power × sin(phase + rate × τ), with τ the Julian millennia since J2000. More... | |
Namespaces | |
| namespace | astro |
| namespace | astro::earth |
| namespace | astro::earth::heliocentric_coord |
| namespace | astro::earth::nutation |
| namespace | astro::earth::obliquity |
| namespace | astro::earth::aberration |
Enumerations | |
| enum class | astro::earth::nutation::Model : uint8_t { astro::earth::nutation::MEEUS , astro::earth::nutation::IAU_1980 } |
| Specify Earth's nutation model. More... | |
Functions | |
| auto | astro::earth::heliocentric_coord::vsop87d (const double jde) -> toolbox::SphericalCoordinate |
| Calculate the heliocentric position of the Earth, using VSOP87D. | |
| auto | astro::earth::nutation::find_model (const Model model) -> std::span< const NutationCoeffs > |
| Find the nutation coefficients for the given model. | |
| auto | astro::earth::nutation::gen_eval_θ (const double jc) |
| Return the function to calculate the θ values, for the given julian century. | |
| auto | astro::earth::nutation::longitude (const double jde, const Model model=Model::IAU_1980) -> toolbox::AngleDeg |
| Calculates the nutation in longitude (Δψ) for the given julian day. | |
| auto | astro::earth::nutation::obliquity (const double jde, const Model model=Model::IAU_1980) -> toolbox::AngleDeg |
| Calculates the nutation in obliquity (Δε) for the given julian day. | |
| auto | astro::earth::obliquity::mean (const double jde) -> toolbox::AngleDeg |
| Calculates the mean obliquity of the ecliptic (ε₀) for the given julian day. | |
| auto | astro::earth::obliquity::true_obliquity (const double jde, const nutation::Model model=nutation::Model::IAU_1980) -> toolbox::AngleDeg |
| Calculates the true obliquity of the ecliptic (ε) for the given julian day. | |
| auto | astro::earth::aberration::daily_λ_variation (const double jde) -> double |
| The daily variation Δλ of the Sun's geocentric longitude, mean equinox of the date. | |
| auto | astro::earth::aberration::compute (const double jde, const toolbox::DistanceAu r) -> toolbox::AngleDeg |
| Compute the aberration correction to the Sun's geometric longitude, Meeus (25.11). | |
Variables | |
| constexpr std::array< NutationCoeffs, 63 > | astro::earth::nutation::MEEUS_NUTATION_COEFFS |
| constexpr std::array< NutationCoeffs, 106 > | astro::earth::nutation::IAU1980_NUTATION_COEFFS |
| constexpr std::array< DailyVariationTerm, 21 > | astro::earth::aberration::MEEUS_DAILY_VARIATION_TERMS |
| The Δλ series (daily variation of the Sun's geocentric longitude), p. 168. | |
| constexpr double | astro::earth::aberration::LIGHT_TIME_DAYS_PER_AU |
| The light-time for unit distance, in days per AU (= 499.00478 s ≈ 8.3 min). | |