BenjMy / pycathy_wrapper

A Python wrapper for CATHY (Catchment Hydrology) - [Camporese et al., 2010]
https://benjmy.github.io/pycathy_wrapper/
Boost Software License 1.0
7 stars 1 forks source link

Implement normalisation for multiple observations #22

Open BenjMy opened 1 year ago

BenjMy commented 1 year ago

Improvement suggestion for DA

See Botto et al. 2018: "When assimilating multiple variables, proper normalization of the measurement error covariance matrices, anomalies of the simulated data, and innovation vectors were performed, using values of 0.6 m, 0.58, and 4.17 × 10−5 m3 s−1 for pressure head, water content and subsurface outflow, respectively. The normalization ensures that in multivariate assimilation scenarios the covariance matrices in the Kalman gain are not ill-conditioned (Evensen, 2003; Camporese et al., 2009b)."

Examples of applications in prep:

How?

from pyCATHY.DA.cathy_DA import DA
from pyCATHY.DA import perturbate, normalise
from pyCATHY.DA.cathy_DA import perturbate_parm, dictObs_2pd

# We create a DA object
simu = DA(dirName=path2prj, prj_name=prj_name_DA)

# We read all the observations (multiples types)
read_observations()
# Here is the new function to add: need to normalise before creation of the data covariance matrice
normalise.normalise()
make_data_cov()

# Parameters pertubation
perturbate.perturbate()

# run DA simulation
simu.run_DA_sequential()