对模型进行尺寸分析
这DimensionalAnalysis
属性指定是否在模拟之前对模型执行尺寸分析。这是一个属性编译
对象。编译
持有模型的编译时间选项,是object属性configset
对象。什么时候DimensionalAnalysis
被设置为真正的
,偶像生物学®软件检查是否涉及反应和规则的单位的物理量,匹配和适用。
例如,考虑反应a + b - > c
.使用质量动作动力学,反应速率定义为a * b * k
, 在哪里K.
是反应的速率常数。如果你指定初始数量一种
和B.
分别为0.01M和0.005M,则K.
是1 /(m *秒)
.如果您指定K.
另一个等价的单位定义,例如,1 / [(moles /升)*第二]
那DimensionalAnalysis
检查物理数量是否匹配。如果物理量不匹配,就会看到一个错误,模型就不会被模拟。
单元转换需要尺寸分析。如果DimensionalAnalysis
关闭了,你转过身来UnitConversion.
然后DimensionalAnalysis
自动打开。如果UnitConversion.
打开,你关掉了DimensionalAnalysis
, 然后UnitConversion.
自动关闭。
如果你有matlab®函数调用在模型中,尺寸分析忽略了包含函数调用的任何表达式并生成警告。
反应速率的有效物理量是量/时间,质量/时间或浓度/时间。
适用于 | 目的:编译 (在configset 对象) |
数据类型 | 布尔 |
数据值 |
|
使用权 | 读/写 |
笔记
SimBiology允许将任何无量纲数量的指数指向任何无量纲功率。例如,如果两者都可以编写以下表达式X
和一种
无维:(x + 3)^(a + 0.5)
笔记
SimBiology使用包括空单位的单位与DimensionalAnalysis
和UnitConversion.
特征。
什么时候DimensionalAnalysis
和UnitConversion.
都是错误的
,不使用单位。然而,SimBiology仍然执行最低尺寸分析水平,以确定反应速率是否处于量/时间或浓度/时间的尺寸。
什么时候DimensionalAnalysis
是真正的
和UnitConversion.
是错误的
,单位(如果不是空)必须具有一致的维度,以便素质可以执行尺寸分析。但是,单位未转换。
什么时候UnitConversion.
被设置为真正的
(这需要DimensionalAnalysis
成为真正的
),SimBiology执行尺寸分析并将所有内容转换为一致的单位。因此,您必须指定一致的单位,并且没有单位可以为空。如果您有维度参数,则必须将其单元设置为无尺寸
.
提示
如果您有自定义函数和UnitConversion.
正在开启,遵循以下建议书。
如果它们尚未维度,则不维度传递给函数的参数。
假设您有一个定义的自定义函数y = f (t)
在哪里T.
是一个小时和时间y
是一种物质的浓度,单位是摩尔/升。例如,当你在模型中使用这个函数来定义一个重复赋值规则时,将它定义为:s1 = f(time / t0)* s0
, 在哪里时间
为模拟时间,T0.
是一个定义为1.0小时的参数,S0.
是一个参数定义为1.0摩尔/升,S1
是一种物质的浓度,单位是摩尔/升。请注意,时间
和S1
不必与同一单位一样T0.
和S0.
,但它们必须在维度上保持一致。例如,时间
和S1
单位可分别设置为分钟和皮摩尔/升。
此示例显示了如何检索和设置DimensionalAnalysis
从默认真正的
到错误的
在模型对象中设置的默认配置中。
导入模型。
modelobj = sbmlimport('振荡器'的)
SIMBIOGY MODEM - 振荡器型号组件:型号:0参数:0反应:42规则:0种:23
检索configset
模型对象的对象。
configsetobj = getconfigset(modelobj)配置设置 - 默认(活动)solvertype:ode15s solvertions:10.000000 Solveroptions:absoluteTeLerance:1.000000E-006 RelativeTolerance:1.000000E-003 RuntimeOptions:Statestolog:全部编译:UnitConversion:True
检索编译
对象。
optionsObj =得到(configsetObj,'compileOptions')编译设置:UnitConversion:True VileIonsis分析:True
分配一个值错误的
到DimensionalAnalysis
.
set(Optionsobj,'多方面分析', 错误的)