aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib.rs
blob: 79dda379c71ec5b96c9367cea78f2e91b93fdea1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
pub mod flow_rate;
pub mod mass;
pub mod pressure;
pub mod temperature;
pub mod volume;

use crate::{pressure::Pressure, temperature::Temperature, volume::Volume};

const GAS_CONSTANT: f64 = 8.314472;
const MOLAR_MASS_OF_AIR: f64 = 0.0289647; // Kg/mol

fn moles_from_gas_law(pressure: Pressure, volume: Volume, temperature: Temperature) -> f64 {
    (pressure.as_pascals() * volume.as_cubic_metres()) / (GAS_CONSTANT * temperature.as_kelvin())
}