查看: 569|回复: 1|关注: 0

[已答复] MATLAB调用bat文件问题,单独运行bat文件批处理ANSYS正常,MATLAB里面运行的话过一会儿就自动停止

[复制链接]

新手

5 麦片

财富积分


050


1

主题

4

帖子

0

最佳答案
发表于 2019-9-3 20:26:11 | 显示全部楼层 |阅读模式
.bat文件内容
@ start "" "D:\program\ANSYS160\ANSYS Inc\v160\ANSYS\bin\winx64\ansys160.exe"  -p ane3fl -dir "D:\jingya" -j "file" -s read -l en-us -b -i "D:\jingya\liuban.txt" -o "D:\jingya\out.txt"
exit
使用.bat打开ANSYS并自动读取命令流执行文件然后输出TXT结果
命令流文件
/prep7  
et,1,186
mp,ex,1,1.6e11  
mp,prxy,1,0.275
mp,dens,1,7850  
k,1,0,0,0
k,2,4,0,0
k,3,4,0,4
k,4,0,0,4
k,5,0,4,0
k,6,4,4,0
k,7,4,4,4
k,8,0,4,4
V,1,2,3,4,5,6,7,8
LESIZE,1, , ,4, , , , ,0
LESIZE,2, , ,4, , , , ,0
LESIZE,3, , ,4, , , , ,0
LESIZE,4, , ,4, , , , ,0
LESIZE,5, , ,4, , , , ,0
LESIZE,6, , ,4, , , , ,0
LESIZE,7, , ,4, , , , ,0
LESIZE,8, , ,4, , , , ,0

VSWEEP,1
/SOL
ANTYPE,0
DA,6,ALL,

F,187,FZ,100
F,181,FZ,200
SOLVE   

FINISH
/POST1
/output,'D:\jingya\00001.txt'   
ALLSEL,ALL
NSEL,S,,,181,187,6,
PRNSOL,U,COMP
FINISH
/POST1

为什么双击.bat执行整个流程走下来没问题,然后在MATLAB里 使用!gui(.bat的名)运行一会儿ANSYS就停止工作了?

新手

5 麦片

财富积分


050


1

主题

4

帖子

0

最佳答案
发表于 2019-9-10 15:22:53 | 显示全部楼层
本帖最后由 LHX_xEjG6 于 2019-9-10 15:25 编辑

根据国外论坛的解答,发现是堆栈溢出的问题,错误代码c00000fd
这是一个系统层级的错误,表示堆栈溢出;这个错误是Matlab调用第三方软件时触发的,因为在执行系统命令时,堆栈内存被名为KMP_STACKSIZE的环境变量默认指定为512k,不足以调用ANSYS。
解决办法:人为放大堆栈内存,matlab中的调用命令改为
system('SET KMP_STACKSIZE=2048k & "C:\path_to_ansys\ansys[version].exe" [input arguments..]')
能加个联系方式交流下吗?我近期也在做这方面的。QQ:1877017558
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 返回顶部 返回列表