#[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,
}
}