sciforge-lib 0.0.4

Scientific computing library — mathematics, physics, chemistry, biology, astronomy, geology, meteorology.
Documentation
#[derive(Debug, Clone, Copy)]
pub struct FormationData {
    pub formula: &'static str,
    pub phase: &'static str,
    pub delta_hf_kj_per_mol: f64,
    pub delta_gf_kj_per_mol: f64,
    pub s_standard_j_molk: f64,
}

pub const TABLE: &[FormationData] = &[
    FormationData { formula: "H2",     phase: "gas",    delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk: 130.68 },
    FormationData { formula: "O2",     phase: "gas",    delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk: 205.15 },
    FormationData { formula: "N2",     phase: "gas",    delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk: 191.61 },
    FormationData { formula: "Cl2",    phase: "gas",    delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk: 223.08 },
    FormationData { formula: "F2",     phase: "gas",    delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk: 202.79 },
    FormationData { formula: "Br2",    phase: "liquid", delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk: 152.23 },
    FormationData { formula: "I2",     phase: "solid",  delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk: 116.14 },
    FormationData { formula: "He",     phase: "gas",    delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk: 126.15 },
    FormationData { formula: "Ne",     phase: "gas",    delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk: 146.33 },
    FormationData { formula: "Ar",     phase: "gas",    delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk: 154.84 },
    FormationData { formula: "Kr",     phase: "gas",    delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk: 164.08 },
    FormationData { formula: "Xe",     phase: "gas",    delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk: 169.68 },
    FormationData { formula: "C",      phase: "solid",  delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk:   5.74 },
    FormationData { formula: "Hg",     phase: "liquid", delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk:  76.02 },
    FormationData { formula: "Fe",     phase: "solid",  delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk:  27.32 },
    FormationData { formula: "Cu",     phase: "solid",  delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk:  33.15 },
    FormationData { formula: "Al",     phase: "solid",  delta_hf_kj_per_mol:    0.00, delta_gf_kj_per_mol:    0.00, s_standard_j_molk:  28.30 },
    FormationData { formula: "H2O",    phase: "liquid", delta_hf_kj_per_mol: -285.83, delta_gf_kj_per_mol: -237.13, s_standard_j_molk:  69.95 },
    FormationData { formula: "H2O",    phase: "gas",    delta_hf_kj_per_mol: -241.83, delta_gf_kj_per_mol: -228.57, s_standard_j_molk: 188.83 },
    FormationData { formula: "CO2",    phase: "gas",    delta_hf_kj_per_mol: -393.51, delta_gf_kj_per_mol: -394.36, s_standard_j_molk: 213.79 },
    FormationData { formula: "CO",     phase: "gas",    delta_hf_kj_per_mol: -110.53, delta_gf_kj_per_mol: -137.17, s_standard_j_molk: 197.66 },
    FormationData { formula: "NH3",    phase: "gas",    delta_hf_kj_per_mol:  -45.94, delta_gf_kj_per_mol:  -16.40, s_standard_j_molk: 192.77 },
    FormationData { formula: "NO",     phase: "gas",    delta_hf_kj_per_mol:   90.29, delta_gf_kj_per_mol:   86.60, s_standard_j_molk: 210.76 },
    FormationData { formula: "NO2",    phase: "gas",    delta_hf_kj_per_mol:   33.10, delta_gf_kj_per_mol:   51.30, s_standard_j_molk: 240.04 },
    FormationData { formula: "N2O",    phase: "gas",    delta_hf_kj_per_mol:   82.05, delta_gf_kj_per_mol:  104.20, s_standard_j_molk: 219.96 },
    FormationData { formula: "SO2",    phase: "gas",    delta_hf_kj_per_mol: -296.81, delta_gf_kj_per_mol: -300.13, s_standard_j_molk: 248.22 },
    FormationData { formula: "SO3",    phase: "gas",    delta_hf_kj_per_mol: -395.72, delta_gf_kj_per_mol: -371.06, s_standard_j_molk: 256.77 },
    FormationData { formula: "H2S",    phase: "gas",    delta_hf_kj_per_mol:  -20.63, delta_gf_kj_per_mol:  -33.43, s_standard_j_molk: 205.79 },
    FormationData { formula: "HCl",    phase: "gas",    delta_hf_kj_per_mol:  -92.31, delta_gf_kj_per_mol:  -95.30, s_standard_j_molk: 186.90 },
    FormationData { formula: "HF",     phase: "gas",    delta_hf_kj_per_mol: -273.30, delta_gf_kj_per_mol: -275.40, s_standard_j_molk: 173.78 },
    FormationData { formula: "HBr",    phase: "gas",    delta_hf_kj_per_mol:  -36.40, delta_gf_kj_per_mol:  -53.45, s_standard_j_molk: 198.70 },
    FormationData { formula: "HI",     phase: "gas",    delta_hf_kj_per_mol:   26.48, delta_gf_kj_per_mol:    1.70, s_standard_j_molk: 206.59 },
    FormationData { formula: "HCN",    phase: "gas",    delta_hf_kj_per_mol:  135.10, delta_gf_kj_per_mol:  124.70, s_standard_j_molk: 201.78 },
    FormationData { formula: "O3",     phase: "gas",    delta_hf_kj_per_mol:  142.70, delta_gf_kj_per_mol:  163.20, s_standard_j_molk: 238.93 },
    FormationData { formula: "H2O2",   phase: "liquid", delta_hf_kj_per_mol: -187.78, delta_gf_kj_per_mol: -120.35, s_standard_j_molk: 109.60 },
    FormationData { formula: "CH4",    phase: "gas",    delta_hf_kj_per_mol:  -74.87, delta_gf_kj_per_mol:  -50.81, s_standard_j_molk: 186.25 },
    FormationData { formula: "C2H6",   phase: "gas",    delta_hf_kj_per_mol:  -84.00, delta_gf_kj_per_mol:  -32.00, s_standard_j_molk: 229.20 },
    FormationData { formula: "C3H8",   phase: "gas",    delta_hf_kj_per_mol: -103.85, delta_gf_kj_per_mol:  -23.49, s_standard_j_molk: 270.20 },
    FormationData { formula: "C4H10",  phase: "gas",    delta_hf_kj_per_mol: -125.79, delta_gf_kj_per_mol:  -16.57, s_standard_j_molk: 310.23 },
    FormationData { formula: "C2H4",   phase: "gas",    delta_hf_kj_per_mol:   52.30, delta_gf_kj_per_mol:   68.15, s_standard_j_molk: 219.32 },
    FormationData { formula: "C2H2",   phase: "gas",    delta_hf_kj_per_mol:  226.73, delta_gf_kj_per_mol:  209.20, s_standard_j_molk: 200.93 },
    FormationData { formula: "C6H6",   phase: "liquid", delta_hf_kj_per_mol:   49.04, delta_gf_kj_per_mol:  124.50, s_standard_j_molk: 173.26 },
    FormationData { formula: "C7H8",   phase: "liquid", delta_hf_kj_per_mol:   12.40, delta_gf_kj_per_mol:  113.80, s_standard_j_molk: 219.60 },
    FormationData { formula: "CH3OH",  phase: "liquid", delta_hf_kj_per_mol: -238.66, delta_gf_kj_per_mol: -166.27, s_standard_j_molk: 126.80 },
    FormationData { formula: "C2H5OH", phase: "liquid", delta_hf_kj_per_mol: -277.69, delta_gf_kj_per_mol: -174.78, s_standard_j_molk: 160.70 },
    FormationData { formula: "C3H6O",  phase: "liquid", delta_hf_kj_per_mol: -248.40, delta_gf_kj_per_mol: -155.40, s_standard_j_molk: 199.80 },
    FormationData { formula: "C2H4O2", phase: "liquid", delta_hf_kj_per_mol: -484.50, delta_gf_kj_per_mol: -389.45, s_standard_j_molk: 159.83 },
    FormationData { formula: "CH2O",   phase: "gas",    delta_hf_kj_per_mol: -108.57, delta_gf_kj_per_mol: -102.50, s_standard_j_molk: 218.95 },
    FormationData { formula: "CHCl3",  phase: "liquid", delta_hf_kj_per_mol: -134.47, delta_gf_kj_per_mol:  -73.66, s_standard_j_molk: 201.70 },
    FormationData { formula: "CCl4",   phase: "liquid", delta_hf_kj_per_mol: -135.40, delta_gf_kj_per_mol:  -65.21, s_standard_j_molk: 216.40 },
    FormationData { formula: "CS2",    phase: "liquid", delta_hf_kj_per_mol:   89.70, delta_gf_kj_per_mol:   65.30, s_standard_j_molk: 151.34 },
    FormationData { formula: "NaCl",   phase: "solid",  delta_hf_kj_per_mol: -411.15, delta_gf_kj_per_mol: -384.14, s_standard_j_molk:  72.13 },
    FormationData { formula: "KCl",    phase: "solid",  delta_hf_kj_per_mol: -436.50, delta_gf_kj_per_mol: -408.50, s_standard_j_molk:  82.55 },
    FormationData { formula: "CaCO3",  phase: "solid",  delta_hf_kj_per_mol:-1207.60, delta_gf_kj_per_mol:-1129.10, s_standard_j_molk:  91.70 },
    FormationData { formula: "CaO",    phase: "solid",  delta_hf_kj_per_mol: -635.09, delta_gf_kj_per_mol: -603.30, s_standard_j_molk:  39.75 },
    FormationData { formula: "MgO",    phase: "solid",  delta_hf_kj_per_mol: -601.60, delta_gf_kj_per_mol: -569.30, s_standard_j_molk:  26.95 },
    FormationData { formula: "Al2O3",  phase: "solid",  delta_hf_kj_per_mol:-1675.70, delta_gf_kj_per_mol:-1582.30, s_standard_j_molk:  50.92 },
    FormationData { formula: "Fe2O3",  phase: "solid",  delta_hf_kj_per_mol: -824.20, delta_gf_kj_per_mol: -742.20, s_standard_j_molk:  87.40 },
    FormationData { formula: "Fe3O4",  phase: "solid",  delta_hf_kj_per_mol:-1118.40, delta_gf_kj_per_mol:-1015.40, s_standard_j_molk: 146.40 },
    FormationData { formula: "SiO2",   phase: "solid",  delta_hf_kj_per_mol: -910.94, delta_gf_kj_per_mol: -856.64, s_standard_j_molk:  41.84 },
    FormationData { formula: "TiO2",   phase: "solid",  delta_hf_kj_per_mol: -944.00, delta_gf_kj_per_mol: -889.50, s_standard_j_molk:  50.62 },
    FormationData { formula: "CuO",    phase: "solid",  delta_hf_kj_per_mol: -157.30, delta_gf_kj_per_mol: -129.70, s_standard_j_molk:  42.63 },
    FormationData { formula: "ZnO",    phase: "solid",  delta_hf_kj_per_mol: -350.46, delta_gf_kj_per_mol: -320.50, s_standard_j_molk:  43.65 },
    FormationData { formula: "NaOH",   phase: "solid",  delta_hf_kj_per_mol: -425.93, delta_gf_kj_per_mol: -379.49, s_standard_j_molk:  64.46 },
    FormationData { formula: "KOH",    phase: "solid",  delta_hf_kj_per_mol: -424.76, delta_gf_kj_per_mol: -379.10, s_standard_j_molk:  78.87 },
    FormationData { formula: "H2SO4",  phase: "liquid", delta_hf_kj_per_mol: -813.99, delta_gf_kj_per_mol: -690.00, s_standard_j_molk: 156.90 },
    FormationData { formula: "HNO3",   phase: "liquid", delta_hf_kj_per_mol: -174.10, delta_gf_kj_per_mol:  -80.71, s_standard_j_molk: 155.60 },
    FormationData { formula: "H3PO4",  phase: "solid",  delta_hf_kj_per_mol:-1284.40, delta_gf_kj_per_mol:-1124.30, s_standard_j_molk: 110.50 },
    FormationData { formula: "C6H12O6",phase: "solid",  delta_hf_kj_per_mol:-1273.30, delta_gf_kj_per_mol: -910.40, s_standard_j_molk: 212.10 },
    FormationData { formula: "CH4N2O", phase: "solid",  delta_hf_kj_per_mol: -333.10, delta_gf_kj_per_mol: -197.40, s_standard_j_molk: 104.60 },
];

pub fn by_formula(formula: &str) -> Option<&'static FormationData> {
    TABLE.iter().find(|f| f.formula == formula)
}

pub fn by_formula_phase(formula: &str, phase: &str) -> Option<&'static FormationData> {
    TABLE.iter().find(|f| f.formula == formula && f.phase == phase)
}