{"id":9672,"date":"2022-02-13T13:00:52","date_gmt":"2022-02-13T13:00:52","guid":{"rendered":"http:\/\/141.23.68.248\/wp\/?page_id=9672"},"modified":"2022-02-15T21:31:00","modified_gmt":"2022-02-15T21:31:00","slug":"parametric-modeling-building","status":"publish","type":"page","link":"http:\/\/141.23.68.248\/wp\/?page_id=9672","title":{"rendered":"Building: Parametric modeling"},"content":{"rendered":"<h2>1. Introduction:<\/h2>\n<p>This system is designated to parametrize frameworks of buildings. This kind of structures consist of repetitive components, for example columns, slabs and girders. Therefore, it would be a relief from that onerous work if models of framework can be automatically generated. The skeleton of this model is a node array with interconnected lines.<\/p>\n<h2>2.\u00a0Design challenge, performance criteria and parameters:<\/h2>\n<p style=\"text-align: left;\"><strong>Design challenge<\/strong><\/p>\n<p style=\"text-align: left;\">The design challenge here is to realize an flexible model which can generate new parts with the configuration of scales and layouts. Based on that scope,\u00a0 every scale should be computed based on given parameters, namely Building length, Building Hight, Building width, Span in X direction, Span in Y direction, Span in Z direction. The parameters is shown in the figure below.<\/p>\n<p style=\"text-align: center;\">Chart 1.\u00a0 design parameters<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-07-30.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone  wp-image-9687\" src=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-07-30.png\" alt=\"snipaste_2022-02-13_16-07-30\" width=\"438\" height=\"66\" \/><\/a><\/p>\n<p style=\"text-align: left;\">To achieve that goal, it is not enough to use nodes in the Dynamo toolbox. As a result, python scripts are introduced to manipulate this high flexible structure. The node array, which is shown in the figure below, can be easily generated with a three-layer loop statement.<a href=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-14-33.png\"><img loading=\"lazy\" decoding=\"async\" class=\"  wp-image-9690 aligncenter\" src=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-14-33.png\" alt=\"snipaste_2022-02-13_16-14-33\" width=\"158\" height=\"144\" srcset=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-14-33.png 602w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-14-33-300x274.png 300w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-14-33-520x475.png 520w\" sizes=\"auto, (max-width: 158px) 100vw, 158px\" \/><\/a><\/p>\n<p style=\"text-align: center;\">Figure 1. node array<\/p>\n<p style=\"text-align: left;\">The next challenge is to draw inner lines based on the node array. It&#8217;s very intuitive to figure out that lines can be generated with matched points from opposite sides. However, the schemes of linking part will lead to different performances of the model.<\/p>\n<p style=\"text-align: center;\">\u00a0\u00a0<a href=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-19-47.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-9692\" src=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-21-29.png\" alt=\"snipaste_2022-02-13_16-21-29\" width=\"301\" height=\"214\" srcset=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-21-29.png 732w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-21-29-300x214.png 300w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-21-29-520x372.png 520w\" sizes=\"auto, (max-width: 301px) 100vw, 301px\" \/>\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0<img loading=\"lazy\" decoding=\"async\" class=\"wp-image-9691 alignnone\" src=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-19-47.png\" alt=\"snipaste_2022-02-13_16-19-47\" width=\"300\" height=\"214\" srcset=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-19-47.png 732w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-19-47-300x214.png 300w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-19-47-520x372.png 520w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p style=\"text-align: center;\">Figure 2. original scheme\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 Figure 3. optimized scheme<\/p>\n<p style=\"text-align: left;\">Figure 2 shows the code in the 2nd assignment, which is simplistic in logics but\u00a0 of substantial computation costs. The total computation number is<\/p>\n<p style=\"text-align: center;\">\u00a0<a href=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-28-29.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone  wp-image-9693\" src=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-28-29.png\" alt=\"snipaste_2022-02-13_16-28-29\" width=\"50\" height=\"20\" \/><\/a><\/p>\n<p style=\"text-align: left;\">Therefore, the model is very likely to freeze when the number of nodes is getting larger. While in the optimized version, this number is declined to<\/p>\n<p style=\"text-align: center;\">\u00a0<a href=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-30-29.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone  wp-image-9694\" src=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_16-30-29.png\" alt=\"snipaste_2022-02-13_16-30-29\" width=\"50\" height=\"17\" \/><\/a><\/p>\n<p style=\"text-align: left;\">Because paired points will be disposed, the times of computation is considerably decreased.<\/p>\n<p style=\"text-align: left;\"><strong>High Performance Criteria<\/strong><\/p>\n<p style=\"text-align: left;\">The three high performance criteria are total stiffness, material usage and available space. To achieve a high ratio of available space, the components need to be slim while they undermine the stiffness of the building. The material usage also correlate to the total cost. Therefore, they are conflicted.<\/p>\n<ul>\n<li style=\"text-align: left;\"><strong>The total stiffness<\/strong> is computed by D value method, which is highly used in seismic analysis.\u00a0<a href=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_17-06-18.png\"><img loading=\"lazy\" decoding=\"async\" class=\"  wp-image-9712 aligncenter\" src=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_17-06-18.png\" alt=\"snipaste_2022-02-13_17-06-18\" width=\"416\" height=\"176\" srcset=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_17-06-18.png 898w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_17-06-18-300x127.png 300w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_17-06-18-520x220.png 520w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_17-06-18-740x313.png 740w\" sizes=\"auto, (max-width: 416px) 100vw, 416px\" \/><\/a><\/li>\n<\/ul>\n<p style=\"text-align: center;\">Figure 4. Schematic of distributed shear force and moment<\/p>\n<p style=\"text-align: left;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0The computation is simplified based on the analogous dimension of each span.<\/p>\n<ul>\n<li style=\"text-align: left;\"><strong>The material usage<\/strong> is computed by scales of each column, girder and slab with the fundamental parameters of the building.<\/li>\n<li style=\"text-align: left;\"><strong>The available space<\/strong> is computed by the difference between total space and the material usage.<\/li>\n<\/ul>\n<p>All these parameters and geometries constitute this Dynamo BIM model.<\/p>\n<h2>3.\u00a0Logic of the parametric model:<\/h2>\n<p><a href=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_17-29-29.png\"><img loading=\"lazy\" decoding=\"async\" class=\"  wp-image-10381 aligncenter\" src=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_17-29-29.png\" alt=\"snipaste_2022-02-13_17-29-29\" width=\"701\" height=\"385\" srcset=\"http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_17-29-29.png 1531w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_17-29-29-300x165.png 300w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_17-29-29-1024x562.png 1024w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_17-29-29-520x286.png 520w, http:\/\/141.23.68.248\/wp\/wp-content\/uploads\/2022\/02\/Snipaste_2022-02-13_17-29-29-740x406.png 740w\" sizes=\"auto, (max-width: 701px) 100vw, 701px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>The logic of the parametric model is quite straight and simple. The model begins with an original point and axis on three directions. A node array is generated as explained in the above section. Lines are connected to form the skeleton of the structure. Building on that, scales of components are set up and the 3D shape are formed.<\/p>\n<h2>4.\u00a0Discussing the design space:<\/h2>\n<p>As mentioned at the beginning of the introduction, engineers often have to do a tedious series of work to get a rough shape of the designed product. This model is capable to be used in rapid decision making, shaping the general sketch of the product with good visualization. The model is highly configurable so personalized requests can be obtained and satisfied.<\/p>\n<h2><\/h2>\n<div class=\"sketchfab-embed-wrapper\"><iframe loading=\"lazy\" title=\"export (2)\" src=\"https:\/\/sketchfab.com\/models\/945fc3a028aa48378e072a48be0208aa\/embed\" width=\"927\" height=\"521\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"> <\/iframe><\/div>\n<p style=\"font-size: 13px; font-weight: normal; margin: 5px; color: #4a4a4a;\"><a style=\"font-weight: bold; color: #1caad9;\" href=\"https:\/\/sketchfab.com\/3d-models\/export-2-945fc3a028aa48378e072a48be0208aa?utm_medium=embed&amp;utm_campaign=share-popup&amp;utm_content=945fc3a028aa48378e072a48be0208aa\" target=\"_blank\"> export (2) <\/a> by <a style=\"font-weight: bold; color: #1caad9;\" href=\"https:\/\/sketchfab.com\/hyx666?utm_medium=embed&amp;utm_campaign=share-popup&amp;utm_content=945fc3a028aa48378e072a48be0208aa\" target=\"_blank\"> hyx666 <\/a> on <a style=\"font-weight: bold; color: #1caad9;\" href=\"https:\/\/sketchfab.com?utm_medium=embed&amp;utm_campaign=share-popup&amp;utm_content=945fc3a028aa48378e072a48be0208aa\" target=\"_blank\">Sketchfab<\/a><\/p>\n<hr \/>\n<p>To the Building Ontology:<\/p>\n<p><a href=\"http:\/\/141.23.68.248\/wp\/?page_id=10388\">Building: Ontological Modeling<\/a><\/p>\n<p style=\"font-size: 13px; font-weight: normal; margin: 5px; color: #4a4a4a;\">\n","protected":false},"excerpt":{"rendered":"<p>1. Introduction: This system is designated to parametrize frameworks of buildings. This kind of structures consist of repetitive components, for example columns, slabs and girders. Therefore, it would be a relief from that onerous work<a class=\"read-more\" href=\"http:\/\/141.23.68.248\/wp\/?page_id=9672\">Continue reading<\/a><\/p>\n","protected":false},"author":106,"featured_media":0,"parent":9696,"menu_order":0,"comment_status":"closed","ping_status":"open","template":"","meta":{"footnotes":""},"class_list":["post-9672","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/pages\/9672","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/users\/106"}],"replies":[{"embeddable":true,"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=9672"}],"version-history":[{"count":8,"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/pages\/9672\/revisions"}],"predecessor-version":[{"id":10992,"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/pages\/9672\/revisions\/10992"}],"up":[{"embeddable":true,"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=\/wp\/v2\/pages\/9696"}],"wp:attachment":[{"href":"http:\/\/141.23.68.248\/wp\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=9672"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}