units
You are reading the documentation of an outdated version, whose text may no longer be accurate. Go to the latest version.
Status: planned (wave 2). No code exists. The package name is provisional.
What it will provide
- A dimension vector of seven rational exponents, with a scale factor and an offset; the offset only for degC and degF.
- Quantities and conversion between compatible units.
- A parser for the UDUNITS grammar, which the CF conventions of NetCDF use, and a database of SI, US customary and derived units.
- Dimensional analysis: compatibility checks and Buckingham’s pi theorem, from the null space of the exponent matrix.
- In wave 4 (item 21), user-defined unit systems such as EMU, ESU and atomic
units, as Maple’s
Unitspackage offers.
References
| Subject | Reference |
|---|---|
| the SI | BIPM, The International System of Units (SI Brochure), 9th ed., normative |
| unit grammar and database | UDUNITS-2; the licence is BSD-3-Clause text plus a patent-termination clause, to be read before the database is copied |
| unified codes | UCUM, case-sensitive, used in health data |
| dimensional analysis | Buckingham, Phys. Rev. 4 (1914) 345, doi:10.1103/PhysRev.4.345 |
| representation | Hart, Multidimensional Analysis, Springer 1995, doi:10.1007/978-1-4612-4208-6 |
How it will be validated
| Area | Criterion |
|---|---|
| dimensions | exact rational dimension vectors |
| conversion | factors within 1 ulp of the decimal value in the references; a table diff against NIST SP 811 |
Oracles and references: pint (its definitions
file is data that may be ported), astropy’s astropy.units, and UDUNITS-2
itself. The corpus is NIST
Special Publication 811 and
pint’s test suite. Every item also needs unit tests at 100% coverage and a
performance table against the reference.
Created on by tannevaled
Modified on by tannevaled