Move EMODTask sweeping methods into iTask OR a mid-level Task #1889
Replies: 2 comments
-
@ckirkman-IDM Good idea. We can't do ITask because it assumes no config. We might be able to make an abstract version of this method between though. Like ISweepableTask or something that has to implement said method. That at least allows us at the core to stay oblivious to config at the ITask level. For other models, I think we need better documentation. There are a few routes to go.
For your suggest, we could add that ISweepableTask to JSONConfiguredBaseTask and then also EMODTask. |
Beta Was this translation helpful? Give feedback.
-
@devclinton @ckirkman-IDM Current idmtools-Calibra doesn't have map_replicates_callback and CalibManager has itself own-defined run_number method. Therefore there is no dependency on EMODTask (EMODTask.set_parameter_sweep_callback) at all. We don't need to change anything. |
Beta Was this translation helpful? Give feedback.
-
The new Light EMOD (LEMOD) python model (which is not EMOD) uses the following call:
... which requires having emodpy installed to load. This is not elegant.
I propose we move set_parameter_sweep_callback and related parameter read/write calls that are not EMOD-specific to an intermediate Task class, e.g. ModelTask, so that non-EMOD models do not need emodpy installed/loaded.
Setting the estimate to 1 assuming that EMODTask has been pretty well vetted and this is largely a cut-and-paste job. Any complications should come from deciding if any new tests are needed or if they should be jumbled around, too.
Beta Was this translation helpful? Give feedback.
All reactions