Open MattReimer opened 7 years ago
In order to automate this I need to know what the CSV file will be and how we will build it. i.e: how many combinations of parameters do we want to run per visit of NREI?
For Habitat we Code the simulations we want to run so we can version them. Each simulation corresponds to a species/lifestage combination.
like so:
{ id: 1, name: 'FIS - ch_jv', species: 'Chinook', lifestage: 'Juvenile', needD50: true },
{ id: 2, name: 'FIS - ch_sp', species: 'Chinook', lifestage: 'Spawner', needD50: true },
{ id: 3, name: 'FIS - st_jv', species: 'Steelhead', lifestage: 'Juvenile', needD50: true },
{ id: 4, name: 'FIS - st_sp', species: 'Steelhead', lifestage: 'Spawner', needD50: true },
{ id: 5, name: 'HSI - mr_ch_jv_gm', species: 'Chinook', lifestage: 'Juvenile', needD50: false },
{ id: 6, name: 'HSI - mr_ch_sp_gm', species: 'Chinook', lifestage: 'Spawner', needD50: true },
{ id: 7, name: 'HSI - mr_st_jv_gm', species: 'Steelhead', lifestage: 'Juvenile', needD50: false },
{ id: 8, name: 'HSI - mr_st_sp_gm', species: 'Steelhead', lifestage: 'Spawner', needD50: true },
],
So how's it going to work for NREI? For each visit how many runs of NREI are we expecting to do?
@ewfhc ok. So I'm going to use this CSV File as my base for running NREI. At present it only has a single row but we can add more as necessary.
Hey guys. As far as making one of these .csv files by hand, could we just use the .csv I provded in the NREI example files as a starting point? My impression is that we could just add a column to this table for flow (and maybe remove some other variables (if @mattreimer has made them external to the input lookup table) and we would be set?
Just popped over to the AWS Automation Thoughts card and saw the message about deciding what fish/drift/temperature combos to run. Unless we want to make a change, those values are already hard-coded into the script (unless those were pulled out by @mattreimer to live external to the code). Regardless, it seems we can just use the values that were in there. Unless we are trying to change those? But I don't think we are.
Hey guys,
Apologies, I was out on holiday M-W.
Two thoughts: 1. What Pete said is spot-on. Basically, within one running of the code, it simulates ranges of fish sizes, temperatures, and drift values. So... you would want to do that for each visit-flow combo.
@ewfhc I feel like the easiest way to do this is to do one by hand and we can look at it.
Would you be willing to give the combinations/permutations some thought and create a complete NREI run for one visit-flow? I don't think you need to run it, just let us see the initial CSV and R files you use with all the initial conditions.
@peteramchugh space is cheap(ish) but processing time is really what we care about. NREI takes a long time and uses a lot of disk space. The storage itself is less of a problem than the time it takes to generate and the network time to move it around.
I feel like we should start with the smallest set we can get away with and scale up.
I'm going to defer to EWall on this one, but my assumption is that for each visit-flow combo, results will be generated for a factorial combination of a range of fish sizes (size = species here), a range of temperatures, and a range of drift densities. Then, the output will be preserved for visit-flow-size-temp-drift combos for end users/consumers to harvest...
On an unrelated note, it sounds like we're going to do some drilling into the question of 'what drift should I use?' as an exercise led by Nick Weber. Maybe we can whittle the range down for some basins (unless space is free, then include/post-process at user stage). Something similar may then be in the works using Kris McNyset's temp model. Useful things to know, but not necessarily pertinent to this conversation.
Sounds good