Tools from NERSC to run the Ensemble Kalman Filter, adapted to NEMO.

Alison Delhasse 15f22ed15a bash launch interpolation obs to eROCA1 grid and conversion to binary files 2 mesiacov pred
Doc 5259660651 Add slides 2024 8 mesiacov pred
EnKF-MPI-TOPAZ e39a8f5c03 adapted to nemo4.2.1 and OSISAF SIC obs 4 mesiacov pred
conversion_uf e39a8f5c03 adapted to nemo4.2.1 and OSISAF SIC obs 4 mesiacov pred
conversion_uf_after_interpo 15f22ed15a bash launch interpolation obs to eROCA1 grid and conversion to binary files 2 mesiacov pred
interpolate_observations 15f22ed15a bash launch interpolation obs to eROCA1 grid and conversion to binary files 2 mesiacov pred
sanity_check e39a8f5c03 adapted to nemo4.2.1 and OSISAF SIC obs 4 mesiacov pred
src_conversion e39a8f5c03 adapted to nemo4.2.1 and OSISAF SIC obs 4 mesiacov pred
README.md db3f9007a0 test clés ssh 8 mesiacov pred
enkf_modules_to_load.txt 00d868c390 compiles on LUCIA 8 mesiacov pred
launch_sanity_all_mem.bash e39a8f5c03 adapted to nemo4.2.1 and OSISAF SIC obs 4 mesiacov pred

README.md

November 2016 Updated November 2017 Updated March 2019 at UCL Updated March 2024 A. Delhasse (alison.delhasse@uclouvain.be)

François Massonnet francois.massonnet@uclouvain.be/bsc.es

Everything available to set up the Ensemble Kalman filter (EnKF) for NEMO and EC-Earth

!!! ALL COMPILATIONS AND CREATION OF BINARY FILES SHOULD BE DONE ON THE HPC !!!

  1. Go to the HPC

  2. Clone the git repository (some HPCs don't allow communication with the web, in this case clone locally and rsync the git project to HPC)

    git clone https://gogs.elic.ucl.ac.be/fmasson/EnKF.git
    
  3. Compile the EnKF code

The folder EnKF-MPI-TOPAZ is a modified copy of the source code found at NERSC (http://enkf.nersc.no/Code/NERSC_implementation/V2/)

It has been modified as to work with NEMO and LIM, by F. Massonnet and C. König Beatty. The code itself should not be modified, unless there are good reasons to do so.

cd EnKF-MPI-TOPAZ
make clean
configure_ecearth
make 

An executable EnKF should be produced. Try to run it to see if you get the following information message:

bsc32526@login2:/gpfs/projects/bsc32/bsc32526/enkf/EnKF-assimilation/EnKF-MPI-TOPAZ> ./EnKF Inne i start_mpi: qmpi_proc_num = 0 master = T MPI started with 1 processors Usage: EnKF

      EnKF -h

Options:

 -h -- describe parameter fie format

B/ Compilation of the program to convert NetCDF files to binaries

cd ../conversion_uf/ make clean source ../enkf_modules_to_load.txt make

Two executables named prep_obs_ORCA1 and prep_obs_ORCA25 should be created. Try them:

./prep_obs_ORCA1

       0

(prep_obs) takes a real obs, extracts the desired variable and outputs it in a format that the EnKF can read & treat ('observations.uf').

A file named mask.nc containing the variables tmaskutil, nav_lon and nav_lat is expected to be in the current directory (ORCA-file)

Three command line arguments are expected:

  1. Path to the nc file of which the data is to be extracted.
  2. Variable name that can be found in there, 'h_i_htc1' or 'at_i'. or dxdy_ice
  3. A tag with the date, e.g. 19790520

Hope to see you again soon.

(prep_obs): Stopped.

C/ Compilation of the program to post-process the restarts after assimilation ("sanity_check")

The folder sanity_check is a set of routines that make sure that the restarts provided by the EnKF can be read by NEMO. These are home-made (François Massonnet, see also description in http://www.sciencedirect.com/science/article/pii/S1463500315000050

cd ../sanity_check/ make clean source ../enkf_modules_to_load.txt make

An executable named sanity_checked is created, try it:

./sanity_check

sanity_check_LIM3 needs arguments: -analysis_file_ice -forecast_file_ice -analysis_file_oce -forecast_file_oce Checks NEMO-LIM3 ice and ocean analyses restarst (netcdf) file for sanity and fixesthem if necessary.

Sanity means for now: Strongly follow limupdate.F90 Files mask.nc and mesh_hgr.nc need to be in the current directory

Hope to see you again soon.

Chris König Beatty Francois Massonnet -- francois.massonnet@uclouvain.be Last update: 2013 Last update: 2016 (to work with NEMO3.6) (sanity_check): Stopped.

D/ Convert NetCDF observations (already interpolated on the ORCA grids) to UF format:

cd ../conversion_uf/

open convert.bash, check it, and run it (always on HPC)