voidModel
モデル配列内の欠損モデルまたは無関係なモデルをマーク
説明
は、Mout
= voidModel(M
,void
)void
で指定したモデルを NaN
静的ゲインに設定します。設計点の多次元グリッド上に定義されたモデル配列を扱う場合、voidModel
を使用して、特定のグリッド点で利用できるモデルがないことを示します。たとえば、systune
を使ってモデル配列のコントローラー パラメーターを調整する場合、設計エンベロープの外に存在する点や、解析時または設計時に無視する点にあるモデルを削除します。
void
が整数のベクトルの場合、voidModel
はM(:,:,void)
をNaN
に設定します。void
が logical 配列の場合、voidModel
はvoid
で選択されたモデルをNaN
に設定します。
例
配列内の不要なモデルをマーク
調整可能な genss
モデルの配列を生成します。そのためには、まず 2 次伝達関数内でパラメーターを変化させてプラント モデルの配列を作成します。その後、結果のプラント モデル配列を調整可能なコントローラー要素と相互接続します。
G = tf(zeros(1,1,3,3)); zeta = [0.66,0.71,0.75]; w = [1.0,1.2,1.5]; for i = 1:length(zeta) for j = 1:length(w) G(:,:,i,j) = tf(w(j)^2,[1 2*zeta(i)*w(j) w(j)^2]); end end C = tunablePID('C','PID'); M = feedback(C*G,1)
3x3 array of generalized continuous-time state-space models. Each model has 1 outputs, 1 inputs, 3 states, and the following blocks: C: Tunable PID controller, 1 occurrences. Type "ss(M)" to see the current value and "M.Blocks" to interact with the blocks.
M
のすべてのモデルについて PID コントローラー ゲインを調整するとします。ただし、物理システムで (zeta,w) = (0.66,1.0)
と (zeta,w) = (0.75,1.5)
のパラメーターの組み合わせが生じることはありません。これらのモデルを無効にして、モデル配列の調整や解析に寄与しないようにします。これらは 3 行 3 列の配列の最初と最後のモデルで、線形インデックスは 1 と 9 です。
void = [1,9]
void = 1×2
1 9
Mout = voidModel(M,void)
3x3 array of generalized continuous-time state-space models. Each model has 1 outputs, 1 inputs, between 0 and 3 states, and between 0 and 1 blocks. Type "ss(Mout)" to see the current value and "Mout.Blocks" to interact with the blocks.
表示から、Mout
のモデルには 0 ~ 3 の状態と 0 ~ 1 個のブロックがあることがわかります。0 状態 0 ブロックのモデルは Mout
で無効なエントリになります。たとえば、最初のエントリを調べると NaN
静的ゲインであることが確認されます。
tf(Mout(:,:,1,1))
ans = NaN Static gain.
線形インデックスを使用して無効にするモデルを指定する代わりに、logical 配列を使用できます。
void = logical([1 0 0;0 0 0;0 0 1]); Mout1 = voidModel(M,void);
Mout1
の最初と最後のモデルが NaN
であることを確認します。
tf(Mout1(:,:,1,1))
ans = NaN Static gain.
tf(Mout1(:,:,3,3))
ans = NaN Static gain.
入力引数
M
— モデル配列
LTI モデル配列
モデル配列。genss
モデルの配列など、LTI モデル配列として指定します。
void
— 無効にするモデル
ベクトル | logical 配列
無効にするモデル。整数値のベクトルまたは logical 配列として指定します。
void
が整数のベクトルの場合、voidModel
はM(:,:,void)
をNaN
に設定します。たとえば、Void = [1,10]
を使用すると、M
の配列次元とは関係なく、線形インデックスにより指定された、M
モデルのM(:,:,[1 10])
、つまり 1 番目と 10 番目のモデルが無効にされます。void
が logical 配列の場合、voidModel
はvoid
で選択されたモデルをNaN
に設定します。たとえば、M
が2 行 2 列のモデル配列の場合、void = logical([0,1;0,0])
を使用するとM
の最初の行にある 2 番目のモデルが無効にされます。
バージョン履歴
R2017b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- 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)