vint(psexpr,expr,top)
This function performs a mass-weighted vertical integral in mb pressure coordinates. The three arguments to vint
are:
psexpr
a GrADS expression for the
surface pressure, in mb, which bounds the integral on
the bottom.
expr
a GrADS expression
representing the quantity to be integrated.
top
the bounding top pressure, in mb. This value must be a constant and cannot be
provided as an expression.
The calculation is a sum of the mass-weighted layers:
f/g * sum(expr * Delta(level))
The bounds of the integration are the surface pressure and the
indicated top
value. The scale factors are f=100
and g=9.8. The summation is done for each layer present that is
between the bounds. The layers are determined by the Z levels of the
default file. Each layer is considered to be from the midpoints
between the levels actually present, and is assumed to have the same
value throughout the layer, namely the value of the gridpoint at the
middle of the layer.
expr
.
top
pressure value to be at the top of a layer, which is midway between
grid points. For example, if the default file (and the data) have
pressure levels of ...,500,400,300,250,... then a good value for
top
might be 275, the value at the top of the
layer that extends from 350 to 275 mb.
vint
function operates only in an X-Y varying
dimension environment.
1. This expression will integrate specific humidity to obtain precipitable water, in mm:
vint(ps,q,275)
2. This is an artificial example that demonstrates a vertical integration from a fixed lower bound of 1000mb to the top of the atmosphere, and integrating a field of all 1's. This gives an answer of 10204.1 (or 100000/9.8) which is the mass of air (in kg) of a 1 meter squared column when the surface pressure is 1 bar and the accelleration due to gravity is assumed to be exactly 9.8m/sec**2 over the entire column.
vint(const(ps,1000),const(t,1),0)