Courses: Introduction to GoldSim:

Unit 2 - Basic Concepts

Lesson 5 - Linking Elements Together to Create a Model

As a general rule, each type of element in GoldSim has one or more inputs, and produces one or more outputs. Each element has a properties dialog (i.e., an input window) with one or more input fields. GoldSim models are built by linking the outputs of elements to the inputs of other elements. For example, the element named “Pumping_Rate” below is referred to as an Expression element.  It has a single input field (labeled Equation).  It references the output of another Expression element named “Elevation” (in this case using an “If-then” statement):

Note that when you link one element to another (e.g., by writing an equation in an input field for the element that references the name of an output of another element), GoldSim automatically draws an arrow (referred to as an influence) between the elements. The influence visually indicates the dependency of one element on another.  In the example above, the influence indicates that Pumping_Rate is influenced by (i.e., is a function of) Elevation.

One of the more unique and powerful computational features of GoldSim is that the program is dimensionally aware.  GoldSim has an extensive internal database of units and conversion factors. You can enter data and display results in any units. You can even define your own customized units.

When elements are created, you must specify their output dimensions. For example, when the Pumping_Rate element was created in the example above, it was defined to have dimensions of volume per time (m3/min). When elements are linked, GoldSim ensures dimensional consistency and carries out all of the unit conversions internally.  For example, you could add meters and feet in an equation, and GoldSim would internally carry out the conversion. Note, however, that if you tried to add meters and hours, GoldSim would issue a warning message and prevent you from doing so.

In the example above, GoldSim ensures that Elevation actually has dimensions of a length (since it is being compared to a 115 m).  In this case, it converts it to meters (regardless of the length units with which Elevation was defined) and does the comparison to 115 m. If Elevation did not have units of a length, GoldSim would display an error.

As a result of this feature, when you use GoldSim, it is never necessary for you to carry out (error-prone) unit conversions.