MATLAB Runtime の初期化
コンパイルされた MATLAB® 関数を Python® アプリケーションに統合する場合、コードで MATLAB Runtime およびアプリケーション内のコンパイルされたパッケージを初期化する必要があります。
起動オプションを選択できるようにして MATLAB Runtime を初期化するには、関数
initialize_runtime()
を呼び出します。これにより、MATLAB Runtime が読み込まれて開始されます。initialize_runtime()
の呼び出しはオプションです。先にinitialize_runtime()
を呼び出さずにinitialize()
を呼び出すと、MATLAB Runtime は起動オプションなしで開始されます。アプリケーション内のコンパイルされた各パッケージの関数
initialize()
を使用して、パッケージ内の MATLAB 関数を呼び出すために使用できるハンドルを取得します。関数initialize()
は、コンパイルされたパッケージごとに 1 回だけ呼び出します。
MATLAB Runtime の起動オプションの指定
macOS
macOS では、Python の開始時に MATLAB Runtime のオプションを mwpython
コマンドに渡す必要があります。-mlstartup
を使用し、それに続けて MATLAB Runtime のオプションのコンマ区切りリストを指定します。initialize_runtime()
に渡された MATLAB Runtime のオプションは無視されます。
すべてのプラットフォーム
MATLAB Runtime では、以下の 2 つの起動オプションを指定できます。
-nojvm
— 既定で有効に設定されている Java® 仮想マシンを無効にします。これにより MATLAB Runtime のパフォーマンスが向上することがあります。-nodisplay
— Linux® で、MATLAB Runtime を表示機能なしで実行します。
これらのオプションは、コンパイルされた MATLAB 関数を初期化する前に指定します。そうするには、MATLAB Runtime のオプションを指定して、生成された Python パッケージの initialize_runtime()
メソッドを呼び出します。MATLAB Runtime のオプションのリストは string のリストとして渡されます。たとえば、表示機能および Java 仮想マシンなしでパッケージ addmatrix
に対して MATLAB Runtime を開始するには、次のコードを使用します。
import addmatrix addmatrix.initialize_runtime(['-nojvm', '-nodisplay'])
アプリケーションで複数の Python パッケージを使用する場合は、initialize_runtime()
は 1 つのパッケージだけから呼び出します。最初の呼び出しにより、MATLAB Runtime セッションの実行時オプションが設定されます。後続の呼び出しはすべて無視されます。
コンパイルされた MATLAB 関数を使用した MATLAB Runtime の開始
コンパイルされた MATLAB 関数を呼び出すには、その関数を MATLAB Runtime に読み込みます。そうするには、生成された Python パッケージの initialize()
メソッドを呼び出します。initialize()
メソッドは、パッケージ内のコンパイルされた MATLAB 関数を呼び出すために使用できるオブジェクトを返します。たとえば、MATLAB Runtime を開始し、addmatrix
パッケージ内の MATLAB 関数を読み込むには、次のコードを使用します。
import addmatrix myAdder = addmatrix.initialize()
メモ
コンポーネントをインポートした後に matlab.engine
をインポートすることはできません。matlab.engine
の詳細については、Python 用 MATLAB エンジンの起動と停止を参照してください。