Changeset 5726 for branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM
- Timestamp:
- 2015-09-10T18:48:32+02:00 (9 years ago)
- Location:
- branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO
- Files:
-
- 22 added
- 16 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/OPA_SRC/DIA/diadct.F90
- Property svn:keywords deleted
r5505 r5726 112 112 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: transports_2d 113 113 114 !! $Id$115 114 CONTAINS 116 115 … … 1298 1297 LOGICAL, PUBLIC, PARAMETER :: lk_diadct = .FALSE. !: diamht flag 1299 1298 PUBLIC 1300 !! $Id$1301 1299 CONTAINS 1302 1300 -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zint.F90
- Property svn:keywords deleted
r5385 r5726 26 26 !!---------------------------------------------------------------------- 27 27 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 28 !! $Id$ 28 !! $Id$ 29 29 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 30 30 !!---------------------------------------------------------------------- -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/TRP/trcnam_trp.F90
- Property svn:keywords deleted
r5385 r5726 55 55 !!---------------------------------------------------------------------- 56 56 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 57 !! $Id$ 57 !! $Id$ 58 58 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 59 59 !!---------------------------------------------------------------------- -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/par_trc.F90
- Property svn:keywords deleted
r4529 r5726 15 15 USE par_cfc ! CFC 11 and 12 tracers 16 16 USE par_my_trc ! user defined passive tracers 17 USE par_medusa ! MEDUSA model 18 USE par_idtra ! Idealize tracer 17 19 18 20 IMPLICIT NONE … … 24 26 ! Passive tracers : Total size 25 27 ! --------------- ! total number of passive tracers, of 2d and 3d output and trend arrays 26 INTEGER, PUBLIC, PARAMETER :: jptra = jp_pisces + jp_cfc + jp_c14b + jp_my_trc 27 INTEGER, PUBLIC, PARAMETER :: jpdia2d = jp_pisces_2d + jp_cfc_2d + jp_c14b_2d + jp_my_trc_2d 28 INTEGER, PUBLIC, PARAMETER :: jpdia3d = jp_pisces_3d + jp_cfc_3d + jp_c14b_3d + jp_my_trc_3d 28 INTEGER, PUBLIC, PARAMETER :: jptra = jp_pisces + jp_cfc + jp_c14b + jp_my_trc + jp_medusa + jp_idtra 29 INTEGER, PUBLIC, PARAMETER :: jpdia2d = jp_pisces_2d + jp_cfc_2d + jp_c14b_2d + jp_my_trc_2d + jp_medusa_2d + jp_idtra_2d 30 INTEGER, PUBLIC, PARAMETER :: jpdia3d = jp_pisces_3d + jp_cfc_3d + jp_c14b_3d + jp_my_trc_3d + jp_medusa_3d + jp_idtra_3d 29 31 ! ! total number of sms diagnostic arrays 30 INTEGER, PUBLIC, PARAMETER :: jpdiabio = jp_pisces_trd + jp_cfc_trd + jp_c14b_trd + jp_my_trc_trd 32 INTEGER, PUBLIC, PARAMETER :: jpdiabio = jp_pisces_trd + jp_cfc_trd + jp_c14b_trd + jp_my_trc_trd + jp_medusa_trd + jp_idtra_trd 31 33 32 34 ! 1D configuration ("key_c1d") … … 42 44 !!---------------------------------------------------------------------- 43 45 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 44 !! $Id$ 46 !! $Id$ 45 47 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 46 48 !!====================================================================== -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/prtctl_trc.F90
- Property svn:keywords deleted
r4520 r5726 305 305 !!---------------------------------------------------------------------- 306 306 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 307 !! $Id$ 307 !! $Id$ 308 308 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 309 309 !!====================================================================== -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/top_substitute.h90
- Property svn:keywords deleted
r2528 r5726 13 13 !!---------------------------------------------------------------------- 14 14 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 15 !! $Id$ 15 !! $Id$ 16 16 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 17 17 !!---------------------------------------------------------------------- -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcbc.F90
- Property svn:keywords deleted
r5215 r5726 44 44 !!---------------------------------------------------------------------- 45 45 !! NEMO/OPA 3.3 , NEMO Consortium (2010) 46 !! $Id$ 46 !! $Id$ 47 47 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 48 48 !!---------------------------------------------------------------------- -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcdia.F90
- Property svn:keywords deleted
r4292 r5726 55 55 !!---------------------------------------------------------------------- 56 56 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 57 !! $Id$ 57 !! $Id$ 58 58 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 59 59 !!---------------------------------------------------------------------- -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcdta.F90
- Property svn:keywords deleted
r5385 r5726 40 40 !!---------------------------------------------------------------------- 41 41 !! NEMO/OPA 3.3 , NEMO Consortium (2010) 42 !! $Id$ 42 !! $Id$ 43 43 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 44 44 !!---------------------------------------------------------------------- -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcini.F90
- Property svn:keywords deleted
r5407 r5726 8 8 !! 2.0 ! 2005-10 (C. Ethe, G. Madec) revised architecture 9 9 !! 4.0 ! 2011-01 (A. R. Porter, STFC Daresbury) dynamical allocation 10 !! - ! 2014-06 (A. Yool, J. Palmieri) adding MEDUSA-2 10 11 !!---------------------------------------------------------------------- 11 12 #if defined key_top … … 24 25 USE trcini_c14b ! C14 bomb initialisation 25 26 USE trcini_my_trc ! MY_TRC initialisation 27 USE trcini_medusa ! MEDUSA initialisation 28 USE trcini_idtra ! idealize tracer initialisation 26 29 USE trcdta ! initialisation from files 27 30 USE daymod ! calendar manager … … 42 45 !!---------------------------------------------------------------------- 43 46 !! NEMO/TOP 4.0 , NEMO Consortium (2011) 44 !! $Id$ 47 !! $Id$ 45 48 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 46 49 !!---------------------------------------------------------------------- … … 77 80 & CALL ctl_warn(' Coupling with passive tracers and used of diurnal cycle. & 78 81 & Computation of a daily mean shortwave for some biogeochemical models) ') 79 82 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 83 !!!!! CHECK For MEDUSA 84 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 80 85 IF( nn_cla == 1 ) & 81 86 & CALL ctl_stop( ' Cross Land Advection not yet implemented with passive tracer ; nn_cla must be 0' ) … … 101 106 IF( lk_c14b ) CALL trc_ini_c14b ! C14 bomb tracer 102 107 IF( lk_my_trc ) CALL trc_ini_my_trc ! MY_TRC tracers 108 IF( lk_medusa ) CALL trc_ini_medusa ! MEDUSA tracers 109 IF( lk_idtra ) CALL trc_ini_idtra ! Idealize tracers 103 110 104 111 CALL trc_ice_ini ! Tracers in sea ice 112 113 # if defined key_debug_medusa 114 IF (lwp) write (numout,*) '------------------------------' 115 IF (lwp) write (numout,*) 'Jpalm - debug' 116 IF (lwp) write (numout,*) ' in trc_init' 117 IF (lwp) write (numout,*) ' sms init OK' 118 IF (lwp) write (numout,*) ' next: open tracer.stat' 119 IF (lwp) write (numout,*) ' ' 120 CALL flush(numout) 121 # endif 105 122 106 123 IF( lwp ) THEN … … 110 127 ENDIF 111 128 112 IF( ln_trcdta ) CALL trc_dta_init(jptra) 113 129 # if defined key_debug_medusa 130 IF (lwp) write (numout,*) '------------------------------' 131 IF (lwp) write (numout,*) 'Jpalm - debug' 132 IF (lwp) write (numout,*) ' in trc_init' 133 IF (lwp) write (numout,*) 'open tracer.stat -- OK' 134 IF (lwp) write (numout,*) ' ' 135 CALL flush(numout) 136 # endif 137 138 139 IF( ln_trcdta ) THEN 140 #if defined key_medusa 141 IF(lwp) WRITE(numout,*) 'AXY: calling trc_dta_init' 142 IF(lwp) CALL flush(numout) 143 #endif 144 CALL trc_dta_init(jptra) 145 ENDIF 114 146 115 147 IF( ln_rsttr ) THEN 116 148 ! 149 #if defined key_medusa 150 IF(lwp) WRITE(numout,*) 'AXY: calling trc_rst_read' 151 IF(lwp) CALL flush(numout) 152 #endif 117 153 CALL trc_rst_read ! restart from a file 118 154 ! … … 121 157 IF( ln_trcdta .AND. nb_trcdta > 0 ) THEN ! Initialisation of tracer from a file that may also be used for damping 122 158 ! 159 #if defined key_medusa 160 IF(lwp) WRITE(numout,*) 'AXY: calling wrk_alloc' 161 IF(lwp) CALL flush(numout) 162 #endif 123 163 CALL wrk_alloc( jpi, jpj, jpk, ztrcdta ) ! Memory allocation 124 164 ! 165 #if defined key_medusa 166 IF(lwp) WRITE(numout,*) 'AXY: calling trc_dta' 167 IF(lwp) CALL flush(numout) 168 #endif 125 169 DO jn = 1, jptra 126 170 IF( ln_trc_ini(jn) ) THEN ! update passive tracers arrays with input data read from file … … 129 173 ztrcdta(:,:,:) = sf_trcdta(jl)%fnow(:,:,:) 130 174 trn(:,:,:,jn) = ztrcdta(:,:,:) * tmask(:,:,:) 131 IF( .NOT.ln_trcdmp .AND. .NOT. ln_trcdmp_clo ) THEN !== deallocate data structure ==!175 IF( .NOT.ln_trcdmp .AND. .NOT. ln_trcdmp_clo ) THEN !== deallocate data structure ==! 132 176 ! (data used only for initialisation) 133 177 IF(lwp) WRITE(numout,*) 'trc_dta: deallocate data arrays as they are only used to initialize the run' … … 138 182 ENDIF 139 183 ENDDO 184 #if defined key_medusa 185 IF(lwp) WRITE(numout,*) 'AXY: calling wrk_dealloc' 186 IF(lwp) CALL flush(numout) 187 #endif 140 188 CALL wrk_dealloc( jpi, jpj, jpk, ztrcdta ) 141 189 ENDIF 142 190 ! 191 # if defined key_debug_medusa 192 IF (lwp) write (numout,*) '------------------------------' 193 IF (lwp) write (numout,*) 'Jpalm - debug' 194 IF (lwp) write (numout,*) ' in trc_init' 195 IF (lwp) write (numout,*) ' before trb = trn' 196 IF (lwp) write (numout,*) ' ' 197 CALL flush(numout) 198 # endif 199 ! 143 200 trb(:,:,:,:) = trn(:,:,:,:) 201 ! 202 # if defined key_debug_medusa 203 IF (lwp) write (numout,*) '------------------------------' 204 IF (lwp) write (numout,*) 'Jpalm - debug' 205 IF (lwp) write (numout,*) ' in trc_init' 206 IF (lwp) write (numout,*) ' trb = trn -- OK' 207 IF (lwp) write (numout,*) ' ' 208 CALL flush(numout) 209 # endif 144 210 ! 145 211 ENDIF … … 150 216 IF( ln_zps .AND. .NOT. lk_c1d .AND. ln_isfcav ) & 151 217 & CALL zps_hde_isf( nit000, jptra, trn, pgtu=gtru, pgtv=gtrv, pgtui=gtrui, pgtvi=gtrvi ) ! tracers at the bottom ocean level 152 153 218 ! 219 # if defined key_debug_medusa 220 IF (lwp) write (numout,*) '------------------------------' 221 IF (lwp) write (numout,*) 'Jpalm - debug' 222 IF (lwp) write (numout,*) ' in trc_init' 223 IF (lwp) write (numout,*) ' partial step -- OK' 224 IF (lwp) write (numout,*) ' ' 225 CALL flush(numout) 226 # endif 154 227 ! 155 228 IF( nn_dttrc /= 1 ) CALL trc_sub_ini ! Initialize variables for substepping passive tracers 156 229 ! 157 230 # if defined key_debug_medusa 231 IF (lwp) write (numout,*) '------------------------------' 232 IF (lwp) write (numout,*) 'Jpalm - debug' 233 IF (lwp) write (numout,*) ' in trc_init' 234 IF (lwp) write (numout,*) ' before initiate tracer contents' 235 IF (lwp) write (numout,*) ' ' 236 CALL flush(numout) 237 # endif 238 ! 158 239 trai(:) = 0._wp ! initial content of all tracers 159 240 DO jn = 1, jptra … … 168 249 WRITE(numout,*) ' *** Total inital content of all tracers ' 169 250 WRITE(numout,*) 251 # if defined key_debug_medusa 252 CALL flush(numout) 253 # endif 254 ! 255 # if defined key_debug_medusa 256 WRITE(numout,*) ' litle check : ', ctrcnm(1) 257 CALL flush(numout) 258 # endif 170 259 DO jn = 1, jptra 171 260 WRITE(numout,9000) jn, TRIM( ctrcnm(jn) ), trai(jn) … … 180 269 CALL prt_ctl_trc( tab4d=trn, mask=tmask, clinfo=ctrcnm ) 181 270 ENDIF 271 272 IF(lwp) WRITE(numout,*) 273 IF(lwp) WRITE(numout,*) 'trc_init : passive tracer set up completed' 274 IF(lwp) WRITE(numout,*) '~~~~~~~' 275 IF(lwp) CALL flush(numout) 276 182 277 9000 FORMAT(' tracer nb : ',i2,' name :',a10,' initial content :',e18.10) 183 278 ! -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcnam.F90
- Property svn:keywords deleted
r5411 r5726 25 25 USE trcnam_c14b ! C14 SMS namelist 26 26 USE trcnam_my_trc ! MY_TRC SMS namelist 27 USE trcnam_medusa ! MEDUSA namelist 28 USE trcnam_idtra ! Idealise tracer namelist 27 29 USE trd_oce 28 30 USE trdtrc_oce … … 56 58 !! ( (PISCES, CFC, MY_TRC ) 57 59 !!--------------------------------------------------------------------- 58 INTEGER :: jn ! dummy loop indice60 INTEGER :: jn, jk ! dummy loop indice 59 61 ! ! Parameters of the run 60 62 IF( .NOT. lk_offline ) CALL trc_nam_run 61 63 62 64 ! ! passive tracer informations 65 # if defined key_debug_medusa 66 CALL flush(numout) 67 IF (lwp) write (numout,*) '------------------------------' 68 IF (lwp) write (numout,*) 'Jpalm - debug' 69 IF (lwp) write (numout,*) 'in trc_nam - just before CALL trc_nam_trc' 70 IF (lwp) write (numout,*) ' ' 71 # endif 72 ! 63 73 CALL trc_nam_trc 64 74 65 75 ! ! Parameters of additional diagnostics 76 # if defined key_debug_medusa 77 CALL flush(numout) 78 IF (lwp) write (numout,*) '------------------------------' 79 IF (lwp) write (numout,*) 'Jpalm - debug' 80 IF (lwp) write (numout,*) 'CALL trc_nam_trc -- OK' 81 IF (lwp) write (numout,*) 'in trc_nam - just before CALL trc_nam_dia' 82 IF (lwp) write (numout,*) ' ' 83 # endif 84 ! 85 66 86 CALL trc_nam_dia 67 87 68 88 ! ! namelist of transport 89 # if defined key_debug_medusa 90 CALL flush(numout) 91 IF (lwp) write (numout,*) '------------------------------' 92 IF (lwp) write (numout,*) 'Jpalm - debug' 93 IF (lwp) write (numout,*) 'CALL trc_nam_dia -- OK' 94 IF (lwp) write (numout,*) 'in trc_nam - just before CALL trc_nam_trp' 95 IF (lwp) write (numout,*) ' ' 96 # endif 97 ! 69 98 CALL trc_nam_trp 99 ! 100 # if defined key_debug_medusa 101 CALL flush(numout) 102 IF (lwp) write (numout,*) '------------------------------' 103 IF (lwp) write (numout,*) 'Jpalm - debug' 104 IF (lwp) write (numout,*) 'CALL trc_nam_trp -- OK' 105 IF (lwp) write (numout,*) 'continue trc_nam ' 106 IF (lwp) write (numout,*) ' ' 107 CALL flush(numout) 108 # endif 109 ! 70 110 71 111 … … 89 129 END DO 90 130 WRITE(numout,*) ' ' 131 # if defined key_debug_medusa 132 CALL flush(numout) 133 # endif 91 134 ENDIF 92 135 … … 107 150 WRITE(numout,*) 108 151 ENDIF 109 ENDIF 110 152 # if defined key_debug_medusa 153 CALL flush(numout) 154 # endif 155 ENDIF 156 157 # if defined key_debug_medusa 158 DO jk = 1, jpk 159 WRITE(numout,*) ' level number: ', jk, 'rdttrc: ',rdttrc(jk),'rdttra: ', rdttra(jk),'nn_dttrc: ', nn_dttrc 160 END DO 161 CALL flush(numout) 162 # endif 111 163 112 164 rdttrc(:) = rdttra(:) * FLOAT( nn_dttrc ) ! vertical profile of passive tracer time-step … … 116 168 WRITE(numout,*) ' Passive Tracer time step rdttrc = ', rdttrc(1) 117 169 WRITE(numout,*) 170 # if defined key_debug_medusa 171 CALL flush(numout) 172 # endif 118 173 ENDIF 119 174 … … 143 198 IF( ln_trdtrc(jn) ) WRITE(numout,*) ' compute ML trends for tracer number :', jn 144 199 END DO 200 WRITE(numout,*) ' ' 201 CALL flush(numout) 145 202 ENDIF 146 203 #endif 147 204 205 # if defined key_debug_medusa 206 CALL flush(numout) 207 IF (lwp) write (numout,*) '------------------------------' 208 IF (lwp) write (numout,*) 'Jpalm - debug' 209 IF (lwp) write (numout,*) 'just before ice module for tracers call : ' 210 IF (lwp) write (numout,*) ' ' 211 # endif 212 ! 148 213 149 214 ! Call the ice module for tracers 150 215 ! ------------------------------- 151 216 CALL trc_nam_ice 217 218 # if defined key_debug_medusa 219 CALL flush(numout) 220 IF (lwp) write (numout,*) '------------------------------' 221 IF (lwp) write (numout,*) 'Jpalm - debug' 222 IF (lwp) write (numout,*) 'Will now read SMS namelists : ' 223 IF (lwp) write (numout,*) ' ' 224 # endif 225 ! 152 226 153 227 ! namelist of SMS … … 156 230 ELSE ; IF(lwp) WRITE(numout,*) ' PISCES not used' 157 231 ENDIF 158 232 ! 233 # if defined key_debug_medusa 234 CALL flush(numout) 235 IF (lwp) write (numout,*) '------------------------------' 236 IF (lwp) write (numout,*) 'Jpalm - debug' 237 IF (lwp) write (numout,*) 'CALL trc_nam_pisces -- OK' 238 IF (lwp) write (numout,*) 'in trc_nam - just before CALL trc_nam_medusa' 239 IF (lwp) write (numout,*) ' ' 240 # endif 241 ! 242 IF( lk_medusa ) THEN ; CALL trc_nam_medusa ! MEDUSA tracers 243 ELSE ; IF(lwp) WRITE(numout,*) ' MEDUSA not used' 244 ENDIF 245 ! 246 # if defined key_debug_medusa 247 CALL flush(numout) 248 IF (lwp) write (numout,*) '------------------------------' 249 IF (lwp) write (numout,*) 'Jpalm - debug' 250 IF (lwp) write (numout,*) 'CALL trc_nam_medusa -- OK' 251 IF (lwp) write (numout,*) 'in trc_nam - just before CALL trc_nam_idtra' 252 IF (lwp) write (numout,*) ' ' 253 # endif 254 ! 255 IF( lk_idtra ) THEN ; CALL trc_nam_idtra ! Idealize tracers 256 ELSE ; IF(lwp) WRITE(numout,*) ' Idealize tracers not used' 257 ENDIF 258 ! 259 # if defined key_debug_medusa 260 CALL flush(numout) 261 IF (lwp) write (numout,*) '------------------------------' 262 IF (lwp) write (numout,*) 'Jpalm - debug' 263 IF (lwp) write (numout,*) 'CALL trc_nam_idtra -- OK' 264 IF (lwp) write (numout,*) 'in trc_nam - just before CALL trc_nam_cfc' 265 IF (lwp) write (numout,*) ' ' 266 # endif 267 ! 159 268 IF( lk_cfc ) THEN ; CALL trc_nam_cfc ! CFC tracers 160 269 ELSE ; IF(lwp) WRITE(numout,*) ' CFC not used' … … 169 278 ENDIF 170 279 ! 280 IF(lwp) CALL flush(numout) 171 281 END SUBROUTINE trc_nam 172 282 … … 216 326 WRITE(numout,*) ' Use euler integration for TRC (y/n) ln_top_euler = ', ln_top_euler 217 327 WRITE(numout,*) ' ' 328 CALL flush(numout) 218 329 ENDIF 219 330 ! … … 306 417 ln_trc_wri(jn) = sn_tracer(jn)%llsave 307 418 END DO 308 419 IF(lwp) CALL flush(numout) 420 309 421 END SUBROUTINE trc_nam_trc 310 422 … … 357 469 WRITE(numout,*) ' frequency of outputs for biological trends nn_writebio = ', nn_writebio 358 470 WRITE(numout,*) ' ' 359 ENDIF 360 361 IF( ln_diatrc .AND. .NOT. lk_iomput ) THEN 471 CALL flush(numout) 472 ENDIF 473 !! 474 !! JPALM -- 17-07-2015 -- 475 !! MEDUSA is not yet up-to-date with the iom server. 476 !! we use it for the main tracer, but not fully with diagnostics. 477 !! will have to adapt it properly when visiting Christian Ethee 478 !! for now, we change 479 !! IF( ln_diatrc .AND. .NOT. lk_iomput ) THEN 480 !! to : 481 !! 482 IF( ( ln_diatrc .AND. .NOT. lk_iomput ) .OR. ( ln_diatrc .AND. lk_medusa ) ) THEN 362 483 ALLOCATE( trc2d(jpi,jpj,jpdia2d), trc3d(jpi,jpj,jpk,jpdia3d), & 363 484 & ctrc2d(jpdia2d), ctrc2l(jpdia2d), ctrc2u(jpdia2d) , & -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcrst.F90
- Property svn:keywords deleted
r5513 r5726 28 28 USE iom 29 29 USE daymod 30 !! AXY (05/11/13): need these for MEDUSA to input/output benthic reservoirs 31 USE sms_medusa 32 USE trcsms_medusa 33 !! 30 34 IMPLICIT NONE 31 35 PRIVATE … … 102 106 !!---------------------------------------------------------------------- 103 107 INTEGER :: jn 108 !! AXY (05/11/13): temporary variables 109 REAL(wp) :: fq0,fq1,fq2 104 110 105 111 !!---------------------------------------------------------------------- … … 117 123 CALL iom_get( numrtr, jpdom_autoglo, 'TRB'//ctrcnm(jn), trb(:,:,:,jn) ) 118 124 END DO 125 126 !! AXY (09/06/14): the ARCHER version of MEDUSA-2 does not include an equivalent 127 !! call to MEDUSA-2 at this point; this suggests that the FCM 128 !! version of NEMO date significantly earlier than the current 129 !! version 130 131 #if defined key_medusa 132 !! AXY (13/01/12): check if the restart contains sediment fields; 133 !! this is only relevant for simulations that include 134 !! biogeochemistry and are restarted from earlier runs 135 !! in which there was no sediment component 136 !! 137 IF( iom_varid( numrtr, 'B_SED_N', ldstop = .FALSE. ) > 0 ) THEN 138 !! YES; in which case read them 139 !! 140 IF(lwp) WRITE(numout,*) ' MEDUSA sediment fields present - reading in ...' 141 CALL iom_get( numrtr, jpdom_autoglo, 'B_SED_N', zb_sed_n(:,:) ) 142 CALL iom_get( numrtr, jpdom_autoglo, 'N_SED_N', zn_sed_n(:,:) ) 143 CALL iom_get( numrtr, jpdom_autoglo, 'B_SED_FE', zb_sed_fe(:,:) ) 144 CALL iom_get( numrtr, jpdom_autoglo, 'N_SED_FE', zn_sed_fe(:,:) ) 145 CALL iom_get( numrtr, jpdom_autoglo, 'B_SED_SI', zb_sed_si(:,:) ) 146 CALL iom_get( numrtr, jpdom_autoglo, 'N_SED_SI', zn_sed_si(:,:) ) 147 CALL iom_get( numrtr, jpdom_autoglo, 'B_SED_C', zb_sed_c(:,:) ) 148 CALL iom_get( numrtr, jpdom_autoglo, 'N_SED_C', zn_sed_c(:,:) ) 149 CALL iom_get( numrtr, jpdom_autoglo, 'B_SED_CA', zb_sed_ca(:,:) ) 150 CALL iom_get( numrtr, jpdom_autoglo, 'N_SED_CA', zn_sed_ca(:,:) ) 151 ELSE 152 !! NO; in which case set them to zero 153 !! 154 IF(lwp) WRITE(numout,*) ' MEDUSA sediment fields absent - setting to zero ...' 155 zb_sed_n(:,:) = 0.0 !! organic N 156 zn_sed_n(:,:) = 0.0 157 zb_sed_fe(:,:) = 0.0 !! organic Fe 158 zn_sed_fe(:,:) = 0.0 159 zb_sed_si(:,:) = 0.0 !! inorganic Si 160 zn_sed_si(:,:) = 0.0 161 zb_sed_c(:,:) = 0.0 !! organic C 162 zn_sed_c(:,:) = 0.0 163 zb_sed_ca(:,:) = 0.0 !! inorganic C 164 zn_sed_ca(:,:) = 0.0 165 ENDIF 166 !! 167 !! calculate stats on these fields 168 IF(lwp) WRITE(numout,*) ' MEDUSA sediment field stats (min, max, sum) ...' 169 fq0 = MINVAL(zn_sed_n(:,:)) 170 fq1 = MAXVAL(zn_sed_n(:,:)) 171 fq2 = SUM(zn_sed_n(:,:)) 172 if (lwp) write (numout,'(a,3f15.5)') 'Sediment N ', & 173 & fq0, fq1, fq2 174 fq0 = MINVAL(zn_sed_fe(:,:)) 175 fq1 = MAXVAL(zn_sed_fe(:,:)) 176 fq2 = SUM(zn_sed_fe(:,:)) 177 if (lwp) write (numout,'(a,3f15.5)') 'Sediment Fe ', & 178 & fq0, fq1, fq2 179 fq0 = MINVAL(zn_sed_si(:,:)) 180 fq1 = MAXVAL(zn_sed_si(:,:)) 181 fq2 = SUM(zn_sed_si(:,:)) 182 if (lwp) write (numout,'(a,3f15.5)') 'Sediment Si ', & 183 & fq0, fq1, fq2 184 fq0 = MINVAL(zn_sed_c(:,:)) 185 fq1 = MAXVAL(zn_sed_c(:,:)) 186 fq2 = SUM(zn_sed_c(:,:)) 187 if (lwp) write (numout,'(a,3f15.5)') 'Sediment C ', & 188 & fq0, fq1, fq2 189 fq0 = MINVAL(zn_sed_ca(:,:)) 190 fq1 = MAXVAL(zn_sed_ca(:,:)) 191 fq2 = SUM(zn_sed_ca(:,:)) 192 if (lwp) write (numout,'(a,3f15.5)') 'Sediment Ca ', & 193 & fq0, fq1, fq2 194 #endif 195 119 196 ! 120 197 END SUBROUTINE trc_rst_read … … 130 207 INTEGER :: jn 131 208 REAL(wp) :: zarak0 209 !! AXY (05/11/13): temporary variables 210 REAL(wp) :: fq0,fq1,fq2 132 211 !!---------------------------------------------------------------------- 133 212 ! … … 142 221 CALL iom_rstput( kt, nitrst, numrtw, 'TRB'//ctrcnm(jn), trb(:,:,:,jn) ) 143 222 END DO 223 224 !! AXY (09/06/14): the ARCHER version of MEDUSA-2 does not include an equivalent 225 !! call to MEDUSA-2 at this point; this suggests that the FCM 226 !! version of NEMO date significantly earlier than the current 227 !! version 228 229 #if defined key_medusa 230 !! AXY (13/01/12): write out "before" and "now" state of seafloor 231 !! sediment pools into restart; this happens 232 !! whether or not the pools are to be used by 233 !! MEDUSA (which is controlled by a switch in the 234 !! namelist_top file) 235 !! 236 IF(lwp) WRITE(numout,*) ' MEDUSA sediment fields - writing out ...' 237 CALL iom_rstput( kt, nitrst, numrtw, 'B_SED_N', zb_sed_n(:,:) ) 238 CALL iom_rstput( kt, nitrst, numrtw, 'N_SED_N', zn_sed_n(:,:) ) 239 CALL iom_rstput( kt, nitrst, numrtw, 'B_SED_FE', zb_sed_fe(:,:) ) 240 CALL iom_rstput( kt, nitrst, numrtw, 'N_SED_FE', zn_sed_fe(:,:) ) 241 CALL iom_rstput( kt, nitrst, numrtw, 'B_SED_SI', zb_sed_si(:,:) ) 242 CALL iom_rstput( kt, nitrst, numrtw, 'N_SED_SI', zn_sed_si(:,:) ) 243 CALL iom_rstput( kt, nitrst, numrtw, 'B_SED_C', zb_sed_c(:,:) ) 244 CALL iom_rstput( kt, nitrst, numrtw, 'N_SED_C', zn_sed_c(:,:) ) 245 CALL iom_rstput( kt, nitrst, numrtw, 'B_SED_CA', zb_sed_ca(:,:) ) 246 CALL iom_rstput( kt, nitrst, numrtw, 'N_SED_CA', zn_sed_ca(:,:) ) 247 !! 248 !! calculate stats on these fields 249 IF(lwp) WRITE(numout,*) ' MEDUSA sediment field stats (min, max, sum) ...' 250 fq0 = MINVAL(zn_sed_n(:,:)) 251 fq1 = MAXVAL(zn_sed_n(:,:)) 252 fq2 = SUM(zn_sed_n(:,:)) 253 if (lwp) write (numout,'(a,3f15.5)') 'Sediment N ', & 254 & fq0, fq1, fq2 255 fq0 = MINVAL(zn_sed_fe(:,:)) 256 fq1 = MAXVAL(zn_sed_fe(:,:)) 257 fq2 = SUM(zn_sed_fe(:,:)) 258 if (lwp) write (numout,'(a,3f15.5)') 'Sediment Fe ', & 259 & fq0, fq1, fq2 260 fq0 = MINVAL(zn_sed_si(:,:)) 261 fq1 = MAXVAL(zn_sed_si(:,:)) 262 fq2 = SUM(zn_sed_si(:,:)) 263 if (lwp) write (numout,'(a,3f15.5)') 'Sediment Si ', & 264 & fq0, fq1, fq2 265 fq0 = MINVAL(zn_sed_c(:,:)) 266 fq1 = MAXVAL(zn_sed_c(:,:)) 267 fq2 = SUM(zn_sed_c(:,:)) 268 if (lwp) write (numout,'(a,3f15.5)') 'Sediment C ', & 269 & fq0, fq1, fq2 270 fq0 = MINVAL(zn_sed_ca(:,:)) 271 fq1 = MAXVAL(zn_sed_ca(:,:)) 272 fq2 = SUM(zn_sed_ca(:,:)) 273 if (lwp) write (numout,'(a,3f15.5)') 'Sediment Ca ', & 274 & fq0, fq1, fq2 275 #endif 276 144 277 ! 145 278 IF( kt == nitrst ) THEN -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcsms.F90
- Property svn:keywords deleted
r3680 r5726 16 16 USE trc ! 17 17 USE trcsms_pisces ! PISCES biogeo-model 18 USE trcsms_medusa ! MEDUSA tracers 19 USE trcsms_idtra ! Idealize Tracer 18 20 USE trcsms_cfc ! CFC 11 & 12 19 21 USE trcsms_c14b ! C14b tracer … … 28 30 !!---------------------------------------------------------------------- 29 31 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 30 !! $Id$ 32 !! $Id$ 31 33 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 32 34 !!---------------------------------------------------------------------- … … 49 51 ! 50 52 IF( lk_pisces ) CALL trc_sms_pisces ( kt ) ! main program of PISCES 53 IF( lk_medusa ) CALL trc_sms_medusa ( kt ) ! MEDUSA tracers 54 IF( lk_idtra ) CALL trc_sms_idtra ( kt ) ! radioactive decay of Id. tracer 51 55 IF( lk_cfc ) CALL trc_sms_cfc ( kt ) ! surface fluxes of CFC 52 56 IF( lk_c14b ) CALL trc_sms_c14b ( kt ) ! surface fluxes of C14 -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcstp.F90
- Property svn:keywords deleted
r5407 r5726 40 40 !!---------------------------------------------------------------------- 41 41 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 42 !! $Id$ 42 !! $Id$ 43 43 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 44 44 !!---------------------------------------------------------------------- … … 87 87 tra(:,:,:,:) = 0.e0 88 88 ! 89 # if defined key_debug_medusa 90 IF(lwp) WRITE(numout,*) ' MEDUSA trc_stp begins at kt =', kt 91 CALL flush(numout) 92 # endif 89 93 CALL trc_rst_opn ( kt ) ! Open tracer restart file 90 94 IF( lrst_trc ) CALL trc_rst_cal ( kt, 'WRITE' ) ! calendar … … 93 97 ENDIF 94 98 CALL trc_sms ( kt ) ! tracers: sinks and sources 99 # if defined key_debug_medusa 100 IF(lwp) WRITE(numout,*) ' MEDUSA trc_stp SMS complete at kt =', kt 101 CALL flush(numout) 102 # endif 95 103 CALL trc_trp ( kt ) ! transport of passive tracers 104 # if defined key_debug_medusa 105 IF(lwp) WRITE(numout,*) ' MEDUSA trc_stp transport complete at kt =', kt 106 CALL flush(numout) 107 # endif 96 108 IF( kt == nittrc000 ) THEN 97 109 CALL iom_close( numrtr ) ! close input tracer restart file … … 102 114 ! 103 115 IF( nn_dttrc /= 1 ) CALL trc_sub_reset( kt ) ! resetting physical variables when sub-stepping 116 # if defined key_debug_medusa 117 IF(lwp) WRITE(numout,*) ' MEDUSA trc_stp ends at kt =', kt 118 CALL flush(numout) 119 # endif 104 120 ! 105 121 ENDIF -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcsub.F90
- Property svn:keywords deleted
r5215 r5726 48 48 !!---------------------------------------------------------------------- 49 49 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 50 !! $Id$ 50 !! $Id$ 51 51 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 52 52 !!---------------------------------------------------------------------- -
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/trcwri.F90
- Property svn:keywords deleted
r3750 r5726 21 21 USE trcwri_c14b 22 22 USE trcwri_my_trc 23 USE trcwri_medusa 23 24 24 25 IMPLICIT NONE … … 57 58 ! --------------------------------------- 58 59 IF( lk_pisces ) CALL trc_wri_pisces ! PISCES 60 ! 61 # if defined key_debug_medusa 62 CALL flush(numout) 63 IF (lwp) write (numout,*) '------------------------------' 64 IF (lwp) write (numout,*) 'Jpalm - debug' 65 IF (lwp) write (numout,*) 'Just before call trc_wri_medusa' 66 IF (lwp) write (numout,*) ' ' 67 CALL flush(numout) 68 # endif 69 ! 70 IF( lk_medusa ) CALL trc_wri_medusa ! MESDUSA 71 ! 72 # if defined key_debug_medusa 73 CALL flush(numout) 74 IF (lwp) write (numout,*) '------------------------------' 75 IF (lwp) write (numout,*) 'Jpalm - debug' 76 IF (lwp) write (numout,*) 'CALL trc_wri_medusa -- OK' 77 IF (lwp) write (numout,*) ' ' 78 CALL flush(numout) 79 # endif 80 ! 81 !!! JPALM 82 !!! don't forget to add idtra 59 83 IF( lk_cfc ) CALL trc_wri_cfc ! surface fluxes of CFC 60 84 IF( lk_c14b ) CALL trc_wri_c14b ! surface fluxes of C14 … … 78 102 !!---------------------------------------------------------------------- 79 103 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 80 !! $Id$ 104 !! $Id$ 81 105 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 82 106 !!======================================================================
Note: See TracChangeset
for help on using the changeset viewer.