单位换算

执行单位转换

描述

这个单位换算属性指定是否在模拟之前对模型执行单位转换。这是公司的财产编译选项对象编译选项保存模型的编译时选项,并且是配置集对象

什么时候单位换算设置为是的,SimBiology®软件将匹配的物理量转换为一个一致的单位系统,以解决它们。此转换是为正确的模拟做准备,但物种数量以用户指定的单位返回。

例如,考虑一个反应a+b->c. 利用质量作用动力学,反应速率定义为a*b*k公司哪里K是反应的速率常数。如果您指定A.B分别为0.01M和0.005MK1/(米*秒). 如果您指定K例如,用另一个等价的单位定义,1/((分子/升)*秒),单位换算发生在维度分析.

单位转换需要量纲分析。如果维度分析关了,你就转身单位换算那就开始吧维度分析自动打开。如果单位换算是开的,你关了维度分析,那么单位换算自动关闭。

如果单位换算失败,则在模拟时会看到错误(S模拟).

如果单位换算设置为,模拟使用给定的对象值。

涉及温度支持的单位转换金宝app摄氏度作为温度单位。避免使用混合温度单位,因为可能会出错。

特点

适用于 对象:编译选项(英寸配置集对象)
数据类型 布尔值
数据值

是的. 默认值为.

通道 读/写

注意

SimBiology使用单位,包括与维度分析单位换算特征。

  • 什么时候维度分析单位换算两者都是,不使用单位。然而,SimBiology仍然执行最低水平的量纲分析,以确定反应速率是以量/时间还是以浓度/时间为量纲。

  • 什么时候维度分析是的单位换算,单位(如果不为空)必须具有一致的维度,以便SimBiology可以执行维度分析。但是,单位不转换。

  • 什么时候单位换算设置为是的(这需要维度分析成为是的),SimBiology执行维度分析,并将所有内容转换为一致的单位。因此,必须指定一致的单位,并且任何单位都不能为空。如果有无量纲参数,则必须将其单位设置为无量纲.

提示

如果你有一个自定义函数单位换算已启用,请遵循下面的建议。

  • 如果传递给函数的参数尚未无量纲化,则对其进行无量纲化。

    假设有一个自定义函数定义为y=f(t)哪里T时间是以小时为单位的吗Y是一种物质的浓度,单位为摩尔/升。例如,在模型中使用此函数定义重复分配规则时,请将其定义为:s1=f(时间/t0)*s0哪里时间是模拟时间,t0级是一个定义为1.0小时的参数,第0页是一个定义为1.0摩尔/升的参数,并且s1级是一种物质的浓度,单位为摩尔/升。请注意时间s1级不必与同一单位t0级第0页,但它们必须在维度上保持一致。例如时间s1级单位可以分别设置为分钟和皮摩尔/升。

示例

此示例演示如何检索和设置单位换算从默认值是的在模型对象中设置的默认配置中。

  1. 导入模型。

    modelObj=sbmlimport('振荡器')

    SimBiology模型-振荡器模型组件:模型:0参数:0反应:42规则:0物种:23
  2. 检索配置集模型对象的对象。

    configsetObj=getconfigset(modelObj)配置设置-默认(活动)SolverType:ode15s StopTime:10.000000solveroptions:AbsoluteTolerance:1.000000e-006 RelativeTolerance:1.000000e-003 RuntimeOptions:StatesToLog:all CompileOptions:UnitConversion:false DimensionalAnalysis:true
  3. 检索编译选项对象

    optionsObj=get(configsetObj,'CompileOptions')编译设置:UnitConversion:false维度分析:true
  4. 将值false赋给单位换算.

    设置(optionsObj,'UnitConversion',true)