getOffsetsForLPV
線形化の結果から LPV オフセットを抽出
説明
は、offsets = getOffsetsForLPV(info)info から線形化オフセットを抽出し、これを LPV System ブロックでサポートされる配列形式に変換します。
例
Simulink® モデルを開きます。
model = 'watertank';
open_system(model)

線形化 I/O を指定します。
io(1) = linio('watertank/Desired Water Level',1,'input'); io(2) = linio('watertank/Water-Tank System',1,'output');
プラント パラメーター A および b を変化させ、3 行 4 列のパラメーター グリッドを作成します。
[A_grid,b_grid] = ndgrid(linspace(0.9*A,1.1*A,3),linspace(0.9*b,1.1*b,4)); params(1).Name = 'A'; params(1).Value = A_grid; params(2).Name = 'b'; params(2).Value = b_grid;
線形化オプション セットを作成して、StoreOffsets オプションを true に設定します。
opt = linearizeOptions('StoreOffsets',true);
指定されたパラメーター グリッドを使用してモデルを線形化し、線形化のオフセットを info 構造体に返します。
[sys,op,info] = linearize('watertank',io,params,opt);
線形化のオフセットを抽出します。
offsets = getOffsetsForLPV(info)
offsets =
struct with fields:
x: [2×1×3×4 double]
y: [1×1×3×4 double]
u: [1×1×3×4 double]
dx: [2×1×3×4 double]
LPV System ブロックを構成するには、offsets からのフィールドを直接使用します。

入力引数
正確な線形化コマンドで返される線形化の情報。構造体として指定します。この構造体は N1 x ... x Nm の構造体配列を含む Offsets フィールドをもちます。ここで N1 ~ Nm は、線形化に使用された操作点配列またはパラメーター グリッドの次元です。info.Offsets の各構造体は、特定の操作点に対応するオフセット情報を含みます。
次のいずれかのコマンドを使用してモデルを線形化すると、線形化オフセットを保存および取得できます。
以下に例を示します。
opt = linearizeOptions('StoreOffsets',true);
[sys,op,info] = linearize(mdl,io,params,opt);その後、getOffsetsForLPV を使用してオフセット情報を抽出できます。
offsets = getOffsetsForLPV(info);
出力引数
モデルを線形化した操作点に対応する線形化のオフセット。次のフィールドを含む構造体として返されます。
| フィールド | 説明 |
|---|---|
x | 線形化に使用された状態オフセット。nx x 1 x N1 x ... x Nm の配列として返されます。nx は線形化されたシステムの状態の数です。 |
y | 線形化に使用された出力オフセット。ny x 1 x N1 x ... x Nm の配列として返されます。ny は線形化されたシステムの出力の数です。 |
u | 線形化に使用された入力オフセット。nu x 1 x N1 x ... x Nm の配列として返されます。nu は線形化されたシステムの入力の数です。 |
dx | 連続時間システムの微分オフセット、または離散時間システムの更新された状態値。nx x 1 x N1 x ... x Nm の配列として返されます。 |
たとえば、モデルが 3 つの入力、2 つの出力および 4 つの状態をもつとします。5 行 6 列の操作点の配列を使用してモデルを線形化すると、offsets には次の次元をもつ配列が含まれます。
offsets.x— 4 x 1 x 5 x 6offsets.y— 2 x 1 x 5 x 6offsets.u— 3 x 1 x 5 x 6offsets.dx— 4 x 1 x 5 x 6
LPV System ブロックを構成するには offsets のフィールドを直接使用できます。例については、LTI システムの配列を使用した非線形動作の近似を参照してください。
バージョン履歴
R2016b で導入
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)