runtime_units/unit_definitions/
length.rs

1//! Length (base UnitDefinition meter, m).
2
3use crate::{prefix, quantity};
4
5quantity! {
6    /// Length (base UnitDefinition meter, m).
7    quantity: Length; "length";
8    /// Dimension of length, L (base UnitDefinition meter, m).
9    dimension: ISQ[
10        1.0,     // length
11        0.0,     // mass
12        0.0,     // time
13        0.0,     // electric current
14        0.0,     // thermodynamic temperature
15        0.0,     // amount of substance
16        0.0];    // luminous intensity
17    units {
18        @yottameter: prefix!(yotta); "Ym", "yottameter", "yottameters";
19        @zettameter: prefix!(zetta); "Zm", "zettameter", "zettameters";
20        @exameter: prefix!(exa); "Em", "exameter", "exameters";
21        @petameter: prefix!(peta); "Pm", "petameter", "petameters";
22        @terameter: prefix!(tera); "Tm", "terameter", "terameters";
23        @gigameter: prefix!(giga); "Gm", "gigameter", "gigameters";
24        @megameter: prefix!(mega); "Mm", "megameter", "megameters";
25        @kilometer: prefix!(kilo); "km", "kilometer", "kilometers";
26        @hectometer: prefix!(hecto); "hm", "hectometer", "hectometers";
27        @decameter: prefix!(deca); "dam", "decameter", "decameters";
28        /// The meter is the SI UnitDefinition of length. It is defined by taking the fixed numerical value
29        /// of the speed of light in vacuum *c* to be 299 792 458 when expressed in the UnitDefinition m s⁻¹,
30        /// where the second is defined in terms of the caesium frequency ∆*ν*<sub>Cs</sub>.
31        @meter: prefix!(none); "m", "meter", "meters";
32        @decimeter: prefix!(deci); "dm", "decimeter", "decimeters";
33        @centimeter: prefix!(centi); "cm", "centimeter", "centimeters";
34        @millimeter: prefix!(milli); "mm", "millimeter", "millimeters";
35        @micrometer: prefix!(micro); "µm", "micrometer", "micrometers";
36        @nanometer: prefix!(nano); "nm", "nanometer", "nanometers";
37        @picometer: prefix!(pico); "pm", "picometer", "picometers";
38        @femtometer: prefix!(femto); "fm", "femtometer", "femtometers";
39        @attometer: prefix!(atto); "am", "attometer", "attometers";
40        @zeptometer: prefix!(zepto); "zm", "zeptometer", "zeptometers";
41        @yoctometer: prefix!(yocto); "ym", "yoctometer", "yoctometers";
42
43        @angstrom: 1.0_E-10; "Å", "ångström", "ångströms";
44        @bohr_radius: 5.291_772_109_03_E-11; "a₀", "bohr radius", "bohr radiuses";
45        /// Atomic UnitDefinition of length (Bohr radius).
46        @atomic_unit_of_length: 5.291_772_109_03_E-11; "a.u. of length", "atomic UnitDefinition of length",
47            "atomic units of length";
48        @astronomical_unit: 1.495_979_E11; "ua", "astronomical UnitDefinition", "astronomical units";
49        @chain: 2.011_684_E1; "ch", "chain", "chains";
50        @fathom: 1.828_804_E0; "fathom", "fathom", "fathoms";
51        @fermi: 1.0_E-15; "fermi", "fermi", "fermis";
52        @foot: 3.048_E-1; "ft", "foot", "feet";
53        @kilofoot: 3.048_E-1*prefix!(kilo); "kft", "kilofoot", "kilofeet";
54        @foot_survey: 3.048_006_E-1; "ft (U.S. survey)", "foot (U.S. survey)", "feet (U.S. survey)";
55        @inch: 2.54_E-2; "in", "inch", "inches";
56        @light_year: 9.460_73_E15; "l. y.", "light year", "light years";
57        @microinch: 2.54_E-8; "μin", "microinch", "microinches";
58        @micron: 1.0_E-6; "μ", "micron", "microns";
59        @mil: 2.54_E-5; "0.001 in", "mil", "mils";
60        @mile: 1.609_344_E3; "mi", "mile", "miles";
61        @mile_survey: 1.609_347_E3; "mi (U.S. survey)", "mile (U.S. survey)", "miles (U.S. survey)";
62        @nautical_mile: 1.852_E3; "NM", "nautical mile", "nautical miles";
63        @parsec: 3.085_678_E16; "pc", "parsec", "parsecs";
64        @pica_computer: 4.233_333_333_333_333_E-3; "1/6 in (computer)", "pica (computer)",
65            "picas (computer)";
66        @pica_printers: 4.217_518_E-3; "1/6 in", "pica (printer's)", "picas (printer's)";
67        @point_computer: 3.527_778_E-4; "1/72 in (computer)", "point (computer)",
68            "points (computer)";
69        @point_printers: 3.514_598_E-4; "1/72 in", "point (printer's)", "points (printer's)";
70        @rod: 5.029_21_E0; "rd", "rod", "rods";
71        @yard: 9.144_E-1; "yd", "yard", "yards";
72    }
73}