Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 使用条件停止ODE解算器_R_Ode - Fatal编程技术网

R 使用条件停止ODE解算器

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

当因变量超过某个值时,我想终止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, 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