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

Collection of CMIP7 REF recipes #3824

Open
axel-lauer opened this issue Nov 27, 2024 · 5 comments
Open

Collection of CMIP7 REF recipes #3824

axel-lauer opened this issue Nov 27, 2024 · 5 comments
Assignees

Comments

@axel-lauer
Copy link
Contributor

axel-lauer commented Nov 27, 2024

Collection of CMIP7 REF recipes

This issue is intended as an overview on recipes to be used for CMIP7 REF (rapid evaluation framework). The following recipes have been implemented so far:

@bouweandela
Copy link
Member

@axel-lauer @hb326 Apart from the recipe mentioned above, is it already clear which recipes will go into the initial version of the REF?

@hb326
Copy link
Contributor

hb326 commented Dec 18, 2024

@bouweandela: the diagnostics are fixed now (find the list here; there is only a little bit of wiggleroom left about what can be added at this point to the list), but it is not defined yet which evaluation package will actually calculate which diagnostic. For the first instance of the REF the we kind of decided that each diagnostic/metric will only be calculated by ONE of the packages, but how the diagnostics will be distributed between the four packages is not clear yet (and honestly, I don't really know who will decide it...). I think that ILAMB will most likely calculate all the land diagnostics, IOMB will calculate most likely most of the ocean diagnostics (although ESMValTool could help here), PMP will most likely calculate some of the atmospheric diagnostics, and then ESMValTool also some of the atmospheric diagnostics.
It is, however, clear that ESMValTool is the only package that can calculate most of the Earth System metrics, and so these will definitley need to go into recipes.

  • @schlunma is working on coding TCRE right now (as far as I am aware).

  • We do not have a diagnostic for ZEC yet, so this needs to be coded

  • We kind of thought about adding the diagnostics for climate drivers from the impacts and adaptation theme to ESMValTool (@rswamina has the most info about this)

  • We also have the diagnostics for the cloud-relevant variables (almost) ready (right, @axel-lauer and @LisaBock?), so they could be packed into a recipe

  • I had a chat with one of the CORDEX organizers in Paris yesterday about providing regional analyses of some of the variables (where it would make sense) because that's what the CORDEX community would need. For that we would need the CORDEX shape file of the regions, but then it should be easy enough to calculate the, for example, atmospheric diagnostics on the CORDEX regions. We will have to check it PMP will be able to do this as well since PMP will probably provide many of the atmospheric diagnostics and metrics.

@bouweandela
Copy link
Member

bouweandela commented Dec 18, 2024

Thanks for the update!

I don't really know who will decide it

I suspect that this may be up to the REF development team. To facilitate that discussion, it would be useful to know which diagnostics are already available in ESMValTool and which ones are planned in the very near future. To make this a bit more concrete, I copied the table and added three columns to clarify the current status. @hb326 Do you think you could fill those out?

Diagnostic Theme Provided by ESMValTool? [yes/no/planned] Name of recipe or link to issue/pull request contact person
Antarctic annual mean/Arctic September rate of  sea ice area (SIA)  loss per degree warming (dSIA/dGMST) Oceans and sea ice
Atlantic Meridional Overturning Circulation Oceans and sea ice
ENSO diagnostics (lifecycle/ seasonality/ teleconnections) Oceans and sea ice planned There are some ENSO diagnostics in monitor/recipe_monitor.yml, recipe_cvdp.yml and ecipe_combined_indices.yml, but we might need more/different ones? @rbeucher (or were the planned ENSO diagnostics for atmosphere only?)
Sea surface temperature (SST)/Sea surface salinity (SSS) bias Oceans and sea ice diagnostic: yes, recipe: planned? This can be done with the existing diagnostic monitor/multi_datasets.py . I did a test recipe based on recipe_monitor_with_refs.yml to use SST (tos) and SSS(sos), which probably needs some refinement, should I make a branch for it? In addition, there is recipe_ipccwg1ar6ch3_ocean.yml with ipcc_ar6/model_bias.ncl, which is not merged into ESMValTool main but is part of the AR6 repository. I did not use it, because I was planning to compare one model and this needs several to calculate a multi-model mean (and it is in NCL) @katjaweigel @LisaBock (?) @ledm (?)
Ocean heat content (OHC) Oceans and sea ice
Antarctic/Arctic sea ice area seasonal cycle Oceans and sea ice yes https://github.com/ESMValGroup/ESMValTool/blob/ref_sea_ice_extent/esmvaltool/recipes/ref/recipe_ref_siextent_seasonal.yml (requires https://github.com/ESMValGroup/ESMValCore/tree/fix_siextent) @axel-lauer
Soil carbon Land and land ice
Gross primary production Land and land ice
Runoff Land and land ice
Surface soil moisture Land and land ice @lukruh (?)
Net Ecosystem Exchange Land and land ice
Leaf area index Land and land ice
Snow cover Land and land ice
Annual cycle and seasonal mean of multiple variables Atmosphere yes can be done with monitoring / benchmarking diagnostics @axel-lauer
Radiative and heat fluxes at the surface and TOA Atmosphere
Climate variability modes (e.g., ENSO, MJO, Extratropical modes of variability, monsoon) Atmosphere partly planned There are some (nino3.4 and 3; NAO (DJF), SAM (JJA) in monitor/recipe_monitor.yml and nino3.4 + others in recipe_cvdp.yml and Nino3; 3.4;4 NAO and SOI in recipe_combined_indices.yml, but we might need more/different ones? @rbeucher (ENSO is planned, right?)
E-P (evaporation – precipitation) Atmosphere
Double ITCZ Atmosphere
Cloud Radiative Effects Atmosphere yes e.g. monitoring diagnostics @axel-lauer
Scatterplots of two cloud-relevant variables (specific regions of the globe: with specific cloud regimes) Atmosphere yes should be doable with diagnostic seaborn.py @schlunma
Equilibrium climate sensitivity (ECS) Earth System yes recipe_ecs.yml @schlunma
Transient climate response (TCR) Earth System yes recipe_tcr.yml @schlunma
Transient climate response to cumulative emissions of carbon dioxide (TCRE) Earth System planned @schlunma
Zero Emissions Commitment (ZEC) Earth System planned TBD
Historical changes in climate variables (time series, trends) Earth System yes should be doable with diagnostic monitor/multi_datasets.py @schlunma
High Amplitude Rossby Waves Impacts and Adaptation
Internal Variability or ensemble spread within individual models (focused on precipitation and surface temperature) Impacts and Adaptation should be possible with e.g. IPCC AR6 diagnostics (https://github.com/ESMValGroup/ESMValTool/blob/main/esmvaltool/recipes/ipccwg1ar6ch3/recipe_ipccwg1ar6ch3_atmosphere.yml)
Evaluation of key climate variables at Global Warming Levels Impacts and Adaptation (yes, I guess) e.g. tas, pr, ta / ua hus (e.g. zonal means)
Climate drivers for fire (Fire burnt area, fire weather and fuel continuity) Impacts and Adaptation

@bouweandela
Copy link
Member

bouweandela commented Dec 20, 2024

seasonal cycle of the NH sea ice extent (requires ESMValCore update https://github.com/ESMValGroup/ESMValCore/tree/fix_siextent): https://github.com/ESMValGroup/ESMValTool/blob/ref_sea_ice_extent/esmvaltool/recipes/ref/recipe_ref_siextent_seasonal.yml

@axel-lauer and @flicj191 The work above seems to have some overlap with the work in #3607. Maybe it would be good if you could have a look together to avoid doing the same thing twice? And then there is also the existing NCL based recipe_seaice.yml, but I guess you're aiming to replace that one with a newer Python based recipe?

@flicj191
Copy link
Contributor

flicj191 commented Jan 8, 2025

Thanks for this, I had a look and #3607 doesn't calculate the extent through the derive method, just with preprocessors so I can check this more and maybe implement that way, though the output and plots are different. I haven't tried using the NCL based one though but not sure if its too worthwhile right now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants