主要内容

deselectCheckInstances

Class: Advisor.Application
Namespace: Advisor

Clear check instances from Model Advisor analysis

Description

You can clear check instances from Model Advisor analysis. A check instance is an instantiation of a ModelAdvisor.Check object in the Model Advisor configuration. When you change the Model Advisor configuration, the check instance ID can change. To obtain the check instance ID, use the getCheckInstanceIDs method.

deselectCheckInstances(app) clears all check instances from Model Advisor analysis.

example

deselectCheckInstances(app,'IDs',checkInstanceIDs) clears check instances specified by checkInstanceIDs from Model Advisor analysis.

example

Input Arguments

expand all

Model Advisor application object, specified as an Advisor.Application object. You can use an Advisor.Application object to run Model Advisor checks on a model reference hierarchy. Create an Advisor.Application object by using the method Advisor.Manager.createApplication.

Check instances to clear from Model Advisor analysis, specified by a cell array of check instance IDs.

Example: deselectCheckInstances(app,'IDs',{'_SYSTEM_By Product_Simulink_mathworks.design.UnconnectedLinesPorts'})

Data Types: cell

Examples

expand all

This example shows how to create an Advisor.Application object, set the root of the Model Advisor analysis, and then clear check instances from the Model Advisor analysis.

Open the example model sldemo_mdlref_basic. In the MATLAB® Command Window, enter:

openExample('sldemo_mdlref_basic');

Create an Advisor.Application object that you can use to run Model Advisor checks.

app = Advisor.Manager.createApplication();

Specify which model to analyze. For this example, specify the model sldemo_mdlref_basic as the root of the Model Advisor analysis.

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

Suppose that you only want to run the check Check root model Inport block specifications.

By default, the Advisor.Application object is set up to run each check instance in the current Model Advisor configuration and has all check instances selected. Clear the check instances to remove all check instances from the Model Advisor analysis.

deselectCheckInstances(app);

You can use the method selectCheckInstances to specify the checks that you want Model Advisor to run. For this example, specify that you want Model Advisor to run only the check Check root model Inport block specifications by finding and using the check instance ID.

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

Run the Model Advisor analysis.

run(app);

Model Advisor runs only the check Check root model Inport block specifications.

This example shows how to create an Advisor.Application object, set the root of the Model Advisor analysis, and then clear specific check instances from the Model Advisor analysis by using the deselectCheckInstances method and the check instance IDs.

Open the example model sldemo_mdlref_basic. In the MATLAB Command Window, enter:

openExample('sldemo_mdlref_basic');

Create an Advisor.Application object that you can use to run Model Advisor checks.

app = Advisor.Manager.createApplication();

Specify which model to analyze. For this example, specify the model sldemo_mdlref_basic as the root of the Model Advisor analysis.

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

Suppose that you do not want to run the check Check root model Inport block specifications.

By default, the Advisor.Application object is set up to run each check instance in the current Model Advisor configuration and has all check instances selected. Find the check instance IDs for the check Check root model Inport block specifications and use the check instance ID to remove the check from the Model Advisor analysis.

checkID = 'mathworks.design.RootInportSpec';
instanceIDs = getCheckInstanceIDs(app,checkID);
deselectCheckInstances(app, 'IDs',instanceIDs);
The method getCheckInstanceIDs returns multiple check instance IDs because the check Check root model Inport block specifications appears in multiple folders in the Model Advisor tree.

If you run the Advisor.Application object, Model Advisor runs each of the checks in the current configuration, except for the check Check root model Inport block specifications. For more information, see Advisor.Application.

This example shows how to run the check Check root model Inport block specifications on the model sldemo_mdlref_basic and its referenced model sldemo_mdlref_counter.

Open the example model sldemo_mdlref_basic. In the MATLAB Command Window, enter:

openExample("sldemo_mdlref_basic")

The model sldemo_mdlref_basic is a parent model that contains three Model blocks: CounterA, CounterB, and CounterC. These blocks reference the same model, sldemo_mdlref_counter, which is a separate model and not a subsystem of sldemo_mdlref_basic.

Create an Advisor.Application object that you can use to run Model Advisor checks across the model reference hierarchy in sldemo_mdlref_basic.

