# Deterministic ODE Solvers (Control Design and Simulation Module)

Running a simulation or controller in real time means that the simulation time must equal the wall-clock time at each point that the simulation or controller interacts with the real world. Generally, these physical interaction points correspond to the sampling points of the input and output hardware. Therefore, at each sampling time, the simulation time must equal the wall-clock time.

To meet the real-time deadline, you can configure the LabVIEW Control Design and Simulation Module to execute deterministically by placing a strict upper bound on the execution time of the Simulation Loop. National Instruments also recommends you configure the Simulation Loop to use a fixed step-size ordinary differential equation (ODE) solver. These ODE solvers are deterministic, which ensures that block diagram code running at each time step meets the deadlines imposed by the timing of the hardware inputs and outputs.

The Control Design and Simulation Module includes the following deterministic ODE solvers:

- Runge-Kutta 1
- Runge Kutta 2
- Runge-Kutta 3
- Runge-Kutta 4
- Discrete States Only

Variable step-size ODE solvers are not appropriate for real-time applications because these solvers adjust the step size based on the estimated error of the solution. This adjustment requires additional computational resources, which can interfere with the timing requirements of a real-time application.