Project

General

Profile

CDO merge problems

Added by Ashwin D about 8 years ago

I am using cdo merge to merge 17 levels of NCAR NCEP reanalysis 2 files. These files have been transformed by my fortran netCDF code due to my application.

When I do a merge now I get these issues -

Warning (splitTimevalue) : Reset wrong date/time to 0187-01-01 00:00:00!
cdo merge (Warning): Duplicate entry of parameter Q in shum_925_2014_12_5_00Z.nc!
cdo merge: Processed 331296 values from 17 variables over 17 timesteps ( 0.00s )

Why does it update the time value to whatever it seems best ?

Secondly my original reanalysis 2 had three dimensions - lat, lon and level. Of course time as the record dimension. I deleted level using an NCO operator and added a vertical coordinate using my own fortran 90 code.

So I have 28 values of my vertical coordinate. When I do the cdo merge it multiplies 28 * 17 and stores that values as the dimension of the merged CDO file. I do not want that. The lat and lon cardinality have been untouched(28 and 29 respectively)


Replies (3)

RE: CDO merge problems - Added by Ashwin D about 8 years ago

Update - I was able to solve the splitTimevalue problem by including the units of time in my fortran 90 netCDF code.

But the vertical coordinate problem still remains. I have now 28 * 17 values in the vertical coordinate when I should have only 28.

How to fix that ?

RE: CDO merge problems - Added by Ashwin D about 8 years ago

This is the definition of my single netCDF file

netcdf shum_1000_2014_12_5_00Z {
dimensions:
dimy_D = 24 ;
dimx_D = 29 ;
dimz_Q = 28 ;
time = UNLIMITED ; // (1 currently)
variables:
float dimy_D(dimy_D) ;
dimy_D:units = "degrees_north" ;
float dimx_D(dimx_D) ;
dimx_D:units = "degrees_east" ;
float time(time) ;
time:units = "hours since 1800-1-1 00:00:0.0" ;
float Q(time, dimz_Q, dimy_D, dimx_D) ;

and the merged one(17 levels) looks like this. As you can see cdo merge seems to be modifying my vertical coordinate into lev and also assigning random values to it.

netcdf shumFile {
dimensions:
dimx_D = 29 ;
dimy_D = 24 ;
lev = 476 ;
time = UNLIMITED ; // (1 currently)
variables:
float dimx_D(dimx_D) ;
dimx_D:standard_name = "longitude" ;
dimx_D:long_name = "longitude" ;
dimx_D:units = "degrees_east" ;
dimx_D:axis = "X" ;
float dimy_D(dimy_D) ;
dimy_D:standard_name = "latitude" ;
dimy_D:long_name = "latitude" ;
dimy_D:units = "degrees_north" ;
dimy_D:axis = "Y" ;
double lev(lev) ;
lev:long_name = "generic" ;
lev:units = "level" ;
lev:axis = "Z" ;

RE: CDO merge problems - Added by Ashwin D about 8 years ago

Never mind. I was able to solve this without any problem ;-)

    (1-3/3)