Skip to content

Variable derivation for ERA5 on-the-fly CMORizer #1806

@axel-lauer

Description

@axel-lauer

I ran into the problem of not being able to figure out how to derive variables (using more than 1 input variable) with the ERA5 on-the-fly CMORizer. In this concrete case, I would like to calculate the CMOR variable rsut (TOA Outgoing Shortwave Radiation), which is not readily available from ERA5. rsut needs to be calculated from the available ERA5 variables as

rsut = era5_toa_incident_solar_radiation - era5_top_net_solar_radiation

The problem is (as it seems) that it is not possible to have 2 different variables at the time the functions from cmor/_fixes/native6/era5.py are called.

I guess one possible solution could be to have all variables needed for the variable derivation in the ERA5 "raw" files and then follow a similar approach as @schlunma implemented for the on-the-fly CMORizer for EMAC. But I am not sure this is supported by era5cli we use to download ERA5 data and would probably make obtaining the ERA5 data more complicated.

@ESMValGroup/esmvaltool-coreteam would you have an idea how to address the variable derivation problem for ERA5 data?

Metadata

Metadata

Assignees

No one assigned

    Labels

    fix for datasetRelated to dataset-specific fix filesobservationsquestionFurther information is requestedvariable derivationRelated to variable derivation functions

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions