Main Content

getBlockPaths

LinearizationAdvisorオブジェクト内のブロックのリストの取得

説明

金宝app®モデルを線形化する際、個々のブロック線形化に関する診断情報が含まれるLinearizationAdvisorオブジェクトを作成できます。このオブジェクトは線形化の結果のトラブルシューティングに使用できます。LinearizationAdvisorオブジェクト内のブロックのリストを取得するには、関数getBlockPathsを使用します。

blocks= getBlockPaths(advisor)は、LinearizationAdvisorオブジェクトadvisor内にあるブロックのブロック パスのリストを返します。

すべて折りたたむ

Simulink モデルを読み込みます。

mdl ='scdspeed'; load_system(mdl)

モデルを線形化してLinearizationAdvisorオブジェクトを取得します。

opts = linearizeOptions('StoreAdvisor',true); io(1) = linio('scdspeed/throttle (degrees)',1,'input'); io(2) = linio('scdspeed/rad//s to rpm',1,'output'); [sys,op,info] = linearize(mdl,io,opts); advisor = info.Advisor;

線形化の結果で数値的に摂動されたすべてのブロックを見つけます。

perturbed = find(advisor,linqueryIsNumericallyPerturbed);

数値的に摂動されたブロックのリストを取得します。

blocks = getBlockPaths(perturbed)
blocks =6x1 cell{'scdspeed/Throttle & Manifold/Intake Manifold/Convert to mass charge'} {'scdspeed/Combustion/Torque Gen' } {'scdspeed/Combustion/Torque Gen2' } {'scdspeed/Throttle & Manifold/Intake Manifold/Pumping1' } {'scdspeed/Throttle & Manifold/Throttle/f(theta)' } {'scdspeed/Throttle & Manifold/Throttle/g(pratio)' }

入力引数

すべて折りたたむ

ブロック線形化の診断情報。LinearizationAdvisorオブジェクトまたはLinearizationAdvisorオブジェクトの配列として指定します。

出力引数

すべて折りたたむ

advisor内のブロックのブロック パス。advisorが単一のLinearizationAdvisorオブジェクトである場合、文字ベクトルの cell 配列として返されます。advisorLinearizationAdvisorオブジェクトの配列である場合、blocksは、各要素が文字ベクトルの cell 配列であるadvisorと同じ次元をもつ cell 配列になります。

バージョン履歴

R2017b で導入