rk4 {demodelr} | R Documentation |

## Runge Kutta method solution for a differential equation.

### Description

`rk4`

solves a multi-dimensional differential equation with Runge-Kutta 4th order method. The parameters listed as required are needed
See the vignette for detailed examples of usage.

### Usage

```
rk4(
system_eq,
initial_condition,
parameters = NULL,
t_start = 0,
deltaT = 1,
n_steps = 1
)
```

### Arguments

`system_eq` |
(REQUIRED) The 1 or 2 dimensional system of equations, written in formula notation as a vector (i.e. c(dx ~ f(x,y), dy ~ g(x,y))) |

`initial_condition` |
(REQUIRED) Listing of initial conditions, as a vector |

`parameters` |
The values of the parameters we are using (optional) |

`t_start` |
The starting time point (defaults to t = 0) |

`deltaT` |
The timestep length (defaults to 1) |

`n_steps` |
The number of timesteps to compute solution (defaults to n_steps = 1) |

### Value

A tidy of data frame for the calculated solutions and the time

### See Also

See Runge Kutta methods for more explanation of Runge-Kutta methods, as well as the code `euler`

### Examples

```
# Define the rate equation:
quarantine_eq <- c(
dSdt ~ -k * S * I,
dIdt ~ k * S * I - beta * I
)
# Define the parameters (as a named vector):
quarantine_parameters <- c(k = .05, beta = .2)
# Define the initial condition (as a named vector):
quarantine_init <- c(S = 300, I = 1)
# Define deltaT and the number of time steps:
deltaT <- .1 # timestep length
n_steps <- 10 # must be a number greater than 1
# Compute the solution via Euler's method:
out_solution <- rk4(system_eq = quarantine_eq,
parameters = quarantine_parameters,
initial_condition = quarantine_init, deltaT = deltaT,
n_steps = n_steps
)
```

[Package

*demodelr*version 1.0.1 Index]