-
Notifications
You must be signed in to change notification settings - Fork 38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Multi model statistics: missing files for individual models #975
Comments
Mistral being super slow today, I haven't been able to create an up to date environment... Mine is about one week old... |
I'm pretty sure this was introduced in #949: The old version of the cube added all products to the output of ESMValCore/esmvalcore/preprocessor/_multimodel.py Lines 390 to 393 in 7d82996
The new version does not: ESMValCore/esmvalcore/preprocessor/_multimodel.py Lines 368 to 379 in 0fb657d
|
Good spot! The behaviour shouldn't have changed like this, but also I think maybe we shouldn't change it back. Let me explain. #949 is actually working towards support for an ensemble statistics preprocessor. We first implemented all of this in #673 but then figured it had become too big and we wanted to split it up in smaller tasks. Hence I copied some of the changes to #949. At this point it was not necessary to change the behaviour, and I should have spotted that. However, when we continue towards the ensemble stats, we need this behaviour to change. See for example this use case. If you, at some point in the future, want to combine multimodel and ensemble statistics in a single preprocessor (e.g. first compute ens means, then multimodel between the ensemble means), you don't want to pass the original products to multimodel as well. So a preprocessor that contains multimodel should only return multimodel products. An alternative way to get the output from the original cubes as well is to split the preprocessor: preprocessors:
everything_else: &everything_else
area_statistics: ...
regrid_time: ...
multimodel:
<<: *everything_else
multi_model_statistics
variables:
tas_all_cubes:
preprocessor: everything_else
tas_mmstats:
preprocessor: multimodel Do you know which recipes are affected by this? And do you agree this is the better solution in the long run? Then the quesion is: should we change it back for now and then change it again in the future, or leave it like this, document the changes in the changelog, and make a PR to fix the affected recipes? @remi-kazeroni |
@Peter9192 As your suggestion means that we would have to preprocess and regrid all models twice for these diagnostics and first of all, adjust them all to this modification, I would suggest to add an option to the 'multi_model_statistics' preprocessor. The default could be the old version as used by several diagnostics and the switch could be to supress the additional output of single models. And please check the next time more carefully how new features affect existing diagnostics! Sorry, but I need the old feature as soon as possible because I have to create the new IPCC figures right now! |
Here's a fix: #978 @LisaBock @remi-kazeroni can you see if this solves your problems? I didn't test it thoroughly yet as I get the impression you want it sooner rather than later. |
Describe the bug
When using the
multi_model_statistics
preprocessor step, thepreproc
directory contains only the global file for multi model statistics. The files for each datasets are missing.Note that everything seems fine with the branch
release_2.1
. We should aim at fixing that before the next release @ESMValGroup/esmvaltool-coreteamPlease attach
run
directory in the output directorymain_log_debug.txt
file, this can also be found in therun
directory in the output directoryrecipe_test_mmm.yml.txt
main_log_debug.txt
The text was updated successfully, but these errors were encountered: