Technically, Vensim and other system dynamics packages are capable of solving systems of lumped ordinary difference or differential equations. We often refer to Vensim as supporting continuous simulation. What this means is that it is best suited to situations where most of the variables change continuously, and not in increments. This is to be contrasted with discrete event simulation in which individual entities are tracked and the results added up to report behavior. While it is possible to make discrete variables in Vensim, this is usually only sensible if there are a small number of such variables relative to everything else in the model.
A discrete event simulation moves forward by allowing each entity to choose the next time it needs to do something (be fully assembled, change to a different workstation, and so on). For this type of modeling it is desirable to have a clock that jumps from time to time and only does the things that need doing at that time. It is possible to make Time jump from place to place in Vensim. However at each time everything gets done. This is very inefficient for discrete even style simulation where only one out of say 100,000 things might need to be computed.
Posted in: Modeling Concepts