| 1 | Author: '''Jérôme Chanut, Mercator Océan''' |
| 2 | |
| 3 | Page related to ticket: #1620 and associated to the following development branch: |
| 4 | [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5847_MERCATOR9_solveur_simplification] |
| 5 | |
| 6 | This development is part of the shared simplication process, task: SIMPLIF-2: Removal of filtered free surface. Split explicit and explicit free surface only. |
| 7 | |
| 8 | '''Step 1: Remove filtered free surface option and associated key_dynspg_flt key''' |
| 9 | |
| 10 | |
| 11 | 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]] |
| 12 | 2) Suppress SOL directory and dynspg_flt module[[BR]] |
| 13 | |
| 14 | 3) Clean momentum trend routines related to filtered free surface (trddyn, trdken, trd_oce).[[BR]] |
| 15 | 4) Update reference configurations: [[BR]] |
| 16 | - Replace key_dynspg_flt by key_dynspg_ts if needed in CONFIG/* directories. [[BR]] |
| 17 | - Remove namsol block in namelist_* and references to flt variables (trends) in field_def.xml[[BR]] |
| 18 | - SETTE: update sette.sh, to remove modifications of namelist variables related to solver. [[BR]] |
| 19 | |
| 20 | NB: one should change "solver.stat" file and numsol names in stp_ctl and in_out_manager... keep it as is for the time being[[BR]] |
| 21 | |
| 22 | ==> '''Commit changes to revision:5868''' |
| 23 | [https://forge.ipsl.jussieu.fr/nemo/changeset?old_path=%2Fbranches%2F2015%2Fdev_r5847_MERCATOR9_solveur_simplification&old=5867&new_path=%2Fbranches%2F2015%2Fdev_r5847_MERCATOR9_solveur_simplification&new=5868] |
| 24 | |
| 25 | ==> Pass Sette tests:YES |
| 26 | |
| 27 | '''Step 2: Suppress implicit pressure gradient option, ln_hpg_imp=T ''' |
| 28 | |
| 29 | Since this option is not supported with the now default split explicit free surface: remove it ( => simpler step routine). |
| 30 | ln_hpg_imp namelist variable suppressed in reference namelist.[[BR]] |
| 31 | |
| 32 | ==> Commit changes to revision: ???[[BR]] |
| 33 | ==> Pass Sette tests:??? |
| 34 | |
| 35 | '''Step 3: Time Stepping readibility '''[[BR]] |
| 36 | |
| 37 | 1)''' dynzdf'''[[BR]] |
| 38 | Make time stepping identical in explicit or split-explicit cases => assume that "after" velocities not tendencies are available after vertical diffusion of momentum (as for tracers) => modify dynzdf routines |
| 39 | |
| 40 | 2) '''step'''[[BR]] |
| 41 | - Remove useless conditions depending on ln_dynspg_ts in step. Group all dynamic trends at the same place (at the beginning of the time stepping). Still keep dynnxt after tracer time stepping at the end.[[BR]] |
| 42 | - Assuming ua/va are not used anymore during tracer computation as working arrays, remove temporary 3d arrays ua_sv, va_sv |
| 43 | |
| 44 | ==> Commit changes to revision: ???[[BR]] |
| 45 | ==> Pass Sette tests:??? |
| 46 | |
| 47 | '''Step 4: additional simplifications''' |
| 48 | - Remove key_dynspg_ts and key_dynspg_exp cpp keys (create namelist block to choose between the two) |
| 49 | - Suppress dynspg_oce module ? |
| 50 | - Others ? |
| 51 | |
| 52 | ==> Commit changes to revision: ???[[BR]] |
| 53 | ==> Pass Sette tests:??? |