Check that the results for a model run are complete, and if not, which are missing
willu47 opened this issue · 4 comments
Add a function to the smif.data_layer.store.Store class which:
- given a model run name
- checks that all results present in the
available_results
method match those in the model configuration for each model in the system-of-systems in the model run - returns a list of missing information, or summary statistics
Parent issue #350
@willu47 just checking, by smif.data_handle.store.Store
you mean smif.data_layer.store.Store
?
This overlaps quite a lot with #351: work on #351 implemented canonical_expected_results
and canonical_available_results
, which are the expected and available results with all decision iterations collapsed down to 0
.
The reason for collapsing the decision iterations is that it is impossible to know (given the configuration) which output time steps will match to which decision iterations, so we simply have to ensure each time step exists in the output.
For this issue I propose a new method canonical_missing_results
such that
store.canonical_missing_results('name') + store.canonical_available_results('name') == store.canonical_expected_results('name')
This is now implemented, inc cli functionality and tests. I'll open a PR.
Closed by #360