Exercises
Exercise 01

In nature, when a prey is killed, lions eat first, then the lionesses, the hyenas and vultures.

  • Create an appropriate model, showing the necessary and consumed food.
  • Compare and explain the results.

    See a solution in the model Exercise01-MealsAnimals

  • Create the same model with another system dynamics software such Vensim, ....
  • Compare and explain the results.
  •  
    Exercise 02

    Modify the model Exercise01-MealsAnimals:

  • Animals are in a park, it opens in July 2014
  • Tigers come only 3 months per years, starting from december
  • Tigers eat after lions and before lioness

    See a solution in the model Exercise02-OpenInJuly
  •  
    Exercise 03

    Modify the model Exercise02-OpenInJuly:

  • Add stocks as parameters for Animals number and what (in kg) they eat
  • Adjust the flow 'Food delivery'

    See a solution in the model Exercise03-StockDependencies
  •  
    Exercise 04

    Modify the model Exercise03-StockDependencies:

  • Add a flow to calculate the monthly food consumption
  • Find visually in the model which animals have no food and when

    See a solution in the model Exercise04-FlowDependencies
  •  
    Exercise 05

    Modify the model Exercise04-FlowDependencies:

  • To simplify the model, create a global procedure to replace the code in the equations of the flows 'Lions eat', 'Lioness eat', ...

    See a solution in the model Exercise05-GlobalProcedure
  •  
    Exercise 06

    Modify the model Exercise05-GlobalProcedure:

  • To simplify the model, create a vector with 5 domains for each animal.
  • Affect the vector to a flow 'Eat' and the stocks: 'Animals', AnimalsKg', AnimalsNb'
  • Delete unused other elements.

    See a solution in the model Exercise06-Vectorization
  •  
    Exercise 07

    Modify the model Exercise06-Vectorization:

  • The flow 'FoodPerMonths' returns the monthly food consumption.
  • Find and add other solutions to retrieve the monthly food consumption using:
    1) ValueWrite() and ValueRead() functions: write and read a pseudo variable
    2) Svalue() function: read a stock value

    See a solution in the model Exercise07-OtherSolutionsForMonthlyFoodConsumption
  •  
    Exercise 08

    Modify the model Exercise06-Vectorization:

  • Add a flow 'FoodMissing' to detect animals that do not eat.
  • Display the missing food in a chart.

    See a solution in the model Exercise08-FoodMissing
  •  
    Exercise 09

    Modify the model Exercise08-FoodMissing:

  • Add a flow named 'FoodMissing delivery' to delivery the missing food in the stock 'FoodStock', just before the food is missing:
    1) use the ReStartAt() function to initialise a retro-calculation.

  • Add a chart to display the 'FoodMissing delivery'

  • After computing the model with retro-calculation:
    1) modify all the charts: check the box 'Values will follow the current Passing(...), in the view 'Elements'
    2) open the 'ReStart' windows, by pressing the key 'R'.
    3) select the current passing (1 to 3) and observe the charts and the model.
    4) you may too select the current passing with the spin located on the right of the main window, after the field (ReSt...art.)

    See a solution in the model Exercise09-RetroCalculation
  •  
    Exercise 10

    Modify the model Exercise09-RetroCalculation:

  • Add mirror stocks and mirror flows to retrieve and to verify the:
    1)Total food required per month
    2)Total food comsumption per month
    The sum of these two values must be null

    3) Total animals number
    4) Total of the AnimalsKg parameter

    See a solution in the model Exercise10-MirrorStock
  •