0

我有一个在 Matlab 中编码为函数的 ODE 模型。随着时间的推移,我使用 ode15s 集成了 ODE。求解器完成后,我以代数方式计算一个新变量,它是模型输出的其他变量之和的一小部分。

例如:

dA/dt = xxxxx
dB/dt = xxxxx
dC/dt = xxxxx

这将被集成并返回 dA、dB、dC 的列数组。根据我计算的输出:

model_result = A/(A+B+C).  

整个时间课程),并绘制这个值向量与时间的关系。

但是,我还需要对模型执行敏感性分析,为此我使用了Mathworks 存储库中修改后的 ODE15 。我需要能够将上面的“model_result”设置为灵敏度计算的目标函数。

我试图在函数内部计算 model_result,并将其作为另一个变量返回,但显然这不起作用,因为积分器返回积分值,而不是代数计算的值。

Matlab 中的 ODE 求解器是否可以返回代数值?

如果没有,有人知道如何进行这种敏感性分析吗?

谢谢你的帮助。如果我使用了所有错误的术语,我对建模很抱歉!

4

0 回答 0