Courses: The GoldSim Contaminant Transport Module:

Unit 11 - Using Features of the RT Module: Modeling Complex Source Terms

Lesson 4 – Modeling Loss of Containment: Single Package

In this Lesson we will start to explore the Source element in greater detail.  Over the next several Lessons we will examine a series of Examples that explore the various features of the Source, with each Example building on the previous one.  In this Lesson, we will begin by discussing how the Source element models loss of containment for a very simple case: a single package with a single barrier.

Let’s begin by opening ExampleCT30_Simple_Container_Failure.gsm from the “Examples” subfolder of the “Contaminant Transport Course” folder you should have downloaded and unzipped to your Desktop.

In this model, we are simulating a single drum.  When the wall of the drum fails, the mass inside the drum is exposed. We will just look at this exposure process: once the mass is exposed, it remains inside the drum; there is no mass transport out of the drum (we will discuss that in a later Lesson).

Go inside the Material Container and open the Species element.  You will note that there are three (custom) species defined: X, Y and Z.  X has a half-life of 5 years and decays to Y. Neither Y nor Z decay at all.

Now open the Source element (named Drum):

Note that the Source is specified to contain a single package (i.e., one drum). Note also that there is a single barrier.  We will explore how that barrier is defined shortly. But first let’s look at the Source Inventory Settings (by pressing the Edit… button):

There is a single Inventory that exists inside the single Outer barrier (and it is not bound in a matrix).  The Species Mass is a defined by a Data element (located inside the Inputs Container).  The initial mass of all three species is 100 g.

Let’s now close this dialog and press the Outer Barrier… button to see how barrier failure has been defined:

Before discussing failure of barriers, it is first important to understand that within GoldSim, a barrier has only two states:  unfailed or failed.  The definition of “failure” is determined by the user. Typically, failure is defined as the initial breaching of the barrier such that material inside the barrier (i.e., contaminants or some matrix containing the contaminants) is exposed to the environment (e.g. flowing water).

Barrier failure is defined in terms of failure distributions.  To understand what this means, imagine that a large number of drums was buried in the ground. At some point in time they would begin to fail (e.g., the walls of each drum would corrode all the way through).  It is highly unlikely, however, that the containers would all fail at the same time.  Rather, there would be temporal variability in their failure times (i.e., some containers would fail early, and some would fail later).  This would result in a distribution of failure times.

GoldSim allows you to specify different kinds of failure distributions describing this variability.  A failure distribution is a probability density function of failure at any given time (probability density functions were discussed in Unit 11, Lesson 3 of the Basic Course).

In this Example, we have specified a Uniform distribution that starts immediately and has a duration of 10 years (defined by the Data element named Uniform_Failure_Duration). 

A uniform failure distribution with a 10-year duration that starts immediately looks like this:

Like all probability density functions, the “height” of the curve for any given value (in this case, failure time) is not a direct measurement of the probability of failure at that corresponding time. Rather, it represents the probability density at that time. The total area under the curve integrates to 1. Therefore, integrating under the curve between any two points results in the probability of failure occurring between those two points in time.

For example, the probability of failure between 0 year and 1 year is 10%.  Because it is a uniform distribution, the density function is constant (over the duration).  Hence, the probability of failure for any other one year period between 0 and 10 years is also 10%.

The Uniform distribution is one of the simplest distributions.  We will discuss other kinds of distributions in later Lessons.

The other two inputs here (Effective Time and Probability) allow us to modify the distribution in various ways.  For example, we could shift the entire distribution to the right such that rather than starting immediately, failure does not begin until 5 years. We can also define multiple failure distributions for a barrier (i.e., it could fail in different ways according to different distributions resulting in a complex combined failure distribution). We will discuss these topics in Lesson 10.

Finally, we should note that when mass is exposed (due to failure) the mass is placed into Cell1 (the only Inventory Cell in this model).  Cell1 is not just the only Inventory Cell, but it is the only Associated Cell (i.e., no additional Cells were added inside the Source). We do not actually simulate mass leaving the Inventory Cell in this simple model (i.e., mass never leaves the Source).  That is, once the mass is exposed, it simply accumulates there. As a result, we don’t need to discuss the properties of that Cell (we will do so in Lesson 6).

The model is set up to run a single realization for 10 years with a 0.01 year timestep.

Before we run the model and look at results, let’s first discuss the types of results that a Source outputs.  There are three results that the Source outputs directly, and these can be seen at the bottom of the dialog:

