# Euler
model <- list(f=expon)
t <- seq(0,10,1); dt <- 0.001
p <- 0.1; X0 <- 1
X <- euler(X0, t, model$f, p, dt)
# Runge-Kutta
model <- list(f=expon)
t <- seq(0,10,1); dt <- 0.001
p <- 0.1; X0 <- 1
X <- RK4(X0, t, model$f, p, dt)
# Stochastic
model <- list(f=expon)
t <- seq(0,10,1); dt <- 0.001
p <- c(0.1,0.01); X0 <- 1
X <- rnum(X0, t, model$f, p, dt,n=20)
# RK4 with discontinuities
model <- list(f=expon,z=expon.z,g=expon.g)
t <- seq(0,100,1); dt <- 0.01
p <- c(0.02,10,0,-10); X0 <- 100
X <- RK4D(X0, t, model$f, p, dt, model$g, model$z(t,p,X))
Run the code above in your browser using DataLab