소스 검색

Templates for Genius

klein 5 년 전
부모
커밋
43970c3989

+ 31 - 0
templates/genius/data.cfg

@@ -0,0 +1,31 @@
+ini_data_dir=$VSC_DATA/DATA
+ic_subdir=CONFIG_FILES
+nem_grid=ORCA1
+ic_files=(
+    "clipped_eORCA_R1_coordinates_v1.0.nc => coordinates.nc" 
+    "clipped_eORCA1_R1_bathy_meter_v2.1.nc => bathy_meter.nc" 
+    "clipped_eORCA_R1_ahmcoef_v1.0.nc => ahmcoef.nc" 
+    "clipped_eORCA_R1_maskITF_v1.0.nc => mask_itf.nc" 
+    "clipped_eORCA_R1_K1_v1.0.nc => K1rowdrg.nc" 
+    "clipped_eORCA_R1_M2_v1.0.nc => M2rowdrg.nc"
+    "clipped_runoff-icb_DaiTrenberth_Depoorter_eORCA1_JD.nc"
+    "conservative_temperature_WOA13_decav_Reg1L75_clim.nc"
+    "absolute_salinity_WOA13_decav_Reg1L75_clim.nc"
+    "sss_absolute_salinity_WOA13_decav_Reg1L75_clim.nc"
+    "weight_bilinear_360x180-clipped_eORCA1L75_2D.nc"
+    "weight_bilinear_360x180-clipped_eORCA1L75_3D.nc"
+)
+nem_res_hor=$(echo ${nem_grid} | sed 's:ORCA\([0-9]\+\)L[0-9]\+:\1:')
+#
+forcing_subdir=FORCINGS
+nem_forcing_set=DFS5.2
+forcing_files=(
+    "* => ."
+)
+#
+shared_files=(
+    "namelist_ice_lim3_ref => namelist_ice_ref"
+    "namelist_ref"
+    "domain_def.xml"
+    "field_def.xml"
+)

+ 33 - 0
templates/genius/experiment.cfg

@@ -0,0 +1,33 @@
+# Experience name
+exp_name=EXP_REF
+
+# Simulation start and end date. Use any (reasonable) syntax you want.
+run_start_date="1958-01-01"
+run_duration="4 years"
+
+# Restart frequency. Use any (reasonable) number and time unit you want.
+# For runs without restart, leave this variable empty or set to 0
+rst_freq="1 year"
+
+# Number of restart legs to be run in one go
+run_num_legs=2
+
+# Special restart
+special_restart=false
+special_restart_from=EXP0
+special_restart_date="1959-01-01"
+
+# Parameters
+nem_time_step_sec=3600
+lim_time_step_sec=21600
+nem_restart_offset=0
+nem_config_name=ORCA1_LIM3_REF
+
+# This file is used to store information about restarts
+info_file="nemo.info"
+
+# Paths
+start_dir=${PBS_O_WORKDIR-$PWD}
+run_dir="$VSC_SCRATCH/nemo/run/${exp_name}"
+archive_dir="$VSC_SCRATCH/nemo/archive/${exp_name}"
+

+ 23 - 0
templates/genius/job.cfg

@@ -0,0 +1,23 @@
+# PBS job options
+PBS -N ${exp_name}
+PBS -q qdef
+PBS -r y
+PBS -l walltime=10:00:00
+PBS -l nodes=1:ppn=11,pmem=5gb
+#PBS -M ${email}
+
+exec > ${PBS_O_WORKDIR-$PWD}/${PBS_JOBNAME-"local"}_${PBS_JOBID-"id"}.log
+echo "------------------ Job Info --------------------"
+echo "jobid : $PBS_JOBID"
+echo "jobname : $PBS_JOBNAME"
+echo "job type : $PBS_ENVIRONMENT"
+echo "submit dir : $PBS_O_WORKDIR"
+echo "queue : $PBS_O_QUEUE"
+echo "user : $PBS_O_LOGNAME"
+
+# Cancel job on error
+set -ueo pipefail
+
+# RESET script arguments
+NOTHING=""
+set -- ${PBS_OPTIONS-$NOTHING}

+ 404 - 0
templates/genius/namelists/build_namelist_cfg.sh

