Skip to main content

uom/si/
amount_of_substance.rs

1//! Amount of substance (base unit mole, mol).
2
3quantity! {
4    /// Amount of substance (base unit mole, mol).
5    quantity: AmountOfSubstance; "amount of substance";
6    /// Dimension of amount of substance, N (base unit mole, mol).
7    dimension: ISQ<
8        Z0,     // length
9        Z0,     // mass
10        Z0,     // time
11        Z0,     // electric current
12        Z0,     // thermodynamic temperature
13        P1,     // amount of substance
14        Z0>;    // luminous intensity
15    units {
16        @yottamole: prefix!(yotta); "Ymol", "yottamole", "yottamoles";
17        @zettamole: prefix!(zetta); "Zmol", "zettamole", "zettamoles";
18        @examole: prefix!(exa); "Emol", "examole", "examoles";
19        @petamole: prefix!(peta); "Pmol", "petamole", "petamoles";
20        @teramole: prefix!(tera); "Tmol", "teramole", "teramoles";
21        @gigamole: prefix!(giga); "Gmol", "gigamole", "gigamoles";
22        @megamole: prefix!(mega); "Mmol", "megamole", "megamoles";
23        @kilomole: prefix!(kilo); "kmol", "kilomole", "kilomoles";
24        @hectomole: prefix!(hecto); "hmol", "hectomole", "hectomoles";
25        @decamole: prefix!(deca); "damol", "decamole", "decamoles";
26        /// 1. The mole is the SI unit of amount of substance. One mole contains exactly
27        ///    6.022 140 76 × 10²³ elementary entities. This number is the fixed numerical value of
28        ///    the Avogadro constant, *N*<sub>A</sub>, when expressed in the unit mol⁻¹ and is
29        ///    called the Avogadro number.
30        /// 2. The amount of substance, symbol *n*, of a system is a measure of the number of
31        ///    specified elementary entities. An elementary entity may be an atom, a molecule, an
32        ///    ion, an electron, any other particle or specified group of particles.
33        @mole: prefix!(none); "mol", "mole", "moles";
34        @decimole: prefix!(deci); "dmol", "decimole", "decimoles";
35        @centimole: prefix!(centi); "cmol", "centimole", "centimoles";
36        @millimole: prefix!(milli); "mmol", "millimole", "millimoles";
37        @micromole: prefix!(micro); "µmol", "micromole", "micromoles";
38        @nanomole: prefix!(nano); "nmol", "nanomole", "nanomoles";
39        @picomole: prefix!(pico); "pmol", "picomole", "picomoles";
40        @femtomole: prefix!(femto); "fmol", "femtomole", "femtomoles";
41        @attomole: prefix!(atto); "amol", "attomole", "attomoles";
42        @zeptomole: prefix!(zepto); "zmol", "zeptomole", "zeptomoles";
43        @yoctomole: prefix!(yocto); "ymol", "yoctomole", "yoctomoles";
44
45        /// One elementary entity may be an atom, a molecule, an ion, an electron, any other
46        /// particle or specified group of particles.
47        @particle: 1.0_E0 / 6.022_140_76_E23; "particle", "particle", "particles";
48        /// Amount of ideal gas contained in a volume of cubic meter at standard temperature (O°C) and pressure (1 bar)
49        @standard_cubic_meter: 1_E5 * prefix!(none) / 8.314_462_618 / 273.15; "m³(STP)",
50            "standard cubic meter", "standard cubic meters";
51        /// Amount of ideal gas contained in a volume of liter at standard temperature (O°C) and pressure (1 bar)
52        @standard_liter: 1_E5 * prefix!(milli) / 8.314_462_618 / 273.15; "L(STP)",
53            "standard liter", "standard liters";
54        /// Amount of ideal gas contained in a volume of cubic centimeter at standard temperature (O°C) and pressure (1 bar)
55        @standard_centimeter: 1_E5 * prefix!(micro) / 8.314_462_618 / 273.15; "cm³(STP)",
56            "standard cubic centimeter", "standard cubic centimeters";
57        /// Amount of ideal gas contained in a volume of cubic foot at standard temperature (O°C) and pressure (1 bar)
58        @standard_cubic_foot: 1_E5 * 2.831_685_E-2 / 8.314_462_618 / 273.15; "scf",
59            "standard cubic foot", "standard cubic feet";
60    }
61}