Unit Computation with Pint
Cognitive prosthetics for unit-aware computation. Use Pint for converting between units, performing unit arithmetic, checking dimensional compatibility, and simplifying compound units.
When to Use
-
Converting between units (meters to feet, kg to pounds)
-
Unit-aware arithmetic (velocity x time = distance)
-
Dimensional analysis (is force = mass x acceleration?)
-
Simplifying compound units to base or named units
-
Parsing and analyzing quantities with units
Quick Reference
I want to... Command Example
Convert units convert
convert "5 meters" --to feet
Unit math calc
calc "10 m/s * 5 s"
Check dimensions check
check newton --against "kg * m / s^2"
Parse quantity parse
parse "100 km/h"
Simplify units simplify
simplify "1 kg*m/s^2"
Commands
parse
Parse a quantity string into magnitude, units, and dimensionality.
uv run python -m runtime.harness scripts/pint_compute.py
parse "100 km/h"
uv run python -m runtime.harness scripts/pint_compute.py
parse "9.8 m/s^2"
convert
Convert a quantity to different units.
uv run python -m runtime.harness scripts/pint_compute.py
convert "5 meters" --to feet
uv run python -m runtime.harness scripts/pint_compute.py
convert "100 km/h" --to mph
uv run python -m runtime.harness scripts/pint_compute.py
convert "1 atmosphere" --to pascal
calc
Perform unit-aware arithmetic. Operators must be space-separated.
uv run python -m runtime.harness scripts/pint_compute.py
calc "5 m * 3 s"
uv run python -m runtime.harness scripts/pint_compute.py
calc "10 m / 2 s"
uv run python -m runtime.harness scripts/pint_compute.py
calc "5 meters + 300 cm"
check
Check if two units have compatible dimensions.
uv run python -m runtime.harness scripts/pint_compute.py
check newton --against "kg * m / s^2"
uv run python -m runtime.harness scripts/pint_compute.py
check joule --against "kg * m^2 / s^2"
simplify
Simplify compound units to base or compact form.
uv run python -m runtime.harness scripts/pint_compute.py
simplify "1 kg*m/s^2"
uv run python -m runtime.harness scripts/pint_compute.py
simplify "1000 m"
Common Unit Domains
Domain Examples
Length meter, foot, inch, mile, km, yard
Time second, minute, hour, day, year
Mass kg, gram, pound, ounce, ton
Velocity m/s, km/h, mph, knot
Energy joule, calorie, eV, kWh, BTU
Force newton, pound_force, dyne
Temperature kelvin, celsius, fahrenheit
Pressure pascal, bar, atmosphere, psi
Power watt, horsepower
Output Format
All commands return JSON with relevant fields:
{ "result": "16.4042 foot", "magnitude": 16.4042, "units": "foot", "dimensionality": "[length]", "latex": "16.4042\,\mathrm{ft}" }
Error Handling
Dimensionality errors are caught and reported:
This will error - incompatible dimensions
uv run python -m runtime.harness scripts/pint_compute.py
convert "5 meters" --to kg
Error: Cannot convert '[length]' to '[mass]'
Related Skills
-
/math-mode - Full math orchestration (SymPy + Z3)
-
/sympy-compute - Symbolic computation