Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

MATLABFunctionReport

MATLAB Function レポート

    説明

    MATLABFunctionReport オブジェクトを使用して、MATLAB Function ブロックによって使用される関数と変数に関する情報にアクセスします。

    作成

    MATLAB Function ブロックの MATLABFunctionReport オブジェクトを作成するには、ブロックの MATLABFunctionConfiguration オブジェクトで関数 getReport を呼び出します。たとえば、モデル myModelMATLAB Function という名前の MATLAB Function ブロックが含まれる場合、以下を入力します。

    config = get_param('myModel/MATLAB Function', ...
        'MATLABFunctionConfiguration');
    report = getReport(config);

    プロパティ

    すべて展開する

    このプロパティは読み取り専用です。

    MATLAB Function ブロック内の関数。coder.Function オブジェクトの配列として指定します。この配列には、ブロック内の各関数につき 1 つの coder.Function オブジェクトが含まれます。これらのオブジェクトは、各関数によって使用される変数の名前、スコープ、および型などの情報にアクセスするために使用します。詳細については、coder.Function のプロパティ (MATLAB Coder) を参照してください。

    データ型: coder.Function

    すべて折りたたむ

    MATLAB Function ブロックを使用したカスタム機能の作成に記述されているモデル call_stats_block1MATLAB Function ブロックの MATLABFunctionConfiguration オブジェクトにアクセスします。

    config = get_param('call_stats_block1/MATLAB Function', ...
        'MATLABFunctionConfiguration');

    MATLAB Function ブロックの MATLABFunctionReport オブジェクトを作成します。

    report = getReport(config);

    レポート内の coder.Function オブジェクトにアクセスします。

    functions = report.Functions;

    MATLAB Function ブロック内の関数および変数を一覧表示するカスタム レポートを作成します。

    for i = 1:numel(functions)
        fprintf('Function %s uses these variables:\n',functions(i).Name)
        variables = functions(i).Variables;
        for j = 1:numel(variables)
            fprintf('%d. %s -- %s\n',j,variables(j).Name,variables(j).Scope)
        end
        fprintf('\n')
    end
    Function stats uses these variables:
    1. mean -- Output
    2. stdev -- Output
    3. vals -- Input
    4. len -- Local
    
    Function avg uses these variables:
    1. mean -- Output
    2. array -- Input
    3. size -- Input

    ヒント

    MATLABFunctionReport オブジェクトを初めて作成したとき、または MATLAB® Function レポートを最初に開いたときに、Simulink® でモデルが自動的に更新されます。その後、ブロックの MATLAB コードに変更を加える場合は、新しい MATLABFunctionReport オブジェクトを生成する前にモデルを更新しなければなりません。更新しない場合、オブジェクトには変更が反映されません。[モデル化] タブで、[モデルの更新] を選択するか、Ctrl+D を押します。詳細については、ブロック線図の更新とシミュレーションの実行を参照してください。

    R2021a で導入