Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

linlftfold

指定されたブロックとモデルの線形化結果を組み合わせる

構文

lin = linlftfold(lin_fixed,blocksubs)

説明

lin = linlftfold(lin_fixed,blocksubs) では、次の線形化結果を組み合わせて 1 つの線形化モデル lin にします。

  • 線形モデル lin_fixed。Simulink® モデルに指定されたブロックの寄与を含みません。

    linlft を使用して lin_fixed を計算します。

  • lin_fixed から除外されたブロックの線形化

    次の 2 つのフィールドをもつ構造体配列 blocksubs でブロックの線形化を指定します。

    • 'Name' は、置換する Simulink ブロックのブロック パスを指定する文字ベクトルまたは string です。

    • 'Value' は、各ブロックの線形化の値です。

すべて折りたたむ

この例の scdtopmdl モデルには、フィードフォワード パスに 2 つのサブシステムが含まれています。

  • Parameter Varying Controller モデル参照を除くすべてを含む固定部

  • scdrefmdl モデルを参照する Parameter Varying Controller モデル

最上位モデルを開きます。

topmdl = 'scdtopmdl';
open_system(topmdl)

このモデルを Parameter Varying Controller ブロックを除いて線形化します。

io = getlinio(topmdl);
blocks = {'scdtopmdl/Parameter Varying Controller'};
sys_fixed = linlft(topmdl,io,blocks);

コントローラー モデルを線形化します。

refmdl = 'scdrefmdl';
load_system(refmdl);
sys_pv = linearize(refmdl);

線形化の結果を組み合わせます。

BlockSubs(1) = struct('Name',blocks{1},'Value',sys_pv);

バージョン履歴

R2009b で導入