DimensionalAnalysis
(删除)执行多维分析模型
DimensionalAnalysis
将在将来的版本中被删除。使用UnitConversion
代替。
描述
的DimensionalAnalysis
属性指定是否执行多维分析模型在模拟。这是一个性质的CompileOptions
对象。CompileOptions
保存模型的编译时选择的对象属性configset
对象。当DimensionalAnalysis
被设置为真正的
,SimBiology®软件检查是否物理量的单位参与反应和规则,比赛和适用。
例如,考虑一个反应a + b - > c
。使用质量作用动力学,反应速率的定义是a * b * k
,在那里k
反应的速率常数。如果你指定初始数量的一个
和b
分别为0.01米和0.005米,那么单位k
是1 / (M *秒)
。如果您指定k
与另一个等效单元的定义,例如,1 /((摩尔/升)*秒)
,DimensionalAnalysis
检查物理量是否匹配。如果物理量不匹配,你会看到一个错误,不是模拟模型。
单位转换需要多维度分析。如果DimensionalAnalysis
是关闭的,你呢UnitConversion
上之后,DimensionalAnalysis
是自动打开的。如果UnitConversion
是你关掉吗DimensionalAnalysis
,然后UnitConversion
自动关闭。
如果你有MATLAB®函数调用在你的模型中,量纲分析忽略了任何表达式包含函数调用并生成一个警告。
有效物理量反应率/时间、质量/时间或浓度/时间。
特征
适用于 | 对象:CompileOptions (在configset 对象) |
数据类型 | 布尔 |
数据值 |
|
访问 | 读/写 |
请注意
SimBiology允许取幂的无因次量任何无量纲的权力。例如,如果您可以编写以下表达式x
和一个
是无量纲的:(x + 3) ^ (+ 0.5)
请注意
SimBiology与使用单位包括空单元DimensionalAnalysis
和UnitConversion
特性。
当
DimensionalAnalysis
和UnitConversion
都是假
,单位不习惯。然而,SimBiology仍然执行最低水平的多维度分析,以决定是否反应速率的维度或浓度/时间/时间。当
DimensionalAnalysis
是真正的
和UnitConversion
是假
,单位(如果不是空的)必须有一致的维度,以便SimBiology可以执行量纲分析。然而,单位不转换。当
UnitConversion
被设置为真正的
(需要DimensionalAnalysis
是真正的
),SimBiology执行量纲分析和转换一切单位一致。因此,您必须指定单位一致,任何单位可以是空的。如果你有一个无量纲参数,你仍然必须设置它的单位无量纲的
。
提示
如果你有一个自定义函数UnitConversion
是,遵循下面的建议。
Non-dimensionalize传递给函数的参数,如果他们不是已经无量纲。
假设您有一个自定义函数定义为
y = f (t)
在哪里t
小时的时间吗y
是一个物种的浓度在摩尔/升。当你使用这个函数模型来定义重复分配规则为例,将其定义为:s1 = f(时间/ t0) * s0
,在那里时间
仿真时间,t0
是一个参数定义为1.0小时,s0
是一个参数定义为1.0摩尔/升,然后呢s1
是一个物种的浓度在摩尔/升。请注意,时间
和s1
不需要在同一个单位t0
和s0
,但他们必须在尺寸上一致的。例如,时间
和s1
单位可以设置为分钟,皮摩尔/升,分别。
例子
这个示例展示了如何检索和设置DimensionalAnalysis
从默认真正的
来假
在默认配置中设置一个模型对象。
导入模型。
modelObj = sbmlimport (“振荡器”)
SimBiology模型——振荡器模型组件:模型:0参数:0反应:42规则:0物种:23
检索
configset
对象模型的对象。configsetObj = getconfigset (modelObj)配置设置,默认(主动)SolverType: ode15s StopTime: 10.000000 SolverOptions: AbsoluteTolerance: 1.000000 e - 006 RelativeTolerance: 1.000000 e - 003 RuntimeOptions: StatesToLog:所有CompileOptions: UnitConversion:真正的DimensionalAnalysis:真的
检索
CompileOptions
对象。optionsObj =得到(configsetObj,“CompileOptions”)编译设置:UnitConversion:真正的DimensionalAnalysis:真的
赋值的
假
来DimensionalAnalysis
。集(optionsObj,“DimensionalAnalysis”假)