Hello All,
I am working on a grass carp stocking model which simulates grass carp herbivory on aquatic plants over the long term (20 years). My question is: Is there a function in vensim PLE+ that I can use to alternate the number of fish stocked annually (inputs into the model)? For example, I need to program 6000 fish stocked in year 1, 3000 in year 2, and 1500 in year 3, with each stocking occurring in April. The modulo function works for a constant stocking rate, however I was hoping someone may provide insight into handling different levels of stocking.
Thanks!
Fish Stocking Model
-
- Super Administrator
- Posts: 4590
- Joined: Wed Mar 05, 2003 3:10 am
Re: Fish Stocking Model
You could use a lookup table combined with modulo.
Code: Select all
fish restock F ((1,6000),(2,3000),(3,1500))
fish restock = fish restock F (time)
Advice to posters seeking help (it really helps us to help you)
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Units are important!
http://www.bbc.co.uk/news/magazine-27509559
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Units are important!
http://www.bbc.co.uk/news/magazine-27509559
Re: Fish Stocking Model
Oh yes, of course. Thank you!
Re: Fish Stocking Model
Another option would be lookup + PULSE TRAIN as the trigger. PULSE TRAIN may be a little simpler to use than IF THEN ELSE( MODULO(Time, ... )), as you don't have to worry about roundoff and time step boundaries.
/*
Advice to posters (it really helps us to help you)
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Blog: http://blog.metasd.com
Model library: http://models.metasd.com
Bookmarks: http://delicious.com/tomfid/SystemDynamics
*/
Advice to posters (it really helps us to help you)
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Blog: http://blog.metasd.com
Model library: http://models.metasd.com
Bookmarks: http://delicious.com/tomfid/SystemDynamics
*/
Re: Fish Stocking Model
An example ...
/*
Advice to posters (it really helps us to help you)
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Blog: http://blog.metasd.com
Model library: http://models.metasd.com
Bookmarks: http://delicious.com/tomfid/SystemDynamics
*/
Advice to posters (it really helps us to help you)
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Blog: http://blog.metasd.com
Model library: http://models.metasd.com
Bookmarks: http://delicious.com/tomfid/SystemDynamics
*/
Re: Fish Stocking Model
Great, that will work perfect for inputting the grass carp stocking regime into my model. As a newbie to Vensim and systems modeling, I really appreciate your suggestions.
Re: Fish Stocking Model
Hello Everyone,
I have another vensim programming question. Is there a way to program a lookup to repeat at the same time-steps annually? I plan to model grass carp increases in weight over the growing season to accurately portray aquatic plant consumption (which is a function of grass carp body weight). I have calculated weight at each interval over the growing season for all age classes in my model (1-16). My model runs on a montly time step where grass carp advance to the next age group after 12 months. I planned to use a lookup to model increases in weight, for example at age-1 monthly weights (kg) for grass carp are ((5,.25),(6,.5),(7,1),(8,1.6),(9,2.2),(10,3),(11,0)) where growth only occurs between May and October when plants are present, and the 0 in November resets it for the next stocking to come in. While this works for one year, I plant to simulate 20 years of stocking, and repeating this lookup 20 times doesn't appear feasible. I'm guessing there's a much easier way to do this, but I haven't been able to find it in the vensim documentation. I appreciate any insight you can provide.
I have another vensim programming question. Is there a way to program a lookup to repeat at the same time-steps annually? I plan to model grass carp increases in weight over the growing season to accurately portray aquatic plant consumption (which is a function of grass carp body weight). I have calculated weight at each interval over the growing season for all age classes in my model (1-16). My model runs on a montly time step where grass carp advance to the next age group after 12 months. I planned to use a lookup to model increases in weight, for example at age-1 monthly weights (kg) for grass carp are ((5,.25),(6,.5),(7,1),(8,1.6),(9,2.2),(10,3),(11,0)) where growth only occurs between May and October when plants are present, and the 0 in November resets it for the next stocking to come in. While this works for one year, I plant to simulate 20 years of stocking, and repeating this lookup 20 times doesn't appear feasible. I'm guessing there's a much easier way to do this, but I haven't been able to find it in the vensim documentation. I appreciate any insight you can provide.
Re: Fish Stocking Model
Right - rather than using
carp growth lookup(time)
just use
carp growth lookup( MODULO( time, months per year ) )
with months per year = 12.
carp growth lookup(time)
just use
carp growth lookup( MODULO( time, months per year ) )
with months per year = 12.
/*
Advice to posters (it really helps us to help you)
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Blog: http://blog.metasd.com
Model library: http://models.metasd.com
Bookmarks: http://delicious.com/tomfid/SystemDynamics
*/
Advice to posters (it really helps us to help you)
http://www.ventanasystems.co.uk/forum/v ... f=2&t=4391
Blog: http://blog.metasd.com
Model library: http://models.metasd.com
Bookmarks: http://delicious.com/tomfid/SystemDynamics
*/