Using the Decomposes Relation Property

In this article we will discuss how the decomposes relation in Solibri can be used to more precisely check sub-components of assemblies such as stairs, as well as limit the number of results to just assembly components for intersecting components such as beam systems.

The Decomposes Relation Example.smc model used as an example in this article can be downloaded through the following link:

Decomposes Relation Example.smc

The Decomposes Relation

Model elements can have a decomposes relation to other model elements when those model elements are assemblies or sub-components that make up assemblies.  Assembly components such as curtain walls, stairs, and beam systems have a forward decomposes relation to their sub-components. For example, a stair assembly has a forward decomposes relations to the stairs, railings, members, and slabs that make up the stair assembly.

In the screenshot below, you can see this forward decomposes relation in the Info View designated by a forward arrow next to the stair sub-components when selecting a stair assembly:

Forward Decomposes Relation of a Stair Assembly
Forward Decomposes Relation of a Stair Assembly

Likewise, sub-components that make up assemblies have a backward decomposes relation to their assembly components. In the screenshot below, the backward decomposes relation in the Info View is designated by a backward arrow next to the assembly component when selecting a stair sub-component:

Backward Decomposes Relation of a Stair Sub-Component
Backward Decomposes Relation of a Stair Sub-Component

These relations can be used as properties within the filter parameters tables in rule parameters. To do this, select the Relations radio button as the Property Group, select Decomposes from the Relation dropdown, and select either Forward or Backward from the Direction dropdown.

Relation Property used in a Filter Parameters Table
Relation Property used in a Filter Parameters Table

The Operator in the filter parameters table must be set to either Is Not Empty or Is Empty, to designate whether or not there is a relation to any components respectively.  For example, setting the filter to include any component that has an empty forward decomposes relationship checks any component that doesn’t have any decomposes relation such as a wall, window, or door along with the sub-components of assemblies such as railings and beams, but not the assembly components such as stair assemblies or beam systems. This can be seen in the Checked Components View seen below:

Forward Decomposes Relation Is Empty (Components with No Decomposes Relationship and Sub-Components)
Forward Decomposes Relation Is Empty (Components with No Decomposes Relationship and Sub-Components)

Setting the filter to include any component that has a non-empty forward decomposes relationship only checks the assembly components such as stair assemblies or beam systems:

Forward Decomposes Relation Is Not Empty (Assemblies)
Forward Decomposes Relation Is Not Empty (Assemblies)

Setting the filter to include any component that has an empty backward decomposes relationship checks any component that doesn’t have any decomposes relation such as a wall, window, or door along with the assembly components such as stair assemblies or beam systems, but not the individual sub-components that make up the assemblies such as railings and beams:

Backward Decomposes Relation Is Empty (Components with No Decomposes Relationship and Assemblies)
Backward Decomposes Relation Is Empty (Components with No Decomposes Relationship and Assemblies)

Setting the filter to include any component that has a non-empty backward decomposes relationship only checks the individual sub-components that make up assemblies such as railings and beams:

Backward Decomposes Relation Is Not Empty (Sub-Components)
Backward Decomposes Relation Is Not Empty (Sub-Components)

Stair Headroom Clearance Example

To check for an 80″ headroom clearance for a Stair (or Ramp), you can use the Component Distance rule to check for a minimum clearance above a stair and any other component with the exclusion of railings that make up the stair, and spaces and openings:

Stair Headroom Check Rule Parameters (False Positives)
Stair Headroom Check Rule Parameters (False Positives)

However, the railing, which is a sub-component of the stair assembly, causes a false-positive result since there isn’t an 80″ clearance above the railing:

Stair Headroom Results (False Positives)
Stair Headroom Results (False Positives)

In the component filter parameters table of the corrected version of the rule, the source component is any stair that has an empty forward decomposes relation.

Stair Headroom Check Rule Parameters (Sub-Components)
Stair Headroom Check Rule Parameters (Sub-Components)

This rule will only check the stair sub-components of the stair assemblies, but not the stair assembly that includes the railings.  In the screenshot below, the result that still exists is due to the treads of the stair cutting into the slab; however, there is no longer the false positive result regarding the distance between the railing and ceiling.

Stair Sub-Components Headroom Results
Stair Sub-Components Headroom Results

Intersecting Components Example

In the rule parameters of the General Intersection Rule (All Components), any component from the Architectural model is checked for Inside or Overlapping intersections with any component from a Structural Model.

General Intersection Rule (All Components) Parameters
General Intersection Rule (All Components) Parameters

When an assembly such as a curtain wall or beam system intersects a component, both the assemblies and their individual sub-components are returned as results.  In the screenshot below, assemblies of beam systems are listed as intersections with suspended ceiling:

Assembly Results from General Intersection Rule (All Components)
Assembly Results from General Intersection Rule (All Components)

However, the beams that make up these beam system assemblies are listed as results as well, as seen below:

Beam Results from General Intersection Rule (All Components)
Beam Results from General Intersection Rule (All Components)

Therefore, there is a double counting or duplication of the same issue.

To work around this, you can limit the check to only check components that don’t have a decomposes relation such as a wall or ceiling and assembly components by adding a requirement to only check components that don’t have a backward decomposes relation to components as seen in the rule parameters below for the rule General Intersection Rule (No Decomposes Relation and Assemblies):

General Intersection Rule (No Decomposes Relation and Assemblies) Parameters
General Intersection Rule (No Decomposes Relation and Assemblies) Parameters

Now, beam system assemblies are still returned as results, but the 3 beams that are listed as results are those that do not make up a beam system as seen below:

Beam Results from General Intersection Rule (No Decomposes Relation and Assemblies)
Beam Results from General Intersection Rule (No Decomposes Relation and Assemblies)

By using the Decomposes relation in the filter parameters table, the number of results listed has dropped from 1649 to 1240, as seen in the Checked Components View.

Checked Components from General Intersection Rule (All Components)
Checked Components from General Intersection Rule (All Components)
Checked Components from General Intersection Rule (No Decomposes Relation and Assemblies)
Checked Components from General Intersection Rule (No Decomposes Relation and Assemblies)
Advertisements
Using the Decomposes Relation Property

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s