1

現在、私はDIANAと呼ばれる有限要素ソフトウェアを使用しています。バッチ ファイルを実行する MATLAB で「単純な」モデルを常に実行できました。それにもかかわらず、今ではより「複雑な」モデル (より堅牢で、より多くの要素を含む) を使用し始めていますが、手順は以前に使用していたものとまったく同じです。問題は、MATLAB からモデルを実行できなくなったことです。実行を開始したように見えますが、突然停止します。次のコマンドを使用しています。

dos('path\filename.bat')

また

system(fullfile(path,'filename.bat' ))

どちらの行も .bat ファイルを実行します。ファイルに問題があると思い、確認しましたが、問題ないようです。次に、.bat ファイルをダブルクリックすると、手順は問題なく実行されます。その後、問題はファイルではなく、MATLAB からの実行にあることに気付きました。問題の状況がわかったので、MATLAB がプロセスを内部的に「強制終了」するのを避けるために、アドバイスをいただけますか?

実行のトレースは、MATLAB で次のように表示されました。

diana: working directory is *CURRENT DIRECTORY NAME*
diana: input file is *FILENAME*.dat
diana: command file is *FILENAME*.dcf
diana: output file is *FILENAME*.out
diana: filos file is diana.ff
DIANA JOB 8028 finished 

バッチファイルを直接ダブルクリックして行うトレース実行は以下の通りです。

ここに画像の説明を入力

前の図に示されているリマークされたファイルには、モデルの出力が含まれていますが、MATLAB から直接実行している間は、MATLAB が前にプロセスを終了するため、それらは表示されません。

ご回答ありがとうございます。

Pd: 次の特性を持つコンピューターを使用しています: Windows7、12 Gb RAM、OS 64 ビット、プロセッサー Intel Xeon 2.53 GHz。

4

2 に答える 2

0

Diana サポート チームが提供するソリューションは次のとおりです。

MATLAB は、スレッドごとのメモリ使用量を制限するいくつかの環境シンボルを設定しているようです。

シンボルをリセットするバッチファイルを介してMatlabからDianaを起動すると、すべて正常に動作します。

このようなバッチ ファイルは次のようになります。

rem === Diana Environment Setup ===
    call "C:\Program Files\Diana 10.0\dialogin.bat"

rem Unset the symbols added by MATLAB
    set KMP_STACKSIZE=
    set KMP_HANDLE_SIGNALS=
    set KMP_BLOCKTIME=

rem start the diana job
    diana test2
于 2016-11-25T10:31:53.897 に答える