use crate::constants::Constant;
pub mod iau2015 {
use crate::constants::NEWTONIAN_CONSTANT_OF_GRAVITATION as G;
pub const AU_SI: f64 = 149_597_870_700.0;
pub const AU_CGS: f64 = AU_SI * 100.0;
pub const AU: f64 = AU_SI;
pub const PC_SI: f64 = 30_856_775_814_913_673.0;
pub const PC_CGS: f64 = PC_SI * 100.0;
pub const PC: f64 = PC_SI;
pub const L_BOL0_SI: f64 = 3.0128e28;
pub const L_BOL0_CGS: f64 = L_BOL0_SI * 1e7;
pub const L_BOL0: f64 = L_BOL0_SI;
pub const L_SUN_SI: f64 = 3.828e26;
pub const L_SUN_CGS: f64 = L_SUN_SI * 1e7;
pub const L_SUN: f64 = L_SUN_SI;
pub const GM_SUN_SI: f64 = 1.327_124_4e20;
pub const GM_SUN_CGS: f64 = GM_SUN_SI * 1e6;
pub const GM_SUN: f64 = GM_SUN_SI;
pub const M_SUN_SI: f64 = GM_SUN_SI / G;
pub const M_SUN_CGS: f64 = M_SUN_SI * 1000.0;
pub const M_SUN: f64 = M_SUN_SI;
pub const R_SUN_SI: f64 = 695_700_000.0;
pub const R_SUN_CGS: f64 = R_SUN_SI * 100.0;
pub const R_SUN: f64 = R_SUN_SI;
pub const GM_JUP_SI: f64 = 1.266_865_3e17;
pub const GM_JUP_CGS: f64 = GM_JUP_SI * 1e6;
pub const GM_JUP: f64 = GM_JUP_SI;
pub const M_JUP_SI: f64 = GM_JUP_SI / G;
pub const M_JUP_CGS: f64 = M_JUP_SI * 1000.0;
pub const M_JUP: f64 = M_JUP_SI;
pub const R_JUP_SI: f64 = 71_492_000.0;
pub const R_JUP_CGS: f64 = R_JUP_SI * 100.0;
pub const R_JUP: f64 = R_JUP_SI;
pub const GM_EARTH_SI: f64 = 3.986_004e14;
pub const GM_EARTH_CGS: f64 = GM_EARTH_SI * 1e6;
pub const GM_EARTH: f64 = GM_EARTH_SI;
pub const M_EARTH_SI: f64 = GM_EARTH_SI / G;
pub const M_EARTH_CGS: f64 = M_EARTH_SI * 1000.0;
pub const M_EARTH: f64 = M_EARTH_SI;
pub const R_EARTH_SI: f64 = 6_378_100.0;
pub const R_EARTH_CGS: f64 = R_EARTH_SI * 100.0;
pub const R_EARTH: f64 = R_EARTH_SI;
}
pub use iau2015::*;
pub const ASTRO_CONSTANTS: &[(&str, Constant)] = &[
("Astronomical Unit", Constant { value: AU_SI, uncertainty: 0.0, unit: "m" }),
("Parsec", Constant { value: PC_SI, uncertainty: 0.0, unit: "m" }),
("Solar luminosity", Constant { value: L_SUN_SI, uncertainty: 0.0, unit: "W" }),
("Solar mass", Constant { value: M_SUN_SI, uncertainty: 0.0, unit: "kg" }),
("Solar radius", Constant { value: R_SUN_SI, uncertainty: 0.0, unit: "m" }),
("Jupiter mass", Constant { value: M_JUP_SI, uncertainty: 0.0, unit: "kg" }),
("Jupiter equatorial radius", Constant { value: R_JUP_SI, uncertainty: 0.0, unit: "m" }),
("Earth mass", Constant { value: M_EARTH_SI, uncertainty: 0.0, unit: "kg" }),
("Earth equatorial radius", Constant { value: R_EARTH_SI, uncertainty: 0.0, unit: "m" }),
];