Project

General

Profile

Pressure Level changing while converting netcdf to grib file

Added by Prasanth Valayamkunnath almost 9 years ago

Dear CDO help,

I'm trying to convert ta_6hrLev_MIROC5_rcp45_r1i1p1_2026040100-2026043018.nc to grib format. I tried the following steps.

  1. 1. cdo invertlev ta_6hrLev_MIROC5_rcp45_r1i1p1_2026040100-2026043018.nc temp1.nc
  2. 2. cdo setzaxis,myzaxisinvert.dat temp1.nc temp2.nc
  3. 3. cdo delname,a_bnds,b_bnds,ps temp2.nc temp3.nc
  4. 4. export EXTRAPOLATE=1
  5. 5. cdo ml2pl,100000,97500,95000,92500,90000,87500,85000,82500,80000,77500,75000,70000,65000,60000,55000,50000,45000,40000,35000,30000,
    25000,22500,20000,17500,15000,12500,10000,7000,5000,3000 temp3.nc ta_Plev.nc
  1. 6. [pvk03@brlogin1 new]$ cdo zaxisdes ta_Plev.nc
#
  1. zaxisID 1 #
    zaxistype = surface
    size = 1
    name = sfc
    longname = surface
    levels = 0 #
  2. zaxisID 2 #
    zaxistype = pressure
    size = 30
    name = lev
    longname = pressure
    units = Pa
    levels = 100000 97500 95000 92500 90000 87500 85000 82500 80000 77500 75000 70000
    65000 60000 55000 50000 45000 40000 35000 30000 25000 22500 20000 17500
    15000 12500 10000 7000 5000 3000
    cdo zaxisdes: Processed 2 variables ( 0.02s )

Now after step 7 the pressure level changes to large value,

  1. 7. cdo -f grb setltype,100 -chparam,-1,11 ta_Plev1.nc ta_Plev.grb
[pvk03@brlogin1 new]$ cdo zaxisdes ta_Plev.grb #
  1. zaxisID 1 #
    zaxistype = pressure
    size = 30
    name = lev
    longname = pressure
    units = Pa
    levels = 6500000 6000000 5500000 5000000 4500000 4000000 3500000 3446400 3196400
    3000000 2946400 2696400 2500000 2446400 2250000 2196400 2000000 1946400
    1750000 1696400 1500000 1446400 1250000 1196400 1000000 946400 700000
    500000 446400 300000
    cdo zaxisdes: Processed 1 variable ( 0.01s )

Could you please help me to resolve this issue?
Thanks
Prasanth

__________________________________________________________
[pvk03@brlogin1 new]$ cdo -V
Climate Data Operators version 1.7.0rc1 (http://mpimet.mpg.de/cdo)
Compiled: by pvk03 on brlogin1 (x86_64-unknown-linux-gnu) May 25 2015 22:30:19
Compiler: icc -std=gnu99 -g -O2 -fopenmp
version: icc (ICC) 13.0.1 20121010
Features: PTHREADS OpenMP NC4/HDF5 Z SSE2
Libraries:
Filetypes: srv ext ieg grb nc nc2 nc4 nc4c
CDI library version : 1.6.9 of May 25 2015 22:28:00
CGRIBEX library version : 1.7.2 of Apr 22 2015 13:44:04
netCDF library version : 4.2.1.1 of Oct 9 2013 10:21:35 $
SERVICE library version : 1.3.2 of May 25 2015 22:27:30
EXTRA library version : 1.3.2 of May 25 2015 22:27:14
IEG library version : 1.3.3 of May 25 2015 22:27:23
FILE library version : 1.8.2 of May 25 2015 22:27:15
__________________________________________________________


Replies (3)

RE: Pressure Level changing while converting netcdf to grib file - Added by Uwe Schulzweida almost 9 years ago

You don't need to set the GRIB level type to 100. Pressure levels in Pa are automatically converted to hPa when writing GRIB output.

RE: Pressure Level changing while converting netcdf to grib file - Added by Prasanth Valayamkunnath almost 9 years ago

Dear CDO Help,

I was following http://www.meteo.unican.es/wiki/cordexwrf/SoftwareTools/CmorPreprocessor procedure. So I have ta corresponding to each pressure level (ta_6hrLev_MIROC5_rcp45_r1i1p1_2026040100-2026043018.nc) and a 2m surface temperature file (tas_3hr_MIROC5_rcp45_r1i1p1_202601010000-202612312100.nc)

According to that CMIP5 Vtable (http://www.meteo.unican.es/wiki/cordexwrf/SoftwareTools/CmorPreprocessor procedure.) I selected the GRIB level for ta to 100 and tas to 2.

Could you please tell me how should I create separate GRIB file for tas and ta? Should I create another Vtable with separate GRIB code for each?

Thanks
Prasanth

    (1-3/3)