Project

General

Profile

how to define level bounds?

Added by Josué Bock over 6 years ago

Hello,

I already asked this within an existing topic (https://code.mpimet.mpg.de/boards/2/topics/3902), maybe this is why I didn't get an answer.

My question is:
when using vertmean on a file that contains hybrid model level output, plus hybrid coefficients, plus log mean SP, cdo says that it is not able to perform weighted average, because bounds are missing.

How should these bounds be defined, given that the vertical dimension is currently the level index? I obviously thought about defining the bounds as index-0.5 and index+0.5, but I wonder if this is really the right way to do.

Attached is an example file where I defined the lev_bnds as the layer indexes +/- 0.5, which then allows vertmean to perform a weighted average.

Cheers,

Josué


Replies (3)

RE: how to define level bounds? - Added by Uwe Schulzweida over 6 years ago

The CDO operator vertmean supports only 1D levels to compute the weights for each layer. That means the contents of the variable lev_bnds is used directly to compute the weights. The weights for each layer is constant 1, if lev_bnds contains +/-0.5 of the level index.
Hybrid level coefficients describe a 3D vertical coordinate, this is not supported by this operator.

Cheers,
Uwe

RE: how to define level bounds? - Added by Josué Bock over 6 years ago

Hello Uwe,

Thank you for your answer.

That would be useful to add this description in the manual, because it is not clear that vertmean only supports 1D for weighted average. And there is no warning either if cdo vertmean is run with a 3D dataset such as the example file that I uploaded in my first message.

Is it foreseen that vertmean will be generalised to 3D cases?

Cheers,

Josué

RE: how to define level bounds? - Added by Uwe Schulzweida over 6 years ago

Hello Josué,

There is no plan to generalize this operator to 3D.

Cheers,
Uwe

    (1-3/3)