Vertint 2.98 KB
Newer Older
Uwe Schulzweida's avatar
Uwe Schulzweida committed
1
2
3
4
5
6
7
8
9
10
@BeginModule
@NewPage
@Name      = Intvert
@Title     = Vertical interpolation
@Section   = Interpolation
@Class     = Interpolation
@Arguments = ifile ofile
@Operators = ml2pl ml2hl

@BeginDescription
Uwe Schulzweida's avatar
Uwe Schulzweida committed
11
12
Interpolate 3D variables on hybrid model levels to pressure or height levels.
The input file should contain the log. surface pressure or the surface pressure.
Uwe Schulzweida's avatar
Uwe Schulzweida committed
13
14
15
To interpolate the temperature, the surface geopotential is also needed.
The pressure, temperature, and surface geopotential are identified by their GRIB1 code number
or netCDF CF standard name.
16
Supported parameter tables are: WMO standard table number 2 and ECMWF local table number 128.
Uwe Schulzweida's avatar
Uwe Schulzweida committed
17
Use the alias  @bold{ml2plx}/@bold{ml2hlx} or the environment variable @env{EXTRAPOLATE}
18
19
to extrapolate missing values. This operator requires all variables on the same horizontal grid.

Uwe Schulzweida's avatar
Uwe Schulzweida committed
20
21
22
23
24
25
26
27
28
@EndDescription
@EndModule


@BeginOperator_ml2pl
@Title     = Model to pressure level interpolation
@Parameter = plevels

@BeginDescription
Uwe Schulzweida's avatar
Uwe Schulzweida committed
29
Interpolates 3D variables on hybrid model levels to pressure levels.
Uwe Schulzweida's avatar
Uwe Schulzweida committed
30
31
32
33
34
35
36
37
38
@EndDescription
@EndOperator


@BeginOperator_ml2hl
@Title     = Model to height level interpolation
@Parameter = hlevels

@BeginDescription
Uwe Schulzweida's avatar
Uwe Schulzweida committed
39
40
41
Interpolates 3D variables on hybrid model levels to height levels.
The procedure is the same as for the operator @oper{mh2pl} except for
the pressure levels being calculated from the heights by:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
42
@math{plevel = 101325*exp(hlevel/-7000)}
Uwe Schulzweida's avatar
Uwe Schulzweida committed
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
@EndDescription
@EndOperator


@BeginParameter
@Item = plevels
FLOAT  Pressure levels in pascal
@Item = hlevels
FLOAT  Height levels in meter (max level: 65535 m)
@EndParameter


@BeginEnvironment
@Item = EXTRAPOLATE
If set to 1 extrapolate missing values.
@EndEnvironment


Uwe Schulzweida's avatar
Uwe Schulzweida committed
61
@BeginNote
Uwe Schulzweida's avatar
Uwe Schulzweida committed
62
The netCDF CF convention for vertical hybrid coordinates is not supported, yet!
Uwe Schulzweida's avatar
Uwe Schulzweida committed
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
The vertical coordinate definition of a netCDF file has to follow the ECHAM convention.
This means:
@BeginItemize
@Item = the dimension of the full level coordinate and the corresponding variable is called mlev,
@Item = the dimension of the half level coordinate and the corresponding variable is called ilev (ilev must have one element more than mlev)
@Item = the hybrid vertical coefficient a is given in units of Pa and called hyai (hyam for level midpoints)
@Item = the hybrid vertical coefficient b is given in units of 1 and called hybi (hybm for level midpoints)
@Item = the mlev variable has a borders attribute containing the character string 'ilev'
@EndItemize

Use the @mod{sinfo} command to test if your vertical coordinate system is recognized as hybrid system.

In case this operator complains about not finding any data on hybrid model levels you may wish
to use the @mod{setzaxis} command to generate a zaxis description which conforms to the ECHAM convention.
See section "1.4 Z-axis description" for an example how to define a hybrid Z-axis.
Uwe Schulzweida's avatar
Uwe Schulzweida committed
78
79
80
@EndNote


Uwe Schulzweida's avatar
Uwe Schulzweida committed
81
@BeginExample
Uwe Schulzweida's avatar
Uwe Schulzweida committed
82
To interpolate hybrid model level data to pressure levels of 925, 850, 500 and 200 hPa use:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
83
84
85
86
@BeginVerbatim
   cdo ml2pl,92500,85000,50000,20000 ifile ofile
@EndVerbatim
@EndExample