ewatercycle_DA.data_assimilation_schemes.EnKF
Module Contents
- class ewatercycle_DA.data_assimilation_schemes.EnKF.EnsembleKalmanFilter
Bases:
pydantic.BaseModelImplementation of an Ensemble Kalman filter scheme to be applied to the
Ensemble.Note
The
EnsembleKalmanFilteris controlled by theEnsembleand thus has no time reference itself. No DA method should need to know where in time it is (for now). Currently assumed 1D grid.- Parameters:
hyperparameters (dict) –
Combination of many different parameters: like_sigma_weights (float): scale/sigma of logpdf when generating particle weights
like_sigma_state_vector (float): scale/sigma of noise added to each value in state vector
- obs
observation value of the current model timestep, set in due course thus optional
- Type:
float
- state_vectors
state vector per ensemble member [N x len(z)]
- Type:
np.ndarray
- predictions
contains prior modeled values per ensemble member [N x 1]
- Type:
np.ndarray
- new_state_vectors
updated state vector per ensemble member [N x len(z)]
- Type:
np.ndarray
- All are :obj:`None` by default
- hyperparameters: dict
- N: int
- obs: Any | None | None
- state_vectors: Any | None | None
- predictions: Any | None | None
- new_state_vectors: Any | None | None
- logger: list = []
- update()
Takes current state vectors of ensemble and returns updated state vectors ensemble
TODO: refactor to be more readable