ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

MuPAD 式からの MATLAB Function ブロックの作成

Symbolic Math Toolbox™ では、シンボリック式から MATLAB® Function ブロックを作成できます。生成されたブロックは Simulink® モデルで使用できます。これは、シミュレーションを実行するコンピューターに Symbolic Math Toolbox 関数のライセンスが存在しているかを問いません。

MATLAB コマンド ウィンドウを使用する場合は、「MATLAB Function ブロックの生成」を参照してください。

MuPAD® Notebook アプリケーションには、ブロックを生成する関数がありません。そのため、MuPAD 式からブロックを作成するには、次のようにします。

  1. MuPAD Notebook で、式を変数に代入します。

  2. getVar 関数を使用して、その変数を Notebook から MATLAB ワークスペースにコピーします。

これらの手順の詳細は、「MATLAB ワークスペースへの MuPAD 変数のコピー」を参照してください。

MATLAB Function ブロックの作成に使用したい式が MATLAB ワークスペースに表示されているときは、matlabFunctionBlock 関数を使用してその式からブロックを作成します。

たとえば、ハンドル notebook_handle を使用して、MuPAD Notebook を開きます。

notebook_handle = mupad;

この Notebook で、次のシンボリック式を作成します。

r := sqrt(x^2 + y^2)

getVar を使用して、変数 r を MATLAB ワークスペースにコピーします。

r = getVar(notebook_handle,'r')

変数 r とその値が MATLAB ワークスペースと MATLAB コマンド ウィンドウに表示されます。

r =
(x^2 + y^2)^(1/2)

式から MATLAB Function ブロックを生成する前に、空のモデルを作成するか、または既存のモデルを開いておきます。たとえば、新しいモデル my_system を作成し、開きます。

new_system('my_system');
open_system('my_system')

変数とその値が MATLAB ワーススペースにあるため、matlabFunctionBlock を使用してブロック my_block を生成できます。

matlabFunctionBlock('my_system/my_block', r)

MATLAB エディターでブロックを開いて、編集できます。ブロックを開くには、それをダブルクリックします。

function r = my_block(x,y)
%#codegen

r = sqrt(x.^2+y.^2);
この情報は役に立ちましたか?