Covariance Localisation Specification for IES
Source:R/inflation_localisation.R
pesto_localisation.RdBuilds a control object that tells pesto_ies_callback() and
pesto_ies_filter() how to taper the ensemble Kalman gain, suppressing the
spurious long-range parameter-observation correlations that a finite
ensemble manufactures. Localisation is applied as a Schur (elementwise)
product on the explicit gain inside ensemble_solution_localised(); the
default method = "none" leaves the standard SVD update untouched.
Arguments
- method
Character. One of
"none"(default),"correlation","distance".- taper
Character.
"hard"(default) or"soft"; passed tocorrelation_localisation()formethod = "correlation".- threshold
Numeric. Correlation noise floor; negative (default -1) triggers automatic per-iteration estimation.
method = "correlation".- n_shuffle
Integer \(\ge\) 1. Permutation replicates for the automatic floor (default 1).
method = "correlation".- quantile
Numeric in (0, 1). Quantile of the spurious-correlation distribution used as the floor (default 0.95).
method = "correlation".- distances
Matrix (npar x nobs) or
NULL. Precomputed parameter-to-observation distances formethod = "distance".- par_coords, obs_coords
Matrices (npar x d, nobs x d) or
NULL. Parameter / observation coordinates; Euclidean distances are derived whendistancesisNULL.method = "distance".- radius
Numeric (> 0) or
NULL. Gaspari-Cohn localisation radius; required formethod = "distance".
Details
"correlation" is the iterative-ensemble-smoother-native automatic
localisation of Luo & Bhakta (2020): it needs no parameter or observation
coordinates, estimating a noise floor from the ensemble itself and damping
sample correlations that fall below it (see correlation_localisation()).
This is the recommended default for parameter-estimation problems whose
parameters carry no spatial metric. "distance" is classical
distance-based localisation: a Gaspari-Cohn taper (gaspari_cohn()) of a
parameter-to-observation distance matrix, for problems where such a metric
exists — supply either distances directly or par_coords + obs_coords
(Euclidean distances are then computed), together with radius.
References
Luo, X. & Bhakta, T. (2020). Automatic and adaptive localization for ensemble-based history matching. Journal of Petroleum Science and Engineering, 184, 106559.
Examples
loc <- pesto_localisation("correlation", taper = "soft")
loc
#> $method
#> [1] "correlation"
#>
#> $taper
#> [1] "soft"
#>
#> $threshold
#> [1] -1
#>
#> $n_shuffle
#> [1] 1
#>
#> $quantile
#> [1] 0.95
#>
#> $distances
#> NULL
#>
#> $par_coords
#> NULL
#>
#> $obs_coords
#> NULL
#>
#> $radius
#> NULL
#>
#> attr(,"class")
#> [1] "pesto_localisation"