46constexpr double PI = 3.14159265358979323846;
50constexpr double KmInAu = 149597870.700;
53constexpr double G = 6.6743015e-11;
55constexpr double G_km = 6.6743015e-20;
58constexpr double SunMu = 1.32712400188e11;
60#if __cplusplus == 202302L
62#define floatmod std::fmod
64inline double constexpr floatmod(
double x,
double y) {
return x - y * (int)(x / y); }
81 if (r < 0) r +=
TWOPI;
102inline constexpr double operator""_au(
const long double au) {
return toKm(au); }
Definition: coordinates.cpp:22
constexpr double normalize_radian_coord(const radian &radian)
Definition: units.h:79
constexpr astronomical_unit toAU(kilometer km)
Definition: units.h:94
constexpr radian toRadian(degree theta)
Definition: units.h:98
constexpr double G
Definition: units.h:53
constexpr radian normalize_radian(const radian &radian)
Normalizes a radian to [0, PI*2)
Definition: units.h:71
constexpr degree toDegree(radian theta)
Definition: units.h:99
constexpr light_year toLightYear(astronomical_unit au)
Definition: units.h:95
constexpr degree normalize_degree(const degree &radian)
Definition: units.h:85
constexpr double G_km
Definition: units.h:55
double second
Definition: units.h:43
constexpr astronomical_unit LtyrtoAU(light_year ltyr)
Definition: units.h:96
double astronomical_unit
Definition: units.h:33
UnitType
Definition: units.h:22
@ Angle
Definition: units.h:24
@ Power
Definition: units.h:28
@ Time
Definition: units.h:27
@ Mass
Definition: units.h:25
@ Volume
Definition: units.h:26
Distance
Definition: units.h:31
@ Kilometer
Definition: units.h:31
@ Millimeter
Definition: units.h:31
@ Centimeter
Definition: units.h:31
@ Meter
Definition: units.h:31
@ LightYear
Definition: units.h:31
@ AstronomicalUnit
Definition: units.h:31
constexpr kilometer toKm(astronomical_unit au)
Definition: units.h:97
constexpr double floatmod(double x, double y)
Definition: units.h:64
double solar_mass
Definition: units.h:36
double radian
Definition: units.h:38
double meter_cube
Definition: units.h:39
constexpr double HALFPI
Definition: units.h:48
constexpr double PI
Definition: units.h:46
double kilogram
Definition: units.h:40
double joule
Definition: units.h:42
constexpr double TWOPI
Definition: units.h:47
constexpr double SunMu
Definition: units.h:58
double earth_masses
Definition: units.h:41
constexpr double KmInAu
Definition: units.h:50
double degree
Definition: units.h:37
double light_year
Definition: units.h:34
double kilometer
Definition: units.h:35