R 使用条件停止ODE解算器
当因变量超过某个值时,我想终止ODE解算器。考虑一个简单的ODE模型< /P>R 使用条件停止ODE解算器,r,ode,R,Ode,当因变量超过某个值时,我想终止ODE解算器。考虑一个简单的ODE模型< /P> library("deSolve") dModel<- function(t, y, parms) {list(c(y))} out<-ode(c(1),seq(0,100,1),dModel, parms=NULL) library(“deSolve”) dModel我得到了问题的答案,下面是一个解决方案: library("deSolve") dModel<- function(t, y, p
library("deSolve")
dModel<- function(t, y, parms) {list(c(y))}
out<-ode(c(1),seq(0,100,1),dModel, parms=NULL)
library(“deSolve”)
dModel我得到了问题的答案,下面是一个解决方案:
library("deSolve")
dModel<- function(t, y, parms) {list(c(y))}
rootfun <- function (t, y, parms) { return(y - 100) }
sol<-ode(c(1),seq(0,100,1),dModel, parms=NULL,rootfun = rootfun, method="lsodar")
我可以说在t>4.605164
之后,y
将大于100
time value
1 0.000000 1.000000
2 1.000000 2.718290
3 2.000000 7.389087
4 3.000000 20.085627
5 4.000000 54.598440
6 4.605164 100.000000