Defined in File Ifc2x3.h
IfcStructuralAnalysisModel: public Ifc2x3::IfcSystem¶
Definition from IAI: The IfcStructuralAnalysisModel is used to assemble all information needed to represent a structural analysis model. It encompasses certain general properties (such as analysis type), references to all contained structural members, structural supports or connections, as well as loads and the respective load results.
Important functionalities for the description of an analysis model are derived from existing IFC entities:
From IfcSystem it inherits the ability to couple the analysis model via IfcRelServicesBuildings to one or more IfcBuildings as necessary. From IfcGroup it inherits the inverse attribute IsGroupedBy, pointing to the relationship class IfcRelAssignsToGroup. This allows to group structural members (instances of IfcStructuralMember), and supports (instances of IfcStructuralConnection) which belong to a specific analysis model. NOTE: Loads (as instances of IfcStructuralAction) are not included through IsGroupedBy. Loads are assigned through the LoadedBy attribute relationship, using load groups as a grouping mechanism. Only top-level load groups should be referenced via LoadedBy, i.e. load combinations if any load combinations exist, or load cases if no load combinations exist in this analysis model. NOTE: Results (as instances of IfcStructuralReaction) are not included through IsGroupedBy. Results are assigned through the HasResults attribute relationship, using result groups as a grouping mechanism.
HISTORY: New entity in IFC 2x2.
IFC 2x4 change: Attribute SharedPlacement and informal propositions added, allowing for easy retrieval of the common object placement and for specification of the analysis model’s coordiante system before any structural item is instantiated. WHERE rule added.
If one or more structural item (instance of a subtype of IfcStructuralItem) is grouped into an IfcStructuralAnalysisModel, the attribute SharedPlacement shall be provided with a value. The ObjectPlacements of all structural items which are grouped into the same instance of IfcStructuralAnalysisModel shall refer to the same instance of IfcObjectPlacement as IfcStructuralAnalysisModel.SharedPlacement.
NOTE This rule is necessary to achieve consistent topology representations. The topology representations of structural items in an analysis model are meant to share vertices and edges und must therefore have the same object placement.
NOTE A structural item may be grouped into more than one analysis model. In this case, all these models must use the same instance of IfcObjectPlacement.
Defines the type of the structural analysis model.
Whether the optional attribute OrientationOf2DPlane is defined for this IfcStructuralAnalysisModel.
If the selected model type (PredefinedType) describes a 2D system, the orientation defines the analysis plane (P, P) and the normal to the analysis plane (P). This is needed because structural items and activities are always defined in three-dimensional space even if they are meant to be analysed in a two-dimensional manner.
In case of predefined type IN_PLANE_LOADING_2D, the analysis is to be performed within the projection into the P, P plane. In case of predefined type OUT_PLANE_LOADING_2D, only the P component of loads and their effects is meant to be analyzed. This is used for beam grids and for typical slab analyses. In case of predefined type LOADING_3D, OrientationOf2DPlane shall be omitted.
Whether the optional attribute LoadedBy is defined for this IfcStructuralAnalysisModel.
References to all load groups to be analyzed.
Whether the optional attribute HasResults is defined for this IfcStructuralAnalysisModel.
References to all result groups available for this structural analysis model.
IfcStructuralAnalysisModel(std::string v1_GlobalId, ::Ifc2x3::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, boost::optional<std::string> v5_ObjectType, ::Ifc2x3::IfcAnalysisModelTypeEnum::Value v6_PredefinedType, ::Ifc2x3::IfcAxis2Placement3D *v7_OrientationOf2DPlane, boost::optional<IfcTemplatedEntityList<::Ifc2x3::IfcStructuralLoadGroup>::ptr> v8_LoadedBy, boost::optional<IfcTemplatedEntityList<::Ifc2x3::IfcStructuralResultGroup>::ptr> v9_HasResults)¶