Using PALM to integrate variational data assimilation algorithms with OPA ECMWF, 29 june 2005, Reading. Nicolas Daget CERFACS, Toulouse
Dynamic coupling for parallel programs Easy and user friendly to set up different assimilation systems Independence of the components High performance communications for data exchanges Components can be launch dynamically Complete independence between components and the algorithm Distributed data exchange Physics and algebraic computations are separated PALM Philosophy Algebraic computations can be done by PALM
PALM unit Unit Inputs Outputs Direct communication Communication with a buffer Priority Inside a loop Branch
Data assimilation algorithms Direct model, tangent model and adjoint model Data assimilation
3DVAR Shallow Water Model Read observations Minimization
3DVAR with OPA In situ temperature only No background quality control First prototype
3DVAR with OPA Read Observations Compute first Jo Model Compute first Jb and grad J Minimizer Compute Jo Compute Jb and grad J
3DVAR with OPA Read data Initialization of R Reset variables First Jo
3DVAR with OPA Read restart file, nit000, nitend, etc Model initialization (opa.F without step.F) Tangent model initialization Model integration (step.F) Memory shared Initialization of B
3DVAR with OPA First grad J First Jb First Jo Put inputs to minimizer Control vector Grad J Jb Put J and grad J Minimizer : Lanczos algorithm linear equation and eigenvalue solver Jo
3DVAR with OPA Loop inside minimizer Loop synchronized with the minimizer
3DVAR with OPA Jo
3DVAR with OPA Direct Model Read observation H H T R -1 B 1/2 B T/2 Minimizer 3DVAR inner loop outer loop First version will come soon In progress
Conclusions Hard work to split OPAVAR in units Direct, tangent and adjoint model can't be separated First 3DVar with OPA8.2 is not yet finished Easy to understand and modify algorithms Easiest to replace OPA8.2 by NEMO No information about optimization