New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
ticket/1620_MERCATOR_SOLVER_SIMPLIFICATION (diff) – NEMO

Changes between Version 11 and Version 12 of ticket/1620_MERCATOR_SOLVER_SIMPLIFICATION


Ignore:
Timestamp:
2015-11-20T16:40:37+01:00 (8 years ago)
Author:
gm
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ticket/1620_MERCATOR_SOLVER_SIMPLIFICATION

    v11 v12  
    77'''Step 1: Remove filtered free surface option and associated key_dynspg_flt key''' 
    88 
    9   1) Remove parts of the code specific to "key_dynspg_flt" or lk_dynspg_flt=T and the need for solver modules in the code.[[BR]]          2) Suppress SOL directory and dynspg_flt module[[BR]] 
     9  1) Remove parts of the code specific to "key_dynspg_flt" or lk_dynspg_flt=T and the need for solver modules in the code.[[BR]]                2) Suppress SOL directory and dynspg_flt module[[BR]] 
    1010 
    11113) Clean momentum trend routines related to filtered free surface (trddyn, trdken, trd_oce).[[BR]] 4) Update reference configurations: [[BR]] 
     
    5555'''Step 4: Additional things to do:''' 
    5656 
     57 * Answering Gurvan' review : 
     58 
     59change in namelist : 
     60 
     61remove both  '''key_dynspg_exp'''  and '''key_dynspg_ts''', create instead namdyn_spg with ln_dynspg_exp  and ln_dynspg_ts   and all the namsplit namelist + change in some names (ln_bt_nn_auto  becomes ln_bt_auto) : 
     62 
     63{{{ 
     64!----------------------------------------------------------------------- 
     65&namdyn_spg      !  surface pressure gradient computation 
     66!----------------------------------------------------------------------- 
     67   ln_dynspg_exp = .FALSE.   !  explicit free surface 
     68   ln_dynspg_ts  = .FALSE.   !  split-explicit free surface 
     69      ln_bt_fw   = .TRUE.    !  Forward integration of barotropic Eqs. 
     70      ln_bt_av   = .TRUE.    !  Time filtering of barotropic variables 
     71         nn_bt_flt =    1       !  Time filter choice  = 0 None 
     72         !                      !                      = 1 Boxcar over   nn_baro sub-steps 
     73         !                      !                      = 2 Boxcar over 2*nn_baro  "    " 
     74      ln_bt_auto  = .TRUE.   !  number of sub-step defined from: 
     75         rn_bt_cmax =  0.8      ! =T : the Maximum Courant Number allowed 
     76         nn_baro    = 30        ! =F : the number of sub-step in rn_rdt seconds 
     77/ 
     78 
     79}}} 
     80Note that ln_dynspg_exp =  ln_dynspg_ts = .FALSE. in the ref namelist so that this namelist should be systematical fill up in cfg namelist. 
     81 
     82I don't understand the difference between  nn_bt_flt=0  and ln_bt_av=F ....??? 
     83 
     84Note that array of time-splitting part should only be allocated if ln_dynspg_ts=TRUE 
     85 
     86dynspg_exp   should be modified so that it return the after velocity as dynspg_ts    ===>>> simplify dynnxt.F90 
     87 
     88dynspg_oce  should be suppressed : all variables should be declared either in dynspg.F90 (ln_dynspg_exp and ln_dynspg_ts) or in dynspg_ts for the others 
     89 
     90[[BR]]Step.F90   further simplification are needed here : 
     91 
     92with removal of solver the DYNAMICS should always be called first ! even in case of explicit free surface !!!!! 
     93 
     94The only 2 differences is that in explicit free surface un,vn are not updated after the dynamics, and domvvl is called before the dynamics instead of after the dynamics (or in-between if you don’t follow the remark just below) 
     95 
     96Q? why splitting the Dynamics in two parts?  make the approximation dz(Ua) computed with e3uw_n ? to be tested … 
     97 
     98Furthermore, you can notice that ua,va are no more used as workspace in the tracers, ua_sv and va_sn are no more needed , no? 
     99 
    57100 * Correct momentum trend computation with time splitting (Gurvan, your input here ?) 
    58101 * Remove filtered free surface from documentation