Compute product of inverse of R with some matrix
The routine is called during the analysis step on each local analysis domain. It has to compute the product of the inverse of the local observation error covariance matrix with the matrix of locally observed ensemble perturbations.
Next to computing the product, a localizing weighting ("observation localization") can be applied to matrix A.
This implementation assumes a diagonal observation error covariance matrix, and supports varying observation error variances.
The routine can be applied with either all observations of different types at once, or separately for each observation type.
Revision history: * 2019-06 - Lars Nerger - Initial code from restructuring observation routines * Later revisions - see repository log
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(obs_l), | intent(inout) | :: | thisobs_l | |||
type(obs_f), | intent(inout) | :: | thisobs | |||
integer, | intent(in) | :: | nobs_all | |||
integer, | intent(in) | :: | ncols | |||
real, | intent(inout) | :: | A_l(:,:) | |||
real, | intent(out) | :: | C_l(:,:) | |||
integer, | intent(in) | :: | verbose |