Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
5 changes: 5 additions & 0 deletions .zenodo.json
Original file line number Diff line number Diff line change
Expand Up @@ -461,6 +461,11 @@
"affiliation": "DLR, Germany",
"name": "Debeire, Kevin",
"orcid": "0000-0001-6006-8750"
},
{
"affiliation": "BSC, Spain",
"name": "Ghosh, Supriyo",
"orcid": "0000-0003-0581-9907"
}
],
"description": "ESMValTool: A community diagnostic and performance metrics tool for routine evaluation of Earth system models in CMIP.",
Expand Down
5 changes: 5 additions & 0 deletions CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -457,6 +457,11 @@ authors:
family-names: Debeire
given-names: Kevin
orcid: "https://orcid.org/0000-0001-6006-8750"
-
affiliation: "BSC, Spain"
family-names: Ghosh
given-names: Supriyo
orcid: "https://orcid.org/0000-0003-0581-9907"

cff-version: 1.2.0
date-released: 2026-07-28
Expand Down
11 changes: 4 additions & 7 deletions doc/sphinx/source/input.rst
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,10 @@ as used in the various

.. note::

CORDEX support is still
work in progress.
Contributions, in the form of
:ref:`pull request reviews <reviewing>` or
:ref:`pull requests <esmvalcore:contributing>`
are most welcome. We are particularly interested in contributions from
people with good understanding of the CORDEX project and its standards.
CORDEX support is available for selected domains and variables.
An example workflow for CORDEX-CMIP5 EUR-11 models is described in the
:ref:`perfmetrics documentation <nml_perfmetrics>`.
Contributions improving CORDEX data handling and coverage are welcome.

This section provides an introduction to getting (access to) climate data
for use with ESMValTool.
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
36 changes: 36 additions & 0 deletions doc/sphinx/source/recipes/recipe_perfmetrics.rst
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ Recipes are stored in recipes/
* recipe_perfmetrics_CMIP5.yml
* recipe_perfmetrics_CMIP5_4cds.yml
* recipe_perfmetrics_land_CMIP5.yml
* recipe_perfmetrics_CORDEX-CMIP5.yml

Diagnostics are stored in diag_scripts/perfmetrics/

Expand All @@ -49,6 +50,8 @@ Diagnostics are stored in diag_scripts/perfmetrics/
different options for normalization.
* collect.ncl: collects and plots the metrics previously calculated by
cycle_latlon.ncl.
* ``portrait_plot.py``: portrait plot of relative RMSE (used by
``recipe_perfmetrics_CORDEX-CMIP5.yml``; see :ref:`recipe_portrait`)

User settings in recipe
-----------------------
Expand Down Expand Up @@ -182,6 +185,16 @@ Variables
* et (land, monthly mean, longitude latitude time)
* rlus, rlds, rsus, rdsd (atmos, monthly mean, longitude latitude time)

#. recipe_perfmetrics_CORDEX-CMIP5.yml

* clivi, clt, prw, rlut, rsus (atmos, daily mean, EUR-11)
* lwp (atmos, daily mean, EUR-11; derived from ``clwvi`` and ``clivi`` for CORDEX
models, native ``lwp`` for the ESACCI-CLOUD reference)
* sic (sea ice, daily mean, EUR-11)
* snw (land, daily mean, EUR-11)
* lst, sst (CORDEX ``ts`` with land/sea masking; compared to ESACCI-LST / ESACCI-SST,
daily mean, EUR-11)

Observations and reformat scripts
---------------------------------

Expand Down Expand Up @@ -222,6 +235,21 @@ for downloading and processing instructions.
* Landschuetzer2016 (fgco2 - esmvaltool/cmorizers/data/formatters/datasets/landschuetzer2016.py)
* MTE (gpp - esmvaltool/cmorizers/data/formatters/datasets/mte.py)

#. recipe_perfmetrics_CORDEX-CMIP5.yml

* ESACCI-CLOUD (clivi, clt, lwp, rlut, rsus -
esmvaltool/cmorizers/data/formatters/datasets/esacci_cloud.py)
* ESACCI-WATERVAPOUR (prw -
esmvaltool/cmorizers/data/formatters/datasets/esacci_watervapour.py)
* ESACCI-SEAICE (sic -
esmvaltool/cmorizers/data/formatters/datasets/esacci_seaice.py)
* ESACCI-SNOW (snw -
esmvaltool/cmorizers/data/formatters/datasets/esacci_snow.py)
* ESACCI-LST (ts -
esmvaltool/cmorizers/data/formatters/datasets/esacci_lst.py)
* ESACCI-SST (tos -
esmvaltool/cmorizers/data/formatters/datasets/esacci_sst.py)

References
----------

Expand Down Expand Up @@ -273,3 +301,11 @@ Example plots
A diagonal split of a grid square shows the relative error with respect to the reference data set
(lower right triangle) and the alternative data set (upper left triangle).
White boxes are used when data are not available for a given model and variable.

.. figure:: /recipes/figures/perfmetrics/cordex_cmip5_portrait.png
:width: 70%
:align: center

Relative RMSE (centered median normalization) of CORDEX-CMIP5 EUR-11 models
against ESA CCI reference data for 2003–2005, produced by
``recipe_perfmetrics_CORDEX-CMIP5.yml`` using ``portrait_plot.py``.
4 changes: 4 additions & 0 deletions esmvaltool/config-references.yml
Original file line number Diff line number Diff line change
Expand Up @@ -254,6 +254,10 @@ authors:
name: Gettelman, Andrew
institute: NCAR, USA
orcid: https://orcid.org/0000-0002-8284-2599
ghosh_supriyo:
name: Ghosh, Supriyo
institute: BSC, Spain
orcid: https://orcid.org/0000-0003-0581-9907
gier_bettina:
name: Gier, Bettina
institute: University of Bremen, Germany
Expand Down
6 changes: 5 additions & 1 deletion esmvaltool/diag_scripts/monitor/multi_datasets.py
Original file line number Diff line number Diff line change
Expand Up @@ -786,7 +786,11 @@ def plot_settings(self) -> dict[str, dict[str, Any]]:
},
"map": {
"function": partial(self.create_2d_plot, "map"),
"coords": (["longitude", "latitude"],),
"coords": (
["longitude", "latitude"],
["grid_longitude", "grid_latitude"],
["projection_x_coordinate", "projection_y_coordinate"],
),
"provenance": {
"authors": ["schlund_manuel"],
"caption": "Map plot of {long_name} of dataset {alias}.",
Expand Down
2 changes: 1 addition & 1 deletion esmvaltool/diag_scripts/portrait_plot.py
Original file line number Diff line number Diff line change
Expand Up @@ -402,7 +402,7 @@ def plot(cfg, data):
axes_pad=0.1,
)
# remap colorbar to 10 discrete steps
cmap = mpl.cm.get_cmap(cfg["plot_kwargs"]["cmap"], 10)
cmap = plt.get_cmap(cfg["plot_kwargs"]["cmap"], 10)
cfg["plot_kwargs"]["cmap"] = cmap
for i in range(group_count):
group = data.isel({cfg["group_by"]: i})
Expand Down
Loading