-
Notifications
You must be signed in to change notification settings - Fork 145
Adding basic sanity checks #4120
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
Merged
Merged
Changes from 51 commits
Commits
Show all changes
58 commits
Select commit
Hold shift + click to select a range
e725f43
first draft recipe
axel-lauer 4c2b494
Allowed vlines in monitoring line plots
schlunma e542e02
added horizontal lines
axel-lauer f988228
Merge branch 'monitoring_vlines' into sanity_checks_basic
axel-lauer 73f9d64
update recipe_monitor_sanity_checks.yml
axel-lauer f2a21a0
added first drafts of recipes to create range of reasonable values (C…
axel-lauer 607de4a
update recipes
axel-lauer af33afc
added tas to sanity recipes
axel-lauer 7f5fea0
bugfix precip units
axel-lauer 6a10183
Merge remote-tracking branch 'public/main' into sanity_checks_basic
schlunma bcea918
pre-commit
schlunma 1e68956
update recipe_monitor_sanity_checks.yml
axel-lauer 9194024
Merge branch 'sanity_checks_basic' of github.com:ESMValGroup/ESMValTo…
axel-lauer ec8aac9
Add global mass checks (#3978)
LisaBock 54ef2ab
Merge branch 'sanity_checks_basic' of github.com:ESMValGroup/ESMValTo…
axel-lauer 7f009aa
Additional variables for sanity check and add Kirsten Schulze as auth…
kirsten-schulze 89f63f4
Merge branch 'sanity_checks_basic' of github.com:ESMValGroup/ESMValTo…
axel-lauer af8a2a8
update recipe_monitor_sanity_checks.yml
axel-lauer fbc1b45
Add variables to sanity check recipe (#3979)
giuliacast f064d54
update recipe_monitor_sanity_checks.yml
axel-lauer cbca644
updated senity check docu
axel-lauer 13f7195
Merge remote-tracking branch 'public/main' into sanity_checks_basic
LisaBock ec4a5c2
Merge remote-tracking branch 'public/main' into sanity_checks_basic
LisaBock c86c75e
enhance calculation of ranges
LisaBock 49395b8
add renges from obs
LisaBock f3d9fae
automatic fixes
LisaBock 1e205b8
seperate doc and recipe
LisaBock 3639e10
small adjustments
LisaBock be8960d
automatic fixes
LisaBock 5ed573b
rm cmip6 recipe
LisaBock 589471b
small fixes
LisaBock 40f20ed
fix docu
LisaBock ff3d28f
change recipe name
LisaBock 3e897a1
Update doc/sphinx/source/recipes/recipe_sanity_checks.rst
LisaBock 79aeb77
Update doc/sphinx/source/recipes/recipe_sanity_checks.rst
LisaBock 442b9f3
Update doc/sphinx/source/recipes/recipe_sanity_checks.rst
LisaBock 1837f85
Update doc/sphinx/source/recipes/recipe_sanity_checks.rst
LisaBock 6eae0e1
Update doc/sphinx/source/recipes/recipe_sanity_checks.rst
LisaBock 427d283
Update doc/sphinx/source/recipes/recipe_sanity_checks.rst
LisaBock becc59f
add diagnostic to doc
LisaBock ca40afc
Merge branch 'sanity_checks_basic' of github.com:ESMValGroup/ESMValTo…
LisaBock 44742dd
solve Axel's comments
LisaBock c29a18f
clean recipe
LisaBock 00daf17
adding captions and cleaning
LisaBock a525203
modify multi-model pp
LisaBock 571f011
automated fixes
LisaBock 56b2b60
Update esmvaltool/recipes/sanity_checks/recipe_sanity_checks.yml
LisaBock 504cf50
update figure caption
LisaBock c92e153
rm annual_mean_kwargs
LisaBock c6a8f44
Merge remote-tracking branch 'public/main' into sanity_checks_basic
LisaBock 3948875
update captions
LisaBock d8f0eb9
Update esmvaltool/recipes/sanity_checks/recipe_create_ranges_obs.yml
LisaBock 1fe6250
Update esmvaltool/recipes/sanity_checks/recipe_create_ranges_obs.yml
LisaBock 2c80d93
Update doc/sphinx/source/recipes/recipe_sanity_checks.rst
LisaBock e8df4f4
Merge branch 'main' into sanity_checks_basic
LisaBock e027d05
automated fixes
LisaBock f594a78
Merge branch 'main' into sanity_checks_basic
jlenh e969ec3
Merge branch 'main' into sanity_checks_basic
jlenh File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file added
BIN
+23.5 KB
.../timeseries_ambiguous_variable_group_MPI-ESM1-2-LR_Amon_historical_r1i1p1f1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,81 @@ | ||
| .. _recipe_santiy_checks: | ||
|
|
||
| Sanity checks | ||
| ============= | ||
|
|
||
| Overview | ||
| -------- | ||
|
|
||
| The sanity check recipe (``recipe_sanity_checks.yml``) is intended to perform | ||
| some basic sanity checks for new simulations during model development. A subset of variables | ||
| is selected to check whether the model is performing in reasonable way. The recipe plots global | ||
| monthly means as well as maximum and minimum across all individual grid cells for each time step. | ||
| This can be used to check for example for negative mass concentrations occuring at any grid cell | ||
| at any time (minimum is less than zero) or whether individual grid cells exceed physically reasonalble | ||
| values (e.g. total cloud fraction greater than 100%). | ||
| The global monthly means can be compared to the minimum and maximum values found in reference | ||
| datasets (observations, reanalyses) across all months and all reference datasets. The "reasonable" | ||
| limits are shown as red lines. A good model simulations would be expected to not exceed these | ||
| limits at any time. The minimum and maximum global averages across all months and all reference | ||
| datasets is calculated with ``recipe_create_ranges_obs.yml``. | ||
|
|
||
| Available recipes and diagnostics | ||
LisaBock marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| --------------------------------- | ||
|
|
||
| Recipes are stored in `recipes/sanity_checks` | ||
|
|
||
| * recipe_sanity_checks.yml | ||
| * recipe_create_ranges_obs.yml | ||
|
|
||
| .. note:: | ||
|
|
||
| The time frequency used in ``recipe_create_ranges_obs.yml`` (monthly, daily, etc. values) to | ||
| calculate "reasonable" minimum and maximum values must match the time frequency used in | ||
| the sanity check recipe (``recipe_sanity_checks.yml``). | ||
|
|
||
| Diagnostics are stored in `diag_scripts/monitor/` | ||
|
|
||
| * :ref:`multi_datasets.py | ||
| <api.esmvaltool.diag_scripts.monitor.multi_datasets>`: | ||
| Monitoring diagnostic to show multiple datasets in one plot (incl. biases). | ||
|
|
||
| Variables: | ||
| ---------- | ||
|
|
||
| * ps (air mass) | ||
| * qep (moisture flux) | ||
| * prw (water vapor mass) | ||
| * asr | ||
| * clivi | ||
| * clt | ||
| * hfls | ||
| * hfss | ||
| * lwcre | ||
| * lwp | ||
| * netcre | ||
| * pr | ||
| * prc | ||
| * prw | ||
| * rlds | ||
| * rlut | ||
| * rtnt | ||
| * rsds | ||
| * rsut | ||
| * swcre | ||
| * tas | ||
| * tauu | ||
| * tauv | ||
|
|
||
| Example plots | ||
| ------------- | ||
|
|
||
| .. _fig_sanity_check_clt: | ||
| .. figure:: /recipes/figures/sanity_checks/timeseries_ambiguous_variable_group_MPI-ESM1-2-LR_Amon_historical_r1i1p1f1.png | ||
| :align: center | ||
| :width: 14cm | ||
|
|
||
| Time series of monthly global average (solid line) and minimum / maximum | ||
| (dashed lines) total cloud cover from MPI-ESM1-2-LR. The red horizontal lines | ||
| show the monthly minimum and maximum global average across multiple reference | ||
| dataset (here: ESACCI-CLOUD, CLARA-AVHRR, PATMOS-x, MODIS, ERA5) calculated | ||
| with recipe_create_ranges_obs.yml. Plot created with recipe_sanity_checks.yml. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -30,6 +30,12 @@ authors: | |
| email: [email protected] | ||
| github: diegokam | ||
| orcid: | ||
| castellani_giulia: | ||
| name: Castellani, Giulia | ||
| institute: University of Bremen | ||
| email: [email protected] | ||
| github: giuliacast | ||
| orcid: https://orcid.org/0000-0001-6151-015X | ||
| debeire_kevin: | ||
| name: Debeire, Kevin | ||
| institute: DLR, Germany | ||
|
|
@@ -527,6 +533,11 @@ authors: | |
| institute: DLR, Germany | ||
| orcid: | ||
| github: ellensarauer | ||
| schulze_kirsten: | ||
| name: Schulze, Kirsten | ||
| institute: Uni Bremen, Germany | ||
| orcid: | ||
| github: kirsy05 | ||
| serva_federico: | ||
| name: Serva, Federico | ||
| institute: CNR, Italy | ||
|
|
||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.