【发布时间】:2021-05-12 01:32:34
【问题描述】:
我目前正在使用deSolve 求解常微分方程组,并且想知道是否有任何方法可以防止微分变量值低于零。我看过其他一些关于在向量、数据框等中将负值设置为零的帖子,但由于这是一个生物模型(T 细胞计数变为负数没有意义),我需要从一开始就阻止它发生,这样这些值就不会扭曲结果,而不仅仅是替换最终输出中的负数。
【问题讨论】:
-
您在寻找参数约束吗?
-
这可能会有所帮助——我的主要问题不在于参数,而在于自变量。是否有任何等价物,例如 MATLAB 的非负函数,或者我可以实现的代码使 x[1] 永远不会低于 0?
-
当 x[1] 达到零时,方程中会发生什么?零是一个稳定的不动点吗?如果是这样,您可以将第一个负值和之后的所有值设置为零。同样在定义 ODE 的函数中,您可以设置
x[1]=max(x[1],0)然后动态应该是正确的,即使它需要后处理。
标签: r ode negative-number