moons 0.0.2

Moon celestial simulation crate for the MilkyWay SolarSystem workspace
Documentation
#[derive(Debug, Clone, Copy, PartialEq)]
pub struct Helium3Field {
    pub area_km2: f64,
    pub concentration_ppb: f64,
    pub regolith_depth_m: f64,
}

impl Helium3Field {
    pub fn inventory_kg(&self, bulk_density_kg_m3: f64) -> f64 {
        let volume_m3 = self.area_km2 * 1.0e6 * self.regolith_depth_m;
        volume_m3 * bulk_density_kg_m3 * self.concentration_ppb * 1e-9
    }
}

pub fn mare_tranquillitatis() -> Helium3Field {
    Helium3Field {
        area_km2: 120_000.0,
        concentration_ppb: 18.0,
        regolith_depth_m: 3.0,
    }
}