# IVP: \eqn{dy/dt=6-2y,\ y(0)=0}.
# Define gradient
f <- function(t,y) {dy <- 6-2*y; return(dy)}
# Solution interval
t0 <- 0
tf <- 2
# Initial condition
y0 <- 0
# Step
h <- 0.1
# Numerical solution
ltmp <- EulerODE(f,t0,tf,y0,h)
# Print grid
print(ltmp$t)
# Print numerical solution
print(ltmp$y)
# Example with two ODEs.
# \eqn{dy_1/dt=y_1+2y_2}
# \eqn{dy_2/dt=(3/2)y_1-y_2}
# \eqn{y_1(0)=1, y_2(0)=-2}
# Define gradient
dy <- function(t,y) {
dy1 <- y[1]+2*y[2]
dy2 <- 1.5*y[1]-y[2]
return(c(dy1,dy2))
}
# Solution interval
t0 <- 0
tf <- 2
# Initial conditions
y0 <- c(1,-2)
# Step
h <- 0.1
# Numerical solution
ltmp <- EulerODE(dy,t0,tf,y0,h)
# Print grid
print(ltmp$t)
# Print numerical solution y1
print(ltmp$y[,1])
# Print numerical solution y2
print(ltmp$y[,2])
Run the code above in your browser using DataLab