Changes between Version 65 and Version 66 of ticket/0927_Energy_diag
- Timestamp:
- 2013-04-17T08:46:43+02:00 (11 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
ticket/0927_Energy_diag
v65 v66 5 5 '''Ticket ''' : #927 6 6 7 '''Branch''' : [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2012/dev_r3309_LOCEAN12_Ediag 2012/dev_r3309_LOCEAN12_Ediag] 7 '''Branch v3.4''' : [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2012/dev_r3309_LOCEAN12_Ediag 2012/dev_r3309_LOCEAN12_Ediag] 8 9 '''Branch v3.5''' : [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2013/dev_r3858_CNRS3_Ediag 2013/dev_r3858_CNRS3_Ediag] 8 10 9 11 ---- … … 12 14 ''' Motivation: ''' output 3D trends of tracers, momentum, kinetic energy and potential energy.[[BR]] ''' Status :''' the extraction of trends terms exists, but not the 3D output of the trends [[BR]] ''' Main tasks :''' [[BR]] 13 15 14 (1) implement the 3D output of tracers and momentum trends using iom_put [[BR]] (2) compute and output the 3D trends of PE and KE [[BR]] (3) validatation + documentation [[BR]]15 16 ''' Science Reviewer:''' NOCS guy? [[BR]] ''' System Reviewer:''' NOCS guy? [[BR]] ''' Deadline:''' spring 2012 [[BR]] ''' Priority:''' high [[BR]] ''' Depends on:''' gurvan disponibilities[[BR]] ''' Principal Investigator : ''' Gurvan Madec and Fabien Roquet (gurvan.madec@locean-ipsl.upmc.fr) [[BR]] [[BR]]16 (1) implement the 3D output of tracers and momentum trends using iom_put [[BR]] (2) compute and output the 3D trends of PE and KE [[BR]] (3) validation + documentation [[BR]] 17 18 ''' Science Reviewer:''' NOCS guy? [[BR]] ''' System Reviewer:''' NOCS guy? [[BR]] ''' Deadline:''' automn 2013 [[BR]] ''' Priority:''' high [[BR]] ''' Depends on:''' - [[BR]] ''' Principal Investigator : ''' Gurvan Madec and Fabien Roquet (gurvan.madec@locean-ipsl.upmc.fr) [[BR]] [[BR]] 17 19 18 20 ---- … … 24 26 see [https://forge.ipsl.jussieu.fr/nemo/log/branches/2012/dev_r3309_LOCEAN12_Ediag/NEMOGCM/NEMO/OPA_SRC?rev=3316 revision 3316] 25 27 26 ''' trdmod_oce''' module and ''' namtrd namelist'''[[BR]]28 ''' trdmod_oce''' module and ''' namtrd namelist''' [[BR]] 27 29 28 30 logical flags added in namlist namtrd which now controls what is done with the trends. [[BR]] All the types of treatment of a given trend are available at the same time. The memory requirement will only increase due to the time averaged arrays defined in IOM. … … 40 42 Add these new logical in the namelist. '''==>>> CAUTION only in the ORCA2_LIM directory''' [[BR]] NB: here is the new name set in revision number 3318[[BR]] 41 43 42 ''' trdtra'''module[[BR]]44 ''' trdtra''' module[[BR]] 43 45 44 46 Add a systematic mask of the trend.[[BR]] Change the comments to better describe the purpose of this module. Its purpose is: [[BR]] 45 47 46 'TRA' case: to regroup T & S trends and send them to trd_mod, with, in case of advection, transform the incoming advective fluxes into advctive trend (U.grad[T])[[BR]] 'TRC' case: send trend to ted_mod_trc, with, in case of advection, transform the incoming advective fluxes into advective trend [[BR]] all cases : mask the trend (''' ===>>> PROBABLY add in the module a lbc_lnk so that the trend is defined everywhere''')47 48 ''' dynadv_cen2 and _ubs'''modules[[BR]]48 'TRA' case: to regroup T & S trends and send them to trd_mod, with, in case of advection, transform the incoming advective fluxes into advctive trend (U.grad[T])[[BR]] 'TRC' case: send trend to ted_mod_trc, with, in case of advection, transform the incoming advective fluxes into advective trend [[BR]] all cases : mask the trend (''' ===>>> PROBABLY add in the module a lbc_lnk so that the trend is defined everywhere''' ) 49 50 ''' dynadv_cen2 and _ubs''' modules[[BR]] 49 51 50 52 change jpdyn_trd_had into jpdyn_trd_keg. Now in flux form _keg corresponds to the horizontal advection trends and _rvo to the metric terms[[BR]] [[BR]] 51 53 52 ''' dynnxt'''module[[BR]]54 ''' dynnxt''' module[[BR]] 53 55 54 56 add the output using sum of the total dyn trend (except asselin time filter) ("utrd_tot", "vtrd_tot") and of the asselin time filter trend ("utrd_atf", "vtrd_atf") but with a shift by one time step[[BR]] [[BR]] 55 57 56 ''' dynvor, trdvor and trdmod_oce'''modules[[BR]]58 ''' dynvor, trdvor and trdmod_oce''' modules[[BR]] 57 59 58 60 suppress the call to trd_mod in the jpdyn_trd_dat case (computation of beta.V) add add the calculation of beta.V term in 'trdvor' in jpvor_pvo case. And obviously suppress jpdyn_trd_dat from trdmod_oce [[BR]] Also suppress the jpdyn_trd_had case horizontal advection for the dynamics is 'keg' + 'vor' ; in case of flux form, 'had' is put in 'keg' and the metric terms is put in 'vor' [[BR]] there is now only 10 trends on the dynamics instead of 12[[BR]] [[BR]] 59 61 60 ''' trdmod'''module[[BR]]62 ''' trdmod''' module[[BR]] 61 63 62 64 1- introduce the new logical namelist parameters[[BR]] 2- introduce new subroutines : '''trd_budget''' : computation of the domain averaged T,T^2^, PE, KE trends formerly computes in trd_mod routine)[[BR]] ''' trd_3Diom''': output of the 3D trends using IOM [[BR]] [[BR]] 63 65 64 ''' trdicp'''module[[BR]]66 ''' trdicp''' module[[BR]] 65 67 66 68 add in trd_twr routine the computation of the vertical diffusive trend on T & S in case of iso-neutral diffusion (ln_traldf_iso=T). These trends ("ttrd_zdfp", "strd_zdfp") name zdfp for "PURE" vertical diffusion trends are output so that by difference with "zdf" trends we can access to the vertical contribution of the iso-neutral operator [[BR]] [[BR]] 67 69 68 ''' iodef.xml'''file[[BR]]70 ''' iodef.xml''' file[[BR]] 69 71 70 72 add all the trends nick name : '''==>>> CAUTION only in the ORCA2_LIM directory''' [[BR]] [[BR]] … … 73 75 ''' Step II : simplification of the structure ''' 74 76 75 ''' trdicp and trdicp_oce'''modules[[BR]]77 ''' trdicp and trdicp_oce''' modules[[BR]] 76 78 77 79 see [https://forge.ipsl.jussieu.fr/nemo/log/branches/2012/dev_r3309_LOCEAN12_Ediag/NEMOGCM/NEMO/OPA_SRC?rev=3317 revision 3317] … … 79 81 1- suppress trdicp_oce module (put required variables in trdmod_oce parameters)[[BR]] 2- use the jptra_trd_... instead of jpicp_... 3- move trd_budget subroutine from trdmod to trdicp.F90. Suppress trd_icp routine (i.e. trd_2d, trd_3d) as the work is now simply done in trd_budget.[[BR]] 4- rescan all dyn/tra trend indices. add jptra_trd_zdfp for "PURE Kz dissusive trend when ln_traldf_iso=T (see also changes in tranxt where a call to trd_tra is done just before the swap, so that PURE Kz trends can be diagnosed in tra_trd. See also xml file). 5- jptra_trd_nsr and jptra_trd_cdt are 3D trends as their incorporate both surface forcing AND runoff, the later being possibly spread in depth ('''==>>> probably to be changed''')[[BR]] 6- suppress the key_trddyn key trdtra from trdicp[[BR]] 80 82 81 ''' trdtra - trddyn - trdmod - trdvor''' modules : impact on ''' TRA''' , ''' DYN''' , ''' TRD''' and almost all ''' TOP_SRC'''modules[[BR]]83 ''' trdtra - trddyn - trdmod - trdvor''' modules : impact on ''' TRA''' , ''' DYN''' , ''' TRD''' and almost all ''' TOP_SRC''' modules[[BR]] 82 84 83 85 see [https://forge.ipsl.jussieu.fr/nemo/log/branches/2012/dev_r3309_LOCEAN12_Ediag/NEMOGCM/NEMO/OPA_SRC?rev=3318 revision 3318] … … 94 96 ''' Step III : addition of 3D KE diagnostics ''' 95 97 96 ''' trdken'''module[[BR]]98 ''' trdken''' module[[BR]] 97 99 98 100 see [https://forge.ipsl.jussieu.fr/nemo/log/branches/2012/dev_r3309_LOCEAN12_Ediag/NEMOGCM/NEMO/OPA_SRC?rev=3325 revision 3325] … … 109 111 ''' Step IV : addition of 3D PE diagnostics ''' 110 112 111 ''' trdpen'''module[[BR]]113 ''' trdpen''' module[[BR]] 112 114 113 115 see [https://forge.ipsl.jussieu.fr/nemo/log/branches/2012/dev_r3309_LOCEAN12_Ediag/NEMOGCM/NEMO/OPA_SRC?rev=3326 revision 3326] and [https://forge.ipsl.jussieu.fr/nemo/log/branches/2012/dev_r3309_LOCEAN12_Ediag/NEMOGCM/NEMO/OPA_SRC?rev=3327 revision 3327] 0- correct a bug in trdtra and trdken … … 123 125 NB: runoff put as a source term in the divergence computation since v3.3 (see divcur), implication for source term in PE, but also tracer trends ? '''Think about that!''''''''' 124 126 125 [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] [[BR]] '''Pending issues''' : 126 127 atmospheric pressure gradient trend not taken into account (see dynspg.F90 ''' To be done !!!!''' [[BR]] ''' 128 129 kpp non-local trend put in zdf trends !!! this will not work ! a additional trend term should be add ''' To be done !!!!''' [[BR]] ''' 127 [[BR]] [[BR]] [[BR]] 128 ---- 129 '''Step IV : port to v3.5 beta''' 130 131 132 [[BR]]april 17 2013: 133 134 • create a new branch from v3.5 : [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2013/dev_r3858_CNRS3_Ediag 2013/dev_r3858_CNRS3_Ediag][[BR]] [[BR]] • merge [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2012/dev_r3309_LOCEAN12_Ediag 2012/dev_r3309_LOCEAN12_Ediag] with [https://forge.ipsl.jussieu.fr/nemo/browser/branches/2013/dev_r3858_CNRS3_Ediag 2013/dev_r3858_CNRS3_Ediag][[BR]] [[BR]][[BR]][[BR]][[BR]] 135 ---- 136 '''Step IV : port to v''' 137 138 [[BR]] '''Pending issues''' : 139 140 atmospheric pressure gradient trend not taken into account (see dynspg.F90 ''' To be done !!!!''' [[BR]] ''' 141 142 kpp non-local trend put in zdf trends !!! this will not work ! a additional trend term should be add ''' To be done !!!!''' [[BR]] ''' 130 143 131 144 problems to be solved: vvl case for tracer sad trends ; flux form case for had (keg) and zad momentum trends[[BR]] … … 135 148 create the momentum diag over the ML 136 149 137 reshape trdtra so that T and S are treated separately in all ted routine (including mld diag...) create umask_i and vmask_i (2D) fields that mirror task_i field but for the velocity points ''''' ''''' ' 138 150 reshape trdtra so that T and S are treated separately in all ted routine (including mld diag...) create umask_i and vmask_i (2D) fields that mirror task_i field but for the velocity points ''''' ''''' ' 151 152 ---- 139 153 '''Changes done by Fabien R.''' 140 154