sciforge-lib 0.0.4

Scientific computing library — mathematics, physics, chemistry, biology, astronomy, geology, meteorology.
Documentation
#[derive(Debug, Clone, Copy)]
pub struct CriticalPoint {
    pub formula: &'static str,
    pub tc_k: f64,
    pub pc_pa: f64,
    pub vc_m3_per_mol: f64,
    pub acentric_factor: f64,
    pub zc: f64,
}

pub const TABLE: &[CriticalPoint] = &[
    CriticalPoint { formula: "H2",     tc_k: 33.18,   pc_pa: 1.313e6,  vc_m3_per_mol: 6.42e-5,  acentric_factor: -0.220, zc: 0.305 },
    CriticalPoint { formula: "He",     tc_k: 5.19,    pc_pa: 0.227e6,  vc_m3_per_mol: 5.74e-5,  acentric_factor: -0.390, zc: 0.301 },
    CriticalPoint { formula: "Ne",     tc_k: 44.40,   pc_pa: 2.760e6,  vc_m3_per_mol: 4.16e-5,  acentric_factor: -0.041, zc: 0.311 },
    CriticalPoint { formula: "Ar",     tc_k: 150.86,  pc_pa: 4.898e6,  vc_m3_per_mol: 7.46e-5,  acentric_factor: -0.002, zc: 0.291 },
    CriticalPoint { formula: "Kr",     tc_k: 209.40,  pc_pa: 5.500e6,  vc_m3_per_mol: 9.12e-5,  acentric_factor:  0.005, zc: 0.288 },
    CriticalPoint { formula: "Xe",     tc_k: 289.74,  pc_pa: 5.840e6,  vc_m3_per_mol: 1.180e-4, acentric_factor:  0.008, zc: 0.286 },
    CriticalPoint { formula: "N2",     tc_k: 126.20,  pc_pa: 3.390e6,  vc_m3_per_mol: 8.95e-5,  acentric_factor:  0.039, zc: 0.289 },
    CriticalPoint { formula: "O2",     tc_k: 154.58,  pc_pa: 5.043e6,  vc_m3_per_mol: 7.34e-5,  acentric_factor:  0.022, zc: 0.288 },
    CriticalPoint { formula: "Cl2",    tc_k: 416.90,  pc_pa: 7.991e6,  vc_m3_per_mol: 1.230e-4, acentric_factor:  0.090, zc: 0.275 },
    CriticalPoint { formula: "F2",     tc_k: 144.30,  pc_pa: 5.215e6,  vc_m3_per_mol: 6.60e-5,  acentric_factor:  0.054, zc: 0.288 },
    CriticalPoint { formula: "Br2",    tc_k: 588.00,  pc_pa: 1.034e7,  vc_m3_per_mol: 1.350e-4, acentric_factor:  0.132, zc: 0.286 },
    CriticalPoint { formula: "AIR",    tc_k: 132.45,  pc_pa: 3.774e6,  vc_m3_per_mol: 8.48e-5,  acentric_factor:  0.035, zc: 0.291 },
    CriticalPoint { formula: "CO",     tc_k: 132.92,  pc_pa: 3.499e6,  vc_m3_per_mol: 9.31e-5,  acentric_factor:  0.066, zc: 0.295 },
    CriticalPoint { formula: "CO2",    tc_k: 304.13,  pc_pa: 7.377e6,  vc_m3_per_mol: 9.40e-5,  acentric_factor:  0.225, zc: 0.274 },
    CriticalPoint { formula: "H2O",    tc_k: 647.10,  pc_pa: 22.064e6, vc_m3_per_mol: 5.59e-5,  acentric_factor:  0.345, zc: 0.229 },
    CriticalPoint { formula: "H2O2",   tc_k: 728.00,  pc_pa: 2.092e7,  vc_m3_per_mol: 7.79e-5,  acentric_factor:  0.358, zc: 0.268 },
    CriticalPoint { formula: "NH3",    tc_k: 405.50,  pc_pa: 11.350e6, vc_m3_per_mol: 7.25e-5,  acentric_factor:  0.250, zc: 0.244 },
    CriticalPoint { formula: "H2S",    tc_k: 373.40,  pc_pa: 8.963e6,  vc_m3_per_mol: 9.85e-5,  acentric_factor:  0.090, zc: 0.284 },
    CriticalPoint { formula: "SO2",    tc_k: 430.80,  pc_pa: 7.884e6,  vc_m3_per_mol: 1.220e-4, acentric_factor:  0.245, zc: 0.269 },
    CriticalPoint { formula: "SO3",    tc_k: 491.00,  pc_pa: 8.200e6,  vc_m3_per_mol: 1.270e-4, acentric_factor:  0.422, zc: 0.255 },
    CriticalPoint { formula: "NO",     tc_k: 180.00,  pc_pa: 6.480e6,  vc_m3_per_mol: 5.78e-5,  acentric_factor:  0.583, zc: 0.250 },
    CriticalPoint { formula: "NO2",    tc_k: 431.40,  pc_pa: 1.013e7,  vc_m3_per_mol: 1.700e-4, acentric_factor:  0.834, zc: 0.480 },
    CriticalPoint { formula: "N2O",    tc_k: 309.60,  pc_pa: 7.245e6,  vc_m3_per_mol: 9.74e-5,  acentric_factor:  0.165, zc: 0.274 },
    CriticalPoint { formula: "SF6",    tc_k: 318.69,  pc_pa: 3.760e6,  vc_m3_per_mol: 1.985e-4, acentric_factor:  0.215, zc: 0.282 },
    CriticalPoint { formula: "HCl",    tc_k: 324.65,  pc_pa: 8.310e6,  vc_m3_per_mol: 8.10e-5,  acentric_factor:  0.133, zc: 0.249 },
    CriticalPoint { formula: "HF",     tc_k: 461.00,  pc_pa: 6.480e6,  vc_m3_per_mol: 6.90e-5,  acentric_factor:  0.382, zc: 0.117 },
    CriticalPoint { formula: "HBr",    tc_k: 363.15,  pc_pa: 8.551e6,  vc_m3_per_mol: 1.000e-4, acentric_factor:  0.063, zc: 0.283 },
    CriticalPoint { formula: "HI",     tc_k: 423.95,  pc_pa: 8.314e6,  vc_m3_per_mol: 1.310e-4, acentric_factor:  0.038, zc: 0.310 },
    CriticalPoint { formula: "HCN",    tc_k: 456.65,  pc_pa: 5.390e6,  vc_m3_per_mol: 1.390e-4, acentric_factor:  0.407, zc: 0.197 },
    CriticalPoint { formula: "CS2",    tc_k: 552.00,  pc_pa: 7.900e6,  vc_m3_per_mol: 1.730e-4, acentric_factor:  0.111, zc: 0.293 },
    CriticalPoint { formula: "Hg",     tc_k: 1750.00, pc_pa: 1.720e8,  vc_m3_per_mol: 4.30e-5,  acentric_factor: -0.166, zc: 0.510 },
    CriticalPoint { formula: "CH4",    tc_k: 190.56,  pc_pa: 4.599e6,  vc_m3_per_mol: 9.86e-5,  acentric_factor:  0.011, zc: 0.286 },
    CriticalPoint { formula: "C2H2",   tc_k: 308.30,  pc_pa: 6.139e6,  vc_m3_per_mol: 1.130e-4, acentric_factor:  0.187, zc: 0.271 },
    CriticalPoint { formula: "C2H4",   tc_k: 282.34,  pc_pa: 5.041e6,  vc_m3_per_mol: 1.310e-4, acentric_factor:  0.087, zc: 0.281 },
    CriticalPoint { formula: "C2H6",   tc_k: 305.32,  pc_pa: 4.872e6,  vc_m3_per_mol: 1.456e-4, acentric_factor:  0.099, zc: 0.279 },
    CriticalPoint { formula: "C3H6",   tc_k: 365.00,  pc_pa: 4.580e6,  vc_m3_per_mol: 1.810e-4, acentric_factor:  0.142, zc: 0.275 },
    CriticalPoint { formula: "C3H8",   tc_k: 369.83,  pc_pa: 4.248e6,  vc_m3_per_mol: 2.000e-4, acentric_factor:  0.152, zc: 0.276 },
    CriticalPoint { formula: "C4H10",  tc_k: 425.12,  pc_pa: 3.796e6,  vc_m3_per_mol: 2.550e-4, acentric_factor:  0.200, zc: 0.274 },
    CriticalPoint { formula: "C4H8",   tc_k: 419.50,  pc_pa: 4.020e6,  vc_m3_per_mol: 2.400e-4, acentric_factor:  0.194, zc: 0.277 },
    CriticalPoint { formula: "C5H12",  tc_k: 469.70,  pc_pa: 3.370e6,  vc_m3_per_mol: 3.110e-4, acentric_factor:  0.252, zc: 0.270 },
    CriticalPoint { formula: "C6H14",  tc_k: 507.60,  pc_pa: 3.025e6,  vc_m3_per_mol: 3.710e-4, acentric_factor:  0.301, zc: 0.266 },
    CriticalPoint { formula: "C7H16",  tc_k: 540.20,  pc_pa: 2.740e6,  vc_m3_per_mol: 4.280e-4, acentric_factor:  0.350, zc: 0.261 },
    CriticalPoint { formula: "C8H18",  tc_k: 568.70,  pc_pa: 2.490e6,  vc_m3_per_mol: 4.860e-4, acentric_factor:  0.399, zc: 0.256 },
    CriticalPoint { formula: "C6H6",   tc_k: 562.05,  pc_pa: 4.895e6,  vc_m3_per_mol: 2.560e-4, acentric_factor:  0.212, zc: 0.268 },
    CriticalPoint { formula: "C7H8",   tc_k: 591.75,  pc_pa: 4.108e6,  vc_m3_per_mol: 3.160e-4, acentric_factor:  0.263, zc: 0.264 },
    CriticalPoint { formula: "C8H10",  tc_k: 617.15,  pc_pa: 3.541e6,  vc_m3_per_mol: 3.690e-4, acentric_factor:  0.302, zc: 0.259 },
    CriticalPoint { formula: "CH3OH",  tc_k: 512.50,  pc_pa: 8.084e6,  vc_m3_per_mol: 1.170e-4, acentric_factor:  0.566, zc: 0.222 },
    CriticalPoint { formula: "C2H5OH", tc_k: 514.00,  pc_pa: 6.137e6,  vc_m3_per_mol: 1.680e-4, acentric_factor:  0.644, zc: 0.241 },
    CriticalPoint { formula: "C3H6O",  tc_k: 508.10,  pc_pa: 4.700e6,  vc_m3_per_mol: 2.090e-4, acentric_factor:  0.307, zc: 0.233 },
    CriticalPoint { formula: "CHCl3",  tc_k: 536.40,  pc_pa: 5.472e6,  vc_m3_per_mol: 2.390e-4, acentric_factor:  0.218, zc: 0.293 },
    CriticalPoint { formula: "CCl4",   tc_k: 556.40,  pc_pa: 4.560e6,  vc_m3_per_mol: 2.760e-4, acentric_factor:  0.193, zc: 0.272 },
    CriticalPoint { formula: "CF4",    tc_k: 227.51,  pc_pa: 3.750e6,  vc_m3_per_mol: 1.400e-4, acentric_factor:  0.186, zc: 0.277 },
];

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