matlab调用ANSYS--------2

最近使用ANSYS计算温度场方面的东西,每次都要手动运行,自己处理计算结果。可怜无助的我深感劳累啊,最主要的是怎么能把我宝贵的时间用在重复的劳动中。so,出于懒的需要,查询了一些关于matlab调用ANSYS的资料,经过自己实践,整理了以下内容。

1、调用ANSYS

!"D:\ANSYS Inc\v180\ANSYS\bin\winx64\ansys180.exe" -b -i "E:\ansys2matlab\work.txt" -o "E:\ansys2matlab\process.out";

以上为在matlab中调用ANSYS内核的代码。

"D:\ANSYS Inc\v180\ANSYS\bin\winx64\ansys180.exe" 是ANSYS的绝对路径,依据ANSYS的安装位置改写即可;

-b 是使用batch方式运行ANSYS;

-i 是输入文件;

"E:\ansys2matlab\work.txt" 是用ANSYS APDL语言编制的计算模型

-o 是输出文件;

"E:\ansys2matlab\process.out" 是ANSYS计算过程的输出文件。个人认为没啥用,纯属记录运行过程。

 

tips:

执行上述命令后,计算机调用ANSYS内核计算,不会显示经典的ANSYS界面;

过程文件process.out不包含计算结果,计算结果需要用APDL语言在work.txt里编写,以文本格式输出。

2、APDL语言调出计算结果

调用ANSYS计算之后会发现,在matlab里找不到计算结果,只能悲催的打开ANSYS经典界面,载入计算结果。啊,天老爷啊,我折腾了半天,就给我看这个。我真是@#¥¥%&&**

不过后来我发现可以在计算模型work.txt中,添加一部分APDL代码,将该死的计算结果保存出来。

以下是我轻(da)松(fei)写(zhou)意(zhang),编写的小东西:


 
 
  1. /post1
  2. c_node=node( 0, 0, 0) ! 从坐标获得节点编号
  3. * get,n_set,active, 0, set,nset !获得总共运行了多少步
  4. *cfopen, 'dataout', 'txt' !创建输出文本
  5. * do,j, 1,n_set, 1
  6. set,,j
  7. * get,v_time,active, 0, set,time
  8. * get,c_temp,node,c_node,temp
  9. *vwrite,j,v_time,c_temp
  10. (F5 .0, ' ',f8 .2, ' ',F10 .4)
  11. *enddo
  12. *cfclos !关闭文本

3、用matlab对计算结果进行处理

终于到这一步了。

只需要用load函数将 dataout.txt 载入matlab,我就可以为所欲为了,随便打扮这个小姑娘了,哈哈哈。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值