()const
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
Usage Notes
-
The
const
function operates on both gridded and station data. -
If
value
is given as an integer, it will still be treated as as floating point.
Examples
-
The
const
function assigns a new value to missing data, so that missing data may participate in operations:
const(z, 0, -u)
-
The
const
function is used with the set gxout linefill graphics output option to define a straight horizontal line:
set lon -90set lat -90 90set gxout linefillset lev 500d const(t, -20);t-273
-
In this example,
const
is used to calculate a daily timeseries of the fraction of the globe convered by precipitation greater than10mm/day
:
set lon 0 360set lat -90 90set t 1 lastdefine ones = const(const(maskout(p,p-10),1),0,-u)set x 1set y 1display tloop(aave(ones,lon=0,lon=360,lat=0,lat=360))Notes: The defined variable
"ones"
contains1
wherever the precip value is greater than10
, and0
whever the precip value is less than10
. This is done via nested functions; firstmaskout
sets all values less than10
to missing, thenconst
sets all non-missing values to1
, thenconst
is used with the-u
flag to set all the missing data values to0
. Theaave
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 thetloop
function for a description of how to perform time series of areal averages.