OpenMDAO allows expressing many new types of units by combining existing ones. This creates the possibility of mapping to the OpenMDAO domain without using a static mapping table. Units could be generated on-demand for any new combination. This idea is good, but is too big for our current work.
Instead, we will go half of the way. Here are the requirements:
In the OpenMDAO unit ontology, we need a new unit type called "DynamicUnitDefinition"
This class must have a UnitName and UnitExpression
The comment must indicate that this unit was generated
For each QUDT unit class that has no direct mapping in OpenMDAO:
a "DynamicUnitDefinition" must be generated in the OpenMDAO ontology for that class
UnitExpression must contain the statement that a user would use to create an instance of that unit in OpenMDAO code
a line must be added to the QUDT <--> OpenMDAO mapping for this new unit
write a script to find those unit class without baseunit.
create those baseunit in a new owl file
download openmdao.
using openmdao.units.units.physicalunit class, writing and run a experiment to learn how this class works. The goal is to figure out how to get the output of the argument in the construct func.
OpenMDAO allows expressing many new types of units by combining existing ones. This creates the possibility of mapping to the OpenMDAO domain without using a static mapping table. Units could be generated on-demand for any new combination. This idea is good, but is too big for our current work.
Instead, we will go half of the way. Here are the requirements: