DMPlexGetLETKFLocalizationMatrix#
Compute localization weight matrix for LETKF [move to ml/da/interface]
Synopsis#
PetscErrorCode DMPlexGetLETKFLocalizationMatrix(const PetscInt n_obs_vertex, const PetscInt n_obs_local, const PetscInt n_dof, Vec Vecxyz[3], Mat H, Mat *Q)
Collective
Input Parameters#
n_obs_vertex - Number of nearest observations to use per vertex (eg, MAX_Q_NUM_LOCAL_OBSERVATIONS in LETKF)
n_obs_local - Number of local observations
n_dof - Number of degrees of freedom
Vecxyz - Array of vectors containing the coordinates
H - Observation operator matrix
Output Parameter#
Q - Localization weight matrix (sparse, AIJ format)
Notes#
The output matrix Q has dimensions (n_vert_global x n_obs_global) where n_vert_global is the number of vertices in the DMPlex. Each row contains exactly n_obs_vertex non-zero entries corresponding to the nearest observations, weighted by the Gaspari-Cohn fifth-order piecewise rational function.
The observation locations are computed as H * V where V is the vector of vertex coordinates. The localization weights ensure smooth tapering of observation influence with distance.
Kokkos is required for this routine.
See Also#
Level#
intermediate
Location#
Examples#
src/dm/impls/plex/tutorials/ex20.c
Index of all DMPlex routines
Table of Contents for all manual pages
Index of all manual pages