Computes the weighted average of a variable's given dimension at all other dimensions and retains metadata.
Available in version 5.1.1 and later.
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl" function dim_avg_wgt_n_Wrap ( x : numeric, w [*] : numeric, opt  : integer, dim  : integer ) return_val : float or double
A variable of numeric type and any dimensionality. Missing values are indicated by the _FillValue attribute.w
A one dimensional of weights. The length must the same as the dim-th dimension of xopt
A scalar: (a) opt=0 means compute the weighted average only if all values are not missing; (b) opt=1 means compute the weighted mean of all non-missing values; (c) opt>1 means to return the mean only if the number of non-missing values is greater-than or equal to opt.dim
A scalar, the dimension of x of which to do the weighted average across.
The output will be double if x is double, and float otherwise.
The output dimensionality will be the same as all but the dim-th dimension of the input variable. The dimension rank of the input variable will be reduced by one.
Computes the weighted average of all elements of the dim-th dimension for each index of the remaining dimensions and retains metadata. A wrapper function.
Let z(12,nlat,mlon) contain monthly means and with named dimensions "time", "lat" and "lon", respectively. Compute the weighted annual mean at each lat/lon point.
wgt = (/0.08493151, 0.076712325, 0.08493151, 0.08219178 \ ; same size as dimension "lev" ,0.08493151, 0.08219178 , 0.08493151, 0.08493151 \ ,0.08219178, 0.08493151 , 0.08219178, 0.08493151 /) zAnn = dim_avg_wgt_n_Wrap(z, wgt, 0, 0) ; ==> zAnn(lat,lon)All attributes and, if present, latitude and longitude coordinate variables are retained.
Let T(time,lev,lat,lon). Compute the weighted vertical average total at each time/lat/lon point.
delp = (/50,50,100,100,100,50,25,10/) ; same size as dimension "time" Tavg = dim_avg_wgt_n_Wrap(T, wgt, 0, 0) ; ==> Tavg(time,lat,lon)