@@ -0,0 +1,404 @@
+# namelist.nemo-ORCA1L75.cfg.sh writes the NEMO namelist for ORCA1L75 in
+# This namelist will overwrite the reference namelist (namelist.nemo.ref.sh). 
+#
+if $leg_is_restart
+then
+    nemo_restart=".TRUE."
+else
+    nemo_restart=".FALSE."
+fi
+
+cat << EOF
+!!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+!! NEMO/OPA  Configuration namelist : used to overwrite defaults values defined in SHARED/namelist_ref
+!!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+!
+!-----------------------------------------------------------------------
+&namrun        !   parameters of the run
+!-----------------------------------------------------------------------
+   cn_exp        =  "${exp_name}" !  experience name
+   nn_it000      =  $(( leg_start_sec / nem_time_step_sec + 1 )) !  first time step
+   nn_itend      =  $(( leg_end_sec / nem_time_step_sec ))       !  last  time step (std 5475)
+   nn_date0      =  ${leg_start_date_yyyymmdd} !  date at nit_0000 (format yyyymmdd)
+                                  !    used if ln_rstart=F or
+                                  !    (ln_rstart=T and nn_rstctl=0 or 1)
+   ln_rstart     = ${nemo_restart} !  start from rest (F) or from a restart file (T)
+   nn_rstctl     =  1             !  restart control ==> activated only if ln_rstart=T
+                                  !  = 0 nn_date0 read in namelist ; nn_it000 : read in namelist
+                                  !  = 1 nn_date0 read in namelist ; nn_it000 : check consistancy between namelist and restart
+                                  !  = 2 nn_date0 read in restart  ; nn_it000 : check consistancy between namelist and restart
+   cn_ocerst_in  = "restart_oce"  !  suffix of ocean restart name (input)
+   cn_ocerst_out = "restart_oce"  !  suffix of ocean restart name (output)
+   nn_stock      =  0             !  frequency of creation of a restart file (modulo referenced to 1)
+   nn_write      = -1             !  frequency of write in the output file   (modulo referenced to nn_it000)
+/
+!-----------------------------------------------------------------------
+&namcfg        !   parameters of the configuration
+!-----------------------------------------------------------------------
+   cp_cfg      =  "orca"               !  name of the configuration
+   jp_cfg      =       1               !  resolution of the configuration
+   jpidta      =     362               !  1st lateral dimension ( >= jpi )
+   jpjdta      =     292               !  2nd    "         "    ( >= jpj )
+   jpkdta      =      75               !  number of levels      ( >= jpk )
+   jpiglo      =     362               !  1st dimension of global domain --> i =jpidta
+   jpjglo      =     292               !  2nd    -                  -    --> j  =jpjdta
+   jperio      =       6               !  6 cyclic East-West AND North fold F-point pivot
+   ln_use_jattr = .true.               !  use (T) the file attribute: open_ocean_jstart if present
+/
+!-----------------------------------------------------------------------
+&namzgr        !   vertical coordinate
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namzgr_sco    !   s-coordinate or hybrid z-s-coordinate
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namdom        !   space and time domain (bathymetry, mesh, timestep)
+!-----------------------------------------------------------------------
+   nn_msh      =    0                  !  create (=1) a mesh file or not (=0)
+   rn_hmin     =    20.                !  min depth of the ocean (>0) or min number of ocean level (<0)
+   rn_rdt      = ${nem_time_step_sec} !  time step for the dynamics (and tracer if nn_acc=0)
+   ppglam0     =  999999.0             !  longitude of first raw and column T-point (jphgr_msh = 1)
+   ppgphi0     =  999999.0             !  latitude  of first raw and column T-point (jphgr_msh = 1)
+   ppe1_deg    =  999999.0             !  zonal      grid-spacing (degrees)
+   ppe2_deg    =  999999.0             !  meridional grid-spacing (degrees)
+   ppe1_m      =  999999.0             !  zonal      grid-spacing (degrees)
+   ppe2_m      =  999999.0             !  meridional grid-spacing (degrees)
+   ppsur       =  -3958.951371276829   !  ORCA r4, r2 and r05 coefficients
+   ppa0        =    103.95300960000000 ! (default coefficients)
+   ppa1        =      2.41595126900000 !
+   ppkth       =     15.35101370000000 !
+   ppacr       =      7.0              !
+   ppdzmin     =  999999.              !  Minimum vertical spacing
+   pphmax      =  999999.              !  Maximum depth
+   ppa2        =  100.7609285000000    !  Double tanh function parameters
+   ppkth2      =  48.02989372000000    !
+   ppacr2      =  13.00000000000       !
+/
+!-----------------------------------------------------------------------
+&namsplit      !   time splitting parameters  ("key_dynspg_ts")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namcrs        !   Grid coarsening for dynamics output and/or
+               !   passive tracer coarsened online simulations
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namc1d        !   1D configuration options                             ("key_c1d")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namtsd    !   data : Temperature  & Salinity
+!-----------------------------------------------------------------------
+!          !  file name                                            ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights                                         ! rotation ! land/sea mask !
+!          !                                                       !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename                                        ! pairing  ! filename      !
+   sn_tem  = 'conservative_temperature_WOA13_decav_Reg1L75_clim.nc',         -1        ,'votemper' ,    .true.    , .true. , 'yearly'  ,'weight_bilinear_360x180-clipped_eORCA1L75_3D.nc',   ''     ,    ''
+   sn_sal  = 'absolute_salinity_WOA13_decav_Reg1L75_clim.nc'       ,         -1        ,'vosaline' ,    .true.    , .true. , 'yearly'  ,'weight_bilinear_360x180-clipped_eORCA1L75_3D.nc',   ''     ,    ''
+   !
+   ln_tsd_tradmp = .false.  !  damping of ocean T & S toward T &S input data (T) or not (F)
+/
+!-----------------------------------------------------------------------
+&namsbc        !   Surface Boundary Condition (surface module)
+!-----------------------------------------------------------------------
+   nn_fsbc     = $(( lim_time_step_sec / nem_time_step_sec )) !  frequency of surface boundary condition computation
+                           !     (also = the frequency of sea-ice model call)
+   nn_isf      = 3         !  ice shelf melting/freezing                (/=0 => fill namsbc_isf)
+                           !  0 =no isf                  1 = presence of ISF
+                           !  2 = bg03 parametrisation   3 = rnf file for isf
+                           !  4 = ISF fwf specified
+                           !  option 1 and 4 need ln_isfcav = .true. (domzgr)
+   nn_fwb      = 0         !  FreshWater Budget: =0 unchecked
+                           !     =1 global mean of e-p-r set to zero at each time step
+                           !     =2 annual global mean of e-p-r set to zero
+/
+!-----------------------------------------------------------------------
+&namsbc_ana    !   analytical surface boundary condition
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namsbc_flx    !   surface boundary condition : flux formulation
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namsbc_clio   !   namsbc_clio  CLIO bulk formulae
+!-----------------------------------------------------------------------
+!              !  file name  ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask !
+!              !             !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      !
+   sn_utau     = 'uwnd_10m'  ,       24          , 'uwnd'    ,   .true.     , .false., 'yearly'  , ''       , ''
+   sn_vtau     = 'vwnd_10m'  ,       24          , 'vwnd'    ,   .true.     , .false., 'yearly'  , ''       , ''
+   sn_wndm     = 'ncep_bulk' ,       24          , 'wspd'    ,   .true.     , .false., 'yearly'  , ''       , ''
+   sn_tair     = 'ncep_bulk' ,       24          , 'air'     ,   .true.     , .false., 'yearly'  , ''       , ''
+   sn_humi     = 'flx_correc',       -1          , 'socliohu',   .true.     , .true. , 'yearly'  , ''       , ''
+   sn_ccov     = 'flx_correc',       -1          , 'socliocl',   .true.     , .true. , 'yearly'  , ''       , ''
+   sn_prec     = 'flx_correc',       -1          , 'socliopl',   .true.     , .true. , 'yearly'  , ''       , ''
+/
+!-----------------------------------------------------------------------
+&namsbc_core   !   namsbc_core  CORE bulk formulae
+!-----------------------------------------------------------------------
+!              !  file name              ! frequency (hours) ! variable ! time interp. !  clim   ! 'yearly'/ ! weights                                     ! rotation ! land/sea mask !
+!              !                         !  (if <0  months)  !   name   !   (logical)  !  (T/F)  ! 'monthly' ! filename                                    ! pairing  ! filename      !
+
+   sn_wndi     = 'drowned_u10_DFS5.2'    ,         3         , 'u10'    ,   .true.     , .false. , 'yearly'  , 'weights_bicub_DFS5.2_to_clipped_eORCA1.nc' , 'U1'     , ''
+   sn_wndj     = 'drowned_v10_DFS5.2'    ,         3         , 'v10'    ,   .true.     , .false. , 'yearly'  , 'weights_bicub_DFS5.2_to_clipped_eORCA1.nc' , 'V1'     , ''
+   sn_qsr      = 'drowned_radsw_DFS5.2'  ,        24         , 'radsw'  ,   .true.     , .false. , 'yearly'  , 'weights_bilin_DFS5.2_to_clipped_eORCA1.nc' , ''       , ''
+   sn_qlw      = 'drowned_radlw_DFS5.2'  ,        24         , 'radlw'  ,   .true.     , .false. , 'yearly'  , 'weights_bilin_DFS5.2_to_clipped_eORCA1.nc' , ''       , ''
+   sn_tair     = 'drowned_t2_DFS5.2'     ,         3         , 't2'     ,   .true.     , .false. , 'yearly'  , 'weights_bilin_DFS5.2_to_clipped_eORCA1.nc' , ''       , ''
+   sn_humi     = 'drowned_q2_DFS5.2'     ,         3         , 'q2'     ,   .true.     , .false. , 'yearly'  , 'weights_bilin_DFS5.2_to_clipped_eORCA1.nc' , ''       , ''
+   sn_prec     = 'drowned_precip_DFS5.2' ,        24         , 'precip' ,   .true.     , .false. , 'yearly'  , 'weights_bilin_DFS5.2_to_clipped_eORCA1.nc' , ''       , ''
+   sn_snow     = 'drowned_snow_DFS5.2'   ,        24         , 'snow'   ,   .true.     , .false. , 'yearly'  , 'weights_bilin_DFS5.2_to_clipped_eORCA1.nc' , ''       , ''
+
+   rn_zqt      = 2.        !  Air temperature and humidity reference height (m)
+/
+!-----------------------------------------------------------------------
+&namsbc_mfs   !   namsbc_mfs  MFS bulk formulae
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namsbc_cpl    !   coupled ocean/atmosphere model                       ("key_coupled")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namsbc_sas    !   analytical surface boundary condition
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namtra_qsr    !   penetrative solar radiation
+!-----------------------------------------------------------------------
+   nn_chldta   =      0    !  RGB : Chl data (=1) or cst value (=0)
+/
+!-----------------------------------------------------------------------
+&namsbc_rnf    !   runoffs namelist surface boundary condition
+!-----------------------------------------------------------------------
+!              !  file name                                              ! frequency (hours) ! variable   ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask !
+!              !                                                         !  (if <0  months)  !   name     !   (logical)  !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      !
+   sn_rnf      = 'clipped_runoff-icb_DaiTrenberth_Depoorter_eORCA1_JD.nc',        -1         , 'sorunoff' , .true.       , .true. , 'yearly'  , ''       , ''       , ''
+   sn_cnf      = 'clipped_runoff-icb_DaiTrenberth_Depoorter_eORCA1_JD.nc',         0         , 'socoefr'  , .false.      , .true. , 'yearly'  , ''       , ''       , ''
+
+   ln_rnf_mouth = .false.   !  specific treatment at rivers mouths
+   ln_rnf_depth_ini = .true.   ! compute depth at initialisation from runoff file
+   rn_rnf_max   = 0.05      !  max value of the runoff climatologie over global domain ( ln_rnf_depth_ini = .true )
+/
+!-----------------------------------------------------------------------
+&namsbc_isf    !  Top boundary layer (ISF)
+!-----------------------------------------------------------------------
+!                ! file name                                                ! frequency (hours) ! variable     ! time interpol. !  clim   ! 'yearly'/ ! weights  ! rotation !
+!                !                                                          !  (if <0  months)  !   name       !    (logical)   !  (T/F)  ! 'monthly' ! filename ! pairing  !
+   sn_rnfisf     = 'clipped_runoff-icb_DaiTrenberth_Depoorter_eORCA1_JD.nc' ,       -12         ,'sornfisf'    ,    .false.     , .true.  , 'yearly'  ,  ''      ,   ''
+   sn_depmax_isf = 'clipped_runoff-icb_DaiTrenberth_Depoorter_eORCA1_JD.nc' ,       -12         ,'sodepmax_isf',    .false.     , .true.  , 'yearly'  ,  ''      ,   ''
+   sn_depmin_isf = 'clipped_runoff-icb_DaiTrenberth_Depoorter_eORCA1_JD.nc' ,       -12         ,'sodepmin_isf',    .false.     , .true.  , 'yearly'  ,  ''      ,   ''
+/
+!-----------------------------------------------------------------------
+&namsbc_apr    !   Atmospheric pressure used as ocean forcing or in bulk
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namsbc_ssr    !   surface boundary condition : sea surface restoring
+!-----------------------------------------------------------------------
+!              !  file name                                          ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights                                         ! rotation ! land/sea mask !
+!              !                                                     !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename                                        ! pairing  ! filename      !
+   sn_sss      = 'sss_absolute_salinity_WOA13_decav_Reg1L75_clim.nc' ,        -1         , 'sosaline',    .true.    , .true. , 'yearly'  ,'weight_bilinear_360x180-clipped_eORCA1L75_2D.nc', ''       , ''
+/
+!-----------------------------------------------------------------------
+&namsbc_alb    !   albedo parameters
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namberg       !   iceberg parameters
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namlbc        !   lateral momentum boundary condition
+!-----------------------------------------------------------------------
+   rn_shlat    =    0.     !  shlat = 0  !  0 < shlat < 2  !  shlat = 2  !  2 < shlat
+                           !  free slip  !   partial slip  !   no slip   ! strong slip
+/
+!-----------------------------------------------------------------------
+&namcla        !   cross land advection
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namagrif      !  AGRIF zoom                                            ("key_agrif")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&nam_tide      !   tide parameters (#ifdef key_tide)
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&nambdy        !  unstructured open boundaries                          ("key_bdy")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&nambdy_dta      !  open boundaries - external data           ("key_bdy")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&nambdy_tide     ! tidal forcing at open boundaries
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&nambfr        !   bottom friction
+!-----------------------------------------------------------------------
+   nn_bfr      =    2      !  type of bottom friction :   = 0 : free slip,  = 1 : linear friction
+                           !                              = 2 : nonlinear friction
+/
+!-----------------------------------------------------------------------
+&nambbc        !   bottom temperature boundary condition
+!-----------------------------------------------------------------------
+   nn_geoflx   =    1      !  geothermal heat flux: = 0 no flux
+                           !     = 1 constant flux
+                           !     = 2 variable flux (read in geothermal_heating.nc in mW/m2)
+/
+!-----------------------------------------------------------------------
+&nambbl        !   bottom boundary layer scheme
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&nameos        !   ocean physical parameters
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namtra_adv    !   advection scheme for tracer
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namtra_adv_mle !  mixed layer eddy parametrisation (Fox-Kemper param)
+!-----------------------------------------------------------------------
+/
+!----------------------------------------------------------------------------------
+&namtra_ldf    !   lateral diffusion scheme for tracers
+!----------------------------------------------------------------------------------
+   rn_aht_0         =  1000.     !  horizontal eddy diffusivity for tracers [m2/s]
+   rn_aeiv_0        =  1000.     !  eddy induced velocity coefficient [m2/s]    (require "key_traldf_eiv")
+/
+!-----------------------------------------------------------------------
+&namtra_dmp    !   tracer: T & S newtonian damping
+!-----------------------------------------------------------------------
+   ln_tradmp   =  .false.  !  add a damping termn (T) or not (F)
+/
+!-----------------------------------------------------------------------
+&namdyn_adv    !   formulation of the momentum advection
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&nam_vvl    !   vertical coordinate options
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namdyn_vor    !   option of physics/algorithm (not control by CPP keys)
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namdyn_hpg    !   Hydrostatic pressure gradient option
+!-----------------------------------------------------------------------
+   ln_hpg_zps  = .false.   !  z-coordinate - partial steps (interpolation)
+   ln_hpg_sco  = .true.    !  s-coordinate (standard jacobian formulation)
+/
+!-----------------------------------------------------------------------
+&namdyn_ldf    !   lateral diffusion on momentum
+!-----------------------------------------------------------------------
+   rn_ahm_0_lap     = 20000.    !  horizontal laplacian eddy viscosity   [m2/s]
+/
+!-----------------------------------------------------------------------
+&namzdf        !   vertical physics
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namzdf_ric    !   richardson number dependent vertical diffusion       ("key_zdfric" )
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namzdf_tke    !   turbulent eddy kinetic dependent vertical diffusion  ("key_zdftke")
+!-----------------------------------------------------------------------
+/
+!------------------------------------------------------------------------
+&namzdf_kpp    !   K-Profile Parameterization dependent vertical mixing  ("key_zdfkpp", and optionally:
+!------------------------------------------------------------------------ "key_kppcustom" or "key_kpplktb")
+/
+!-----------------------------------------------------------------------
+&namzdf_gls                !   GLS vertical diffusion                   ("key_zdfgls")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namzdf_ddm    !   double diffusive mixing parameterization             ("key_zdfddm")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namzdf_tmx    !   tidal mixing parameterization                        ("key_zdftmx")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namzdf_tmx_new    !   new tidal mixing parameterization                ("key_zdftmx_new")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namsol        !   elliptic solver / island / free surface
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&nammpp        !   Massively Parallel Processing                        ("key_mpp_mpi)
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namctl        !   Control prints & Benchmark
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namc1d_uvd    !   data: U & V currents                                 ("key_c1d")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namc1d_dyndmp !   U & V newtonian damping                              ("key_c1d")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namsto       ! Stochastic parametrization of EOS
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namnc4        !   netcdf4 chunking and compression settings            ("key_netcdf4")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namtrd        !   diagnostics on dynamics and/or tracer trends         ("key_trddyn" and/or "key_trdtra")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namflo       !   float parameters                                      ("key_float")
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namptr       !   Poleward Transport Diagnostic
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namhsb       !  Heat and salt budgets
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&nam_diaharm   !   Harmonic analysis of tidal constituents ('key_diaharm')
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namdct        ! transports through sections
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namobs       !  observation usage switch                               ('key_diaobs')
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&nam_asminc   !   assimilation increments                               ('key_asminc')
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namsbc_wave   ! External fields from wave model
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namdyn_nept  !   Neptune effect (simplified: lateral and vertical diffusions removed)
+!-----------------------------------------------------------------------
+/
+EOF

+ 36 - 0
templates/genius/namelists/namelist_ice_cfg

@@ -0,0 +1,36 @@
+!!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+!! NEMO/LIM-3 : Ice configuration namelist. Overwrites SHARED/namelist_ice_lim3_ref
+!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+
+!-----------------------------------------------------------------------
+&namicerun     !   Share parameters for dynamics/advection/thermo
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namiceini     !   ice initialisation
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namiceitd     !   Ice discretization
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namicedyn     !   ice dynamic
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namicehdf     !   Ice horizontal diffusion
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namicethd     !   ice thermodynamic
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namicesal     !   ice salinity
+!-----------------------------------------------------------------------
+/
+!-----------------------------------------------------------------------
+&namiceitdme   !   parameters for mechanical redistribution of ice 
+!-----------------------------------------------------------------------
+/

+ 20 - 0
templates/genius/programs.cfg

@@ -0,0 +1,20 @@
+module use /apps/leuven/skylake/2015a/modules/all/
+module_list="netCDF-Fortran/4.4.0-intel-2015a"
+extralibs_list=""
+
+# -----------------------------------------------------------------------------
+# *** NEMO/LIM configuration
+# -----------------------------------------------------------------------------
+
+nemo_src_dir=${HOME}/modeles/nemo/NEMO_DEV
+shared_dir=${nemo_src_dir}/CONFIG/SHARED
+nem_exe_file=${nemo_src_dir}/CONFIG/${nem_config_name}/BLD/bin/nemo.exe
+nem_numproc=10
+
+# -----------------------------------------------------------------------------
+# *** XIOS configuration
+# -----------------------------------------------------------------------------
+
+xio_exe_file=${nemo_src_dir}/EXTERNAL/xios-1.0/bin/xios_server.exe
+xio_numproc=1
+

+ 55 - 0
templates/genius/xios_config/context.xml

@@ -0,0 +1,55 @@
+<!-- =========================================================================================================== -->
+<!-- NEMO context                                                                                                -->
+<!-- =========================================================================================================== -->
+<context id="nemo" time_origin="1950-01-01 00:00:00" >    
+  <!-- $id$ -->
+    
+    <!-- 
+============================================================================================================
+=                                  definition of all existing variables                                    =
+=                                            DO NOT CHANGE                                                 =
+============================================================================================================
+    -->
+
+    <field_definition src="./field_def.xml"/>
+
+    <!-- 
+============================================================================================================
+=                                           output files definition                                        =
+=                                            Define your own files                                         =
+=                                         put the variables you want...                                    =
+============================================================================================================
+    -->
+    
+    <file_definition src="./file_def.xml"/>
+    
+    <!-- 
+============================================================================================================
+= grid definition = = DO NOT CHANGE =
+============================================================================================================
+    -->
+    
+   <axis_definition>  
+      <axis id="deptht"  long_name="Vertical T levels" unit="m" positive="down" />
+      <axis id="depthu"  long_name="Vertical U levels" unit="m" positive="down" />
+      <axis id="depthv"  long_name="Vertical V levels" unit="m" positive="down" />
+      <axis id="depthw"  long_name="Vertical W levels" unit="m" positive="down" />
+      <axis id="nfloat"  long_name="Float number"      unit="-" />
+      <axis id="icbcla"  long_name="Iceberg class"     unit="-" />
+      <axis id="ncatice" long_name="Ice categories"    unit="-" />
+   </axis_definition> 
+    
+   <domain_definition src="./domain_def.xml"/>
+   
+   <grid_definition>    
+      <grid id="grid_T_2D" domain_ref="grid_T"/>
+      <grid id="grid_T_3D" domain_ref="grid_T" axis_ref="deptht"/>
+      <grid id="grid_U_2D" domain_ref="grid_U"/>
+      <grid id="grid_U_3D" domain_ref="grid_U" axis_ref="depthu"/>
+      <grid id="grid_V_2D" domain_ref="grid_V"/>
+      <grid id="grid_V_3D" domain_ref="grid_V" axis_ref="depthv"/>
+      <grid id="grid_W_2D" domain_ref="grid_W"/>
+      <grid id="grid_W_3D" domain_ref="grid_W" axis_ref="depthw"/>
+    </grid_definition>   
+
+</context>

+ 174 - 0
templates/genius/xios_config/file_def.xml

@@ -0,0 +1,174 @@
+<?xml version="1.0"?>
+<!-- 
+     ============================================================================================================
+     =                                           output files definition                                        =
+     =                                            Define your own files                                         =
+     =                                         put the variables you want...                                    =
+     ============================================================================================================
+-->
+
+<file_definition type="multiple_file" name="@expname@_@freq@_@startdate@_@enddate@" sync_freq="1d" min_digits="4">
+  
+  <file_group id="1ts" output_freq="1ts" output_level="10" enabled=".TRUE."/> <!-- 1 time step files -->
+
+  <file_group id="1h" output_freq="1h" output_level="10" enabled=".TRUE."/> <!-- 1h files -->
+  <file_group id="2h" output_freq="2h" output_level="10" enabled=".TRUE."/> <!-- 2h files -->
+  <file_group id="3h" output_freq="3h" output_level="10" enabled=".TRUE."/> <!-- 3h files -->     
+  <file_group id="4h" output_freq="4h" output_level="10" enabled=".TRUE."/> <!-- 4h files -->
+  <file_group id="6h" output_freq="6h" output_level="10" enabled=".TRUE."/> <!-- 6h files -->     
+  
+  <file_group id="1d" output_freq="1d" output_level="10" enabled=".TRUE."> <!-- 1d files -->   
+
+    <file id="file1" name_suffix="_grid_T" >
+      <field field_ref="sst"        name="tos"      />
+      <field field_ref="sss"        name="sos"      />
+
+      <field field_ref="mldkz5"     name="mldkz5"   />
+      <field field_ref="mldr10_1"   name="mldr10_1" />
+    </file>
+
+    <file id="file2" name_suffix="_icemod" >
+      <field field_ref="snowthic_cea"   name="snthic"  />
+      <field field_ref="icethic_cea"    name="sithic"  />
+      <field field_ref="iceconc"        name="siconc"  />
+      <field field_ref="icevolu"        name="sivol"   />
+
+      <field field_ref="uice_ipa"       name="sivelu"  />
+      <field field_ref="vice_ipa"       name="sivelv"  />
+      <field field_ref="icevel"         name="sivelo"  />
+      <field field_ref="idive"          name="sidive"  />
+      <field field_ref="ishear"         name="sishea"  />
+    </file>
+
+  </file_group> 
+
+  <file_group id="1m" output_freq="1mo" output_level="10" enabled=".TRUE."> <!-- real monthly files -->
+
+    <file id="file3" name_suffix="_grid_T" >
+      <field field_ref="e3t"                        />      
+      <field field_ref="toce"       name="thetao"   operation="instant" freq_op="1mo" > @toce_e3t / @e3t </field>     
+      <field field_ref="soce"       name="so"       operation="instant" freq_op="1mo" > @soce_e3t / @e3t </field>    
+  
+      <field field_ref="sst"        name="tos"      />
+      <field field_ref="sss"        name="sos"      />
+      <field field_ref="ssh"        name="zos"      />
+
+      <field field_ref="mldkz5"     name="mldkz5"   />
+      <field field_ref="mldr10_1"   name="mldr10_1" />
+    </file>
+
+    <file id="file4" name_suffix="_SBC" >
+      <field field_ref="precip"    name="precip"  />
+      <field field_ref="snowpre"   name="snowpre" />
+      <field field_ref="empmr"     name="empmr"   />
+      <field field_ref="runoffs"   name="runoffs" />
+      <field field_ref="erp"       name="erp"     /> 
+      <field field_ref="fmmflx"    name="fmmflx"  /> 
+      <field field_ref="saltflx"   name="saltflx" /> 
+
+      <field field_ref="qt"        name="qt"      />
+      <field field_ref="qns"       name="qns"     />
+      <field field_ref="qsr"       name="qsr"     />
+
+      <field field_ref="taum"      name="taum"    />    
+
+      <field field_ref="fwfisf"    name="fwfisf"  />    
+      <field field_ref="qisf"      name="qisf"    />
+    </file>
+
+    <file id="file5" name_suffix="_grid_U" >
+      <field field_ref="ssu"    name="uos"   />
+      <field field_ref="utau"   name="tauuo" />
+      <field field_ref="uoce"   name="uo"    operation="instant" freq_op="1mo" > @uoce_e3u / @e3u </field>
+    </file>
+    
+    <file id="file6" name_suffix="_grid_V" >
+      <field field_ref="ssv"    name="vos"   />
+      <field field_ref="vtau"   name="tauvo" />
+      <field field_ref="voce"   name="vo"    operation="instant" freq_op="1mo" > @voce_e3v / @e3v </field>
+    </file>
+
+    <file id="file7" name_suffix="_icemod" >
+      <field field_ref="snowthic_cea"   name="snthic"  />
+      <field field_ref="icethic_cea"    name="sithic"  />
+      <field field_ref="icevolu"        name="sivolu"  />
+      <field field_ref="snowvol"        name="snvolu"  />
+      <field field_ref="iceconc"        name="siconc"  />
+
+      <field field_ref="utau_ice"       name="sitauu"  />
+      <field field_ref="vtau_ice"       name="sitauv"  />
+      <field field_ref="uice_ipa"       name="sivelu"  />
+      <field field_ref="vice_ipa"       name="sivelv"  />
+      <field field_ref="icevel"         name="sivelo"  />
+      <field field_ref="idive"          name="sidive"  />
+      <field field_ref="ishear"         name="sishea"  />
+      <field field_ref="icestr"         name="sistre"  />
+
+      <field field_ref="iceprod_cea"    name="siprod"  />
+      <field field_ref="afxtot"         name="afxtot"  />
+      <field field_ref="afxdyn"         name="afxdyn"  />
+      <field field_ref="afxthd"         name="afxthd"  />    
+      <field field_ref="miceage"        name="siages"  />
+
+      <field field_ref="micesalt"       name="sisali"  /> 
+      <field field_ref="ibrinv"         name="sibrin"  />
+      <field field_ref="micet"          name="sitemp"  />
+      <field field_ref="icest"          name="sistem"  />
+      <field field_ref="icehc"          name="siheco"  />
+      <field field_ref="isnowhc"        name="snheco"  />
+
+      <field field_ref="alb_ice"        name="alb_ice" />
+      <field field_ref="qt_oce"         name="qt_oce"  />
+      <field field_ref="qsr_oce"        name="qsr_oce" />
+      <field field_ref="qns_oce"        name="qns_oce" />
+      <field field_ref="qt_ice"         name="qt_ice"  />
+      <field field_ref="qsr_ice"        name="qsr_ice" />
+      <field field_ref="qns_ice"        name="qns_ice" />
+      <field field_ref="qtr_ice"        name="qtr_ice" />
+      <field field_ref="hfxtur"         name="hfxtur"  />
+
+      <field field_ref="vfxbog"         name="vfxbog"  />
+      <field field_ref="vfxdyn"         name="vfxdyn"  />
+      <field field_ref="vfxopw"         name="vfxopw"  />
+      <field field_ref="vfxsni"         name="vfxsni"  />
+      <field field_ref="vfxsum"         name="vfxsum"  />
+      <field field_ref="vfxbom"         name="vfxbom"  />
+      <field field_ref="vfxres"         name="vfxres"  />
+      <field field_ref="vfxice"         name="vfxice"  />
+      <field field_ref="vfxsnw"         name="vfxsnw"  />
+      <field field_ref="vfxsub"         name="vfxsub"  />
+      <field field_ref="vfxspr"         name="vfxspr"  />
+      <field field_ref="vfxthin"        name="vfxthin" />
+
+      <field field_ref="sfxbri"         name="sfxbri"  />
+      <field field_ref="sfxdyn"         name="sfxdyn"  />
+      <field field_ref="sfxres"         name="sfxres"  />
+      <field field_ref="sfxbog"         name="sfxbog"  />
+      <field field_ref="sfxbom"         name="sfxbom"  />
+      <field field_ref="sfxsum"         name="sfxsum"  />
+      <field field_ref="sfxsni"         name="sfxsni"  />
+      <field field_ref="sfxopw"         name="sfxopw"  />
+      <field field_ref="sfxsub"         name="sfxsub"  />
+      <field field_ref="sfx"            name="sfx"     />
+    </file>
+
+    <file id="file8" name_suffix="_icemoa" >
+      <field field_ref="iceconc_cat"    name="siconcat" />
+      <field field_ref="icethic_cat"    name="sithicat" />
+      <field field_ref="snowthic_cat"   name="snthicat" />
+    </file>
+
+  </file_group>
+
+  <file_group id="2m" output_freq="2mo" output_level="10" enabled=".TRUE."/> <!-- real 2m files -->
+  <file_group id="3m" output_freq="3mo" output_level="10" enabled=".TRUE."/> <!-- real 3m files -->
+  <file_group id="4m" output_freq="4mo" output_level="10" enabled=".TRUE."/> <!-- real 4m files -->
+  <file_group id="6m" output_freq="6mo" output_level="10" enabled=".TRUE."/> <!-- real 6m files -->
+
+  <file_group id="1y"  output_freq="1y"  output_level="10" enabled=".TRUE."/> <!-- real yearly files -->
+  <file_group id="2y"  output_freq="2y"  output_level="10" enabled=".TRUE."/> <!-- real 2y files -->
+  <file_group id="5y"  output_freq="5y"  output_level="10" enabled=".TRUE."/> <!-- real 5y files -->
+  <file_group id="10y" output_freq="10y" output_level="10" enabled=".TRUE."/> <!-- real 10y files -->
+
+</file_definition>
+

+ 33 - 0
templates/genius/xios_config/iodef.xml

@@ -0,0 +1,33 @@
+<?xml version="1.0"?>
+<!-- =========================================================================================================== -->
+<!-- iodef.xml : Configuration file for production of output files using XIOS                                    -->
+<!--             This file contains the context XIOS.                                                            -->
+<!--             The model components context will be add automatically by the comp.driver                       -->
+<!-- =========================================================================================================== -->
+
+<simulation>
+
+  <!-- =========================================================================================================== -->
+  <!-- XIOS context                                                                                                -->
+  <!-- =========================================================================================================== -->
+  <context id="xios">
+
+    <variable_definition>
+	
+     <!-- We must have buffer_size > jpi*jpj*jpk*8 (with jpi and jpj the subdomain size) -->
+	  <variable id="buffer_size"               type="integer">50000000</variable>
+	  <variable id="buffer_server_factor_size" type="integer">2</variable>
+	  <variable id="info_level"                type="integer">0</variable>
+	  <variable id="using_server"              type="boolean">true</variable>
+	  <variable id="using_oasis"               type="boolean">false</variable>
+	  <variable id="oasis_codes_id"            type="string" >LMDZ,oceanx</variable>
+	
+      </variable_definition>
+               
+  </context>
+
+  <!-- =========================================================================================================== -->
+  <!-- COMPONENT CONTEXT : the model components context will be add automatically by the comp.driver               -->
+  <context id="nemo" src="./context.xml"/>
+  
+</simulation>