Main Content

setAnalysisRoot

クラス: Advisor.Application
名前空間: Advisor

モデル アドバイザー解析のモデル参照階層を指定する

説明

Application オブジェクト解析のモデル参照階層を指定します。

setAnalysisRoot(app,'Root',model) は、モデル アドバイザー解析のルートとして model を指定します。

setAnalysisRoot(app,'Root',subsystem,'RootType','Subsystem') は、モデル アドバイザー解析のルートとして subsystem を指定します。

入力引数

すべて展開する

モデル アドバイザーのアプリケーション オブジェクト。Advisor.Application オブジェクトとして指定します。Advisor.Application オブジェクトを使用して、モデル参照階層に対してモデル アドバイザー チェックを実行できます。メソッド Advisor.Manager.createApplication を使用して Advisor.Application オブジェクトを作成します。

モデル名。文字ベクトルとして指定します。

例: setAnalysisRoot(app,'Root','sldemo_mdlref_basic')

データ型: char

サブシステムのパス。文字ベクトルとして指定します。

例: setAnalysisRoot(app,'Root','sldemo_mdlref_basic/CounterA','RootType','Subsystem')

データ型: char

すべて展開する

この例では、Advisor.Application オブジェクトを作成し、モデル アドバイザー解析のルートとしてモデルを指定する方法を示します。

モデル例 sldemo_mdlref_basic を開きます。MATLAB® コマンド ウィンドウで次を入力します。

openExample('sldemo_mdlref_basic');

モデル sldemo_mdlref_basic は 3 つの Model ブロック CounterACounterB、および CounterC を含む親モデルです。これらのブロックは同じモデル sldemo_mdlref_counter を参照しています。このモデルは別個のモデルであり、sldemo_mdlref_basic のサブシステムではありません。

モデル アドバイザー チェックを実行するために使用できる Advisor.Application オブジェクトを作成します。

app = Advisor.Manager.createApplication();

解析するモデルを指定します。この例では、モデル sldemo_mdlref_basic をモデル アドバイザー解析のルートとして指定します。

setAnalysisRoot(app,'Root','sldemo_mdlref_basic');

チェック [ルート モデルの Inport ブロックの仕様をチェック] のみを実行するとします。

既定では、Advisor.Application オブジェクトは、現在のモデル アドバイザー構成で各チェック インスタンスを実行するように設定されており、すべてのチェック インスタンスが選択されています。チェック インスタンスをクリアして、すべてのチェック インスタンスをモデル アドバイザー解析から削除します。

deselectCheckInstances(app);

チェック インスタンス ID を確認して使用することで、モデル アドバイザーでチェック [ルート モデルの Inport ブロックの仕様をチェック] のみを実行するように指定します。

checkID = "mathworks.design.RootInportSpec";
instanceIDs = getCheckInstanceIDs(app,checkID);
instanceID = instanceIDs(1);
selectCheckInstances(app,ID = instanceID);

モデル アドバイザー解析を実行します。

run(app);

モデル アドバイザーは、sldemo_mdlref_basic と参照モデル sldemo_mdlref_counter の両方で実行されます。

この例では、Advisor.Application オブジェクトを作成し、モデル アドバイザー解析のルートとしてサブシステムを指定する方法を示します。

モデル例 slexVariantManagement を開きます。MATLAB コマンド ウィンドウで次を入力します。

openExample('slexVariantManagement')

モデル アドバイザー チェックを実行するために使用できる Advisor.Application オブジェクトを作成します。

app = Advisor.Manager.createApplication();

モデル アドバイザー解析のルートとしてサブシステム Controller を指定します。

setAnalysisRoot(app,'Root','slexVariantManagement/Controller',...
'RootType','Subsystem');

チェック [ルート モデルの Inport ブロックの仕様をチェック] のみを実行するとします。

既定では、Advisor.Application オブジェクトは、現在のモデル アドバイザー構成で各チェック インスタンスを実行するように設定されており、すべてのチェック インスタンスが選択されています。チェック インスタンスをクリアして、すべてのチェック インスタンスをモデル アドバイザー解析から削除します。

deselectCheckInstances(app);

チェック インスタンス ID を確認して使用することで、モデル アドバイザーでチェック [ルート モデルの Inport ブロックの仕様をチェック] のみを実行するように指定します。

checkID = "mathworks.design.RootInportSpec";
instanceIDs = getCheckInstanceIDs(app,checkID);
instanceID = instanceIDs(1);
selectCheckInstances(app,ID = instanceID);

モデル アドバイザー解析を実行します。

run(app);

モデル アドバイザーは、Controller サブシステムとその参照モデルで実行されます。

詳細については、Advisor.Application を参照してください。

バージョン履歴

R2015b で導入