Dimensions#
How unxt.dimension_of interacts with parametric quantities. For dimensions in general, see the unxt Dimensions guide.
>>> import unxt as u
>>> import unxts.parametric as up
The dimension of a parametric class#
Because a ParametricQuantity encodes its dimension in the class itself, unxt.dimension_of works on a parametrized class โ not only on instances:
>>> u.dimension_of(up.PQ["length"]) # a parameterized class carries a dimension
PhysicalType('length')
>>> try: u.dimension_of(up.PQ) # ... the unparameterized class does not
... except Exception as e: print(e)
can only get dimensions from parametrized ParametricQuantity -- ParametricQuantity[dim].
The default Quantity carries no dimension, so dimension_of on the class raises (only instances have a unit, and hence a dimension) โ see the unxt Dimensions guide.