主要内容

评价模型组件名称的表达式

SimBiology模型组件包括数量和表达式。您可以参考模型数量(车厢、物种和参数),可见他们的名字在一个表达式,如反应或赋值方程。遵循这些指导方针,当你的名字模型组件或引用他们的名字在表达式。当评估一个名字匹配不同的数量,SimBiology解决它遵循优先规则。

命名模型组件的指导方针

  • 模型、参数和可观察到的名称不能包含括号[]不能是空的,这个词时间或所有空白。

  • 室、物种和可观察到的名称不能包含字符- >,< - >,(]不能是空的,这个词这个词,或者时间。然而,一个名字可以包含的单词时间在名称等nullDrug

  • 反应,事件,和规则名称不能包含括号[],不能一词时间

  • 你不能反应名称设置为一个空字符向量()或空字符串(”“)。

请注意

SimBiology删除任何前导或尾随空格模型组件的名称。

警告

从R2022b:

  • SimBiology问题警告如果多个模型组件(模型、隔间、物种、参数、反应规则,事件,可见,剂量,和变体)具有相同的名称。在未来的版本中,在一个模型中,这些组件将需要有独特的名字,即使它们与下面两个不同类型的例外:

    • 物种在不同的隔间可以有相同的名称。

    • 参数可以有相同的名字,作用域不同的父母。具体来说,您可以使用相同的名称model-scoped参数和reaction-scoped参数,其中每个reaction-scoped参数属于不同的反应。

    这个命名限制的目的是确保每个模型组件都可以明确地引用以其独特的名字在一个模型。细节如何参考模型组件名称的表情,明白了指南在表达式引用的名称

  • 从你的模型,来消除歧义重复名称使用updateDuplicateNames在命令行功能。SimBiology模型中的函数作为输入和更新所需的组件名称。还可以指定可选的输出,比如逻辑标记检查是否发生任何更新,模型更改的列表,和原始模型的一个副本之前任何更新。

  • updateDuplicateNames通过添加一个后缀功能避免重复名称“_N,在那里N是第一个正整数,结果在一个惟一名称。如果有现有的后缀,N将增加后缀。例如,如果有两个模型组件命名x_3,功能更新的名字之一x_4。如果现有的后缀有前导零,省略了零功能的新名称。例如,如果x_003是一个重复的名字,它被重新命名为x_4。然而,功能与前导零,没有前导零假设名称是不同的。例如,x_005x_5被认为是不同的名字。

提示

让一个模型组件具有相同名称的列表,做以下之一:

  • 在命令行输入sbioselect (模型Name = " dupName”),在那里模型是SimBiology模型和dupName是重复名称。

  • SimBiology模型构建器,您可以过滤组件通过输入的重复名称浏览器窗格。

指南在表达式引用的名称

  • 如果数量名称不是一个有效的MATLAB®变量名称,必须将名称在括号中指在一个表达式。例如,如果一个物种的名字DNA聚合酶+,写(DNA聚合酶+]

  • 如果您有多个名称相同的物种在不同的隔间,你必须符合的名字指的是包含物种间的名称。例如,限定名称。(DNA聚合酶+]指的是DNA聚合酶+物种,驻留在隔间。

优先规则评估数量的名字

如果一个名字中引用多个数量或一个表达式匹配可观测的使用优先规则对象,SimBiology评估表达式。规则取决于反应或其他表达式中引用的名字是没有反应。

反应的

当一个反应是指一个名称匹配不同的数量,SimBiology评估匹配名称的名称作为第一数量在这个顺序:物种,反应参数范围,隔间里,对模型或参数范围。

对于其他表达式

有不同类型的表达式,不反应,即规则、事件和可见。规则包括初始和重复赋值方程、代数方程和微分方程。事件包含表达式代表一个事件触发和一个或多个事件函数模型离散在数量或表达式的值转换模型。一个可观测的对象是一个允许您执行post-simulation计算的数学表达式。

当nonreaction表达式是指一个名称匹配不同的数量,SimBiology评估匹配名称的名称作为第一数量在这个顺序:物种,隔间里,对模型或参数范围。积极观察表达式可以引用另一个活跃的可观察到的对象的名称,只要没有循环依赖(或代数循环)。

另请参阅

相关的话题