Search code examples
interfacesliderconditional-statementsnetlogoagent-based-modeling

How to create condition in NetLogo that 2 slider values cannot exceed defined value?


I created a model which as 2 different sliders, namely ratio1 and ratio2. They are located on the interface and their values should add up to 1 (here: labour-unit), and also cannot exceed this value. For now, NetLogo let's me exceed the condition.

I tried this:

to setup
  create-turtles number-of-turtles   ;; number of firms to be defined through slider
  set labour-unit ratio1 + ratio2
  set labour-unit 1
end

Therefore, my question is: How to create a condition in the setup that 2 slider values cannot exceed a defined value?


Solution

  • Is there any reason you actually need two sliders if the values always add to 1? Could you just have one slider called "proportion with labor-type x" or whatever you're modelling? Then, you can just have reporters to return the values for the actual proportion you're after- for example:

    to-report ratio1
      report proportion-slider
    end
    
    to-report ratio2
      report precision ( 1 - proportion-slider ) 2
    end
    

    Then on your interface you could have the slider (and monitors if needed):

    enter image description here