This is a simulation of a cosine. Use the start and stop buttons to run the model.
The period determines how often the calculations are executed. Enter a new number (in milliseconds) and press the period button. A lower number makes the simulation cycle faster.
The time step is a numerical parameter in the model. For the simulationists in the crowd, it is the dt in seconds. A smaller number will result in a more accurate simulation. However, there is a rate of diminishing returns. If the time step is too small, the CPU is doing a lot of work for very little gain.
When the period is equal to the time step, the model is running at real time. Try a period of 100 ms with a time step of 0.1 seconds.
The sine waves are generated by solving the second order differential equation
y'' + y = 0
By representing y' as x, taking the derivative and substituting x' for y'', you can form two first order equations.
y' = x x' = -y
These are solved with a modified Euler integration yielding, at the least, stable oscillations for time steps of 1.0 or less. The analytical solution is
y = sin( t )