const (expr, value, <-u|-a>)
This is a powerful function that allows the user to change the missing values of a variable, set all the non-missing values of a variable to a constant, or set all possible values of a variable (both valid and missing) to a constant.
expr
a valid GrADS expression value
a constant, either an integer or floating point value -u
all missing data are set to
value
; non-missing data are unchanged-a
all data are set to
value
, both missing and non-missing
Default behaviour is to set all non-missing data equal to
value
; missing data are unchanged
const
function operates on both gridded and
station data.
value
is given as an integer,
it will still be treated as as floating point.
const
function assigns a new value to missing
data, so that missing data may participate in operations:
const(z, 0, -u)
const
function is used with the set gxout linefill graphics output
option to define a straight horizontal line:
set lon -90
set lat -90 90
set gxout linefill
set lev 500
d const(t, -20);t-273
const
is used to calculate a daily
timeseries of the fraction of the globe convered by precipitation
greater than 10mm/day
:
set lon 0 360
set lat -90 90
set t 1 last
define ones = const(const(maskout(p,p-10),1),0,-u)
set x 1
set y 1
display tloop(aave(ones,lon=0,lon=360,lat=0,lat=360))
Notes: The defined variable
"ones"
contains 1
wherever the precip value
is greater than 10
, and 0
whever the precip
value is less than 10
. This is done via nested functions;
first maskout
sets all
values less than 10
to missing, then const
sets all non-missing values to 1
, then const
is used with the -u
flag to set all the missing data
values to 0
. The aave
function calculates an
area weighted average. Since we are averaging zeros and ones, the
result is the fraction of the area where there are ones. See the tloop
function for a
description of how to perform time series of areal averages.