执行单位转换
这UnitConversion.
属性指定是否在模拟之前对模型执行单元转换。这是一个财产编译
对象。编译
保存模型的编译时间选项,是object属性configset
对象。
什么时候UnitConversion.
被设置为真正的
,素质学®软件将匹配物理量转换为一个一致的单元系统,以便解决它们。此转换正在准备正确模拟,但物种量以用户指定的单位返回。
例如,考虑反应a + b - > c
.用质量作用动力学定义反应速率为a * b * k
在哪里K.
是反应的速率常数。如果你指定初始数量一种
和B.
分别为0.01米和0.005米,然后单位K.
是1 /(m *秒)
.如果您指定K.
另一个等价的单位定义,例如,1 /((分子/升)*秒)
那UnitConversion.
发生后发生多方面分析
.
单元转换需要尺寸分析。如果多方面分析
是关闭的,你转身UnitConversion.
那么多方面分析
自动打开。如果UnitConversion.
打开,你关掉了多方面分析
, 然后UnitConversion.
自动关闭。
如果UnitConversion.
失败了,那么你会在模拟时看到错误(sbiosmulate.
)。
如果UnitConversion.
被设置为错误的
,仿真使用给定的对象值。
涉及温度支撑的单元转换万博1manbetx科尔斯群岛
为温度单位。避免使用混合温度单位,因为你可能会得到一个错误。
适用于 | 目的:编译 (在configset 对象) |
数据类型 | 布尔 |
数据值 |
|
使用权 | 读/写 |
Simbiology使用包括空单位的单位与多方面分析
和UnitConversion.
特征。
什么时候多方面分析
和UnitConversion.
都是错误的
,未使用单位。然而,Simbiology仍然执行最小尺寸分析,以确定反应速率是否处于量/时间或浓度/时间的尺寸。
什么时候多方面分析
是真正的
和UnitConversion.
是错误的
,单位(如果不是空)必须具有一致的维度,以便素质可以执行尺寸分析。但是,单位未转换。
什么时候UnitConversion.
被设置为真正的
(这需要多方面分析
成为真正的
),SimBiology执行尺寸分析并将所有内容转换为一致的单位。因此,您必须指定一致的单位,并且没有单位可以为空。如果您有维度的参数,则必须将其单元设置为无尺寸
.
如果您有自定义函数和UnitConversion.
正在开启,遵循以下建议书。
如果它们尚未维度,则不维度传递给函数的参数。
假设您有一个定义的自定义函数y = f (t)
在哪里T.
是时间和时间的时间y
是一种物质的浓度,单位是摩尔/升。例如,当你在模型中使用这个函数来定义一个重复赋值规则时,将它定义为:s1 = f(time / t0)* s0
, 在哪里时间
为模拟时间,T0.
是一个定义为1.0小时的参数,S0.
是一个参数定义为1.0摩尔/升,和S1
是一种物质的浓度,单位是摩尔/升。请注意,时间
和S1
不必与同一单位一样T0.
和S0.
,但它们必须在维度上保持一致。例如,时间
和S1
单位可分别设置为分钟和皮摩尔/升。
此示例显示了如何检索和设置UnitConversion.
从默认真正的
到错误的
在模型对象中设置的默认配置中。
导入模型。
modelobj = sbmlimport('振荡器')
SIMBIOGY模型 - 振荡器型号组件:型号:0参数:0反应:42规则:0种:23
检索configset
模型对象的对象。
configsetobj = getconfigset(modelobj)配置设置 - 默认(活动)solvertype:ode15s solvertions:10.000000 levereptions:absoluteTolerance:1.000000E-006 RelativeTolerance:1.000000E-003 RuntimeOptions:Statestolog:所有编译:UnitConversion:FalseChensionsis:True
检索编译
对象。
Optionsobj = get(configsetobj,'compileOptions')编译设置:UnitConversion:False VileIonalsAlysis:true
分配一个值为falseUnitConversion.
.
SET(Optionsobj,'UnitConversion',True)