Please enable JavaScript to view this site.

Vensim Help

When Vensim orders the equations for simulation, it first tries to do this variable by variable.  If it fails to do this, it then expands subscript equations and attempts to order equations element by element.  For example, the equations:

age : baby,young,mid,old ~~|

ageh : young,mid,old->agel ~~|

agel : baby,young,mid ~~|

flexibility[ageh] = prev flex[ageh]*.7 ~~|

flexibility[baby] = 1 ~Dmnl ~|

prev flex[ageh] = flexibility[agel] ~ Dmnl ~|

Would result in the computation of flexibility[baby], pref flex[young], flexibility[young], prev flex[mid], flexiblity[mid], prev flex[old] and flexibility[old].  Because Vensim does checking in this manner, apparent simultaneities such as the one shown above will not result in simultaneous equations being reported.  

If, having attempted an expansion such as that shown above, Vensim still finds a simultaneous loop, it will report it with a fully subscripted set of variable names.