Unit/constant definition file
We use the Pint library to define our unit conversion routines. It is used already extensively in the backend by normalizers etc. to perform the conversions. Pint is also what mostly defines our natural constants, as they are often used in the conversions.
We should make our unit systems and natural constant definitions more explicit. As of now we rely on what the Pint package defines internally. A better approach would be to define these in a single file that is loaded by Pint and can also be served to other contexts. This would allow use to:
- Have a single source for all units and constants used across the whole package. This will enable us to centrally manage the units and avoid breaking changes if the defaults of Pint change.
- Communication of units/constants between backend<->frontend. The GUI will need to do unit conversion on the client, which requires syncing of this data from Python to Javascript. This will also affect the format of the definition file.