SimBiology允许你模拟模型的动态行为。在模拟之前和模拟期间,SimBiology执行一系列步骤,包括将模型反应和速率规则转换为一组描述模型动力学的常微分方程(ode)。
具体来说,在模拟开始之前,SimBiology:
验证模型。有关详细信息,请参见模型验证.
确定初始条件,即模拟开始时的量值。特别是,SimBiology首先根据模型中指定的值初始化数量值。其次,如果变量中有相应的替换值,它会更新这些值。然后它根据初始赋值和重复赋值更新值。SimBiology将初始分配和重复分配作为一组同步约束进行评估,它们的顺序不会影响最终的数量值。有关详细信息,请参见规则评估次序.
基于模型反应和速率规则构建ode。具体来说,每个ODE的左手边(LHS)表示模型量的时间导数。右手边(RHS)是用由反应速率衍生的反应通量定义的。有关详细信息,请参见从反应中得到ode.
将剂量转换为在特定模拟时间发生的状态转换。
将事件函数转换为依赖于事件触发器中指定的条件的状态转换。
当模拟开始时,即在模拟时间= 0时,SimBiology:
基于初始赋值和重复赋值更新值。
应用在模拟时间= 0时指定的剂量导致的任何状态转换。
记录更新的数量值。
请注意
事件不能导致在time = 0时的转换,因为只有当触发器从false变为true时才应用事件。如果在模拟时间= 0时触发器为true,则没有发生转换,事件也没有被触发。
在模拟过程中,SimBiology使用求解器在不同时间计算ode的解决方案。万博 尤文图斯具体来说,求解器确定适当的时间步骤,并在每一步执行以下操作。
更新任何重复赋值的值。
检查每个事件的触发条件。如果在这个时间步从false切换到true,那么它将根据事件函数应用状态转换,并更新任何重复赋值的值。
记录更新的数量值。
要看系统的ode的一个模型,使用getequations在命令行或按照显示模型方程和初始条件为SimBiology模型构建器应用程序。
请注意
如果一个模型有代数方程,您必须指定以下微分代数方程(DAE)求解器之一:日晷,ode15s, ode23t。SimBiology将代数方程转换为代数约束,并将它们与其余ode一起解决。可选求解器的详细信息请参见选择一个模拟求解器.