Skip to content
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

Add general model evaluation recipes (for Changelog: authors: @axel-lauer, @hb326, @Paulinebonnet111, @LisaBock, @schlunma) #3421

Merged
merged 34 commits into from
Nov 30, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
b91c88b
snapshot 2023-09-05 recipe_iconeval_clouds_clim.yml
axel-lauer Sep 5, 2023
c27e2cc
Make variable grouping configurable in monitor diag
schlunma Sep 6, 2023
b6c3fa9
Fixed diag
schlunma Sep 6, 2023
9e29b62
snapshot 2023-09-06 - 001
axel-lauer Sep 6, 2023
6eff0b8
Merge branch 'update_monitor_with_refs' into add_iconeval_clouds_line…
axel-lauer Sep 6, 2023
a46b937
first draft version of recipe_iconeval_clouds_clim.yml
axel-lauer Sep 6, 2023
fdfa9ae
uncommented seasonal + diurnal cycle plots
axel-lauer Sep 6, 2023
9b103ac
first draft version of recipe_iconeval_clouds_clim_mapandprofileplots…
Sep 6, 2023
d79e555
first draft version of recipe_iconeval_clouds_clim_mapandprofileplots…
Sep 6, 2023
ff08620
Create icon folder
hb326 Sep 6, 2023
70e57e0
adding the basic icon evaluation recipe to the icon recipe folder
hb326 Sep 6, 2023
c71fb18
Update recipe_iconeval_clouds_clim_mapandprofileplots.yml
Paulinebonnet111 Sep 6, 2023
e159ef2
Update recipe_iconeval_basics.yml
hb326 Sep 6, 2023
fa74d10
added zonal mean precip plot
axel-lauer Oct 17, 2023
e9bedb6
Merge remote-tracking branch 'public/main' into add_basic_iconeval_re…
schlunma Nov 10, 2023
aed1301
Merge remote-tracking branch 'public/main' into add_iconeval_clouds_m…
schlunma Nov 10, 2023
7e874f6
Merge remote-tracking branch 'public/main' into add_iconeval_clouds_l…
schlunma Nov 10, 2023
a86907a
Merge branch 'add_iconeval_clouds_lineplots' into add_basic_iconeval_…
schlunma Nov 10, 2023
11cc024
Merge branch 'add_iconeval_clouds_mapandprofileplots' into add_basic_…
schlunma Nov 10, 2023
6b7b0bd
Adapted titles of existing recipes
schlunma Nov 10, 2023
d56487f
First draft of model evaluation recipes
schlunma Nov 10, 2023
c5fe9bb
Added general model evaluation recipes
schlunma Nov 13, 2023
f0c9f67
Added doc
schlunma Nov 13, 2023
a897581
Optimizied recipe syntax
schlunma Nov 13, 2023
729759a
Merge remote-tracking branch 'public/main' into model_eval_recipes
schlunma Nov 14, 2023
a64817c
Optimized recipes
schlunma Nov 14, 2023
2acc279
Added example plots to doc
schlunma Nov 14, 2023
86eff70
Merge remote-tracking branch 'public/main' into model_eval_recipes
schlunma Nov 14, 2023
cd6c5e2
Added further example plot
schlunma Nov 14, 2023
f79b4c6
Fix doc
schlunma Nov 14, 2023
9f69fde
Apply suggestions from code review
schlunma Nov 27, 2023
5b42843
Apply suggestions from code review
schlunma Nov 27, 2023
f664afd
Merge remote-tracking branch 'public/main' into model_eval_recipes
schlunma Nov 27, 2023
9830dd0
Improved doc
schlunma Nov 27, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions doc/sphinx/source/api/esmvaltool.diag_scripts.monitor.rst
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ Examples
--------

* :ref:`recipe_monitor`
* :ref:`recipe_model_evaluation`


Diagnostic scripts
Expand Down
12 changes: 9 additions & 3 deletions doc/sphinx/source/faq.rst
Original file line number Diff line number Diff line change
Expand Up @@ -113,9 +113,15 @@ a symbolic link to it so it gets picked up at every re-run iteration:
Can ESMValTool plot arbitrary model output?
===========================================

Recipe :ref:`recipe_monitor` allows for the plotting of any preprocessed model.
The plotting parameters are set through a yaml configuration file, and the
type of plots to be generated are determined in the recipe.
:ref:`recipe_model_evaluation` provides a set of recipes that can be used for a
basic climate model evaluation with observational data.
This is especially useful to get an overview of the general performance of a
simulation.

Furthermore, recipe :ref:`recipe_monitor` allows for the plotting of any
preprocessed model.
The plotting parameters are set through a yaml configuration file, and the type
of plots to be generated are determined in the recipe.

