見出し画像

PythonからMATLABファイルを実行する方法


MATLABファイルの実行

PythonでMATLABファイルを実行したい場合は、ファイルを関数化することで、関連記事のPythonからMATLAB関数を使う方法の内容を使って、実行することができる。
例えば、あるデータをmatファイルで保存するMATLABファイルがあり、これをPythonから実行する場合、

% MATLABファイル
x = linspace(0,10);
y = linspace(2,20);

save("data.mat");

これを関数ファイル化して、

function savedata()
    x = linspace(0,10);
    y = linspace(2,20);
    
    save("data.mat");
end

とする。この関数は、引数も戻り値もない。
あとは、関連記事のPythonからMATLAB関数を使う方法で行ったように、以下のようなPythonファイルを作る。

import matlab.engine

# matlab関数を使用するためのmatlab engine起動
eng = matlab.engine.start_matlab()

# MATLABの自作関数の呼び出し
eng.savedata(nargout=0)

これを実行すると、data.matが作られる。
この自作関数には、戻り値がないので、引数に「nargout=0」を指定する必要がある。

MATLABファイル内で、別のMATLABファイルを実行している場合でも、問題なく動作する。
この方法を活用することで、PythonとMATLABの連携が可能となる。

以下、型の一致や戻り値関係の公式ドキュメント

型関係

戻り値


関連記事

PythonからMATLAB関数を使う方法
https://note.com/elemag/n/nb60d95bc4a9a?sub_rt=share_pw

サイト

https://sites.google.com/view/elemagscience/%E3%83%9B%E3%83%BC%E3%83%A0

この記事が気に入ったらサポートをしてみませんか?