物种模型的时间增长率

10视图(30天)
你好,
我想实现在Simbiology系统的模型描述了许多物种的动力学。这些物种是标准的动力学的变化速率与时间有关的不同的动力学在三个不同的时期。在第一个时期,发生在第一个五天,物种能够从最初室分配到另一个固定利率。后到第二间分布的物种,在第二时期发生在接下来的七天,该物种在一个固定的常数的速度增长。最后,在接下来的七天在第三期,该物种衰变速度固定不变。因此,如果我没弄错的话,这一物种的时间增长率可以被描述为一个阶跃函数随着时间变化= 5,12和19天。有没有一种方法实现这些动力学使用Simbiology ?
提前感谢任何建议或评论。

接受的答案

Florian奥古斯汀
Florian奥古斯汀 2022年6月15日
嗨,马克,
你可以使用 SimBiology事件 反应速率之间进行切换。大意如下:
  • 定义一个反应率rate1, rate2, rate3,……你每个阶段的描述。
  • 添加虚拟(相位指示器)参数phase1、phase2 phase3,……你的模型。phase1应该1的初始值,所有其他参数都应该有一个初始值为0。
  • 添加SimBiology事件不同阶段之间的切换。
下面是一个例子使用SimBiology MATLAB命令窗口。依赖于你的实际利率你可以压缩/重写事件;你甚至不需要相位指示器参数。但我希望这演示了如何实现不同的反应率在不同的时间间隔。
%定义模型
模型= sbiomodel (“时间反应率”);
addspecies(模型,“一个”10);
addparameter(模型,“k”, 1“不变”、假);
%增加相位指示器(虚拟)参数:
addparameter(模型,“phase1”, 1“不变”、假);
addparameter(模型,“phase2”0,“不变”、假);
addparameter(模型,“phase3”0,“不变”、假);
%定义反应速率:我在这里使用rate1 = k *, rate2 = - k, rate3 = - k *作为一个例子。
反应= addreaction(模型,“零”- >);
的反应。ReactionRate =”——phase2 phase1 * k * * k - phase3 * k *“;
%添加事件之间切换阶段:
addevent(模型,“时间> = 5”,(“phase1 = 0”,“phase2 = 1”,“k = 0.1”]);
addevent(模型,“时间> = 12”,(“phase2 = 0”,“phase3 = 1”,“k = 0.4”]);
%模拟模型
configset = getconfigset(模型);
configset。StopTime = 19;
configset.RuntimeOptions。StatesToLog =“一个”;
simData = sbiosimulate(模型);
%绘制结果
sbioplot (simData)
例如图显示仿真结果。
最好的,
弗洛里安
9日评论
Florian奥古斯汀
Florian奥古斯汀 2022年7月29日
嗨,马克,
与上面的示例是一个sbproj文件。这个项目是兼容R2020b后来MATLAB版本。我希望这能帮助你开始。
最好的,
弗洛里安

登录置评。

更多的答案(0)

社区

更多的答案SimBiology社区

类别

找到更多的在扩展建模环境帮助中心文件交换

标签

下载188bet金宝搏


释放

R2020b

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!