Merge fiesta 🎉 code cleanup session
Merge request: !256 (closed)
Namelist
-
&namflo ! float parameters? (PM) -
&nam_diadct ! transports through some sections? (GS and SB) -
&namnc4 ! netcdf4 chunking and compression settings : set netcdf4 mandatory and rm key_netcdf4 + default chunking only ? (PM and SM) -
Remove ln_dynvor_eeT option which has been proved inefficient (if not unstable) (GM + ST) -
Simply ln_dynvor_enT note to finish dynvor mask (GM and ST) -
Remove ln_hpg_zps and associated subroutine (hpg_zps) which is no more used add a note that this option has been replaced (+ add to doc) (GM and ST) -
Is ln_use_jattr = .false. really used ? (AC) -
One of the wetting & drying (iterative limiter option, ln_wd_il) options (AC) -
Merge namc1d and namc1d_uvd namelists (GM + ST) -
Remove ln_ldfeiv_dia and more generally all namelist variable needed to perform a diagnostic :use instead iom_use( xml name of the diag ) All dia io request logicals in the namelist are useless and need to be managed by iom use. (GM + ST) -
Another example: remove &nam_dia25h and ln_dia25h and define this averaging in the field_def.xml (GM + ST)
Other
-
Remove the index offsets e.g. in fldread, replace with wrapper function e.g. throughout eosbn2 (DC) -
As nn_hls 2 is now the default and nn_hls=1 is not working any more, clean the ICB code (no more *_e 2d array). (#220, PM) -
Check about the limitation on the domain shape for the icb (you need at least 2 cores). Note that there is a special lbc_lnk for this. (???) -
Remove references to nn_hls where not needed (e.g. where we should use DO_2D(2, 2, 2, 2) instead of DO_2D(nn_hls, nn_hls, nn_hls, nn_hls). Keep it where absolutely needed and remove elsewhere. Limit the use of jpi and jpj. nn_hls -1 should not exist anymore but nn_hls with DO_2D should (DC + IE) -
Remove sea-ice dependent global volume initialization ? (To be discussed by JC, CR and GM)
Tools
-
Can we go through available TOOLS to check what is still working, what need updates, or what can be safely removed so we may setup an action on this (TL) -
Remove some not necessary tools: MPP_PREP, remove REBUILD (REBUILD_NEMO is doing the job), -
NESTING* (same capability in the DOMAINcfg ?) (???) -
NESTING is for regional configs and is convenient to keep it. BUT it has the wrong name. NESTING and NESTING_AGRIF need to be merged / one deleted and merged into DOMAINcfg (CR) -
Delete list : MPP_PREP, REBUILD (#219 (closed), PM) -
SIREN is used but needs to be updated (GS will ask at MOI for someone to do it) -
Remove BDY_TOOLS (CR)
Code speedup
-
eosbn2 : combine compute all together alpha, beta and N^2 with storage of alpha and beta in 2D arrays only if iso-neutral diffusion is used. (GM) -
ln_hpg_djc : memory access optimization is possible but not done. I have an optimized but untested version (MB will do it if GM sends him the code)