Changes between Version 5 and Version 6 of 2020WP/KERNEL-06_techene_better_e3_management
- Timestamp:
- 2020-03-19T14:23:48+01:00 (4 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
2020WP/KERNEL-06_techene_better_e3_management
v5 v6 15 15 ||=Digest || compute e3 on the fly from e3_0(:,:,:,Ktl) * ( 1 + ssh(:,:,Ktl) / h_0( :,: ) * mask( :,:,: ) instead of storing e3t/u/v/w/f... || 16 16 ||=Dependencies || If any || 17 ||=Branch || source:/NEMO/branches/2020/dev_r {REV}_{ACTION_NAME}||17 ||=Branch || source:/NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3 || 18 18 ||=Previewer(s) || Madec || 19 19 ||=Reviewer(s) || Madec || … … 38 38 }}} 39 39 40 1/ REFERENCE version change the way to compute the e3 using ssh instead of interpolating \\ 41 For this we need to modify : \\ 42 - cfgs/GYRE_PISCES/cpp_GYRE_PISCES.fcm (top de-activation) \\ 43 - src/OCE/DOM/dom_oce.F90 (declaration and allocation of new variable) \\ 44 - src/OCE/DOM/domain.F90 (initialisation of h new variables) \\ 45 - src/OCE/DOM/dommsk.F90 (initialisation of mask new variable) \\ 46 - src/OCE/DOM/domvvl.F90 (dom_vvl_interpol and dom_vvl interpol_3d) \\ 47 - src/OCE/DYN/dynatf.F90 (change but no effect since ln_dynadv_vec = .true.) 48 - src/OCE/TRA/traatf.F90 (change the e3t update with Asselin filter) 49 - src/OCE/step.F90 (change the ordering ssh >> tra >> dyn) \\ 40 Step 1 : Check the error for e3t, e3w between the current way to compute e3 at T-, W-point and the proposed way to compute e3 at T-, W-point. 50 41 42 Because this change is likely to induce changes in the code we need to insure and because we need backward compatibility, we will duplicate the modules that will be modified and implement changes gradually. 43 Step 2 : First we change only the core routine in domvvl which should be changed into domQE. 44 - add new variables, duplicate step into steplf and domvvl into domQE 45 - change interpolation routines into scaling routines in domQE 46 Step 3 : Then we change the Asselin filtering routine indeed because water forcing are applied locally. 47 - change Asselin routines (maybe not required since e3 scale with vertical with JC modif) 48 Step 4 : Finally we remove the interpol routine in the whole code 49 - remove interpolating routine in all the code (AGRIF, OFF,...) 50 - use a SUBSTITUTE when there are e3 CALL 51 - make some changes in step and domQE to have the whole thing consistent 51 52 52 2/53 53 54 54 … … 79 79 80 80 ''...'' 81 We want to track and maybe explain the differences observed at every steps. 82 Reference set up : For that we produce a reference data set with the trunk -r 12377 using the GYRE_PISCES configuration where top cpp_key has been removed. We run it on 120 time steps. The drag coefficient is zero. We XIOS output an averaged field every 5 days. 83 84 81 85 82 86 == Review