A package for dimensional analysis calculations on floating-point values
Project description
Unitscalar: real-time verified dimensional analysis in Python
This package implements a unit-aware number data type that keeps track of units as an inseparable part of the number. Heavily inspired by Steve Byrnes' numericalunits
Valid Literals
UnitScalar uses custom-literals to hack support for custom literals into the language. These are defined for certain (arbitrary) unit strings as needed. At present:
| Literal | Unit String | Example |
|---|---|---|
x |
"" (N/A) |
10 .x or 10.x |
gMM |
g/mol |
101.1.gMM |
inch |
in |
3.90.inch |
psi |
psi |
10.0.psi |
lbf |
lbf |
0.0.lbf |
K |
K |
1837.22.K |
As a consequence of including this feature, unitscalar depends on the PIP package custom_literals. The latter mentioned warning about stability shouldn't affect downstream projects if the literals feature is not used.
Fair Warning
Briefly quoting the custom-literals README section on stability caveats:
This library relies almost entirely on implementation-specific behavior of the CPython interpreter. It is not guaranteed to work on all platforms, or on all versions of Python. It has been tested on common platforms (windows, ubuntu, macos) using python 3.7 through to 3.10, but while changes that would break the library are quite unlikely, they are not impossible either.
TODO List
- Vectorized artithmetic?
- Write example code and fill out README
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file unitscalar-0.0.7.tar.gz.
File metadata
- Download URL: unitscalar-0.0.7.tar.gz
- Upload date:
- Size: 8.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cb0c92087360a6ef9e8c190cad7871d5c35aa0116195f7621c4c22136b4241af
|
|
| MD5 |
1374a531eb293ca2d019e87cb5ddfdc4
|
|
| BLAKE2b-256 |
e0fa8d1c1bccbc4d61e1366ba89abaaff152bf2dbedcd274cc229eadcdc82628
|
File details
Details for the file unitscalar-0.0.7-py3-none-any.whl.
File metadata
- Download URL: unitscalar-0.0.7-py3-none-any.whl
- Upload date:
- Size: 7.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
63a3418f5a34e35b3c000bcbc0a5ce54b7d301c655d01d5eb03c6774a0334bfc
|
|
| MD5 |
e6d71415265f23bcdb5969782793009a
|
|
| BLAKE2b-256 |
4848ac57df3522c197cd487f2834622507ed6e324cb71b2bcbbd4bb7aaf7ad9c
|