


{"id":360924,"date":"2024-04-07T11:18:20","date_gmt":"2024-04-07T11:18:20","guid":{"rendered":"\/forum\/forums\/topic\/export-global-coordinates-of-all-nodes-using-workbench-script\/"},"modified":"2024-04-08T07:34:22","modified_gmt":"2024-04-08T07:34:22","slug":"export-global-coordinates-of-all-nodes-using-workbench-script","status":"closed","type":"topic","link":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/export-global-coordinates-of-all-nodes-using-workbench-script\/","title":{"rendered":"Export global coordinates of all nodes using workbench script"},"content":{"rendered":"<p>I am conducting a collision experiment of two objects using explicit dynamics.<\/p>\n<p><a class=\"wp-colorbox-image cboxElement\" href=\"https:\/\/us.v-cdn.net\/6037473\/uploads\/editor\/34\/kbzrdc7502hg.gif\"><img decoding=\"async\" class=\"embedImage-img importedEmbed-img\" title=\"\" src=\"https:\/\/us.v-cdn.net\/6037473\/uploads\/editor\/34\/kbzrdc7502hg.gif\" alt=\"\"><\/a><\/p>\n<p>I want to export the global coordinates of all nodes of object 1 at every step through the python script below.<br \/>(At this time, LOCX selected object number 1 and used the LOC expression of the user defined result.)<\/p>\n<ol class=\"linenums\">\n<li class=\"L0\"><span class=\"kwd\"><span class=\"hljs-keyword\">for<\/span><\/span><span class=\"pln\"> step <\/span><span class=\"kwd\"><span class=\"hljs-keyword\">in<\/span><\/span><span class=\"pln\"> range<\/span><span class=\"pun\">(<\/span><span class=\"pln\">steps<\/span><span class=\"pun\">):<\/span> <span class=\"com\"># steps<\/span><\/li>\n<li class=\"L1\"><span class=\"pln\"> <span class=\"hljs-built_in\">time<\/span> <\/span><span class=\"pun\">=<\/span><span class=\"pln\"> aset<\/span><span class=\"pun\">.<\/span><span class=\"typ\">GetStepEndTime<\/span><span class=\"pun\">(<\/span><span class=\"pln\">step <\/span><span class=\"pun\">+<\/span> <span class=\"lit\"><span class=\"hljs-number\">1<\/span><\/span><span class=\"pun\">)<\/span><\/li>\n<li class=\"L2\"><span class=\"pln\">&nbsp;<\/span><\/li>\n<li class=\"L3\"><span class=\"kwd\"><span class=\"hljs-keyword\">for<\/span><\/span><span class=\"pln\"> obj <\/span><span class=\"kwd\"><span class=\"hljs-keyword\">in<\/span><\/span><span class=\"pln\"> solution<\/span><span class=\"pun\">.<\/span><span class=\"typ\">Children<\/span><span class=\"pun\">:<\/span><\/li>\n<li class=\"L4\"><span class=\"pln\"> name <\/span><span class=\"pun\">=<\/span><span class=\"pln\"> obj<\/span><span class=\"pun\">.<\/span><span class=\"typ\">Name<\/span><\/li>\n<li class=\"L5\"><span class=\"kwd\"><span class=\"hljs-keyword\">if<\/span><\/span><span class=\"pln\"> name <\/span><span class=\"pun\">==<\/span> <span class=\"str\"><span class=\"hljs-string\">&#8220;LOCX1&#8221;<\/span><\/span><span class=\"pun\">:<\/span><\/li>\n<li class=\"L6\"><span class=\"pln\"> obj<\/span><span class=\"pun\">.<\/span><span class=\"typ\">DisplayTime<\/span> <span class=\"pun\">=<\/span><span class=\"pln\"> <span class=\"hljs-built_in\">time<\/span><\/span><\/li>\n<li class=\"L7\"><span class=\"pln\">&nbsp;<\/span><\/li>\n<li class=\"L8\"><span class=\"pln\"> solution<\/span><span class=\"pun\">.<\/span><span class=\"typ\">EvaluateAllResults<\/span><span class=\"pun\">()<\/span><\/li>\n<li class=\"L9\"><span class=\"pln\">&nbsp;<\/span><\/li>\n<li class=\"L0\"><span class=\"pln\"> X <\/span><span class=\"pun\">=<\/span> <span class=\"typ\">DataModel<\/span><span class=\"pun\">.<\/span><span class=\"typ\">GetObjectsByName<\/span><span class=\"pun\">(<\/span><span class=\"str\"><span class=\"hljs-string\">&#8220;LOCX1&#8221;<\/span><\/span><span class=\"pun\">)[<\/span><span class=\"lit\"><span class=\"hljs-number\">0<\/span><\/span><span class=\"pun\">].<\/span><span class=\"typ\">PlotData<\/span><\/li>\n<li class=\"L1\"><span class=\"pln\">&nbsp;<\/span><\/li>\n<li class=\"L2\"><span class=\"pln\"> f <\/span><span class=\"pun\">=<\/span><span class=\"pln\"> <span class=\"hljs-built_in\">open<\/span><\/span><span class=\"pun\">(<\/span><span class=\"pln\">base_dir <\/span><span class=\"pun\">+<\/span> <span class=\"str\"><span class=\"hljs-string\">&#8220;LOCX1_&#8221;<\/span><\/span> <span class=\"pun\">+<\/span><span class=\"pln\"> str<\/span><span class=\"pun\">(<\/span><span class=\"pln\">step <\/span><span class=\"pun\">+<\/span> <span class=\"lit\"><span class=\"hljs-number\">1<\/span><\/span><span class=\"pun\">)<\/span> <span class=\"pun\">+<\/span> <span class=\"str\"><span class=\"hljs-string\">&#8220;.txt&#8221;<\/span><\/span><span class=\"pun\">,<\/span><span class=\"pln\"> mode<\/span><span class=\"pun\">=<\/span><span class=\"str\"><span class=\"hljs-string\">&#8220;w&#8221;<\/span><\/span><span class=\"pun\">)<\/span><\/li>\n<li class=\"L3\"><span class=\"pln\"> f<\/span><span class=\"pun\">.<\/span><span class=\"pln\"><span class=\"hljs-built_in\">write<\/span><\/span><span class=\"pun\">(<\/span><span class=\"str\"><span class=\"hljs-string\">&#8220;Unit : &#8220;<\/span><\/span> <span class=\"pun\">+<\/span><span class=\"pln\"> str<\/span><span class=\"pun\">(<\/span><span class=\"pln\">X<\/span><span class=\"pun\">[<\/span><span class=\"str\"><span class=\"hljs-string\">&#8216;Values&#8217;<\/span><\/span><span class=\"pun\">].<\/span><span class=\"typ\">Unit<\/span><span class=\"pun\">)<\/span> <span class=\"pun\">+<\/span> <span class=\"str\"><span class=\"hljs-string\">&#8220;\\n&#8221;<\/span><\/span><span class=\"pun\">)<\/span><\/li>\n<li class=\"L4\"><span class=\"kwd\"><span class=\"hljs-keyword\">for<\/span><\/span><span class=\"pln\"> i <\/span><span class=\"kwd\"><span class=\"hljs-keyword\">in<\/span><\/span><span class=\"pln\"> range<\/span><span class=\"pun\">(<\/span><span class=\"pln\"><span class=\"hljs-built_in\">len<\/span><\/span><span class=\"pun\">(<\/span><span class=\"pln\">X<\/span><span class=\"pun\">[<\/span><span class=\"str\"><span class=\"hljs-string\">&#8216;Node&#8217;<\/span><\/span><span class=\"pun\">])):<\/span><\/li>\n<li class=\"L5\"><span class=\"pln\"> node <\/span><span class=\"pun\">=<\/span><span class=\"pln\"> X<\/span><span class=\"pun\">[<\/span><span class=\"str\"><span class=\"hljs-string\">&#8220;Node&#8221;<\/span><\/span><span class=\"pun\">][<\/span><span class=\"pln\">i<\/span><span class=\"pun\">]<\/span><\/li>\n<li class=\"L6\"><span class=\"com\"># side = X[<span class=\"hljs-string\">&#8220;Shell Side&#8221;<\/span>][i]<\/span><\/li>\n<li class=\"L7\"><span class=\"pln\"> val <\/span><span class=\"pun\">=<\/span><span class=\"pln\"> X<\/span><span class=\"pun\">[<\/span><span class=\"str\"><span class=\"hljs-string\">&#8220;Values&#8221;<\/span><\/span><span class=\"pun\">][<\/span><span class=\"pln\">i<\/span><span class=\"pun\">]<\/span><\/li>\n<li class=\"L8\"><span class=\"pln\"> f<\/span><span class=\"pun\">.<\/span><span class=\"pln\"><span class=\"hljs-built_in\">write<\/span><\/span><span class=\"pun\">(<\/span><span class=\"pln\">str<\/span><span class=\"pun\">(<\/span><span class=\"pln\">node<\/span><span class=\"pun\">)<\/span> <span class=\"pun\">+<\/span> <span class=\"str\"><span class=\"hljs-string\">&#8220;,&#8221;<\/span><\/span> <span class=\"pun\">+<\/span><span class=\"pln\"> str<\/span><span class=\"pun\">(<\/span><span class=\"pln\">val<\/span><span class=\"pun\">)<\/span> <span class=\"pun\">+<\/span> <span class=\"str\"><span class=\"hljs-string\">&#8220;\\n&#8221;<\/span><\/span><span class=\"pun\">)<\/span><\/li>\n<li class=\"L9\"><span class=\"pln\"> f<\/span><span class=\"pun\">.<\/span><span class=\"pln\"><span class=\"hljs-built_in\">close<\/span><\/span><span class=\"pun\">()<\/span><\/li>\n<\/ol>\n<p>However, when you run the post script, the same value is output as the step progresses, that is, over time, as shown below.<br \/>These values are the location values from the last step.<\/p>\n<p><a class=\"wp-colorbox-image cboxElement\" href=\"https:\/\/us.v-cdn.net\/6037473\/uploads\/editor\/4w\/q9gbmkae0jiq.png\"><img decoding=\"async\" class=\"embedImage-img importedEmbed-img\" title=\"\" src=\"https:\/\/us.v-cdn.net\/6037473\/uploads\/editor\/4w\/q9gbmkae0jiq.png\" alt=\"\"><\/a><\/p>\n<p>And when checking the graph below, we confirmed that the value of LOCX does not change over time.<\/p>\n<p><a class=\"wp-colorbox-image cboxElement\" href=\"https:\/\/us.v-cdn.net\/6037473\/uploads\/editor\/0f\/owot9kkxaqvi.png\"><img decoding=\"async\" class=\"embedImage-img importedEmbed-img\" title=\"\" src=\"https:\/\/us.v-cdn.net\/6037473\/uploads\/editor\/0f\/owot9kkxaqvi.png\" alt=\"\"><\/a><\/p>\n<p>What user defined result expression should I use to output the global coordinates of all nodes according to the step?<br \/>For example, use &#8216;UX+LOC_DEFX&#8217; as the user defined result expression.<\/p>\n<p>&nbsp;<\/p>\n<p>p.s. I know that mechanical has the following export option. However, the option does not seem to be applied when outputting from a script.<\/p>\n<p><a class=\"wp-colorbox-image cboxElement\" href=\"https:\/\/us.v-cdn.net\/6037473\/uploads\/editor\/90\/w8o9dh62ld8t.png\"><img decoding=\"async\" class=\"embedImage-img importedEmbed-img\" title=\"\" src=\"https:\/\/us.v-cdn.net\/6037473\/uploads\/editor\/90\/w8o9dh62ld8t.png\" alt=\"\"><\/a><\/p>\n","protected":false},"template":"","class_list":["post-360924","topic","type-topic","status-closed","hentry","topic-tag-userdefinedresults-1","topic-tag-collision","topic-tag-coordinate","topic-tag-explicit-dynamcis-1","topic-tag-global-coordinate","topic-tag-python","topic-tag-script"],"aioseo_notices":[],"acf":[],"custom_fields":[{"0":{"_bbp_subscription":["342596","200"],"_bbp_author_ip":["168.143.243.24"]," _bbp_last_reply_id":["0"]," _bbp_likes_count":["0"],"_btv_view_count":["670"],"_bbp_topic_status":["unanswered"],"_edit_lock":["1712561551:233281"],"_bbp_topic_id":["360924"],"_bbp_forum_id":["27791"],"_bbp_engagement":["200","342596"],"_bbp_voice_count":["2"],"_bbp_reply_count":["2"],"_bbp_last_reply_id":["361471"],"_bbp_last_active_id":["361471"],"_bbp_last_active_time":["2024-04-10 09:28:27"]},"test":"sanghyukkimkaist-ac-kr"}],"_links":{"self":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics\/360924","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics"}],"about":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/types\/topic"}],"version-history":[{"count":2,"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics\/360924\/revisions"}],"predecessor-version":[{"id":360989,"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics\/360924\/revisions\/360989"}],"wp:attachment":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/media?parent=360924"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}