Hi all,
I’m running into an inconsistency in GRIB2 parameter naming when remapping ICON forcing data, and I’d like to understand why.
Setup 1: ICONTOOLS-2.7.3 on HoreKa
Modules loaded:
module load compiler/intel/2025.1_llvm lib/hdf5/1.14-serial lib/netcdf/4.9-serial cdo-2.5.4
which resolves to:
1) compiler/intel/2025.1_llvm 2) lib/netcdf/4.9-serial 3) eccodes-2.41.0 4) lib/hdf5/1.14-serial 5) libaec-1.1.3 6) cdo-2.5.4
Running cdo -sinfov iefff... on the forcing data gives parameter names like:
C_T_LK, FR_ICE, H_ML_LK, T_BOT_LK, T_MNW_LK, T_WML_LK, W_SO_ICE, FR_LAND, H_SNOW, SNOAG, HSNOW_MAX, Z0, SMI, EVAP_PL, ALB_SEAICE, QV_S, T_G, W_I, FRESHSNW, RHO_SNOW, T_SNOW, W_SNOW, H_ICE, T_ICE, T_SO, W_SO, P, HHL, QC, QI, QR, QS, QV, T, U, V, W
Setup 2: ICONTOOLS-2.8.3 on HoreKa2
Modules loaded (EasyBuild)
module add gompi/2025b HDF5/1.14.6-gompi-2025b netCDF/4.9.3-gompi-2025b netCDF-Fortran/4.6.2-gompi-2025b ecCodes/2.43.0-gompi-2025b CDO/2.5.3-gompi-2025b CMake/3.31.8-GCCcore-14.3.0 UDUNITS/2.2.28-GCCcore-14.3.0
which resolves to:
1) GCCcore/14.3.0 2) netCDF/4.9.3-gompi-2025b 3) ecCodes/2.43.0-gompi-2025b 4) HDF5/1.14.6-gompi-2025b 5) libaec/1.1.4-GCCcore-14.3.0 6) CDO/2.5.3-gompi-2025b, etc ...
Running the same cdo -sinfov iefff... on the same forcing data gives different names for the same fields
C_T_LK, ci, H_ML_LK, lblt, T_MNW_LK, T_WML_LK, W_SO_ICE, lsm, sde, snoag, HSNOW_MAX, fsr, SMI, EVAP_PL, ALB_SEAICE, QV_S, T_G, cnwat, FRESHSNW, rsn, T_SNOW, sd, sithick, sit, T_SO, W_SO, pres, HHL, clwmr, QI, rwmr, snmr, q, t, u, v, wz**
My remapping build configuration on HoreKa2**
In do_configure:
module load intel-compilers/2025.2.0 impi/2021.16.1-intel-compilers-2025.2.0 HDF5/1.14.6-iimpi-2025b netCDF/4.9.3-iimpi-2025b netCDF-Fortran/4.6.2-iimpi-2025b ecCodes/2.43.0-iimpi-2025b iimkl/2025b CMake/3.31.8-GCCcore-14.3.0 libunwind/1.8.2-GCCcore-14.3.0 CUDA/13.2.0
In the remapping script itself:
module add intel-compilers/2025.2.0 impi/2021.16.1-intel-compilers-2025.2.0 HDF5/1.14.6-iimpi-2025b netCDF/4.9.3-iimpi-2025b ecCodes/2.43.0-iimpi-2025b
When I keep the old (all-caps) parameter names in my remapping script, I get:
mo_remap_io::get_varID: Variable W not found!
Questions
-
Should I simply rename the GRIB variable names in my remapping script to match the new (lowercase/short) names shown on HoreKa2?
-
Is this a genuine inconsistency between the module/library versions used for remapping vs. the ones used by
cdoto read the GRIB2 metadata (e.g. differentecCodesversions using different internal GRIB2 parameter tables)? If so, is there a recommendedecCodes/module combination on HoreKa2 that preserves the old naming convention, or is switching to the new names the expected path forward?
Thanks in advance for any help!