The three outputs are:

  • Unexposed Mass in Source: This is the mass of each species (the output is a vector) that has not yet been exposed (due to failed barriers and/or degraded matrix).  At the beginning the simulation this is therefore equal to the sum of all Inventories specified for the Source.
  • Cumulative Releases to Inventory Cells: This is the cumulative mass of each species (the output is a vector) that has been exposed (due to failed barriers and/or degraded matrix) and therefore released to each Inventory Cell (there is a separate output for each Inventory Cell). At the beginning the simulation this is therefore equal to zero. Note that this does not actually represent the mass in the Inventory Cells at any given time, since mass that is exposed and placed there can subsequently be transported out and/or decayed or ingrown.
  • Number of Failed Packages.  This is the number of failed packages in the Source (and is dimensionless).

We have selected to save Final Values and Time Histories for these results (by default they are not saved).

To see these outputs, close the dialog and left-click on the output port for the Source element:

Now expand the Properties folder:

Inside the Properties folder we see the three outputs discussed above.  Note that if there were additional Inventory Cells we would see an additional output (Cumulative_to_nn) for each Cell.

Because this is a Container, we can also view the results associated with any elements inside the Container (in this case, Cell1).

Run the model now so we can look at the results. There are four Time History Result elements (for the three Source results, and as we shall see, for one of the outputs of Cell1).

Open the Failed Packages Time History Result first:

This is not very interesting as there is only a single package (so the result is either 0 or 1). Because the failure distribution was uniform, the package has an equal probability of failing at any time between 0 and 10 years.  In this realization, it has failed at approximately 2.7 years.  As we shall see shortly, if we run multiple realizations, we will see different failure times.

Now let’s look at Unexposed Mass Time History Result:

Recall that this is the mass of each species that has not yet been exposed (due to failed barriers and/or degraded matrix).  At the beginning the simulation this is therefore equal to the total Inventory specified for the Source (in this case, 100 g for each species). X decays into Y so these two outputs change with time prior to the time at which the package fails (Z stays constant).  For all three species the unexposed mass goes to zero when the package fails (all the mass is exposed at that time in this simple model).

Next, let’s look at the Cumulative Mass Exposed Time History Result:

Recall that this is the cumulative mass of each species that has been exposed (due to failed barriers and/or degraded matrix) and therefore released to the single Inventory Cell. As such, in this model it is zero prior to the failure of the package and then jumps to the mass that existed in the package at the time the package failed (and does not change subsequently as there is no more mass to expose).  As pointed out above, this does not necessarily represent the mass in the Inventory Cells; it is just the cumulative amount that was exposed and released to those Cells.

We can, however, view this result (the amount of mass in the Inventory Cell), which in this case represents the interior of the drum. We can do so by simply plotting the amount of mass in Cell1 (inside of the Source Container).  As we noted previously, mass is not transported out of this Cell in this model.  However, it does decay and ingrow. This output can be viewed in the Exposed Mass in Drum Result element:

There is no exposed mass in the drum until the package fails.  At that time (2.7 days in this case) the mass is equal to that seen in the previous result (Cumulative Mass Exposed).  For Z, it stays constant for the remainder of the simulation (since this species neither decays nor ingrows). However, X continues to decay while it is in the Cell, while Y continues to ingrow.

In this Example, the drum failed at 2.7 years.  But the failure distribution we used actually indicates that it could fail at any time between 0 and 10 years (we just ran a single realization, and the failure time was selected randomly from the failure distribution).  We can see this by carrying out a Monte Carlo simulation.  Return to Edit Mode, edit the Simulation Settings, and change the # Realizations to 100. Then rerun the model.

Let’s first look at Failed Packages (select “All Realizations” for the Display):

What we see here is that the failure time (when the value jumps from 0 to 1) varies uniformly between 0 and 10 years (just as we would expect).

Now look at Exposed Mass in Drum (make sure you are looking at “Realization” for the Display). Toggle through the various realizations (here is realization #100):

You will see that they are all quite different (due to the different failure times), but the final value (at 10 years) is always the same in this simple case (since for all realizations the package has failed by that time, and therefore the final value is controlled only by decay and ingrowth before and after exposure).

We have explored a very simple Example in this Lesson (e.g., the drum failed and exposed the mass, but the mass never moved out of the drum after failure).  In the next Lesson we will build upon this and include an additional exposure process.