ioss 0.0.3

Io celestial simulation crate for the MilkyWay SolarSystem workspace
Documentation
#[derive(Debug, Clone, Copy, PartialEq)]
pub struct MineralDeposit {
    pub name: &'static str,
    pub area_km2: f64,
    pub silicate_fraction: f64,
}

impl MineralDeposit {
    pub fn silicate_mass_kg(&self, regolith_depth_m: f64, density_kg_m3: f64) -> f64 {
        self.area_km2 * 1.0e6 * regolith_depth_m * density_kg_m3 * self.silicate_fraction
    }
}

pub fn volcanic_silicates() -> MineralDeposit {
    MineralDeposit {
        name: "Volcanic Silicates",
        area_km2: 200_000.0,
        silicate_fraction: 0.60,
    }
}