如何利用Python代码快速输出Workbench单元和节点信息

如何利用Python代码快速输出Workbench单元和节点信息

Please Share Us

点击此处查看 ✿水哥原创ANSYS视频教程清单 ✿

水哥专属答疑服务已开通,点此此处查看详情

       单元和节点信息的输出有的时候对做二次开发比较重要,例如在做随机缺陷施加的时候需要对节点坐标进行局部的修改。
       workbench里面如果需要输出模型的全部节节点和单元信息,有两种方法:
       1、插入APDL命令解决,然而这种方法每次输出的时候都要提交一下求解,因为插入的APDL只有通过提交求解器后才会运行,并且如果要一起输出字符和数据,格式调试比较繁琐,实际操作起来效率较低;
       2、插入Python代码,利用wb支持的代码功能,可迅速运行,不需要使用者了解APDL晦涩难懂的语法知识,并且可自由的定义输出格式,只需简单几步即可操作,今日水哥简单介绍下。
       在Mechanical界面,可通过点击Automation界面下的Scripting来打开代码输入界面,打开后在右侧即可通过输入WB的API函数来进行相关操作。

python&ansys workbench

        详细的API使用方法同学们可查看ANSY的帮助了解,非常详细,这里就以输出单元信息和节点信息为目的来说明。
       单元和节点的信息是在API函数 Analyses下面的MeshData里面,所以要输出相关的信息,首先要进入到MeshData中。
       网格划分完毕后,通过下方代码进入MeshData:
       My_analyses=Model.Analyses[0]
       My_Mesh=My_analyses.MeshData
       MeshData里面有非常多的关于网格划分的信息,例如常见的单元编号,单元数量,以及节点相关信息等,我们要做的即是从这数据中提取单元的节点编号以及所有的节点坐标系信息,并写出到文件。

python&ansys workbench_1

首先编写输出单元所含节点信息的函数代码
思路如下:
1、获取MeshData中所有的单元信息;
2、遍历循环,获取每个单元的节点信息
3、遍历循环,输出每个单元的单元编号以及对应的节点编号
代码截图如下:

python&ansys workbench_2

代码运行完毕后,即可在指定的文件夹下找到输出的txt文件,如下所示:

python&ansys workbench_3

接下来输出每个节点的坐标信息,思路同上,遍历获取节点信息,然后输出节点坐标即可。
代码如下所示:

python&ansys workbench_4

代码运行完毕后,即可在指定的文件夹下找到输出的txt文件,如下所示:

python&ansys workbench_5

为检验正确性,可通过前面水哥介绍的FEinfo插件来查看节点编号及对应的坐标信息。
Workbench ACT插件 FE Info 使用说明及下载
1、首先查看单元的节点编号,例如这里查看的是313号单元的节点组成,可见信息完全一致。

python&ansys workbench_6

python&ansys workbench_7

2、查看节点坐标信息,这里以204号节点坐标为例,打开Node.txt,如下所示,可见两者信息也是一致的。

python&ansys workbench_8

python&ansys workbench_9

        Python代码除了可以不用运行求解就可以得到结果外,还可以将Python代码组装成一个按钮,放到菜单栏里面,这样后面打开任何一个模型,只需点击按钮即可使用功能。例如这里将代码整成一个按钮,名为Get_EleNode,放到WB菜单里面.
        打开按钮编辑器,填入相关信息即可,主要为名称及按钮头像。

python&ansys workbench_10

python&ansys workbench_11

python&ansys workbench_12

欢迎扫描如下二维码关注本站微信公众号:ANSYS结构院

有时间麻烦帮忙点击下公众号文末的广告哦, 权当码字的辛苦费,感谢大家!

Please Share Us
© 版权声明
THE END
喜欢就支持一下吧
点赞2赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码

    暂无评论内容

YOU MAY LIKE…