我正在使用matlab自动参数并启动一个有限元方法代码。我写了一个参数文本文件的有限元程序会读取,然后调用与FEM代码:Matlab“系统”命令卡住
[status,cmdout]=system(['FEMApp ' current_folder '\MyFile']);
有时候,有限元应用程序将无法完成其任务,并在命令发送错误信息窗口。到现在为止,我能够在cmdout中检测到错误消息,然后继续下一个参数集。
由于未知原因,系统命令开始表现不同:它看起来永远被卡住(Matlab始终处于“忙碌”模式)。没有意识到我有没有改变什么?
现在,我使用了以下解决方案:
[status,cmdout]=system(['FEMApp ' current_folder '\MyFile &']);
pause(45)
system(['taskkill' 'FEMProcessus')
它工作正常,但它减缓我的计算有很多(〜X5),因为Matlab的总会等到45个secondes完成任务,即使时间少得多。
任何人都可以解释在Matlab的行为改变? 有没有人比我更聪明的工作?