ansys参数化编程与命令手册_基于MATLAB驱动ANSYS进行参数化仿真分析

3db9e4e472b9a382f05e748d58bb5d6d.png

源:吴冠中作品

点击关注CAE仿真空间

点亮“ 在看 ”,优质内容不错过

注:本文为翻译文章,如有不当之处,欢迎交流指正!

虽然我比较熟悉ABAQUS,但是因为我最近的研究内容,促使我从ABAQUS转向了ANSYS。我最近这个项目完全利用APDL建立模型并希望开展参数化的仿真分析,但是每个模型利用2核的电脑计算需要花费我7~8个小时(小编很纳闷现在还用性能这么差的电脑?)。为了提高宏文件在ANSYS中的运行效率,决定利用MATLAB驱动ANSYS执行完成。

作为一个ANSYS的初学者之前从未使用该功能。我在Google上面搜索到了不同的实现方法;同时我也向我的一个朋友求助,她给了我3个文件,但是我还是不清楚怎么使用。然后我就基于她提供的方法针对性的进行查询搜索,搜索结果都描述的不是特别清楚,至少对我是这样。我多么希望能够有一个详细的例子介绍如何利用MATLAB运行ANSYS进行参数化研究。经过反复的尝试,最后我实现了一个个模型自动的运行计算。我决定把这个方法记录下来,也希望能够帮助到其它朋友。
  • 第一个文件:run_ansys.bat

SET ANS_CONSEC=YESSET ANSYS_LOCK=OFFSET KMP_STACKSIZE=1024k"C:\Program Files\ANSYS Inc\v181\ansys\bin\winx64\ANSYS181.exe" -b -i ansysinputreader.txt -o out.txt

最后一行代码含义:ANSYS读取ansysinputreader.txt分析并将输出结果保存在out.txt文件中。需要注意的是,KMP_STACKSIZE默认值是512k,如果不做设置很有可能无法运行分析,这个数值大小根据你的情况自己设定即可。当我在笔记本电脑上把数值设置为2048k(2核),任务管理器没有任何反应。这说明和我这个计算模型类似的情况,这个数值也不能设置过大。

  • 第二个文件:ansysinputreader.txt

/INPUT,test,'txt','C:\ANSYS\paper1\',,0

这个文件告诉ANSYS去执行对应路径下的文件。有一点需要说明,开始我尝试了好多次,但是输出文件显示无法找到test.txt文件。后面我发现如果仅仅使用test,'txt'是可以的,而使用'test','txt'则可以看到所有的结果内容。我认为这是和使用不同的ANSYS版本有关。

当你有了这两个文件之后,你就可以在MATLAB中运行下面的代码。为了防止出错,我把所有文件都放在同一个文件夹下面。
  • 第三个文件 Run in MATLAB

cd 'C:\ANSYS\paper1'!run_ansys.bat
当你成功的运 行test.txt 中的APDL代码时,在你的工作路径下将会产生 out.txt (你的第一个文件定义的)。下面的代码内容将会出现在你的文件中,你也可以在该文件内查看错误信息等。
*****  ANSYS COMMAND LINE ARGUMENTS  ***** BATCH MODE REQUESTED (-b)    = LIST INPUT FILE COPY MODE (-c)    = COPYRELEASE= Release 18.1         BUILD= 18.1      UP20170403   VERSION=WINDOWS x64 CURRENT JOBNAME=file  12:50:41  DEC 19, 2019 CP=      0.281    1  /INPUT,test,'txt','C:\ANSYS\paper1\',,0RUN SETUP PROCEDURE FROM FILE= C:\Program Files\ANSYS Inc\v181\ANSYS\apdl\start.ans/INPUT FILE= C:\Program Files\ANSYS Inc\v181\ANSYS\apdl\start.ans  LINE=       0/INPUT FILE= C:\ANSYS\paper1\test.txt  LINE=       0*** ANSYS - ENGINEERING ANALYSIS SYSTEM  RELEASE Release 18.1     18.1     ***ANSYS Mechanical Enterprise                       00000000  VERSION=WINDOWS x64   12:50:41  DEC 19, 2019 CP=      0.375

参数化分析:

我希望在ANSYS中进行参数化分析,所以需要利用MATLAB一个个的运行不同的模型。使用MATLAB中的for循环完成编写然后运行bat文件,简单的for循环代码如下所示。利用disp(wind_speed)提醒我哪些参数对应的模型已经提交运行。

matrix = [60,70,80];for wind_speed = matrix    fileID = fopen(filename, 'w+');    fprintf(fileID, '/CLEAR \n');    fprintf(fileID, '/PREP7 \n');    fclose(fileID);    !run_ansys.bat     cd 'C:\ANSYS\paper1'    disp(wind_speed)end
致谢: 感谢作者Dorothy分享!Dorothy,a Ph.D. student,Civil and Environment Engineering,University of Connecticut ( The Hong Kong Polytechnic University )

更多内容请参考

1.从本周公布的2019年图灵奖得主聊聊CAE和CG技术

2.ABAQUS求解器信使V2.0版插件

3.爬虫数据告诉你谁是CAE仿真讲师群里的网红战斗机?

4.基于Python脚本在Abaqus中实现Voronoi图绘制

5.基于python和abaqus实现SPH算法的粒子生成

6.这才是底层网格算法的无穷美学【附常见网格专用处理工具】

7.推荐一款轻量编辑器在abaqus仿真和编程开发中使用

8.CAE工程师崩溃的10个瞬间

9.瞎聊:机械工程专业的那些王牌学校和实验室

10.STL文件,一种前处理网格划分技术??

11.CAE仿真软件中的“华山论剑五绝”解读

12.CAE仿真领域 | 数一数2019国家科学技术奖励项目有哪些?

285c991b88e3d2f374e7bf7d4f982ad1.gif

210fb00c762047b929584f1c5acfcfc3.png

点亮“在看”支持一下!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MatlabAnsys是两个常用于工程仿真的软件。Matlab是一种高级的数学软件,可以进行数值计算、数据分析和绘图等操作。它提供了丰富的工具箱,包含各种算法和函数,适用于各种科学和工程计算。Ansys是一种专业的有限元分析软件,用于求解结构、热、流体、电磁等领域的力学问题。 MatlabAnsys之间可以进行联合仿真,以更准确地分析和解决工程问题。首先,Matlab可以用于预处理数据、生成模型和进行分析。例如,可以使用Matlab进行数据处理,提取需要分析的特定参数,并进行曲线拟合或数据插值,为Ansys提供准确的输入。 其次,Ansys可以利用Matlab编程接口,通过MatlabAnsys进行通信和数据传输。这使得可以将Matlab生成的模型直接导入到Ansys进行仿真分析。同时,Ansys的计算结果也可以通过Matlab进行后处理和可视化,以更直观地展示和解释仿真结果。 此外,Matlab还可以与Ansys 结合进行参数化分析和优化设计。通过Matlab的优化函数和参数化建模工具,可以自动调整Ansys中的设计参数,以实现优化设计的目标。这种联合仿真方法在工程设计中非常有用,可以快速找到最佳的设计方案。 综上所述,MatlabAnsys可以通过数据传输和编程接口进行联合仿真,相互配合,共同解决工程问题。这种联合仿真方法使得分析更准确、结果更可靠,并能够有效优化设计。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值