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