文档

万博1manbetxSimulink.findVars

分析模型变量和块之间的关系

句法

(变量)= Simulink万博1manbetx.findVars(上下文)
(变量)= Simulink万博1manbetx.findVars(上下文,variablefilter)
(变量)= Simulink万博1manbetx.findVars (___、名称、值)

描述

[变量] = 万博1manbetxSimulink.findVars(上下文这是由指定的块和模型中使用查找并返回变量上下文,包括子系统和引用的模型。该函数返回一个空向量上下文不使用任何变量。

[变量] = 万博1manbetxSimulink.findVars(上下文variablefilter指定的变量或枚举类型variablefilter。例如,使用此语法来确定一个变量是在模型中使用。

[变量] = 万博1manbetxSimulink.findVars(___名称,值查找具有一个或多个指定的附加选项的变量名称,值对参数。例如,你可以搜索未使用的变量。您也可以搜索在使用枚举数据类型上下文,除了变量之外。

例子

全部折叠

查找使用的变量为MyModel

变量= Simulink万博1manbetx.findVars (“MyModel”);

找到基工作区变量的所有用途ķ通过为MyModel。使用缓存的结果来避免编译为MyModel

变量= Simulink万博1manbetx.findVars (“MyModel”'名称'“k”'SearchMethod'“缓存”“SourceType”“基工作区”);

查找名称与正则表达式匹配的变量的所有用法^反式

变量= Simulink万博1manbetx.findVars (“MyModel”“正则表达式”'上''名称'“^反式”);

给定两个模型,找出第一个模型、第二个模型以及两个模型使用的变量

model1Vars = 万博1manbetxSimulink.findVars ('MODEL1');model2Vars = 万博1manbetxSimulink.findVars (“model2”);commonVars =相交(model1vars model2Vars);

的模型工作区中定义的变量为MyModel但是模型没有使用这些。

unusedVars = 万博1manbetxSimulink.findVars(“MyModel”“FindUsedVars”“关闭”“SourceType”“模型工作区”);

确定所述基工作区可变ķ不使用为MyModel

varObj = 万博1manbetxSimulink.VariableUsage (“k”“基工作区”);unusedVar = 万博1manbetxSimulink.findVars(“MyModel”,varObj,“FindUsedVars”“关闭”);

查找块使用的变量增益1为MyModel

变量= Simulink万博1manbetx.findVars (“MyModel”“用户”'为MyModel /增益1');

查找在模型引用层次使用的变量。开始与模型搜索MyNestedModel,并搜索下面的整个层次MyNestedModel

变量= Simulink万博1manbetx.findVars ('MyNestedModel''SearchReferencedModels''上');

中使用的变量和枚举类型为MyModel

varsAndEnumTypes = 万博1manbetxSimulink.findVars(“MyModel”“IncludeEnumTypes”'上');

输入参数

全部折叠

要搜索的模型和块,指定为字符向量或字符向量的单元数组。您可以指定上下文通过以下方式之一:

  • 模型的名称。例如,(“vdp”)指定模型vdp.slx

  • 块或屏蔽块的名称或路径。例如,('VDP /增益1')指定一个名为增益1在模型的根级别vdp.slx

  • 模型或块名称的单元阵列。

数据类型:字符|细胞

要查找的特定变量,指定为的数组万博1manbetxSimulink.VariableUsage对象。每万博1manbetxSimulink.VariableUsage对象标识要查找的变量。

名称-值对的观点

指定可选的用逗号分隔的对名称,值参数。名称是参数的名称和价值为对应值。名称必须出现在单引号内(“”)。可以按任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:'FindUsedVars', '断'

全部折叠

标记以查找显式使用或未使用的变量,指定为由“FindUsedVars”'上'的假。如果您指定FindUsedVars“关闭”,该函数查找未在使用的变量上下文但在由指定的工作空间定义SourceType中

例子:'FindUsedVars', '断'

标记来查找所使用的枚举数据类型,指定为逗号分隔的对,由“IncludeEnumTypes”'上'“关闭”。函数找到枚举类型是在明确使用上下文该定义在使用的变量以及类型上下文

如果您指定SourceType中“基工作区”“模型工作区”, 要么“掩模工作区”时,该函数不报告枚举类型,因为这些源无法定义枚举类型。

通过指定无法找到未使用的枚举类型FindUsedVars“关闭”

例子:'IncludeEnumTypes', '上'

标记启用正则表达式匹配输入参数,指定为逗号分隔的对,由“正则表达式”'上'。只能匹配具有字符向量值的输入参数。

例子:“正则表达式”,“上”

编译状态,指定为逗号分隔的一对组成的'SearchMethod'这些值之一:

  • “编译”- 返回了最新的结果通过搜索之前编译在搜索范围内的每个模型。

  • “缓存”- 返回更快的结果通过使用以前的编译过程中缓存的结果。

例子:'SearchMethod', '编译'

标记以在引用的模型中启用搜索,指定为逗号分隔的对,由'SearchReferencedModels''上'

例子:'SearchReferencedModels', '上'

要搜索的变量或枚举数据类型的名称,指定为逗号分隔的对,由'名称'和一个字符向量。

例子:“姓名”,“反式”

数据类型:字符

定义变量的工作区或源,指定为逗号分隔的对“SourceType”而其中一个选项:

  • “基工作区”

  • “模型工作区”

  • “掩模工作区”

  • “数据字典”

功能过滤器中所指定的源中定义的变量的结果。

例子:“SourceType中”,“基工作区”

如果您搜索通过指定枚举数据类型“IncludeEnumTypes”'上'“SourceType”表示枚举类型的定义方式。您可以指定其中一个选项:

  • “MATLAB文件”

  • “动态类”

  • “数据字典”

该函数筛选指定源中定义的枚举类型的结果。

例子:“SourceType”、“MATLAB文件'

如果没有指定SourceType中,该函数不过滤由源结果。

特定块的名称搜索变量,指定为逗号分隔的一对组成的“用户”和一个字符向量。

搜索一组特定的块,使得能够通过指定正则表达式匹配正则表达式'上'而在特征向量使用正则表达式。例如,您可以指定“用户”、“MyModel / *搜索所有块为MyModel名称开头获得

例子:'用户', '为MyModel /增益1'

例子:“用户”、“MyModel / mySubsystem Gain2”

例子:“用户”、“MyModel / *

限制

万博1manbetxSimulink.findVars不工作与这些结构:

  • MATLAB®在脚本和初始化和回调函数的代码

  • 图书馆和图书馆中的街区

  • 变量MATLAB函数块,除了输入参数

    然而,万博1manbetxSimulink.findVars可以找到枚举类型的任何地方,他们在使用MATLAB函数块。

  • 直接调用MATLAB从Stateflow的®动作语言

  • S-函数使用的数据类型的变量使用注册ssRegisterDataType

    要使变量可搜索,请使用ssRegisterTypeFromNamedObject代替。

  • 在Stateflow的机器父数据参考变量

万博1manbetxSimulink.findVars在非活动子系统发现的变量使用变型,只有你选择分析更新图中所有的选择,并产生预处理条件不同的子系统阻止对话框。如果不选中此复选框,该功能不会发现处于非活动变种变量使用。

介绍了R2010a

这个话题有用吗?