dash.localize.gc1d

Computes localization weights along a depth/height/Z dimension using a Gaspari-Cohn 5th order polynomial


Syntax



Description

[wloc, yloc] = dash.localize.gc1d(stateDepths, siteDepths, distance)

Calculates covariance localization weights for an assimilation using a specified cutoff distance. The method proceeds by determining the distances between a set of depths/heights/Z-coordinates and then applying a Gaspari-Cohn 5th order polynomial to the distances. This can be used to implement localization along the depth/height/Z coordinate of an ensemble. If the distance between two depths/heights/Z-coordinates is NaN, returns a weight of 1 (i.e. no localization).

[wloc, yloc] = dash.localize.gc1d(stateDepths, siteDepths, distance, scale)

Specifies the length scale for the polynomial. By default, uses a length scale of 0.5, which sets the localization distance equal to the cutoff distance.


Input Arguments

stateDepths

numeric vector [nState]
The depth/height/Z coordinate of the state vector elements. Any units are permitted so long as the siteDepths and cutoff distance use the same units.

siteDepths

numeric vector [nSite]
The depth/height/Z coordinate of the proxy sites. Should use the same units as stateDepths.

distance

positive numeric scalar
The localization cutoff distance. Should use the same units as stateDepths

scale

numeric scalar
The length scale to use for the Gaspari-Cohn polynomial. Must be on the interval 0 < scale <= 0.5. By default, uses a length scale of 0.5, which sets the localization distance equal to the cutoff distance

Output Arguments

wloc

numeric matrix [nState x nSite]
The covariance localization weights between the state vector elements and proxyobservation sites.

yloc

numeric matrix [nSite x nSite]
The covariance localization weights between the proxy/observation sites and one another.