Running a model at multiple time scales
Running a model at multiple time scales
Say I wanted to have my master model operating at an annual time-scale, but I also wanted a sub-module that operates within the master model to operate at a monthly time-scale. Is this possible within Vensim?
Re: Running a model at multiple time scales
It's only possible at present by using external functions, which is complex. However, this is something we're considering as an upgrade to the new submodel functionality.
What's your use case for this?
What's your use case for this?
/*
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: Running a model at multiple time scales
My research team is building a hydro-socioeconomic model, which is modeling available water supply and expected water demands - given economic, household and environmental demands. For a variety of reasons, water resource supply is better modeled at monthly intervals (e.g. to capture seasonality), plus much of hydrological data is measured at monthly time-scales. However, much of the economic data and functions are measured at annual time intervals. Ideally, I'd like to have the monthly water module interact with the annual economic module without having to convert all the data and/or functions to a single uniform time interval. Does that answer your question? i was a little uncertain as to what 'use case' meant.
Re: Running a model at multiple time scales
Your answer is exactly what I had in mind - thanks.
For your situation, I would recommend sticking to one time scale (monthly) without using model hierarchy. It won't hurt the economy to run monthy, with some annual stats reported as needed.
Where hierarchical time scales get interesting is when there's separation over several orders of magnitude. A strategic electric power model with 8760 hours/year over 40 years is probably the classic example.
For your situation, I would recommend sticking to one time scale (monthly) without using model hierarchy. It won't hurt the economy to run monthy, with some annual stats reported as needed.
Where hierarchical time scales get interesting is when there's separation over several orders of magnitude. A strategic electric power model with 8760 hours/year over 40 years is probably the classic 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: Running a model at multiple time scales
Hi there. Is there any update on the multiple time scales? Currently, I am trying to model the electricity expansion planning, which consists of hydro and solar. In hydro, I have monthly time intervals for some parameters, but for solar, I have hourly data for solar irradiation. However, the planning will be on a yearly basis. Can I use different time scales in one model? Thanks!
-
- Super Administrator
- Posts: 4589
- Joined: Wed Mar 05, 2003 3:10 am
Re: Running a model at multiple time scales
No, you cannot currently use different time scales in one model.
If your model time step is measured in months, you can define a very small time step to get the accuracy for hourly calculations. And you can use unit conversion parameters to convert hourly data into monthly (hours per month).
If you need continuous calculation for the solar, this is currently the only option.
If your model time step is measured in months, you can define a very small time step to get the accuracy for hourly calculations. And you can use unit conversion parameters to convert hourly data into monthly (hours per month).
If you need continuous calculation for the solar, this is currently the only option.
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: Running a model at multiple time scales
Actually, it's not quite the only option. An alternative is to use an array dimension as a virtual time axis, so that fast processes occur within the array (e.g. elements for each of 24h in a day) and the slow processes (daily or greater for example) run in normal dynamic time. As long as the fast dynamics are simple, this works OK.
/*
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
*/