Changes between Version 17 and Version 18 of 2014WP/2014_SystemSimplification_v2
- Timestamp:
- 2015-10-25T12:04:17+01:00 (9 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
2014WP/2014_SystemSimplification_v2
v17 v18 1 '''Actions on System Simplication towards NEMO 4.0 ''' [[BR]] [[BR]] 1 [[PageOutline]] Last edited [[Timestamp]] 2 3 '''Actions on System Simplication: towards NEMO 4.0'''[[BR]] [[BR]] 2 4 3 5 '''Motivation''': … … 17 19 Notations: 18 20 19 ''' *'''core action (supported by all system team)21 ''' *''' core action (supported by all system team) 20 22 21 ''' -'''subject to discussion23 ''' -''' subject to discussion 22 24 23 ''' ?'''feasible but all conditions required are not yet met25 ''' ?''' feasible but all conditions required are not yet met 24 26 25 [[BR]] [[BR]] '''I. CHANGE in options used by default''' 27 ---- 28 [[BR]] '''I. CHANGE in options used by default''' 26 29 27 '''*''' '''non-linear free surface''': by default ('''WP 2015''') ==>> 30 '''*''' '''non-linear free surface''': by default ('''WP 2015''') ==>> see NOC3 2015 branch 28 31 29 32 '''*''' '''filtered free surface''': remove it as well as all its associated solvers ('''WP 2015''') 30 33 31 pre-requirement, AGRIF with time-splitting ( done in 2013) and deeply tested ( WP 2014 ), ''' DONE (v3.6 stable)'''34 pre-requirement, AGRIF with time-splitting ( done in 2013) and deeply tested ( WP 2014 ), ''' DONE (v3.6 stable)''' 32 35 33 36 '''*''' '''vertical coordinate''' : default option mixte zps/s-tilde coordinate (thus with variable volume level), with mixte zps*/s*, mixte z/s, zps, z and s coordinate system as sub-option (same code used) (2014-2015 ?) 34 37 35 !- tracer solved as thickness weighted tracer: D,, t,, (e,, 3t,, T) (''' WP 2015''' ) ==>>see NOC3 2015 branch38 !- tracer solved as thickness weighted tracer: D,, t,, (e,, 3t,, T) (''' WP 2015''' ) ==>> see NOC3 2015 branch 36 39 37 !- thickness weighted quantities in the outputs ( WP2014 ) ''' DONE (v3.6 stable)'''40 !- thickness weighted quantities in the outputs ( WP2014 ) ''' DONE (v3.6 stable)''' 38 41 39 !- no more substitute (domzgr_substitute.h90): all e3 always defined at before, now and after time steps (WP 2015) ==>> 42 !- no more substitute (domzgr_substitute.h90): all e3 always defined at before, now and after time steps (WP 2015) ==>> see NOC3 2015 branch 40 43 41 44 !- adapt OFFLINE for tracer to variable volume (WP 2015) … … 43 46 !- For OFFLINE, compute the grid in the same way than in ONLINE. 44 47 45 '''*''' '''linear ssh''' option set without optimization (i.e. starting from the non-linear case with minimal changes, not optimal changes). ('''2015''') ==>> 48 '''*''' '''linear ssh''' option set without optimization (i.e. starting from the non-linear case with minimal changes, not optimal changes). ('''2015''') ==>> see NOC3 2015 branch 46 49 47 50 '''*''' '''sea-ice''' : embedded sea-ice as default … … 51 54 !- Suppress levitating sea ice with mass exchange (?) CICE issue… 52 55 53 !- need the management of grounded-ice & land-fast ice (''' WP 2016''')56 !- need the management of grounded-ice & land-fast ice (''' WP 2016''' ) 54 57 55 58 !- need BDY compatibility with embedded sea-ice …. (who when?) … … 61 64 '''*''' '''vertical physics''': simplification versus diversity 62 65 63 !- keep only one (GLS) ? or maintain some diversity? ==>> ''' keep both TKE and GLS'''66 !- keep only one (GLS) ? or maintain some diversity? ==>> ''' keep both TKE and GLS''' 64 67 65 !- KPP remove unless if-less KPP is implemented (Lemarié et al 2012). Keeping a validated KPP scheme in the system make sense for comparison purposes. ''' ==>> DONE in '''[https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF]68 !- KPP remove unless if-less KPP is implemented (Lemarié et al 2012). Keeping a validated KPP scheme in the system make sense for comparison purposes. ''' ==>> DONE in ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] 66 69 67 !- suppress or keep the explicit vertical diffusion? needed for numerical tests, we keep explicit option, but implicit is the default choice. !- introduce a manager of vertical physics called by step.F90 with the following features: ''' ==>> see ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_ZDF 2015/dev_r5721_CNRS9_NOC3_ZDF] [[BR]](1) minimization of lvc_lnk communication (remove ~10 lvc_lnk call) ; (2) remove avmu, and avmv ; (3) remove all key_zdf... CPP keys (replaced by namelist logicals) ; (4) remove zdfddm_subsitute.h90 : ave is always defined) ; (5) introduce a separate computation of the shear production term (shared by TKE and GLS)70 !- suppress or keep the explicit vertical diffusion? needed for numerical tests, we keep explicit option, but implicit is the default choice. !- introduce a manager of vertical physics called by step.F90 with the following features: ''' ==>> see ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_ZDF 2015/dev_r5721_CNRS9_NOC3_ZDF] [[BR]] (1) minimization of lvc_lnk communication (remove ~10 lvc_lnk call) ; (2) remove avmu, and avmv ; (3) remove all key_zdf... CPP keys (replaced by namelist logicals) ; (4) remove zdfddm_subsitute.h90 : ave is always defined) ; (5) introduce a separate computation of the shear production term (shared by TKE and GLS) 68 71 69 [[BR]]'''II.OBSOLESCENT features''' [[BR]] 72 ---- 73 '''II.OBSOLESCENT features''' [[BR]] 70 74 71 75 '''mains''': 72 76 73 ''' *''' remove ''' LIM2''' : only LIM3 remains in the system (''' WP 2016''')77 ''' *''' remove ''' LIM2''' : only LIM3 remains in the system (''' WP 2016''' ) 74 78 75 ''' *''' remove ''' OBC''' : only BDY remains in the system ''' ==>> DONE in v3.6''' '''stable'''79 ''' *''' remove ''' OBC''' : only BDY remains in the system ''' ==>> DONE in v3.6''' ''' stable''' 76 80 77 ''' *''' remove ''' OASIS''' 3 and 4 : OASIS-MCT instead '''==>> DONE in v3.6 stable'''81 ''' *''' remove ''' OASIS''' 3 and 4 : OASIS-MCT instead ''' ==>> DONE in v3.6 stable''' 78 82 79 ''' -''' duplicate ''' isoneutral operator''': keep only the triad operator (Griffies' one) ? Tests needed before decision. Those tests should be planed in 2016 (NOCS+LOCEAN) ????83 ''' -''' duplicate ''' isoneutral operator''' : keep only the triad operator (Griffies' one) ? Tests needed before decision. Those tests should be planed in 2016 (NOCS+LOCEAN) ???? 80 84 81 85 '''smaller ones''' 82 86 83 ''' *''' remove ''' acceleration of convergence'''(notably rdttra=F(k) ==> unique rdt)87 ''' *''' remove ''' acceleration of convergence''' (notably rdttra=F(k) ==> unique rdt) 84 88 85 ''' *''' remove ''' Neptune effect''' : ORCA1 runs shows its inefficiency. '''==>> DONE in '''[https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF]89 ''' *''' remove ''' Neptune effect''' : ORCA1 runs shows its inefficiency. ''' ==>> DONE in ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] 86 90 87 ''' *''' remove ''' no-slip accurate''' option (key_noslip_accurate). Module divcur.F90 ''' ==>> DONE in '''[https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF]91 ''' *''' remove ''' no-slip accurate''' option (key_noslip_accurate). Module divcur.F90 ''' ==>> DONE in ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] 88 92 89 ''' *''' suppress ''' cross-land advection''' : this option is hard coded for ORCA_R2_L31 and is nomore used. ''' ==>> DONE in '''[https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF]93 ''' *''' suppress ''' cross-land advection''' : this option is hard coded for ORCA_R2_L31 and is nomore used. ''' ==>> DONE in ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] 90 94 91 ''' *''' suppress ''' key_traldf_ano'''and the associated possibility of computing lateral diffusion on tracer using only the departure from a given profile. (==>> done in branch [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2014 2014/dev_CNRS0_NOC1_LDF]95 ''' *''' suppress ''' key_traldf_ano''' and the associated possibility of computing lateral diffusion on tracer using only the departure from a given profile. (==>> done in branch [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2014 2014/dev_CNRS0_NOC1_LDF] 92 96 93 ''' -''' ''' Smagorinsky''' : to be removed. ''' ==>> DONE in '''[https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF]97 ''' -''' ''' Smagorinsky''' : to be removed. ''' ==>> DONE in ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] 94 98 95 ''' -''' ''' Non-penetrative convection''' : with its correction and improvement using alpha & beta (work done by L. Brodeau, Stockholm), it seems now better to keep it in the system. '''==>> DONE in v3.6 stable'''99 ''' -''' ''' Non-penetrative convection''' : with its correction and improvement using alpha & beta (work done by L. Brodeau, Stockholm), it seems now better to keep it in the system. ''' ==>> DONE in v3.6 stable''' 96 100 97 ''' -''' ''' runoffs''': only introduced as lateral flow: remove the option of runoff as surface boundary condition as well as specific treatment in vicinity of river mouths.101 ''' -''' ''' runoffs''' : only introduced as lateral flow: remove the option of runoff as surface boundary condition as well as specific treatment in vicinity of river mouths. 98 102 99 ''' -''' ''' passive tracers''': use trasbc routines for passive tracers to add the river inputs of nutrients103 ''' -''' ''' passive tracers''' : use trasbc routines for passive tracers to add the river inputs of nutrients 100 104 105 ---- 101 106 '''I/O''' 102 107 103 ''' *''' remove Dimg format (agreement obtained from the DRAKKAR group) (2015)==>> Italian branch108 ''' *''' remove Dimg format (agreement obtained from the DRAKKAR group) (2015) ==>> Italian branch 104 109 105 ''' ?''' remove IOIPSL : 2 issues, still use in some places, and XIOs portability… ('' '''probably much too early to decide that'' ''')110 ''' ?''' remove IOIPSL : 2 issues, still use in some places, and XIOs portability… ('' ''' probably much too early to decide that'' ''' ) 106 111 107 ''' *''' use of XIOS logical to control the computation of diagnostics (2014-2015), already done but only for LIM3, see [https://forge.ipsl.jussieu.fr/nemo/browser/branches/dev_r4028_CNRS_LIM3_MV2014 dev_r4028_CNRS_LIM3_MV2014] )[[BR]]generalize its use throughout the code !112 ''' *''' use of XIOS logical to control the computation of diagnostics (2014-2015), already done but only for LIM3, see [https://forge.ipsl.jussieu.fr/nemo/browser/branches/dev_r4028_CNRS_LIM3_MV2014 dev_r4028_CNRS_LIM3_MV2014] )[[BR]] generalize its use throughout the code ! 108 113 114 ---- 109 115 '''CODE cleaning''' 110 116 111 ''' *''' LDF: remove 1D and 2D cases, keep only 3D ; laplacian and bilaplacian coefficients defined at the same points (T and F) ; time varying coefficients (function of growth rate of baroclinic instabilities, of the local velocity...): better integration rather than configuration dependent cases. This is also associated with the re-writing of bilaplacian operator on tracer and on dynamics as re-entrant laplacian operator. As a results, curl and div are no more required in the restart file.''' DONE in '''[https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF]117 ''' *''' LDF: remove 1D and 2D cases, keep only 3D ; laplacian and bilaplacian coefficients defined at the same points (T and F) ; time varying coefficients (function of growth rate of baroclinic instabilities, of the local velocity...): better integration rather than configuration dependent cases. This is also associated with the re-writing of bilaplacian operator on tracer and on dynamics as re-entrant laplacian operator. As a results, curl and div are no more required in the restart file.''' DONE in ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] 112 118 113 ''' *''' OBS operator : clean the stand-alone implementation (''' WP 2015''' )119 ''' *''' OBS operator : clean the stand-alone implementation (''' WP 2015''' ) 114 120 115 ''' *''' suppress most of the CPP keys, if not all of them (2014-2015 ?)121 ''' *''' dynamical allocation: return back to standard allocation (?) (no more ''' CALL ''' wrk_alloc and ''' CALL ''' wrk_dealloc) Evaluation to decided what to do (''' WP 2014''' ) 116 122 117 ''' *''' dynamical allocation: return back to standard allocation (?) (no more ''' CALL ''' wrk_alloc and ''' CALL ''' wrk_dealloc) Evaluation to decided what to do (''' WP 2014''' )123 ''' *''' no more potential density (zdfnpc and MLD computed from alpha & beta) ==>>> ????? 118 124 119 ''' *''' no more potential density (zdfnpc and MLD computed from alpha & beta) ==>>> ?????125 ''' *''' remove all ''' hard coded specific alterations''' associated with configurations (ORCA,…) while introducing associated input files (2014-2015 ?)[[BR]] - strait width reduction in domhgr : ''' ==>> DONE in ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] [[BR]] - cross-land advection (ORCA2 only) removed ''' ==>> DONE in ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] 120 126 121 ''' *''' remove all '''hard coded specific alterations''' associated with configurations (ORCA,…) while introducing associated input files (2014-2015 ?)[[BR]] - strait width reduction in domhgr : ''' ==>> DONE in ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] [[BR]] - cross-land advection (ORCA2 only) removed '''==>> DONE in '''[https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF]127 ''' *''' same for the definition of coordinate system (s, mixed z-s): only a simple case hard coded. For more sophisticated cases, the required information should be read in an input file. (2015 ?) ''' *''' suppress most of the CPP keys, if not all of them (2015-2016): 122 128 123 ''' *''' same for the definition of coordinate system (s, mixed z-s): only a simple case hard coded. For more sophisticated cases, the required information should be read in an input file. (2015 ?)129 ''' * ''' LDF simplification ==>> the 9 related keys have been suppressed (''' key_ldfslp''' ; ''' ley_ldftra_eiv''' ; ''' key_traldf_ano''' ; ''' key_traldf_c1d''' , ''' key_traldf_c2d''' , ''' key_traldf_c3d''' ; ''' key_dynldf_c1d''' , ''' dynldf_c2d''' , ''' dynldf_c3d''' ) ''' ==>> DONE in ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] ''' *''' remove the ''' key_esopa''' option that allow to compile and test all code option that are controlled by a cpp key. ''' ==>> DONE in ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] 124 130 125 ''' -''' remove the key_esopa option that allow to compile and test all code option that are controlled by a cpp key. With the removal of nearly all cpp keys, it should become useless...''' DONE in ''' [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] 126 ? '''key_mpp_rep''' : this option should become the default case ! global sum without this option should be removed. '''NOT discussed yet''' 131 * remove '''key_vectopt_loop''' from all the code except in ''vectopt_loop_substitute.h90'' (it is an obsolescent feature only adapted to vector computers) '''==>> DONE in '''[https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] 132 * remove '''key_noslip_accurate''' ''' ''' '''==>> DONE in '''[https://forge.ipsl.jussieu.fr/nemo/browser/branches/2015/dev_r5721_CNRS9_NOC3_LDF 2015/dev_r5721_CNRS9_NOC3_LDF] 133 134 ---- 135 '''New ideas to be discussed :''' 136 137 • remove''' key_mpp_rep''' : this option should become the default case ! Global sum without this option should be removed. •