主要内容

顾问。应用程序类

包:顾问
超类:

跨模型层次结构运行模型Advisor

描述

使用的实例顾问。应用程序在模型层次结构中运行Model Advisor检查。您可以使用顾问。应用程序:

  • 对引用的模型运行检查。

  • 为model Advisor分析选择模型组件。

  • 选择在Model Advisor分析期间运行的检查。

考虑使用顾问。应用程序如果您有一个包含子系统和模型引用的大型模型。顾问。应用程序不对库模型运行检查。如果您想对不在模型引用层次结构中的多个独立模型运行检查,或者您想利用并行处理,请使用ModelAdvisor.run在您的模型上运行Model Advisor检查。

顾问。应用程序方法使用以下定义:

  • 模型组件—系统层次中的模型。根模型引用的模型和setAnalysisroot指定是模型组件。

  • 检查实例-实例化ModelAdvisor。检查对象。每个检查实例都有一个实例ID。当您更改Model Advisor配置时,实例ID可以更改。

建设

创建一个顾问。应用程序对象,使用Advisor.Manager.createApplication

属性

全部展开

要分析的模型层次结构中的根模型的名称,由Advisor.Application.setAnalysisRoot方法。此属性为只读。

的唯一标识符顾问。应用程序对象。此属性为只读。

在临时工作文件夹中运行分析。指定的Advisor.Manager.createApplication方法。此属性为只读。

数据类型:逻辑

在变体管理器中基于预定义配置运行活动和非活动变体的分析。对于每个配置,生成一个Model Advisor报告。此属性为读/写。

数据类型:逻辑

方法

删除 删除顾问。应用程序object
deselectCheckInstances 从Model Advisor分析中清除检查实例
deselectComponents 从model Advisor分析中清除模型组件
generateReport 为Model Advisor分析生成报告
getCheckInstanceIDs 获取检查实例id
getResults 访问Model Advisor分析结果
loadConfiguration Advisor配置
运行 在模型组件上运行Model Advisor分析
selectCheckInstances 选择要在Model Advisor分析中使用的检查实例
selectComponents 为model Advisor分析选择模型组件
setAnalysisRoot 为model Advisor分析指定模型层次结构

复制语义

句柄。要了解句柄类如何影响复制操作,请参见复制对象

例子

全部折叠

这个例子展示了如何在模型上运行检查sldemo_mdlref_counter引用sldemo_mdlref_basic

在命令窗口中,打开模型sldemo_mdlref_basic和参考模型sldemo_mdlref_counter

open_system(“sldemo_mdlref_basic”);open_system(“sldemo_mdlref_counter”);

将模型的副本保存到工作文件夹中,并将其重命名为mdlref_basicmdlref_counter

save_system(“sldemo_mdlref_basic”、“mdlref_basic”);save_system(“sldemo_mdlref_counter”、“mdlref_counter”);

mdlref_basic,更改模型引用sldemo_mdlref_countermdlref_counter.保存mdlref_basic

set_param(‘mdlref_basic / CounterA’、‘ModelName’,‘mdlref_counter’);set_param(‘mdlref_basic / CounterB’、‘ModelName’,‘mdlref_counter’);set_param(‘mdlref_basic / CounterC’、‘ModelName’,‘mdlref_counter’);save_system(“mdlref_basic”);

设根模型为mdlref_basic

RootModel =“mdlref_basic”;

创建一个应用程序对象。

应用= Advisor.Manager.createApplication ();

设置根分析。

setAnalysisRoot(应用,“根”,RootModel);

从Model Advisor分析中清除所有检查实例。

deselectCheckInstances(应用);

选择检查识别未连接的线路、输入端口和输出端口使用检查实例ID。

instanceID = getCheckInstanceIDs(应用,“mathworks.design.UnconnectedLinesPorts”);checkinstanceID = instanceID (1);selectCheckInstances(应用,“id”,checkinstanceID);

运行Model Advisor分析。

运行(应用);

得到分析结果。

getResults(应用);

生成并查看Model Advisor报告。Model Advisor对两者运行检查mdlref_basicmdlref_counter

报告= generateReport(应用);web(报告)

关闭模式。

close_system(“mdlref_basic”);close_system(“mdlref_counter”);

这个例子展示了如何运行对子系统的检查fuel_rate_control引用sldemo_fuelsys

在命令窗口中,打开模型sldemo_fuelsys

openExample(“sldemo_fuelsys”)

设根模型为sldemo_fuelsys

RootModel =“sldemo_fuelsys”;

创建一个应用程序对象。

应用= Advisor.Manager.createApplication ();

设置根分析为子系统sldemo_fuelsys / fuel_rate_control

setAnalysisRoot (app,‘根’,‘sldemo_fuelsys / fuel_rate_control’,‘RootType’,“子系统”);

从Model Advisor分析中清除所有检查实例。

deselectCheckInstances(应用);

选择检查识别未连接的线路、输入端口和输出端口使用检查实例ID。

instanceID = getCheckInstanceIDs(应用,“mathworks.design.UnconnectedLinesPorts”);checkinstanceID = instanceID (1);selectCheckInstances(应用,“id”,checkinstanceID);

运行Model Advisor分析。

运行(应用);

得到分析结果。

getResults(应用);

生成并查看Model Advisor报告。Model Advisor对子系统运行检查sldemo_fuelsys / fuel_rate_control

报告= generateReport(应用);web(报告)

关闭模式。

close_system(“sldemo_fuelsys”);

另请参阅

介绍了R2015b