Please enable JavaScript to view this site.

Vensim Help

The best size of TIME STEP is determined by the following considerations:

TIME STEP should be smaller than the shortest period for which a significant change in model behavior is at all likely.

TIME STEP should be smaller than 1/3 of the shortest time constant in the model (not applicable with automatic step size adjustment in Runge-Kutta integration).

TIME STEP should be equal to or smaller than SAVEPER.

TIME STEP should allow test inputs to be accessed regularly.

TIME STEP should allow data to be accessed with appropriate regularity.

The last two of these are rules of thumb that prevents (usually, but not always) model behavior to be significantly different than it would be with a smaller TIME STEP.  Consider, for example the model:

S=STEP(1,1)~~|

SS=INTEG((S-SS)/DELAY TIME,S)~~|

DELAY TIME=.5~~|

If you integrate this model using Euler integration and TIME STEP=1.0 you will get sustained oscillation of SS between 2 and 0.  The correct behavior is, of course, smooth and quick adjustment to 1.0.  An inappropriately long TIME STEP leads, in this case, to incorrect behavior.  In general if you see oscillation with a frequency that is near to twice TIME STEP you should test TIME STEP to see if it has an appropriate value.

If you are using Runge-Kutta integration with automatic step size adjustment, the fourth and fifth considerations do not apply.  Vensim will automatically determine how small it needs to make TIME STEP in order to achieve the desired accuracy or issue an error if it is unable to do so.