Please enable JavaScript to view this site.

Vensim Help

Active Initial Differences

A type of simulation warning message is the reporting of differences between initial values and the first active value computed. These difference occur only when you use the ACTIVE INITIAL function. Suppose, for example, that you have the following equations:

Visibility = INTEG((indicated visibility-Visibility)/

         TIME ADJUST VISIBILITY,indicated visibility)

 ~        Page

 ~        |

 

indicated visibility = enduser demand * PAGE FROM VOLUME

 ~        Page

 ~        |

 

enduser demand = ACTIVE INITIAL(BASE DEMAND *

         PRODUCT VISIBILITY F(Visibility/REF VISIBILITY) *

         PRODUCT PRICE F(Price/REF PRICE),

         BASE DEMAND)

 ~        Widget/Year

 ~        |

The last of these equations is being used to get around an initial simultaneous value error that would otherwise result.  Now suppose that Price is initialized at 1.5 and REF PRICE is just 1. The value of enduser demand is required to initialize Visibility, and will be set at BASE DEMAND.  However, when enduser demand is computed at the initial time (given the values of all the levels), it will be different because of the different price.  When you do a simulation you will see the messages:

For this example, this message is an indication of a formulation problem — Price should be initialized more accurately.  In general, there might be small differences that you will not want to worry about.  You can control whether or not an error message gets reported by setting the Active Initial Relative and Absolute fields in the Global Options dialog Settings tab.  Differences will be reported only if they are larger in absolute value than the absolute number you enter, and larger relative to the initial value by the relative number you enter.  For example, a relative error threshold of .5 would have prevented these messages from being reported.

If you want to look more closely at initial computations, selecting the integration type Diff will cause the initially computed values to be reported at Time 0 and the first active values to be reported at the next SAVEPER.