sciforge-core 0.0.4

Shared engineering primitives: materials, fasteners, fluids, propulsion taxonomies, std components.
Documentation
use std::sync::LazyLock;
use super::super::{Material, MaterialFamily};

pub static ALUMINA_AL2O3: LazyLock<Material> = LazyLock::new(|| Material {
    element: None,
    name: "Alumina Al2O3 99.5%",
    formula: "Al2O3",
    family: MaterialFamily::Ceramic,
    density_kg_m3: 3960.0,
    young_modulus_pa: 380.0e9,
    poisson_ratio: 0.22,
    yield_strength_pa: 350.0e6,
    ultimate_strength_pa: 350.0e6,
    thermal_conductivity_w_mk: 30.0,
    thermal_expansion_per_k: 8.1e-6,
    specific_heat_j_kgk: 880.0,
    max_service_temp_k: 1923.0,
    fatigue_strength_coeff_pa: 500.0e6,
    fatigue_strength_exponent: -0.05,
    hardness_hv: 1500.0,
    cost_eur_kg: 25.0,
});

pub static TBC_YSZ: LazyLock<Material> = LazyLock::new(|| Material {
    element: None,
    name: "TBC YSZ thermal barrier",
    formula: "ZrO2",
    family: MaterialFamily::Ceramic,
    density_kg_m3: 5800.0,
    young_modulus_pa: 50.0e9,
    poisson_ratio: 0.25,
    yield_strength_pa: 250.0e6,
    ultimate_strength_pa: 250.0e6,
    thermal_conductivity_w_mk: 1.0,
    thermal_expansion_per_k: 11.0e-6,
    specific_heat_j_kgk: 500.0,
    max_service_temp_k: 1973.0,
    fatigue_strength_coeff_pa: 350.0e6,
    fatigue_strength_exponent: -0.06,
    hardness_hv: 950.0,
    cost_eur_kg: 75.0,
});