#[derive(Debug, Clone, Copy, PartialEq)]
pub struct RegolithResource {
    pub ice_fraction: f64,
    pub oxygen_yield_fraction: f64,
    pub bulk_density_kg_m3: f64,
}

impl RegolithResource {
    pub fn oxygen_mass_kg(&self, processed_mass_kg: f64) -> f64 {
        processed_mass_kg * self.oxygen_yield_fraction
    }
    pub fn ice_feedstock_kg(&self, processed_mass_kg: f64) -> f64 {
        processed_mass_kg * self.ice_fraction
    }
}

pub fn primary_resource() -> RegolithResource {
    RegolithResource {
        ice_fraction: 0.40,
        oxygen_yield_fraction: 0.30,
        bulk_density_kg_m3: 1_100.0,
    }
}
