Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Structural Analysis Model #715

Open
GioStamoulos opened this issue Oct 26, 2023 · 17 comments
Open

Structural Analysis Model #715

GioStamoulos opened this issue Oct 26, 2023 · 17 comments

Comments

@GioStamoulos
Copy link

GioStamoulos commented Oct 26, 2023

In the validation service, the types of topological representation (https://ifc43-docs.standards.buildingsmart.org/IFC/RELEASE/IFC4x3/HTML/lexical/IfcTopologyRepresentation.htm) must be added to the valid_representation_type csv file, because for structural members (that are related to topological representations), the service gives rule errors (https://github.com/buildingSMART/ifc-gherkin-rules/blob/47b6a14/features/GEM004_Constraints-on-representation-identifiers.feature).

Vertex,topological vertex representation (with or without assigned geometry)
Edge, topological edge representation (with or without assigned geometry)
Path,topological path representation (with or without assigned geometry)
Face,topological face representation (with or without assigned geometry)
Shell, topological shell representation (with or without assigned geometry)

Also, is there any way to describe slave nodes? This information is essential in structural analysis.

@Jesusbill

@aothms
Copy link
Collaborator

aothms commented Oct 26, 2023

Thanks, I filed an issue here as well: buildingSMART/ifc-gherkin-rules#104

CC @jmirtsch

So (some of) the questions are:

@GioStamoulos
Copy link
Author

  • Yes, it is used for the representation of structural nodes, surfaces, and curves.
  • At this time, I don't have any checks to recommend, but in the future, I will surely have something to add.
  • It is a simple example; I think more examples must be added that contain, for example, structural surfaces. Another example, I think must contain boundary relations between connection points (slave points), if this could be possible to be described with ifc entities.

@MatthiasWeise
Copy link

  • I think must contain boundary relations between connection points (slave points), if this could be possible to be described with ifc entities.

I am not fully sure what you mean here, but boundary conditions between all types of structural members can be described via subtypes of IfcBoundaryCondition (https://ifc43-docs.standards.buildingsmart.org/IFC/RELEASE/IFC4x3/HTML/lexical/IfcBoundaryCondition.htm). Is that maybe what you are looking for?

@GioStamoulos
Copy link
Author

@MatthiasWeise
with IfcBoundaryCondition you can only set the stiffness (or whether it's free or not) of each DOF, but you can't relate the DOF of one node to another. This relationship is another factor that affects the shear force or moment associated with this DOF. Thus, this information cannot be imported using this Ifc entity.

@MatthiasWeise
Copy link

So you need to define a mechanical connection between two nodes that are at the same location?

My understanding for defining DOF between members and surrounding:
The model differentiates between connection and members, where a node can be a connection only.
I.e. there is a PointConnection but no PointMember, which is different to Curve and Surface.
The curve member can for instance be connected to a point connection with 6 DOF. The point connection, if connected to a rigid surrounding, can define another 6 DOF. Any additional curve member that is connected to the same point connection can define their own 6 DOF. However, this model does not allow to define DOF between point connections. If something like this is needed you may use a very short or may even a zero length curve member between two point connections .

@GioStamoulos
Copy link
Author

@MatthiasWeise
I don't think that with this way this structural analysis information could be describe. I want to relate for example in the following case Dx and Dz degrees of freedom (only these) of N9 with the corresponding DOF of N5, N6, N7 & N8.
image

@MatthiasWeise
Copy link

Is this a slab to be represented by a structural surface member and N9 is a node within this surface member?
What is the meaning of N9, is it a supporting node?

@GioStamoulos
Copy link
Author

N9 is a master node that is not related to structural surfaces or structural curves, and N5, N6, N7, and N8 are its slave nodes. I could describe the master node as a zero-length curvemember, but the master-slave node could not be described through the current boundary condition options. In my opinion, the option related or not must be added in some way to each DOF.
image
image

@MatthiasWeise
Copy link

Might be an extension to current definition then. If it can be handled by addtional information in IfcBoundaryNodeCondition it might be a new subtype in future IFC releases (similar to IfcBoundaryNodeConditionWarping).
If I remember well, the use case with master-slave nodes has not been a topic in the discussion about the structural analysis model for IFC (also knowing that not all use cases can be covered).

@jmirtsch
Copy link
Contributor

jmirtsch commented Nov 5, 2023

Constraint relationships like this are not explicitly supported in IFC at this point in time.
If it's a one to one relationship, in my developments I have supported a user defined object type on a curve member and custom properties to nominate DOF. I'm not sure if there was any consideration of constraints in previous structural analysis exchange discussions. It seems it would need some implementer agreement on how best to convey them within the current schema (such as the approach above, perhaps also grouping them to nominate a many to one relationship).

@MatthiasWeise
Copy link

If it's a one to one relationship, in my developments I have supported a user defined object type on a curve member and custom properties to nominate DOF. I'm not sure if there was any consideration of constraints in previous structural analysis exchange discussions.

I am not sure if I understand the requirement with DOF for curve member. Have you looked into IfcCurveConnection and IfcBoundaryEdgeCondition?

It seems it would need some implementer agreement on how best to convey them within the current schema (such as the approach above, perhaps also grouping them to nominate a many to one relationship).

Before discussion extensions or special implementer agreements, let's recap the scope of the structural analysis domain. The focus of that extension was on data exchange between structural engineers to be able to coordinate main decisions regarding structural idealisation. For instance, finite element analysis and meshes have been left out on purpose.
Please correct me if I am wrong, but my feeling is that we discuss special cases of idealisation.

@jmirtsch
Copy link
Contributor

jmirtsch commented Nov 6, 2023

I don't recall this explanation of the scope of structural analysis exchange. It makes sense, but the official documentation contradicts it noting the word "all".

https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/lexical/IfcStructuralAnalysisModel.htm

The IfcStructuralAnalysisModel is used to assemble all information needed to represent a structural analysis model.

IfcCurveConnection and IfcBoundaryEdgeCondition represent different idealization. This constraint is point to point (often one to many). It is quite common in structural analysis models, particularly for high rise buildings to perform lateral assessments. Modern computing power perhaps has diminished the frequency of use. But it is a requirement that should be considered in any future work if it is judged to be out of scope at present.

@MatthiasWeise
Copy link

Regarding the scope of the Structural Analysis Domain:
Better use this definition: https://standards.buildingsmart.org/IFC/RELEASE/IFC4_3/HTML/ifcstructuralanalysisdomain/content.html

Regarding point to point connection: If those points are at different locations I would expect to connect them via a structural member (curve or surface) with further structural properties such as moment of inertia etc.
The example given by @GioStamoulos looks to me like a plate with 5 points. If N9 is with boundary conditions, you need to model it. If it is a point within a plate and without boundary condition, you do not need to model it as there is no additional information (?). However, I am not sure about the master/slave nodes. I could also think about an idealisation as 5 points with 4 surface members.

@GioStamoulos
Copy link
Author

@MatthiasWeise @jmirtsch
In my case study, the footing (foundation) of the building is related to one node. Based on the ifc concept, nodes are point connections; therefore, a foundation could not be defined as just a point connection. My solution is for the foundation to be described as a zero-length curve member (with no representation) that is related to one node. Is it the correct solution, or is there another way based on the ifc schema (or also an ifc extension required)?

@MatthiasWeise
Copy link

It should be fine to represent the foundation as a point connection only. It is on purpose that there is no point member, because a zero dimensional structural element does not have structural properties. Please keep in mind that all structural properties of members and connections are just idealizations. If you want to analyse special structural behaviour of the foundation you may need a different structural idealization. Maybe a two dimensional idealization would be better then? Please also note that you can have as many structural idealization as needed, i.e. you are not limited to have one structural analysis model for your building or support condition.

Besides the idealization of the building in one (or maybe more) structural analysis models you may also want to keep the relationship between the structural items and the physical building elements. In my view that is the most powerful and interesting feature in IFC. This can be done by using the IfcRelAssignsToProduct relationship. In that way you can keep your design intent to idealize the foundation by a structural connection (or whatever idealization you have). Does that makes sense to you?

@GioStamoulos
Copy link
Author

@MatthiasWeise Thanks for your information, you help me a lot. Furthermore, I wonder if there is a way to describe a solid element (used in the structural analysis model) using Ifc structural entities.

@jmirtsch

@MatthiasWeise
Copy link

Furthermore, I wonder if there is a way to describe a solid element (used in the structural analysis model) using Ifc structural entities.

No, that is currently out of scope of the structural analysis domain. If needed I could think about a new subtype of IfcStructrualMember (e.g. IfcStructuralSolidMember). Such extension should work with the topological representation of structural members as used in the current solution.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants