Completion Support

Key to making it easy to bring together different components, whether starting directly with building blocks, or making use of Assemblies, is the ability to finish equations and units without having to constantly move between the diagram and the panel. Completion supports allows a more seamless experience by automatically filling in equations with reasonably value or providing you with a list of likely choices to select from. Units are filled in from context wherever possible. While this approach to equation writing and unit completion is not complete, it can significantly speed up model construction and improve creative flow.

Completion support is enabled whenever you are in the Suggest view as specified in the Mode Toolbar.

Dropping Stocks, Flows and Converters

When you place a new variable on the diagram you will be placed in the name editor to type in the name of your choice for the variable as usual. In the background, the variable will be given a default equation of 100. This ensures that the model can be simulated and allows you to continue diagram construction without having to interrupt to specify the equation.

Stock Units

After naming a stock, you will be given an opportunity to specify units for it using the Units Entry popup. This popup will disappear if you click elsewhere on the diagram or on a toolbar.

Note If the stock is connected to another stock via a flow when you place it the new stock will inherit the units of the existing stock automatically without any action on your part.

Flow Units

The units for flows are determined by the stocks they are attached to. You don't need to do anything to set these.

Adding Connectors

As you add connectors between variables equation suggestions will be made based on the incoming connection.

Single Connector Coming in

With a single connection the equation will automatically be set to the variable you are connecting to. So, for example, if you connect price to revenue, the equation for revenue will become price. This first guess is often wrong, since you will likely adding another connector, but happens automatically so does not interrupt the diagram development.

Two Connectors Coming in

When you add a second connector into a variable, you will be given a set of common equations to choose from for the variable you are connecting to:

This list, while not exhaustive, represents the most common ways to combine two variables. Select the one that you want. If none of them are right, you can always use the Equation Tab to complete the equation.

More than Two Connectors Coming in

If there are already two or more connectors and you add another, the list of equations offered will be based on the existing equation. Thus, for example, if the existing equation is rookies*rookie_productivity+pros and you add a connector from pro_productivity you will get:

Select the one that is appropriate, or use the Equation Tab to complete the equation if none of them work.

Note You do not need to fix the equation immediately if none of the suggestions are correct. You can simple click off of the menu to reject the suggestions, continue editing the diagram, and come back to the variable in question later.

Determining Units

It is good practice to specify units for all variables in a model and be sure that the units are consistent as discussed in Working with Units. When working in the Suggest view, units will also be filled in with suggestions based on the equations being created.

Creating units from equations does require a starting point, and this is why you are prompted for units when adding a stock. When flows are connected to stocks they automatically inherit the units of the stock divided by the units for time (this is always true whether using suggest view or not). Similarly, when stocks are combined into a chain, they will all have the same units.

For converters, units may be determined by the equations, or the equations of variables a converter is used in may suggest appropriate units. When Stella can find such a suggestion it will fill in the units. These units are marked as being derived and may be further adjusted as other changes are made. If you explicitly define units for any variable they will not be changed.