xBimTeam / XbimGeometry

XbimGeometry contains the CLR interop libraries and the c++ engine used to compute the 3D geometry of models.
https://xbimteam.github.io/
Other
254 stars 128 forks source link

BIM to FEM #228

Open ameen88m opened 4 years ago

ameen88m commented 4 years ago

Hi everybody, I am working on a project in which I can interpret an analytical model from a BIM model. The idea is to design a tool that automates the transformation of architectural elements like column and beam into 1-D elements. So basically, it is generating an Ifcstructuralcurvemember from an Ifcbeam or Ifccolumn. After making this transformation I need to add the boundary condition to the connection point between those elements through adding the following classes to the generated IFC instances. Ifcrelconnectsstructuralmember Ifcstructuralconnection IfcnodeBoundarycondition. I want to mention that I am not a programmer and I do not know where to start from. Can you provide me with the basic ideas I need to look for to make this tool? Thanks in advance

bekraft commented 4 years ago

So, I don't want to discourage you, but in most cases it works the other way around or even in parallel. There's no easy way to generalise and reduce geometry information while keeping connectivity between components (if it's provided!) the same time. That's why most structural engineers (those I know), use a model as a "hint" and "draft" for a structural sub model. There are also components (like shells and slabs) of which an abstraction isn't really possible from some given IFC architectural elements. Sometimes modelling platform also deliver (beside the "Body" context) some geometrical analytical information (like the "Axis" context, see IfcShapeRepresentation) Maybe you should have a look at existing platforms like Tekla or Sofistik (there are others like etabs) which already provide IFC exports in compliance with the structural analysis view.

ameen88m commented 4 years ago

Thanks a lot for your reply. I am actually working on graduation research and what you mentioned about working in parallel or using the model as a draft is 100% correct but the idea of my research is to reduce the time needed for that process and using an interpreted model from the architectural model. According to the literature I found, it is possible to do that. However, the problem that all the literature I read did not include the method for implementation. The conceptual approach that I have in my mind that you can take information from the column for example like the placement and depth to identify the coordinate of the structural curve and feed this information into a generated instance of the ifcstructuralcurvemember. You can check this link to see what I mean https://www.sciencedirect.com/science/article/pii/S0926580518301286?via%3Dihub#bb0190 Kind regards

bekraft commented 4 years ago

Thanks for this hint. Sure, it's possible. But especially for graduation research be aware of the boundary assumptions on the quality of the IFC model (I know what I'm talking about :-). Here it seems to be a beam and column abstraction. First you have to be aware that topological connectivity isn't provide by default by architectural tool chains. And if, it won't match your expectations. So you have to derive it. If possible, keep the the geometrical problems small (rather replacement than abstraction) and concentrate on the conceptional model, the entity mapping and the topological derivation procedure. Best, Bernold

ameen88m commented 4 years ago

Thanks a lot for your reply again. I am actually indeed thinking of replacement rather than an abstraction. But unfortunately, I do not know how to do that programming-wise. In terms of assigning the connection information, and please correct me if I am mistaken or if that is not possible, I want to add this entity ( https://standards.buildingsmart.org/IFC/RELEASE/IFC4/FINAL/HTML/ )to the analytical generated model with its all related and relating elements and attributes including Ifcstructuralpointconnection. With regards to connectivity, it should be indeed derived from the architectural model based on the distances between the beam and the column for example. Kindly, check out this paper. https://www.researchgate.net/publication/275458686_A_Semantic_Enrichment_Engine_for_Building_Information_Modeling I do not want to bother you further. But It seems that you do understand exactly what I want to do. As you can see I have the conceptual model in my mind even the entity mapping I have it in my mind but still, I need to implement this into a tool and then test it on a very simple structure for the validation. Any advice? Kind regards Ameen

bekraft commented 4 years ago

I know this paper. Back in 2016 I took a similar approach utilising spatial partitioning as geometrical basis. There were multiple approaches to lift an IFC model up to a semantically conceptionalised model. The basic difference in engineering is made by numerical and floating point concepts (i.e. width intervals) which get into conflict width OWL compliant reasoning engines due to the inaccuracy of fp numbers. On the other hand, set theory based concepts don’t know anything about ordering items in a sequence which is strongly needed for the meaning of orientation...

Back to your question: First, you will have to write code using Xbim. It’s mainly written in C#. So if you are not familiar with it, have a look into the tutorials. First try to parse a model and learn Linq queries. They’ll save a lot of scripting time. Then get clear about your IFC sub model concept. Once you have your technical concept, we’ll can get in touch via mail or so...

ameen88m commented 4 years ago

Thanks for your advice. To be honest with you, I did not understand all the things you have mentioned and that is because I am still new to the IFC application. However, I will start doing what you said in the last part of your comment. Hopefully, we get in touch as soon as I finish doing that. Kind regards, Ameen