[IFC] What is IfcDimensionalExponents?
In IfcSIUnit there is the comment with "1* Dimensions IfcDimensionalExponents This attribute is formally derived. "
I don't understand for what purpose the IfcDimensionalExponents exists.
Tagged:
In IfcSIUnit there is the comment with "1* Dimensions IfcDimensionalExponents This attribute is formally derived. "
I don't understand for what purpose the IfcDimensionalExponents exists.
Comments
It's needed to define more complex units. Perhaps an example could help:

If I want to define specific heat capacity (Joule / kg Kelvin) for example, I don't need IfcDimensionalExponents. IfcDerivedUnitElement is used for the exponent part.
Example from section 3.3.2.3 Derived units as global units from IFC2x Edition 3 Model Implementation Guide, Version 2.0, T. Liebich, 2009/05
Is there some helper function in IfcOpenShell to get all unit defined in an IFC file?
You can get all assigned units by doing
model.by_type('IfcUnitAssignment')[0]
.Dimensional exponents are used when defining conversion based units (e.g. imperial) or context dependent units.
The ability for it to be auto-derived for SI units and derived units is useful: this allows us to display values in the users preferred unit. Note that we don't yet have a simple util function for this yet though.