Moreover, recipe :ref:`recipes_psyplot_diag` and the corresponding diagnostic
:ref:`psyplot_diag.py <api.esmvaltool.diag_scripts.psyplot_diag>` provide a
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions doc/sphinx/source/recipes/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ large variety of input data.
.. toctree::
:maxdepth: 1

recipe_model_evaluation
recipe_monitor
recipe_psyplot
recipe_seaborn
Expand Down
98 changes: 98 additions & 0 deletions doc/sphinx/source/recipes/recipe_model_evaluation.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
.. _recipe_model_evaluation:

General model evaluation
========================

Overview
--------

These recipes and diagnostics provide a basic climate model evaluation with
observational data.
This is especially useful to get an overview of the performance of a
simulation.
The diagnostics used here allow plotting arbitrary preprocessor output, i.e.,
arbitrary variables from arbitrary datasets.


Available recipes and diagnostics
---------------------------------

Recipes are stored in `recipes/model_evaluation`

* recipe_model_evaluation_basics.yml
* recipe_model_evaluation_clouds_clim.yml
* recipe_model_evaluation_clouds_cycles.yml
* recipe_model_evaluation_precip_zonal.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).


User settings
-------------

It is recommended to use a vector graphic file type (e.g., SVG) for the output
format when running this recipe, i.e., run the recipe with the command line
option ``--output_file_type=svg`` or use ``output_file_type: svg`` in your
:ref:`esmvalcore:user configuration file`.
Note that map and profile plots are rasterized by default.
Use ``rasterize: false`` in the recipe to disable
this.


Recipe settings
~~~~~~~~~~~~~~~

A list of all possible configuration options that can be specified in the
recipe is given for each diagnostic individually (see links given for the
available diagnostics in the previous section).


Variables
---------

Any, but the variables' number of dimensions should match the ones expected by
each diagnostic (see links given for the available diagnostics in the previous
section).


Example plots
-------------

.. _fig_1:
.. figure:: /recipes/figures/model_evaluation/map_tas_MPI-ESM1-2-HR_Amon.jpg
:align: center
:width: 14cm

Global climatology of 2m near-surface air temperature.

.. _fig_2:
.. figure:: /recipes/figures/model_evaluation/map_swcre_MPI-ESM1-2-HR_Amon.jpg
:align: center
:width: 14cm

Global climatology of the shortwave cloud radiative effect (SWCRE).

.. _fig_3:
.. figure:: /recipes/figures/model_evaluation/timeseries_rtnt_ambiguous_dataset_Amon.jpg
:align: center
:width: 14cm

Time series of the global mean top-of-the-atmosphere net radiative flux.

.. _fig_4:
.. figure:: /recipes/figures/model_evaluation/variable_vs_lat_pr_Amon.jpg
:align: center
:width: 14cm

Zonal mean precipitation.

.. _fig_5:
.. figure:: /recipes/figures/model_evaluation/annual_cycle_clt_southerocean_Amon.jpg
:align: center
:width: 14cm

Annual cycle of Southern Ocean total cloud cover.
19 changes: 9 additions & 10 deletions doc/sphinx/source/recipes/recipe_monitor.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,19 +18,18 @@ Available recipes and diagnostics

Recipes are stored in `recipes/monitor`

* recipe_monitor.yml
* recipe_monitor_with_refs.yml
* recipe_monitor.yml
* recipe_monitor_with_refs.yml

Diagnostics are stored in `diag_scripts/monitor/`

* :ref:`monitor.py <api.esmvaltool.diag_scripts.monitor.monitor>`:
Monitoring diagnostic to plot arbitrary preprocessor output.
* :ref:`compute_eofs.py <api.esmvaltool.diag_scripts.monitor.compute_eofs>`:
Monitoring diagnostic to plot EOF maps and associated PC timeseries.
* :ref:`multi_datasets.py
<api.esmvaltool.diag_scripts.monitor.multi_datasets>`:
Monitoring diagnostic to show multiple datasets in one plot (incl.
biases).
* :ref:`monitor.py <api.esmvaltool.diag_scripts.monitor.monitor>`:
Monitoring diagnostic to plot arbitrary preprocessor output.
* :ref:`compute_eofs.py <api.esmvaltool.diag_scripts.monitor.compute_eofs>`:
Monitoring diagnostic to plot EOF maps and associated PC timeseries.
* :ref:`multi_datasets.py
<api.esmvaltool.diag_scripts.monitor.multi_datasets>`:
Monitoring diagnostic to show multiple datasets in one plot (incl. biases).


User settings
Expand Down
Loading