Changeset 3160
- Timestamp:
- 2011-11-20T15:27:18+01:00 (12 years ago)
- Location:
- branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC
- Files:
-
- 35 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/C14b/trcsms_c14b.F90
r3153 r3160 113 113 REAL(wp), POINTER, DIMENSION(:,:,:) :: zdecay 114 114 !!--------------------------------------------------------------------- 115 115 ! 116 IF( nn_timing == 1 ) CALL timing_start('trc_sms_c14b') 117 ! 116 118 ! Allocate temporary workspace 117 119 CALL wrk_alloc( jpi, jpj, zatmbc14 ) … … 286 288 CALL wrk_dealloc( jpi, jpj, jpk, zdecay ) 287 289 ! 290 IF( nn_timing == 1 ) CALL timing_stop('trc_sms_c14b') 291 ! 288 292 END SUBROUTINE trc_sms_c14b 289 293 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/CFC/trcsms_cfc.F90
r3116 r3160 90 90 REAL(wp), ALLOCATABLE, DIMENSION(:,:) :: zpatm ! atmospheric function 91 91 !!---------------------------------------------------------------------- 92 ! 93 ! 94 IF( nn_timing == 1 ) CALL timing_start('trc_sms_cfc') 92 95 ! 93 96 ALLOCATE( zpatm(jphem,jp_cfc), STAT=ierr ) … … 192 195 END IF 193 196 ! 197 IF( nn_timing == 1 ) CALL timing_stop('trc_sms_cfc') 198 ! 194 199 END SUBROUTINE trc_sms_cfc 195 200 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/LOBSTER/trcbio.F90
r3153 r3160 77 77 CHARACTER (len=25) :: charout 78 78 !!--------------------------------------------------------------------- 79 79 ! 80 IF( nn_timing == 1 ) CALL timing_start('trc_bio') 81 ! 80 82 IF( ln_diatrc ) THEN 81 83 CALL wrk_alloc( jpi, jpj, 17, zw2d ) … … 440 442 ENDIF 441 443 ! 444 IF( nn_timing == 1 ) CALL timing_stop('trc_bio') 445 ! 442 446 END SUBROUTINE trc_bio 443 447 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/LOBSTER/trcexp.F90
r3124 r3160 61 61 CHARACTER (len=25) :: charout 62 62 !!--------------------------------------------------------------------- 63 63 ! 64 IF( nn_timing == 1 ) CALL timing_start('trc_exp') 65 ! 64 66 IF( kt == nittrc000 ) THEN 65 67 IF(lwp) WRITE(numout,*) … … 155 157 CALL prt_ctl_trc(tab4d=tra, mask=tmask, clinfo=ctrcnm) 156 158 ENDIF 157 159 ! 160 IF( nn_timing == 1 ) CALL timing_stop('trc_exp') 161 ! 158 162 END SUBROUTINE trc_exp 159 163 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/LOBSTER/trcopt.F90
r3153 r3160 63 63 REAL(wp), POINTER, DIMENSION(:,:,:) :: zparr, zparg 64 64 !!--------------------------------------------------------------------- 65 65 ! 66 IF( nn_timing == 1 ) CALL timing_start('trc_opt') 67 ! 66 68 ! Allocate temporary workspace 67 69 CALL wrk_alloc( jpi, jpj, zpar100, zpar0m ) … … 136 138 CALL wrk_dealloc( jpi, jpj, jpk, zparr, zparg ) 137 139 ! 140 IF( nn_timing == 1 ) CALL timing_stop('trc_opt') 141 ! 138 142 END SUBROUTINE trc_opt 139 143 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/LOBSTER/trcsed.F90
r3153 r3160 64 64 REAL(wp), POINTER, DIMENSION(:,:,:) :: zwork, ztra, ztrbio 65 65 !!--------------------------------------------------------------------- 66 66 ! 67 IF( nn_timing == 1 ) CALL timing_start('trc_sed') 68 ! 67 69 IF( kt == nittrc000 ) THEN 68 70 IF(lwp) WRITE(numout,*) … … 137 139 ENDIF 138 140 ! 141 IF( nn_timing == 1 ) CALL timing_stop('trc_sed') 142 ! 139 143 END SUBROUTINE trc_sed 140 144 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/LOBSTER/trcsms_lobster.F90
r2977 r3160 50 50 INTEGER :: jn 51 51 !! -------------------------------------------------------------------- 52 52 ! 53 IF( nn_timing == 1 ) CALL timing_start('trc_sms_lobster') 54 ! 53 55 CALL trc_opt( kt ) ! optical model 54 56 CALL trc_bio( kt ) ! biological model … … 63 65 64 66 IF( lk_trdmld_trc ) CALL trd_mld_bio( kt ) ! trends: Mixed-layer 67 ! 68 IF( nn_timing == 1 ) CALL timing_stop('trc_sms_lobster') 65 69 ! 66 70 END SUBROUTINE trc_sms_lobster -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/MY_TRC/trcsms_my_trc.F90
r3153 r3160 46 46 INTEGER :: jn ! dummy loop index 47 47 !!---------------------------------------------------------------------- 48 48 ! 49 IF( nn_timing == 1 ) CALL timing_start('trc_sms_my_trc') 50 ! 49 51 IF(lwp) WRITE(numout,*) 50 52 IF(lwp) WRITE(numout,*) ' trc_sms_my_trc: MY_TRC model' … … 72 74 CALL wrk_dealloc( jpi, jpj, jpk, ztrmyt ) 73 75 END IF 76 ! 77 IF( nn_timing == 1 ) CALL timing_stop('trc_sms_my_trc') 74 78 ! 75 79 END SUBROUTINE trc_sms_my_trc -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zbio.F90
r2977 r3160 62 62 63 63 !!--------------------------------------------------------------------- 64 64 ! 65 IF( nn_timing == 1 ) CALL timing_start('p4z_bio') 66 ! 65 67 ! ASSIGN THE SHEAR RATE THAT IS USED FOR AGGREGATION 66 68 ! OF PHYTOPLANKTON AND DETRITUS … … 129 131 ENDIF 130 132 ! 133 IF( nn_timing == 1 ) CALL timing_stop('p4z_bio') 134 ! 131 135 END SUBROUTINE p4z_bio 132 136 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zche.F90
r2977 r3160 165 165 REAL(wp) :: zst , zft , zcks , zckf , zaksp1 166 166 !!--------------------------------------------------------------------- 167 167 ! 168 IF( nn_timing == 1 ) CALL timing_start('p4z_che') 169 ! 168 170 ! CHEMICAL CONSTANTS - SURFACE LAYER 169 171 ! ---------------------------------- … … 318 320 END DO 319 321 ! 322 IF( nn_timing == 1 ) CALL timing_stop('p4z_che') 323 ! 320 324 END SUBROUTINE p4z_che 321 325 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zflx.F90
r3153 r3160 94 94 REAL(wp), POINTER, DIMENSION(:,:) :: zkgco2, zkgo2, zh2co3, zoflx 95 95 !!--------------------------------------------------------------------- 96 97 96 ! 97 IF( nn_timing == 1 ) CALL timing_start('p4z_flx') 98 98 ! 99 99 CALL wrk_alloc( jpi, jpj, zkgco2, zkgo2, zh2co3, zoflx ) … … 240 240 CALL wrk_dealloc( jpi, jpj, zkgco2, zkgo2, zh2co3, zoflx ) 241 241 ! 242 IF( nn_timing == 1 ) CALL timing_stop('p4z_flx') 243 ! 242 244 END SUBROUTINE p4z_flx 243 245 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zint.F90
r2977 r3160 40 40 REAL(wp) :: zvar ! local variable 41 41 !!--------------------------------------------------------------------- 42 42 ! 43 IF( nn_timing == 1 ) CALL timing_start('p4z_int') 44 ! 43 45 ! Computation of phyto and zoo metabolic rate 44 46 ! ------------------------------------------- … … 61 63 ENDIF 62 64 ! 65 IF( nn_timing == 1 ) CALL timing_stop('p4z_int') 66 ! 63 67 END SUBROUTINE p4z_int 64 68 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zlim.F90
r3124 r3160 78 78 REAL(wp) :: zconc1d, zconc1dnh4, zconc0n, zconc0nnh4 79 79 !!--------------------------------------------------------------------- 80 80 ! 81 IF( nn_timing == 1 ) CALL timing_start('p4z_lim') 82 ! 81 83 DO jk = 1, jpkm1 82 84 DO jj = 1, jpj … … 171 173 END DO 172 174 END DO 175 ! 176 IF( nn_timing == 1 ) CALL timing_stop('p4z_lim') 173 177 ! 174 178 END SUBROUTINE p4z_lim -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zlys.F90
r3153 r3160 68 68 REAL(wp), POINTER, DIMENSION(:,:,:) :: zco3, zcaldiss 69 69 !!--------------------------------------------------------------------- 70 ! 71 IF( nn_timing == 1 ) CALL timing_start('p4z_lys') 70 72 ! 71 73 CALL wrk_alloc( jpi, jpj, jpk, zco3, zcaldiss ) … … 168 170 CALL wrk_dealloc( jpi, jpj, jpk, zco3, zcaldiss ) 169 171 ! 172 IF( nn_timing == 1 ) CALL timing_stop('p4z_lys') 173 ! 170 174 END SUBROUTINE p4z_lys 171 175 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zmeso.F90
r3124 r3160 83 83 CHARACTER (len=25) :: charout 84 84 REAL(wp) :: zrfact2 85 86 85 !!--------------------------------------------------------------------- 86 ! 87 IF( nn_timing == 1 ) CALL timing_start('p4z_meso') 88 ! 87 89 88 90 DO jk = 1, jpkm1 … … 226 228 CALL prt_ctl_trc(tab4d=tra, mask=tmask, clinfo=ctrcnm) 227 229 ENDIF 228 230 ! 231 IF( nn_timing == 1 ) CALL timing_stop('p4z_meso') 232 ! 229 233 END SUBROUTINE p4z_meso 230 234 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zmicro.F90
r3124 r3160 78 78 REAL(wp) :: zgrazmf, zgrazsf, zgrazpf 79 79 CHARACTER (len=25) :: charout 80 81 80 !!--------------------------------------------------------------------- 82 81 ! 82 IF( nn_timing == 1 ) CALL timing_start('p4z_micro') 83 ! 83 84 grazing(:,:,:) = 0. !: grazing set to zero 84 85 DO jk = 1, jpkm1 … … 189 190 CALL prt_ctl_trc(tab4d=tra, mask=tmask, clinfo=ctrcnm) 190 191 ENDIF 191 192 ! 193 IF( nn_timing == 1 ) CALL timing_stop('p4z_micro') 194 ! 192 195 END SUBROUTINE p4z_micro 193 196 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zmort.F90
r2979 r3160 77 77 CHARACTER (len=25) :: charout 78 78 !!--------------------------------------------------------------------- 79 79 ! 80 IF( nn_timing == 1 ) CALL timing_start('p4z_nano') 81 ! 80 82 prodcal(:,:,:) = 0. !: calcite production variable set to zero 81 83 DO jk = 1, jpkm1 … … 133 135 CALL prt_ctl_trc(tab4d=tra, mask=tmask, clinfo=ctrcnm) 134 136 ENDIF 135 137 ! 138 IF( nn_timing == 1 ) CALL timing_stop('p4z_nano') 139 ! 136 140 END SUBROUTINE p4z_nano 137 141 … … 148 152 REAL(wp) :: zrespp2, ztortp2, zmortp2, zstep 149 153 CHARACTER (len=25) :: charout 150 151 !!--------------------------------------------------------------------- 152 154 !!--------------------------------------------------------------------- 155 ! 156 IF( nn_timing == 1 ) CALL timing_start('p4z_diat') 157 ! 153 158 154 159 ! Aggregation term for diatoms is increased in case of nutrient … … 212 217 CALL prt_ctl_trc(tab4d=tra, mask=tmask, clinfo=ctrcnm) 213 218 ENDIF 214 219 ! 220 IF( nn_timing == 1 ) CALL timing_stop('p4z_diat') 221 ! 215 222 END SUBROUTINE p4z_diat 216 223 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zopt.F90
r3153 r3160 63 63 REAL(wp), POINTER, DIMENSION(:,:,:) :: zekg, zekr, zekb, ze0, ze1, ze2, ze3 64 64 !!--------------------------------------------------------------------- 65 65 ! 66 IF( nn_timing == 1 ) CALL timing_start('p4z_opt') 67 ! 66 68 ! Allocate temporary workspace 67 69 CALL wrk_alloc( jpi, jpj, zdepmoy, zetmp, zetmp1, zetmp2 ) … … 234 236 CALL wrk_dealloc( jpi, jpj, jpk, zekg, zekr, zekb, ze0, ze1, ze2, ze3 ) 235 237 ! 238 IF( nn_timing == 1 ) CALL timing_stop('p4z_opt') 239 ! 236 240 END SUBROUTINE p4z_opt 237 241 … … 243 247 !! ** Purpose : Initialization of tabulated attenuation coef 244 248 !!---------------------------------------------------------------------- 249 ! 250 IF( nn_timing == 1 ) CALL timing_start('p4z_opt_init') 245 251 ! 246 252 CALL trc_oce_rgb( xkrgb ) ! tabulated attenuation coefficients … … 254 260 IF( ln_qsr_bio ) etot3(:,:,:) = 0._wp 255 261 ! 262 IF( nn_timing == 1 ) CALL timing_stop('p4z_opt_init') 263 ! 256 264 END SUBROUTINE p4z_opt_init 257 265 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zprod.F90
r3153 r3160 88 88 REAL(wp), POINTER, DIMENSION(:,:,:) :: zpislopead, zpislopead2, zprdia, zprbio, zprdch, zprnch, zysopt 89 89 REAL(wp), POINTER, DIMENSION(:,:,:) :: zprorca, zprorcad, zprofed, zprofen, zprochln, zprochld, zpronew, zpronewd 90 91 90 !!--------------------------------------------------------------------- 92 91 ! 92 IF( nn_timing == 1 ) CALL timing_start('p4z_prod') 93 ! 93 94 ! Allocate temporary workspace 94 95 CALL wrk_alloc( jpi, jpj, zmixnano, zmixdiat, zstrn ) … … 446 447 CALL wrk_dealloc( jpi, jpj, jpk, zprorca, zprorcad, zprofed, zprofen, zprochln, zprochld, zpronew, zpronewd ) 447 448 ! 449 IF( nn_timing == 1 ) CALL timing_stop('p4z_prod') 450 ! 448 451 END SUBROUTINE p4z_prod 449 452 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zrem.F90
r3153 r3160 84 84 REAL(wp), POINTER, DIMENSION(:,:,:) :: zdepbac, zolimi, zolimi2 85 85 !!--------------------------------------------------------------------- 86 86 ! 87 IF( nn_timing == 1 ) CALL timing_start('p4z_rem') 88 ! 87 89 ! Allocate temporary workspace 88 90 CALL wrk_alloc( jpi, jpj, ztempbac ) … … 392 394 CALL wrk_dealloc( jpi, jpj, jpk, zdepbac, zolimi, zolimi2 ) 393 395 ! 396 IF( nn_timing == 1 ) CALL timing_stop('p4z_rem') 397 ! 394 398 END SUBROUTINE p4z_rem 395 399 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zsed.F90
r3153 r3160 106 106 REAL(wp), POINTER, DIMENSION(:,:,:) :: znitrpot, zirondep 107 107 !!--------------------------------------------------------------------- 108 108 ! 109 IF( nn_timing == 1 ) CALL timing_start('p4z_sed') 110 ! 109 111 ! Allocate temporary workspace 110 112 CALL wrk_alloc( jpi, jpj, zsidep, zwork1, zwork2, zwork3 ) … … 308 310 CALL prt_ctl_trc(tab4d=trn, mask=tmask, clinfo=ctrcnm) 309 311 ENDIF 310 312 ! 311 313 CALL wrk_dealloc( jpi, jpj, zsidep, zwork1, zwork2, zwork3 ) 312 314 CALL wrk_dealloc( jpi, jpj, jpk, znitrpot, zirondep ) 313 315 ! 316 IF( nn_timing == 1 ) CALL timing_stop('p4z_sed') 317 ! 314 318 END SUBROUTINE p4z_sed 315 319 … … 332 336 INTEGER :: ji,jj 333 337 REAL(wp) :: zcoef 334 335 338 !!--------------------------------------------------------------------- 336 339 ! 340 IF( nn_timing == 1 ) CALL timing_start('p4z_sbc') 341 ! 337 342 ! Compute dust at nittrc000 or only if there is more than 1 time record in dust file 338 343 IF( ln_dust ) THEN … … 372 377 ENDIF 373 378 ! 379 IF( nn_timing == 1 ) CALL timing_stop('p4z_sbc') 380 ! 374 381 END SUBROUTINE p4z_sbc 375 382 … … 401 408 & sedfeinput, dustsolub, wdust, nitrfix, diazolight, concfediaz 402 409 !!---------------------------------------------------------------------- 410 ! 411 IF( nn_timing == 1 ) CALL timing_start('p4z_sed_init') 412 ! 403 413 ! ! number of seconds per year and per month 404 414 ryyss = nyear_len(1) * rday … … 601 611 WRITE(numout,*) 602 612 ENDIF 603 ! 613 ! 614 IF( nn_timing == 1 ) CALL timing_stop('p4z_sed_init') 615 ! 604 616 END SUBROUTINE p4z_sed_init 605 617 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/p4zsink.F90
r3153 r3160 98 98 REAL(wp), POINTER, DIMENSION(:,:,:) :: znum3d 99 99 !!--------------------------------------------------------------------- 100 ! 101 IF( nn_timing == 1 ) CALL timing_start('p4z_sink') 100 102 ! 101 103 CALL wrk_alloc( jpi, jpj, jpk, znum3d ) … … 295 297 CALL wrk_alloc( jpi, jpj, jpk, znum3d ) 296 298 ! 299 IF( nn_timing == 1 ) CALL timing_stop('p4z_sink') 300 ! 297 301 END SUBROUTINE p4z_sink 298 302 … … 318 322 & xkr_nnano, xkr_ndiat, xkr_nmeso, xkr_naggr 319 323 !!---------------------------------------------------------------------- 324 ! 325 IF( nn_timing == 1 ) CALL timing_start('p4z_sink_init') 320 326 ! 321 327 REWIND( numnatp ) ! read nampiskrs … … 425 431 END DO 426 432 ! 433 IF( nn_timing == 1 ) CALL timing_stop('p4z_sink_init') 434 ! 427 435 END SUBROUTINE p4z_sink_init 428 436 … … 447 455 CHARACTER (len=25) :: charout 448 456 !!--------------------------------------------------------------------- 449 457 ! 458 IF( nn_timing == 1 ) CALL timing_start('p4z_sink') 459 ! 450 460 ! Sinking speeds of detritus is increased with depth as shown 451 461 ! by data and from the coagulation theory … … 572 582 ENDIF 573 583 ! 584 IF( nn_timing == 1 ) CALL timing_stop('p4z_sink') 585 ! 574 586 END SUBROUTINE p4z_sink 575 587 … … 604 616 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztraz, zakz, zwsink2 605 617 !!--------------------------------------------------------------------- 606 618 ! 619 IF( nn_timing == 1 ) CALL timing_start('p4z_sink2') 620 ! 607 621 ! Allocate temporary workspace 608 622 CALL wrk_alloc( jpi, jpj, jpk, ztraz, zakz, zwsink2 ) … … 690 704 ! 691 705 CALL wrk_dealloc( jpi, jpj, jpk, ztraz, zakz, zwsink2 ) 706 ! 707 IF( nn_timing == 1 ) CALL timing_stop('p4z_sink2') 692 708 ! 693 709 END SUBROUTINE p4z_sink2 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/PISCES/trcsms_pisces.F90
r3116 r3160 65 65 CHARACTER (len=25) :: charout 66 66 !!--------------------------------------------------------------------- 67 67 ! 68 IF( nn_timing == 1 ) CALL timing_start('trc_sms_pisces') 69 ! 68 70 IF( kt == nittrc000 ) CALL trc_sms_pisces_init ! Initialization (first time-step only) 69 71 IF( ln_rsttr .AND. ln_pisdmp .AND. MOD( kt - 1, nn_pisdmp ) == 0 ) CALL trc_sms_pisces_dmp( kt ) ! Relaxation of some tracers … … 116 118 ! 117 119 ENDIF 120 ! 121 IF( nn_timing == 1 ) CALL timing_stop('trc_sms_pisces') 118 122 ! 119 123 END SUBROUTINE trc_sms_pisces -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/TRP/trcadv.F90
r3153 r3160 75 75 !!---------------------------------------------------------------------- 76 76 ! 77 IF( nn_timing == 1 ) CALL timing_start('trc_adv') 78 ! 77 79 CALL wrk_alloc( jpi, jpj, jpk, zun, zvn, zwn ) 78 80 ! … … 140 142 ! 141 143 CALL wrk_dealloc( jpi, jpj, jpk, zun, zvn, zwn ) 144 ! 145 IF( nn_timing == 1 ) CALL timing_stop('trc_adv') 142 146 ! 143 147 END SUBROUTINE trc_adv -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/TRP/trcbbl.F90
r3116 r3160 53 53 INTEGER, INTENT( in ) :: kt ! ocean time-step 54 54 CHARACTER (len=22) :: charout 55 REAL(wp), DIMENSION(:,:,:,:), ALLOCATABLE:: ztrtrd55 REAL(wp), POINTER, DIMENSION(:,:,:,:) :: ztrtrd 56 56 !!---------------------------------------------------------------------- 57 57 ! 58 IF( nn_timing == 1 ) CALL timing_start('trc_bbl') 59 ! 58 60 IF( .NOT. lk_offline .AND. nn_dttrc == 1 ) THEN 59 61 CALL bbl( kt, nittrc000, 'TRC' ) ! Online coupling with dynamics : Computation of bbl coef and bbl transport … … 62 64 63 65 IF( l_trdtrc ) THEN 64 ALLOCATE( ztrtrd(jpi,jpj,jpk,jptra)) ! temporary save of trends66 CALL wrk_alloc( jpi, jpj, jpk, jptra, ztrtrd ) ! temporary save of trends 65 67 ztrtrd(:,:,:,:) = tra(:,:,:,:) 66 68 ENDIF … … 93 95 CALL trd_tra( kt, 'TRC', jn, jptra_trd_ldf, ztrtrd(:,:,:,jn) ) 94 96 END DO 95 DEALLOCATE( ztrtrd )97 CALL wrk_dealloc( jpi, jpj, jpk, jptra, ztrtrd ) ! temporary save of trends 96 98 ENDIF 99 ! 100 IF( nn_timing == 1 ) CALL timing_stop('trc_bbl') 97 101 ! 98 102 END SUBROUTINE trc_bbl -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/TRP/trcdmp.F90
r3116 r3160 89 89 REAL(wp) :: ztra ! temporary scalars 90 90 CHARACTER (len=22) :: charout 91 REAL(wp), DIMENSION(:,:,:), ALLOCATABLE :: ztrtrd 92 !!---------------------------------------------------------------------- 93 91 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztrtrd 92 !!---------------------------------------------------------------------- 93 ! 94 IF( nn_timing == 1 ) CALL timing_start('trc_dmp') 95 ! 94 96 ! 0. Initialization (first time-step only) 95 97 ! -------------- 96 98 IF( kt == nittrc000 ) CALL trc_dmp_init 97 99 98 IF( l_trdtrc ) ALLOCATE( ztrtrd(jpi,jpj,jpk)) ! temporary save of trends100 IF( l_trdtrc ) CALL wrk_alloc( jpi, jpj, jpk, ztrtrd ) ! temporary save of trends 99 101 100 102 ! 1. Newtonian damping trends on tracer fields … … 156 158 END DO ! tracer loop 157 159 ! ! =========== 158 IF( l_trdtrc ) DEALLOCATE(ztrtrd )160 IF( l_trdtrc ) CALL wrk_dealloc( jpi, jpj, jpk, ztrtrd ) 159 161 ! ! print mean trends (used for debugging) 160 162 IF( ln_ctl ) THEN … … 163 165 ENDIF 164 166 ! 167 IF( nn_timing == 1 ) CALL timing_stop('trc_dmp') 168 ! 165 169 END SUBROUTINE trc_dmp 166 170 … … 175 179 !! called by trc_dmp at the first timestep (nittrc000) 176 180 !!---------------------------------------------------------------------- 177 181 ! 182 IF( nn_timing == 1 ) CALL timing_start('trc_dmp_init') 183 ! 178 184 SELECT CASE ( nn_hdmp_tr ) 179 185 CASE ( -1 ) ; IF(lwp) WRITE(numout,*) ' tracer damping in the Med & Red seas only' … … 204 210 & nn_file_tr, 'TRC' , restotr ) 205 211 ENDIF 212 ! 213 IF( nn_timing == 1 ) CALL timing_stop('trc_dmp_init') 206 214 ! 207 215 END SUBROUTINE trc_dmp_init -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/TRP/trcldf.F90
r3118 r3160 58 58 INTEGER :: jn 59 59 CHARACTER (len=22) :: charout 60 REAL(wp), DIMENSION(:,:,:,:), ALLOCATABLE :: ztrtrd 61 !!---------------------------------------------------------------------- 62 60 REAL(wp), POINTER, DIMENSION(:,:,:,:) :: ztrtrd 61 !!---------------------------------------------------------------------- 62 ! 63 IF( nn_timing == 1 ) CALL timing_start('trc_ldf') 64 ! 63 65 IF( kt == nittrc000 ) CALL ldf_ctl ! initialisation & control of options 64 66 … … 66 68 67 69 IF( l_trdtrc ) THEN 68 ALLOCATE( ztrtrd(jpi,jpj,jpk,jptra) ) ! temporary save of trends70 CALL wrk_alloc( jpi, jpj, jpk, jptra, ztrtrd ) 69 71 ztrtrd(:,:,:,:) = tra(:,:,:,:) 70 72 ENDIF … … 105 107 CALL trd_tra( kt, 'TRC', jn, jptra_trd_ldf, ztrtrd(:,:,:,jn) ) 106 108 END DO 107 DEALLOCATE(ztrtrd )109 CALL wrk_dealloc( jpi, jpj, jpk, jptra, ztrtrd ) 108 110 ENDIF 109 111 ! ! print mean trends (used for debugging) … … 112 114 CALL prt_ctl_trc( tab4d=tra, mask=tmask, clinfo=ctrcnm, clinfo2='trd' ) 113 115 ENDIF 116 ! 117 IF( nn_timing == 1 ) CALL timing_stop('trc_ldf') 114 118 ! 115 119 END SUBROUTINE trc_ldf -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/TRP/trcnxt.F90
r3124 r3160 93 93 REAL(wp) :: zfact ! temporary scalar 94 94 CHARACTER (len=22) :: charout 95 REAL(wp), DIMENSION(:,:,:,:), ALLOCATABLE:: ztrdt95 REAL(wp), POINTER, DIMENSION(:,:,:,:) :: ztrdt 96 96 !!---------------------------------------------------------------------- 97 97 ! 98 IF( nn_timing == 1 ) CALL timing_start('trc_nxt') 99 ! 98 100 IF( kt == nittrc000 .AND. lwp ) THEN 99 101 WRITE(numout,*) … … 125 127 ! trends computation initialisation 126 128 IF( l_trdtrc ) THEN 127 ALLOCATE( ztrdt(jpi,jpj,jpk,jptra)) !* store now fields before applying the Asselin filter129 CALL wrk_alloc( jpi, jpj, jpk, jptra, ztrdt ) !* store now fields before applying the Asselin filter 128 130 ztrdt(:,:,:,:) = trn(:,:,:,:) 129 131 ENDIF … … 158 160 END DO 159 161 END DO 160 DEALLOCATE( ztrdt )162 CALL wrk_dealloc( jpi, jpj, jpk, jptra, ztrdt ) 161 163 END IF 162 164 ! … … 166 168 CALL prt_ctl_trc(tab4d=trn, mask=tmask, clinfo=ctrcnm) 167 169 ENDIF 170 ! 171 IF( nn_timing == 1 ) CALL timing_stop('trc_nxt') 168 172 ! 169 173 END SUBROUTINE trc_nxt -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/TRP/trcrad.F90
r3124 r3160 52 52 CHARACTER (len=22) :: charout 53 53 !!---------------------------------------------------------------------- 54 54 ! 55 IF( nn_timing == 1 ) CALL timing_start('trc_rad') 56 ! 55 57 IF( kt == nittrc000 ) THEN 56 58 IF(lwp) WRITE(numout,*) … … 65 67 IF( lk_my_trc ) CALL trc_rad_sms( kt, trb, trn, jp_myt0 , jp_myt1 ) ! MY_TRC model 66 68 67 68 69 ! 69 70 IF(ln_ctl) THEN ! print mean trends (used for debugging) … … 72 73 CALL prt_ctl_trc( tab4d=trn, mask=tmask, clinfo=ctrcnm ) 73 74 ENDIF 75 ! 76 IF( nn_timing == 1 ) CALL timing_stop('trc_rad') 74 77 ! 75 78 END SUBROUTINE trc_rad … … 107 110 REAL(wp) :: ztrcorb, ztrmasb ! temporary scalars 108 111 REAL(wp) :: zcoef, ztrcorn, ztrmasn ! " " 109 REAL(wp), DIMENSION(:,:,:), ALLOCATABLE :: ztrtrdb ! workspace arrays 110 REAL(wp), DIMENSION(:,:,:), ALLOCATABLE :: ztrtrdn ! workspace arrays 112 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztrtrdb, ztrtrdn ! workspace arrays 111 113 REAL(wp) :: zs2rdt 112 114 LOGICAL :: lldebug = .FALSE. 113 114 !!---------------------------------------------------------------------- 115 116 IF( l_trdtrc ) THEN 117 ! 118 ALLOCATE( ztrtrdb(jpi,jpj,jpk) ) 119 ALLOCATE( ztrtrdn(jpi,jpj,jpk) ) 120 ! 121 ENDIF 115 !!---------------------------------------------------------------------- 116 117 118 IF( l_trdtrc ) CALL wrk_alloc( jpi, jpj, jpk, ztrtrdb, ztrtrdn ) 122 119 123 120 IF( PRESENT( cpreserv ) ) THEN ! total tracer concentration is preserved … … 200 197 ENDIF 201 198 202 IF( l_trdtrc ) DEALLOCATE(ztrtrdb, ztrtrdn )199 IF( l_trdtrc ) CALL wrk_dealloc( jpi, jpj, jpk, ztrtrdb, ztrtrdn ) 203 200 204 201 END SUBROUTINE trc_rad_sms -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/TRP/trcsbc.F90
r3153 r3160 66 66 REAL(wp), POINTER, DIMENSION(:,:,:) :: ztrtrd 67 67 !!--------------------------------------------------------------------- 68 68 ! 69 IF( nn_timing == 1 ) CALL timing_start('trc_sbc') 70 ! 69 71 ! Allocate temporary workspace 70 CALL wrk_alloc( jpi, jpj, zemps )71 CALL wrk_alloc( jpi, jpj, jpk, ztrtrd )72 CALL wrk_alloc( jpi, jpj, zemps ) 73 IF( l_trdtrc ) CALL wrk_alloc( jpi, jpj, jpk, ztrtrd ) 72 74 73 75 IF( kt == nittrc000 ) THEN … … 115 117 CALL prt_ctl_trc( tab4d=tra, mask=tmask, clinfo=ctrcnm, clinfo2='trd' ) 116 118 ENDIF 117 118 CALL wrk_dealloc( jpi, jpj, zemps ) 119 CALL wrk_dealloc( jpi, jpj, jpk, ztrtrd ) 120 119 CALL wrk_dealloc( jpi, jpj, zemps ) 120 IF( l_trdtrc ) CALL wrk_dealloc( jpi, jpj, jpk, ztrtrd ) 121 ! 122 IF( nn_timing == 1 ) CALL timing_stop('trc_sbc') 123 ! 121 124 END SUBROUTINE trc_sbc 122 125 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/TRP/trczdf.F90
r3124 r3160 66 66 INTEGER :: jk, jn 67 67 CHARACTER (len=22) :: charout 68 REAL(wp), DIMENSION(:,:,:,:), ALLOCATABLE:: ztrtrd ! 4D workspace68 REAL(wp), POINTER, DIMENSION(:,:,:,:) :: ztrtrd ! 4D workspace 69 69 !!--------------------------------------------------------------------- 70 70 ! 71 IF( nn_timing == 1 ) CALL timing_start('trc_zdf') 72 ! 71 73 IF( kt == nittrc000 ) CALL zdf_ctl ! initialisation & control of options 72 74 … … 82 84 83 85 IF( l_trdtrc ) THEN 84 ALLOCATE( ztrtrd(jpi,jpj,jpk,jptra) ) ! temporary save of trends86 CALL wrk_alloc( jpi, jpj, jpk, jptra, ztrtrd ) 85 87 ztrtrd(:,:,:,:) = tra(:,:,:,:) 86 88 ENDIF … … 106 108 CALL trd_tra( kt, 'TRC', jn, jptra_trd_zdf, ztrtrd(:,:,:,jn) ) 107 109 END DO 108 DEALLOCATE(ztrtrd )110 CALL wrk_dealloc( jpi, jpj, jpk, jptra, ztrtrd ) 109 111 ENDIF 110 111 112 ! ! print mean trends (used for debugging) 112 113 IF( ln_ctl ) THEN … … 114 115 CALL prt_ctl_trc( tab4d=tra, mask=tmask, clinfo=ctrcnm, clinfo2='trd' ) 115 116 END IF 117 ! 118 IF( nn_timing == 1 ) CALL timing_stop('trc_zdf') 116 119 ! 117 120 END SUBROUTINE trc_zdf -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/trcdta.F90
r3153 r3160 65 65 NAMELIST/namtrc_dta/ sn_trcdta, cn_dir, rn_trfac 66 66 !!---------------------------------------------------------------------- 67 ! 68 IF( nn_timing == 1 ) CALL timing_start('trc_dta_init') 67 69 ! 68 70 ! Initialisation … … 143 145 ENDIF 144 146 ! 147 IF( nn_timing == 1 ) CALL timing_stop('trc_dta_init') 148 ! 145 149 END SUBROUTINE trc_dta_init 146 150 … … 166 170 CHARACTER(len=100) :: clndta 167 171 !!---------------------------------------------------------------------- 172 ! 173 IF( nn_timing == 1 ) CALL timing_start('trc_dta') 168 174 ! 169 175 IF( nb_trcdta > 0 ) THEN … … 260 266 ENDIF 261 267 ! 268 IF( nn_timing == 1 ) CALL timing_stop('trc_dta') 269 ! 262 270 END SUBROUTINE trc_dta 263 271 #else -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/trcrst.F90
r3124 r3160 103 103 104 104 !!---------------------------------------------------------------------- 105 105 ! 106 106 IF(lwp) WRITE(numout,*) 107 107 IF(lwp) WRITE(numout,*) 'trc_rst_read : read the TOP restart file' … … 151 151 REAL(wp) :: zarak0 152 152 !!---------------------------------------------------------------------- 153 153 ! 154 154 CALL trc_rst_cal( kt, 'WRITE' ) ! calendar 155 155 CALL iom_rstput( kt, nitrst, numrtw, 'rdttrc1', rdttrc(1) ) ! surface passive tracer time step -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/trcsub.F90
r3153 r3160 67 67 REAL(wp) :: z1_ne3t, z1_ne3u, z1_ne3v, z1_ne3w 68 68 !!------------------------------------------------------------------- 69 70 IF( kt == nit000 ) THEN 69 ! 70 IF( nn_timing == 1 ) CALL timing_start('trc_sub_stp') 71 ! 72 IF( kt == nit000 ) THEN 71 73 IF(lwp) WRITE(numout,*) 72 74 IF(lwp) WRITE(numout,*) 'trc_sub_stp : substepping of the passive tracers' … … 81 83 r1_ndttrcp1 = 1._wp / REAL( nn_dttrc + 1, wp ) 82 84 ! 83 85 ENDIF 84 86 85 87 IF( MOD( kt , nn_dttrc ) /= 0 ) THEN … … 539 541 CALL lbc_lnk( hvr (:,:) , 'V', 1. ) 540 542 ENDIF 541 542 543 ! 544 IF( nn_timing == 1 ) CALL timing_start('trc_sub_stp') 545 ! 543 546 END SUBROUTINE trc_sub_stp 544 547 … … 554 557 INTEGER :: ierr 555 558 !!------------------------------------------------------------------- 556 559 ! 560 IF( nn_timing == 1 ) CALL timing_start('trc_sub_ini') 561 ! 557 562 IF(lwp) WRITE(numout,*) 558 563 IF(lwp) WRITE(numout,*) 'trc_sub_ini : initial set up of the passive tracers substepping' … … 643 648 #endif 644 649 ! 650 IF( nn_timing == 1 ) CALL timing_stop('trc_sub_ini') 651 ! 645 652 END SUBROUTINE trc_sub_ini 646 653 … … 657 664 INTEGER :: jk ! dummy loop indices 658 665 !!------------------------------------------------------------------- 659 666 ! 667 IF( nn_timing == 1 ) CALL timing_start('trc_sub_reset') 668 ! 660 669 ! restore physics variables 661 670 un (:,:,:) = un_temp (:,:,:) … … 867 876 #endif 868 877 ! 878 IF( nn_timing == 1 ) CALL timing_stop('trc_sub_reset') 879 ! 869 880 END SUBROUTINE trc_sub_reset 870 881 … … 896 907 REAL(wp), POINTER, DIMENSION(:,:) :: zhdiv 897 908 !!--------------------------------------------------------------------- 898 909 ! 910 IF( nn_timing == 1 ) CALL timing_start('trc_sub_ssh') 911 ! 899 912 ! Allocate temporary workspace 900 913 CALL wrk_alloc( jpi, jpj, zhdiv ) … … 1000 1013 CALL wrk_dealloc( jpi, jpj, zhdiv ) 1001 1014 ! 1015 IF( nn_timing == 1 ) CALL timing_stop('trc_sub_ssh') 1016 ! 1002 1017 END SUBROUTINE trc_sub_ssh 1003 1018 -
branches/2011/dev_NEMO_MERGE_2011/NEMOGCM/NEMO/TOP_SRC/trcwri.F90
r3116 r3160 36 36 INTEGER, INTENT( in ) :: kt 37 37 !!--------------------------------------------------------------------- 38 38 ! 39 IF( nn_timing == 1 ) CALL timing_start('trc_wri') 39 40 ! 40 41 CALL iom_setkt ( kt + nn_dttrc - 1 ) ! set the passive tracer time step 41 42 CALL trc_wri_trc( kt ) ! outputs for tracer concentration 42 43 CALL iom_setkt ( kt ) ! set the model time step 44 ! 45 IF( nn_timing == 1 ) CALL timing_stop('trc_wri') 43 46 ! 44 47 END SUBROUTINE trc_wri
Note: See TracChangeset
for help on using the changeset viewer.