You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make a wrapper around spades call,with a new function name
I like option 2 or 3. It is too cumbersome to have to specify entirely new simList if only one parameter is different. Something like: experiment(simList, replication=10L, params=list(spreadProb=c(0.22,0.23), growthExponent=c(2,2.2))
(These parameters will have to be module specific, I am just being lazy here)
Would also work with something like: modules=list("fireSense", "fireBEACONs")
(That is not fully formed thought for modules, how does it know which modules to use... Does it need entire list of modules twice if there are two levels to the experiment? )
The function would do several things:
Create as many simLists as needed to do a fully factorial experiment, in the parameter example above: 4 simLists. Don't need new simLists for replicates.
Create subdirectories inside outputPath corresponding to factors. I think these should be flat, i.e. 1 level inside outputPath, not 2, but with names that identify the factorial identity
Create sub-sub directories for replicates. No deeper.
Pass these as new outputPath to each simList
Use a mechanism similar to raster package for parallel calculations. If raster::makeCluster (need to verify actual function name) has been run and created, then experiment() will automatically run using cluster. If not then it is serial running.
All file saving will be exactly as in the saving of each of the modules and outputs, only outputPath is unique.
Major first draft, with commit 02135d1
Needs more detailed documentation still. But it works for replication, plus full factorial experiments with parameters and modules.
I think there are 3 options:
spades()
spades
call,with a new function nameI like option 2 or 3. It is too cumbersome to have to specify entirely new simList if only one parameter is different. Something like:
experiment(simList, replication=10L, params=list(spreadProb=c(0.22,0.23), growthExponent=c(2,2.2))
(These parameters will have to be module specific, I am just being lazy here)
Would also work with something like:
modules=list("fireSense", "fireBEACONs")
(That is not fully formed thought for modules, how does it know which modules to use... Does it need entire list of modules twice if there are two levels to the experiment? )
The function would do several things:
outputPath
corresponding to factors. I think these should be flat, i.e. 1 level insideoutputPath
, not 2, but with names that identify the factorial identityoutputPath
to each simListraster::makeCluster
(need to verify actual function name) has been run and created, thenexperiment()
will automatically run using cluster. If not then it is serial running.outputPath
is unique.Thoughts? @achubaty @SteveCumming
The text was updated successfully, but these errors were encountered: