IFC 4.4.0.0 build 20261005 (IFC4X4_DEV_20260525) ⚠ buildingSMART Working Draft. All content is under development.

  • Help suggest improvements
  • Get user or developer support

8.11.3.4 IfcDerivedUnit

RV ⓘ
AbV ⓘ

8.11.3.4.1 Semantic definition

A derived unit is a unit that is formed from an expression of other units.

dot_neato IfcUnitAssignment IfcUnitAssignment IfcDerivedUnit IfcDerivedUnit UnitType: LINEARVELOCITYUNIT Name: mph IfcUnitAssignment->IfcDerivedUnit Units IfcDerivedUnitElement_0 IfcDerivedUnitElement Exponent: 1 IfcDerivedUnit->IfcDerivedUnitElement_0 Elements[1] IfcDerivedUnitElement_1 IfcDerivedUnitElement Exponent: -1 IfcDerivedUnit->IfcDerivedUnitElement_1 Elements[2] IfcConversionBasedUnit_0 IfcConversionBasedUnit UnitType: LENGTHUNIT Name: mile IfcDerivedUnitElement_0->IfcConversionBasedUnit_0 Unit IfcConversionBasedUnit_1 IfcConversionBasedUnit UnitType: TIMEUNIT Name: hour IfcDerivedUnitElement_1->IfcConversionBasedUnit_1 Unit IfcDimensionalExponents_0 IfcDimensionalExponents LengthExponent: 1 IfcConversionBasedUnit_0->IfcDimensionalExponents_0 Dimensions IfcMeasureWithUnit_0 IfcMeasureWithUnit ValueComponent: 1609 IfcConversionBasedUnit_0->IfcMeasureWithUnit_0 ConversionFactor IfcSIUnit_0 IfcSIUnit UnitType: LENGTHUNIT Name: METRE IfcMeasureWithUnit_0->IfcSIUnit_0 UnitComponent IfcDimensionalExponents_1 IfcDimensionalExponents TimeExponent: 1 IfcConversionBasedUnit_1->IfcDimensionalExponents_1 Dimensions IfcMeasureWithUnit_1 IfcMeasureWithUnit ValueComponent: 3600 IfcConversionBasedUnit_1->IfcMeasureWithUnit_1 ConversionFactor IfcSIUnit_1 IfcSIUnit UnitType: TIMEUNIT Name: SECOND IfcMeasureWithUnit_1->IfcSIUnit_1 UnitComponent
Figure A — An example of how to assign miles per hour as a derived unit

{ .extDef}

8.11.3.4.2 Entity inheritance

8.11.3.4.3 Attributes

# Attribute Type Description
IfcDerivedUnit (5)
1 Elements SET [1:?] OF IfcDerivedUnitElement

The group of units and their exponents that define the derived unit.

2 UnitType IfcDerivedUnitEnum

Type of the derived unit chosen from an enumeration of derived unit types for use in IFC models.

3 UserDefinedType OPTIONAL IfcLabel

Type of the derived unit if the UnitType attribute is set to USERDEFINED.

4 Name OPTIONAL IfcLabel

Name of the unit in addition to the unit type, particularly when the derived unit elements refer to conversion or context based units.

* Dimensions IfcDimensionalExponents

This attribute is formally derived.

 IfcDeriveDimensionalExponents(Elements)

Dimensional exponents derived using the function IfcDeriveDimensionalExponents using (SELF) as the input value.

Table B

8.11.3.4.4 Formal propositions

Name Description
WR1

Units as such shall not be re-defined as derived units.

(SIZEOF (Elements) > 1) OR ((SIZEOF (Elements) = 1) AND (Elements[1].Exponent <> 1 ))
WR2

When attribute UnitType has enumeration value USERDEFINED then attribute UserDefinedType shall also have a value.

(UnitType <> IfcDerivedUnitEnum.USERDEFINED) OR
((UnitType = IfcDerivedUnitEnum.USERDEFINED) AND
(EXISTS(SELF.UserDefinedType)))
Table C

8.11.3.4.5 Formal representation

ENTITY IfcDerivedUnit;
Elements : SET [1:?] OF IfcDerivedUnitElement;
UnitType : IfcDerivedUnitEnum;
UserDefinedType : OPTIONAL IfcLabel;
Name : OPTIONAL IfcLabel;
DERIVE
Dimensions : IfcDimensionalExponents := IfcDeriveDimensionalExponents(Elements);
WHERE
WR1 : (SIZEOF (Elements) > 1) OR ((SIZEOF (Elements) = 1) AND (Elements[1].Exponent <> 1 ));
WR2 : (UnitType <> IfcDerivedUnitEnum.USERDEFINED) OR
((UnitType = IfcDerivedUnitEnum.USERDEFINED) AND
(EXISTS(SELF.UserDefinedType)));
END_ENTITY;

8.11.3.4.6 References

Edit on Github

5 contributor(s): ArturTomczakDion MoultbSI-BotThomas KrijnenSergejMuhic
Last change: Improve definition split (#876) * bring back headers headers were previously removed by mistake, now bringing them back * add new lines and rename the tag add the word 'short' in it * unify newlines make exactly one newline before and two after the tag * resolving typos Because bringing back headers required to go back in time to previous version, I'm now re-resolving the issues: #861, #860, #856 by ArturTomczak on 2024-07-16T16:07:28+02:00

Is this page difficult to understand? Let us know!

8.11.3.4.7 Changelog

8.11.3.4.7.1 IFC4.3_ADD2

  • attribute, Name