Lesson 2 Activity 2 & 3 - Decode the model

Activity #2: Inspecting the Water Pumping Model

  • Identify familiar coding blocks
  • Decode model.
  • Read the important questions to ask when decoding a model.

Review familiar and new command blocks.

  • Keep track of familiar command blocks. Students can refer to their StarLogo Nova Command Blocks and CS Concepts reference sheets from Module 1.
  • Review what the new command blocks do [New commands and concepts sheet].
  • Look at the different sections of code for the Water Pump Starter Base Model (http://www.slnova.org/GUTS/projects/127853/edit/)

Decode the Water Pumping model

  • Open the code blocks document and save it to your Google Drive. 
  • Decode the model a piece at a time:  Pump, Evaporation, Make Sky, Make Pump, Make Earth, Position Groundwater, Groundwater Movement.
  • Add a detailed description of what the procedures do in the code blocks document.

Important questions to ask when decoding a model:

There are three major abstractions in any agent-based model: agents with rules that they follow, the environment in which they coexist, and time. In StarLogo Nova, the first two are easy to see — the agents are the different turtles and the environment is Spaceland. Time is harder to see; instead it can be thought of as a series of time slices or “clock ticks.” At each tick, all of the agents have a chance to update their position or state. Ticks or time slices are not the same as seconds because it may take more or less than one second to update all of the agents. In StarLogo Nova, the time model is built into the forever buttons and the collision blocks; each time through the “run loop,” every agent gets updated.

Whenever we start looking at a new model we should ask how these three elements of a model have been implemented. A simple way to begin to understand a model is to ask, “Who are the agents?”, “How do they behave?”, “What is the environment they live in?”, and “What happens each time through the run loop?”

Activity #3: Adding a Slider for Evaporation Rate

  • Add a slider for evaporation rate.
  • Run an experiment using the evaporation slider.
  • Discuss the results and relate them to the hydrologic cycle.

Add a slider for evaporation rate.

  • Remix the model and rename it by adding “mod 1.”
  • Review the part of the code that controls evaporation.
  • Can you think of a way of changing the evaporation rate without going to the code?
  • Click "edit widgets" in Spaceland. Add a widget in Spaceland — slider — and give it a name.
  • Change the maximum and minimum and step size for the evaporation rate, a rate of 100 is usually good. (Double click on the slider.) Click “edit widgets” again to get out of the editing widgets mode.
  • Check the code for the evaporation procedure. Does it work? Why not?  It’s still the same. We need to change the code here too, not just by adding a widget.
  • Find the "slider value" block and add it to the code. Give it the correct name (of the widget we already added).
  • Save and run the code again. Change the evaporation rate on the slider. Has anything happened?

Run an experiment using the evaporation rate slider.

  • Now that it’s easy to change the evaporation rate we can run an experiment! We can observe the system from the global perspective to see the relationship between evaporation rate and the availability of water, as well as some of the dynamics of the hydrologic cycle. (CCC: Scale, proportion, and quantity)
  • Use the Experimental Design form to sketch out your intention. You will need to use multiple trials at each setting and to clearly identify the variables.  Check that your question is testable given the slider you set up.
  • Run your experiment so the question can be answered. Which variable will you be changing? What range? How many trials at each setting? This information should be documented before beginning.
  • Collecting and analyzing data. Using the instrumentation in the model (the graph and the data boxes) to monitor the amount of groundwater under the different scenarios you are testing. Record the data. Look for patterns in your data [draw a graph and/or make a table, record observations]. (CCC: Patterns)

Reflect on  the results and relate them to the hydrologic cycle.

  • Did the experiment work as you expected?
  • What do you think will happen if we run out of groundwater? (Practice 1: Asking questions and defining problems)


  • Consider the limitations of the model and think of ways of improving it.
  • What’s missing from this Water Pumping model? (Practice 2: Developing and using models)
  • How do humans influence the hydrologic cycle?
  • How can we add water sharing and infiltration to our model? (Practice 1: Asking questions and defining problems) Discuss adding more pumps as well as changing how the water moves through the earth.



Upload your experimental design form and a link to your model in your portfolio in the section "SL Nova Projects- Earth" under the heading "Water Pumping model with evaporation rate slider"