[转载]让ansys与matlab协同工作2——如何使用ansys调用matlab
(2016-04-15 00:54:29)
					
											标签:
																				
                            转载 | 
					
matlab和ansys都会等着被调用的程序结束运行之后再执行下面的命令,这个特性允许我们把程序的控制权在matlab和ansys之间相互传递,实现ansys与matlab的相互调用和交互工作。
1.matlab中调用ansys的方法(之前的帖子里贴过,不再详述了。补充一点就是ansys运行中产生的中间文件都将在调用它的matlab文件夹下,除了-o内容指定的output文件),下面是一个例子:
!"D:Program
FilesAnsys Incv100ANSYSbinintelansys100.exe" -b -i
d:inpvm1.mac -o "d:out put1.txt" 
2.ansys中调用matlab的例子:
/sys,matlab /r
t1;t2
其中t1.m,t2.m是我们自定义的、指定matlab启动后自动运行的脚本文件,内容分别如下:
t1.m
disp('test1 ok~~')
t2.m
disp('test2 ok~~')
运行上述命令后,matlab将启动并运行t1.m和t2.m,返回信息如下:
>> t1;t2
test1 ok~~
test2 ok~~
test1 ok~~
test2 ok~~
当然,在matlab /r
后面还可以加上matlab内置的函数,如下面的例子
/sys,matlab /r
hf=figure;peaks;saveas(hf,'matlab.emf');exit
这样,matlab就会被调用来绘制一幅图形、保存起来(保存在当前的ansys文件夹)之后退出。退出后,程序的控制权又交给ansys。
有一点需要注意的是,ansys调用matlab之后,matlab脚本中一定要有exit才能将程序控制权重新交给ansys。matlab调用ansys时(batch
mode)并不需要*exit,程序运行完毕后会自动退出。

加载中…