NEDAS.assim_tools.assimilators.QCEF.core module

class NEDAS.assim_tools.assimilators.QCEF.core.QCEFAssimilator(c: Context)[source]

Bases: SerialAssimilator

obs_increment(obs_prior, obs_prior_static, obs, obs_err)[source]

Compute observation-space analysis increments.

Parameters:
  • obs_prior (np.ndarray) – Observation priors, 1-D float array of length nens

  • obs_prior_static (np.ndarray) – Observation priors of the static members (covariance_def.nens_static)

  • obs (float) – The real observation value

  • obs_err (float) – Observation error std

Returns:

observation-space analysis increments

Return type:

ndarray

update_local_state(state_prior, state_static, obs_prior, obs_prior_static, obs_incr, state_h_dist, state_v_dist, state_t_dist, hroi, vroi, troi, h_local_func, v_local_func, t_local_func, impact_on_variable) → None[source]

Update the local state vector with the analysis increments.

Parameters:
  • state_prior (np.ndarray) – Local state vector, point-major, shape (nloc, nfld, nens)

  • state_static (np.ndarray) – Local state of the static members, shape (nloc, nfld, nens_static), not updated

  • obs_prior (np.ndarray) – Observation priors, shape (nens,)

  • obs_prior_static (np.ndarray) – Observation priors of the static members, shape (nens_static,)

  • obs_incr (np.ndarray) – Analysis increments, shape (nens,)

  • ind (np.ndarray) – The candidate points (indices into nloc) the distances are given for

  • state_h_dist (np.ndarray) – Distances, shapes (nind,), (nfld, nind), (nfld,)

  • state_v_dist (np.ndarray) – Distances, shapes (nind,), (nfld, nind), (nfld,)

  • state_t_dist (np.ndarray) – Distances, shapes (nind,), (nfld, nind), (nfld,)

  • impact_on_variable (np.ndarray) – Cross-variable localization factor per variable, shape (nfld,)

update_local_obs(obs_data, obs_data_static, used, obs_prior, obs_prior_static, obs_incr, h_dist, v_dist, t_dist, hroi, vroi, troi, h_local_func, v_local_func, t_local_func, impact_on_variable) → None[source]

Update the local observations with analysis increments.

Parameters:
  • obs_data (np.ndarray) – obs prior ensemble, point-major, shape (nlobs, nens)

  • obs_data_static (np.ndarray) – obs priors of the static members, shape (nlobs, nens_static), not updated

  • used (np.ndarray) – boolean mask of already-assimilated obs

  • ind (np.ndarray) – The candidate obs (indices into nlobs) the distances and impact_on_variable are given for

transform_ens_state_forward(state_data)[source]
transform_ens_state_backward(state_data)[source]
transform_ens_obs_forward(obs_data)[source]
transform_ens_obs_backward(obs_data)[source]
NEDAS.assim_tools.assimilators.QCEF.core.transform_to_probit()[source]
NEDAS.assim_tools.assimilators.QCEF.core.transform_from_probit()[source]
NEDAS.assim_tools.assimilators.QCEF.core.obs_increment_qcef(obs_prior, obs, obs_err) → ndarray[source]
NEDAS.assim_tools.assimilators.QCEF.core.update_local_state_linear(state_data, obs_prior, obs_incr, h_dist, v_dist, t_dist, hroi, vroi, troi, h_local_func, v_local_func, t_local_func, impact_on_variable) → None
NEDAS.assim_tools.assimilators.QCEF.core.update_local_obs_linear(obs_data, used, obs_prior, obs_incr, h_dist, v_dist, t_dist, hroi, vroi, troi, h_local_func, v_local_func, t_local_func, impact_on_variable)
NEDAS.assim_tools.assimilators.QCEF.core.update_ensemble(ens_prior, obs_prior, obs_incr, local_factor) → ndarray
NEDAS.assim_tools.assimilators.QCEF.core.epanechnikov_kernel(x) → ndarray
NEDAS.assim_tools.assimilators.QCEF.core.epanechnikov_cdf(x) → ndarray
NEDAS.assim_tools.assimilators.QCEF.core.get_kde_bandwidths(obs_prior: ndarray) → ndarray
NEDAS.assim_tools.assimilators.QCEF.core.gauss_quad(a, b, f)[source]
NEDAS.assim_tools.assimilators.QCEF.core.get_kde_params(obs_prior: ndarray, obs, obs_err)[source]
NEDAS.assim_tools.assimilators.QCEF.core.kde_pdf(x, params)[source]
NEDAS.assim_tools.assimilators.QCEF.core.kde_cdf(x, params)[source]