app = Advisor.Manager.createApplication();

Specify which model or subsystem to analyze. For this example, specify the model sldemo_mdlref_basic as the root of the Model Advisor analysis.

setAnalysisRoot(app,Root = "sldemo_mdlref_basic");

When you specify a model as the analysis root for an Advisor.Application object, Model Advisor analyzes that model and any referenced models. For more information, see setAnalysisRoot.

Suppose that you only want to run the check Check root model Inport block specifications.

By default, the Advisor.Application object is set up to run each check instance in the current Model Advisor configuration and has all check instances selected. Clear the check instances to remove all check instances from the Model Advisor analysis.

deselectCheckInstances(app);

Specify that you want Model Advisor to run only the check Check root model Inport block specifications by finding and using the check instance ID.

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

Now the check Check root model Inport block specifications is selected for Model Advisor analysis.

The method getCheckInstanceIDs returns multiple check instance IDs because the check Check root model Inport block specifications appears in multiple folders in the Model Advisor tree. For this example, the instanceID is specified as the first check instance ID returned by getCheckInstanceIDs, but you can select any of the check instance IDs returned by getCheckInstanceIDs.

Note

Alternatively, if you want to load a Model Advisor configuration file instead of selecting individual checks, use the method loadConfiguration.

Run the Model Advisor analysis.

run(app);

Model Advisor runs the check Check root model Inport block specifications on both sldemo_mdlref_basic and sldemo_mdlref_counter.

Get the results from the Model Advisor analysis.

res = getResults(app);

Generate and view a Model Advisor report.

report = generateReport(app);
web(report);

The Model Advisor report provides a summary of the results for sldemo_mdlref_basic and sldemo_mdlref_counter and hyperlinks to individual reports for each model.

This example shows how to run the check Identify unconnected lines, input ports, and output ports on the different variant choices in the model slexVariantManagement.

Open the example model slexVariantManagement. In the MATLAB Command Window, enter:

openExample("slexVariantManagement")

The model slexVariantManagement contains several variant subsystem blocks including Controller and Plant. Inside the variant subsystem blocks are different implementations of those components.

slexVariantManagement has multiple variant configurations stored in the variant configuration data object vcd associated with the model. Advisor.Application objects can only run Model Advisor analysis on active and inactive variant blocks in models with variant configurations created by using Variant Manager. For more information, see Variant Manager for Simulink and Variant Configurations.

Create an Advisor.Application object that you can use to run Model Advisor checks.

app = Advisor.Manager.createApplication();

Specify AnalyzeVariants as true so that Advisor.Application object can run Model Advisor for each of the variant choices in slexVariantManagement.

app.AnalyzeVariants = true;

Specify which model to analyze. For this example, specify the model slexVariantManagement as the root of the Model Advisor analysis.

setAnalysisRoot(app,Root = "slexVariantManagement");

Suppose that you want to run only the check Identify unconnected lines, input ports, and output ports.

By default, the Advisor.Application object is set up to run each check instance in the current Model Advisor configuration and has all check instances selected. Clear the check instances to remove all check instances from the Model Advisor analysis.

deselectCheckInstances(app);

Specify that you want Model Advisor to run the check Identify unconnected lines, input ports, and output ports by finding and using the check instance ID.

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

Now the check Identify unconnected lines, input ports, and output ports is selected for Model Advisor analysis.

The method getCheckInstanceIDs returns multiple check instance IDs because the check Identify unconnected lines, input ports, and output ports appears in multiple folders in the Model Advisor tree. For this example, the instanceID is specified as the first check instance ID returned by getCheckInstanceIDs, but you can select any of the check instance IDs returned by getCheckInstanceIDs.

Note

Alternatively, if you want to load a Model Advisor configuration file instead of selecting individual checks, use the method loadConfiguration.

Run the Model Advisor analysis.

run(app);

Model Advisor runs the check on both active variants in the model and referenced models.

Get the results from the Model Advisor analysis.

res = getResults(app);

Generate and view a Model Advisor report.

report = generateReport(app);
web(report);

The Model Advisor report provides a summary of the results for slexVariantManagement and hyperlinks to individual reports for each variant.

Version History

Introduced in R2015b