RSGInc / SOABM

ODOT Southern Oregon ABM
https://github.com/RSGInc/SOABM/wiki
6 stars 5 forks source link

SWIM external model #55

Closed bettinardi closed 5 years ago

bettinardi commented 6 years ago

We need to change the run of the SWIM external model, so that there is a prep step that sources in the standalone SWIM external model functions.

The issue is that we have updated / corrected / improved the SWIM external model code for OSUM, and we want to implement it in the ABM, but we don't want to have an ABM script and an OSUM script, we want the functions script to be the same for all our uses.

One solution might be to store the SWIM external model code in the dependencies folder so that there can be an easy pointer to sourcing that script.

Then there would be a script in the scripts folder specific to the ABM operation that setup for the external model files, sourced in the functions, ran the functions, and then saved everything in omx format.

The important part here is that the functions need to be brought out into a separate script that is developed outside of the ABM process, like an R library.

bettinardi commented 6 years ago

I just noticed that this is also captured in #51, but it's spelled out better here, and #51 is really specific to dll, so I'm leaving both issues up.

bstabler commented 6 years ago

There is a new External Model page in the wiki

bettinardi commented 5 years ago

As I am updating the External model page in the wiki, I am reminded that the model year is currently hard coded in the externalModel_SWIM.r file (line 50). When this issue is addressed, we need to find a cleaner location (like maybe a properties file or similar), where the user will specify the model year.

bettinardi commented 5 years ago

There's actually a handful of SWIM external model parameters that need to be brought up to a properties file - https://github.com/RSGInc/SOABM/wiki/External-Model#external-model-parameters

bettinardi commented 5 years ago

Finished updating the External model page in the wiki. At the end I just noticed that we have had a basic parameter to the SWIM model set incorrectly this whole time. Not sure how much it will impact results but it should have an effect.

Line 49 is set as 1 - it needs to be set as 4. We need to make sure that as this code is updated that this property - externalDisaggregateMethodNumber - is properly pulled out (along with the other properties) and set to 4.

binnympaul commented 5 years ago

SWIM is now run via a shell script and important parameters such as model year are to be specified in a CSV settings file.