メインコンテンツ

getDependentModels

名前付きバリアント コンフィギュレーションで使用されている依存モデルのリスト

    説明

    Add-On Required: この機能にはが必要です。

    このメソッドは、モデルの名前付きバリアント コンフィギュレーションで使用されている依存モデルを調べるために使用します。getDependentModels 関数を呼び出す前に、モデルの Simulink.VariantConfigurationAnalysis オブジェクトを作成し、それを使用してコンフィギュレーションを解析する必要があります。

    dependentModels = getDependentModels(varConfigAnalysisObj,configName) は、Simulink.VariantConfigurationAnalysis オブジェクト varConfigAnalysisObj を使用して解析されたバリアント コンフィギュレーション configName で使用されている依存モデルのリストを返します。

    すべて折りたたむ

    この例では、Simulink.VariantConfigurationAnalysis オブジェクトを使用してバリアント コンフィギュレーションをプログラムで解析する方法を示します。

    バリアント マネージャーを使用してバリアント コンフィギュレーションを解析するには、Analyze Variant Configurations in Models Containing Variant Blocksを参照してください。

    モデル slexVariantConfigurationAnalysis を開きます。

    open_system("slexVariantConfigurationAnalysis"); 

    Simulink.VariantConfigurationAnalysis オブジェクトの作成関数には、名前付きバリアント コンフィギュレーションのリストまたは変数グループのいずれかを指定できます。この操作により、モデルのバリアント コンフィギュレーション解析オブジェクトが返されます。

    varConfigObjNamedConfig = Simulink.VariantConfigurationAnalysis("slexVariantConfigurationAnalysis",...
                              NamedConfigurations={"VendorACtrlLinear",...
                               "VendorACtrlNonLinear","VendorACtrlFuzzy"})
    varConfigObjNamedConfig = 
      VariantConfigurationAnalysis with properties:
    
             ModelName: 'slexVariantConfigurationAnalysis'
        Configurations: {'VendorACtrlFuzzy'  'VendorACtrlLinear'  'VendorACtrlNonLinear'}
    
    

    このバリアント コンフィギュレーション解析オブジェクトを使用してバリアント コンフィギュレーションを解析できます。次の手順でそれぞれ指定しているように、さまざまな関数を使用できます。この例では、名前付きコンフィギュレーションを解析します。

    バリアント コンフィギュレーション VendorACtrlLinear のアクティブなブロックのリストを取得する。

    activeblocks = getActiveBlocks(varConfigObjNamedConfig,"VendorACtrlLinear");

    解析されたすべての名前付きバリアント コンフィギュレーションにわたって常にアクティブなブロックのリストを取得する。

    alwaysActiveBlocks = getAlwaysActiveBlocks(varConfigObjNamedConfig);

    解析された一部のバリアント コンフィギュレーションではアクティブで、別のコンフィギュレーションでは非アクティブなブロックのリストを取得する。

    blockDifferences = getBlockDifferences(varConfigObjNamedConfig);

    バリアント コンフィギュレーションの依存ライブラリのリストを取得する。

    dependentLibraries = getDependentLibraries(varConfigObjNamedConfig,"VendorACtrlNonLinear");

    バリアント コンフィギュレーションの依存モデルのリストを取得する。

    dependentModels = getDependentModels(varConfigObjNamedConfig,"VendorACtrlFuzzy");

    解析されたすべての名前付きバリアント コンフィギュレーションで非アクティブなブロックのリストを取得する。

    neverActiveBlocks = getNeverActiveBlocks(varConfigObjNamedConfig);

    名前付きバリアント コンフィギュレーションにおけるブロックのバリアント条件を取得する。

    variantCondition = getVariantCondition(varConfigObjNamedConfig,"VendorACtrlNonLinear",...
    "slexVariantConfigurationAnalysis/Controller/NonLinear");

    モデル解析後のバリアント コンフィギュレーション解析レポートを表示する。

    showUI(varConfigObjNamedConfig);

    モデル解析後のバリアント コンフィギュレーション解析レポートを非表示にする。

    hideUI(varConfigObjNamedConfig);

    あるいは、次の構文を使用して、解析する変数グループのリストを指定します。バリアント コンフィギュレーション解析オブジェクト関数を使用して、これらの変数グループで表されるコンフィギュレーションを解析できます。

    varConfigObjVarGroup = Simulink.VariantConfigurationAnalysis("slexVariantConfigurationAnalysis",...
        VariableGroups=[struct('Name', 'VendorANonLinear',...
        'VariantControls', {{'CONTROLLER', 1, 'EXTERNAL_SENSOR', 1, 'ORDER', 1, 'SATURATE', 1, 'VENDOR', 1}}),...
        struct('Name', 'VendorALinear',...
        'VariantControls', {{'CONTROLLER', 0, 'EXTERNAL_SENSOR', 1, 'ORDER', 1, 'SATURATE', 1, 'VENDOR', 1}})]);

    入力引数

    すべて折りたたむ

    コンフィギュレーション configName の依存モデルの取得元にするバリアント コンフィギュレーション解析データ。Simulink.VariantConfigurationAnalysis オブジェクトとして指定します。

    依存モデルを調べるバリアント コンフィギュレーションの名前。文字ベクトルまたは string スカラーとして指定します。

    出力引数

    すべて折りたたむ

    依存モデルのリスト。文字ベクトルの cell 配列として返されます。

    バージョン履歴

    R2019a で導入