User Tools

Site Tools


concepts:views

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
concepts:views [2009/10/27 00:15]
shona.weldon
concepts:views [2010/01/26 12:52] (current)
shona.weldon
Line 1: Line 1:
 ====== Views ====== ====== Views ======
 +A dynamic and flexible way to extend a model, views are a powerful tool in the whatIf? suite. ​
  
-The power of views is that they are a dynamic and flexible extention to an otherwise resonably static and rigid model.  ​Models, especially once populated with data are pretty ridgid, ​changing the design and reloading data.  Views provide a mechanism for extending the model either through ​preprocessing ​input data or additional analysis of output data. +Models, especially once populated with dataare fairly rigid. Modifying any working model requires ​changing the design and reloading data.  Views provide a mechanism for extending the model either through ​preprocessed ​input dataadditional analysis of output data and even implementing feedback loops in the model'​s logic.
  
-One example ​of using a view to extend a model is writing a view which builds a control variable which ha +Part of the design process ​is deciding what should be part of the rigid structure ​of the model and what should be dynamic and implemented by views.  Anything that needs to be flexible is usually implemented in views.
-The model is a rigid structure views add a layer of flexibility ​to that...+
  
-In the whatIf? platform views are the method used for interacting dynamically with the model.  Views are used to import and export ​data, to mediate interaction with the model, do analysis and display it to the user, do iterative runs of the model to converge on parameter settings and every combination of these.+==== Example 1: Extend a model by changing input data (create view) ====
  
-Paragraph talking about ability to overlay behaviour or control ​structure ​on top of our physical substrate built right into the model+Suppose you had a model which had a control ​variable specifying exogenously the market share for new vehicles over time.  There are many ways to create that data and one must have been used to load the original model. ​ If you found a new algorithm for determining that market share based on something inside the model, something totally external or some mix of these, then a view could be written to implement this algorithm and feed it into the model as the new market share. ​ Essentially you have extended the model'​s scope but have taken on the work of actually modifying the model. ​ Of course the model can be changed later to encapsulate the new logic in the model itself but it doesn'​t need to.
  
-Manufacture instantiation of data in views instead of the structure of the model to give extra flexibility 
  
-===== Display ​Views =====+==== Example 2: Implementing feedback (feedback view) ==== 
 + 
 +Suppose you have a model with a coefficient in it which is NOT measured, for example an efficiency coefficient for a widget, and you need to estimate that coefficient. ​ In historic time you have a good estimate of the number of widgets and the amount of energy used by the widgets (observedEnergyUse). ​ You need to find an value for your coefficient that when multiplied by the number of widgets results in an energy use amount that tracks as close as possible to the observedEnergyUse. ​ A feed back view can be used to run the model check the difference in energy use, modify the coefficient appropriately,​ run the model again, and continue this loop until some acceptable level of convergence is achieved. 
 + 
 +The result is a calibrated value for the coefficient in historic time that can be a good starting value for your simulation. 
 + 
 +This is used extensively in the calibration process 
 + 
 +==== Example 3: Post Processing (display view) ==== 
 + 
 +Suppose you have an energy model that calculates fuel use and GHG emissions. ​ Then you get some coefficients for CAC emissions and you want to do a quick calculation to get the CAC emissions. ​ A display view can be written to take the results of the model and the new coefficients multiply them out and display the results. 
 + 
 + 
 +===== Types of views ===== 
 + 
 +In the whatIf? platform views the way the user interacts dynamically with the model.  ​Views are also used to import and export data, to mediate interaction with the model, do analysis and display it to the user, do iterative runs of the model to converge on parameter settings and every combination of these. 
 + 
 +==== Display Views ====
  
 Display views are read only views into the model which do not change any model data but instead pull data from the model. ​ These can be considered as reporting view.  Here are some uses of display views: Display views are read only views into the model which do not change any model data but instead pull data from the model. ​ These can be considered as reporting view.  Here are some uses of display views:
Line 20: Line 36:
   * Export the results for use outside the mode   * Export the results for use outside the mode
  
-===== Create Views =====+==== Create Views ====
   * Importing data from various external sources   * Importing data from various external sources
   * Interacting with the user to fill variables for scenario creation   * Interacting with the user to fill variables for scenario creation
  
-===== Feedback views =====+==== Feedback views ====
  
   * Providing the structure to run the model multiple times where each subsequent run uses updated variable settings.   * Providing the structure to run the model multiple times where each subsequent run uses updated variable settings.
concepts/views.1256602531.txt.gz · Last modified: 2009/10/27 00:15 by shona.weldon