- Timestamp:
- 2017-01-04T17:47:47+01:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/OPA_SRC/TRA/traqsr.F90
r7037 r7525 128 128 IF( l_trdtra ) THEN ! trends diagnostic: save the input temperature trend 129 129 CALL wrk_alloc( jpi,jpj,jpk, ztrdt ) 130 !$OMP PARALLEL WORKSHARE 131 ztrdt(:,:,:) = tsa(:,:,:,jp_tem) 132 !$OMP END PARALLEL WORKSHARE 130 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 131 DO jk = 1, jpk 132 DO jj = 1, jpj 133 DO ji = 1, jpi 134 ztrdt(ji,jj,jk) = tsa(ji,jj,jk,jp_tem) 135 END DO 136 END DO 137 END DO 133 138 ENDIF 134 139 ! … … 144 149 ELSE ! No restart or restart not found: Euler forward time stepping 145 150 z1_2 = 1._wp 146 !$OMP PARALLEL WORKSHARE 147 qsr_hc_b(:,:,:) = 0._wp 148 !$OMP END PARALLEL WORKSHARE 151 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 152 DO jk = 1, jpk 153 DO jj = 1, jpj 154 DO ji = 1, jpi 155 qsr_hc_b(ji,jj,jk) = 0._wp 156 END DO 157 END DO 158 END DO 149 159 ENDIF 150 160 ELSE !== Swap of qsr heat content ==! 151 161 z1_2 = 0.5_wp 152 !$OMP PARALLEL WORKSHARE 153 qsr_hc_b(:,:,:) = qsr_hc(:,:,:) 154 !$OMP END PARALLEL WORKSHARE 162 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 163 DO jk = 1, jpk 164 DO jj = 1, jpj 165 DO ji = 1, jpi 166 qsr_hc_b(ji,jj,jk) = qsr_hc(ji,jj,jk) 167 END DO 168 END DO 169 END DO 155 170 ENDIF 156 171 ! … … 161 176 CASE( np_BIO ) !== bio-model fluxes ==! 162 177 ! 163 !$OMP PARALLEL DO schedule(static) private(jk )178 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 164 179 DO jk = 1, nksr 165 qsr_hc(:,:,jk) = r1_rau0_rcp * ( etot3(:,:,jk) - etot3(:,:,jk+1) ) 180 DO jj = 1, jpj 181 DO ji = 1, jpi 182 qsr_hc(ji,jj,jk) = r1_rau0_rcp * ( etot3(ji,jj,jk) - etot3(ji,jj,jk+1) ) 183 END DO 184 END DO 166 185 END DO 167 186 ! … … 198 217 END DO 199 218 ELSE !* constant chrlorophyll 200 !$OMP PARALLEL DO schedule(static) private(jk )219 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 201 220 DO jk = 1, nksr + 1 202 zchl3d(:,:,jk) = 0.05 221 DO jj = 1, jpj 222 DO ji = 1, jpi 223 zchl3d(ji,jj,jk) = 0.05 224 ENDDO 225 ENDDO 203 226 ENDDO 204 227 ENDIF … … 305 328 ! 306 329 !$OMP PARALLEL 307 !$OMP WORKSHARE 308 zetot(:,:,nksr+1:jpk) = 0._wp ! below ~400m set to zero 309 !$OMP END WORKSHARE 330 !$OMP DO schedule(static) private(jj,ji) 331 DO jj = 1, jpj 332 DO ji = 1, jpi ! vector opt. 333 zetot(ji,jj,nksr+1:jpk) = 0._wp ! below ~400m set to zero 334 END DO 335 END DO 310 336 DO jk = nksr, 1, -1 311 337 !$OMP DO schedule(static) private(jj,ji) … … 329 355 ! 330 356 IF( l_trdtra ) THEN ! qsr tracers trends saved for diagnostics 331 !$OMP PARALLEL WORKSHARE 332 ztrdt(:,:,:) = tsa(:,:,:,jp_tem) - ztrdt(:,:,:) 333 !$OMP END PARALLEL WORKSHARE 357 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 358 DO jk = 1, jpk 359 DO jj = 1, jpj 360 DO ji = 1, jpi 361 ztrdt(ji,jj,jk) = tsa(ji,jj,jk,jp_tem) - ztrdt(ji,jj,jk) 362 END DO 363 END DO 364 END DO 334 365 CALL trd_tra( kt, 'TRA', jp_tem, jptra_qsr, ztrdt ) 335 366 CALL wrk_dealloc( jpi,jpj,jpk, ztrdt ) … … 458 489 END SELECT 459 490 ! 460 !$OMP PARALLEL WORKSHARE 461 qsr_hc(:,:,:) = 0._wp ! now qsr heat content set to zero where it will not be computed 462 !$OMP END PARALLEL WORKSHARE 491 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 492 DO jk = 1, jpk 493 DO jj = 1, jpj 494 DO ji = 1, jpi 495 qsr_hc(ji,jj,jk) = 0._wp ! now qsr heat content set to zero where it will not be computed 496 END DO 497 END DO 498 END DO 463 499 ! 464 500 ! 1st ocean level attenuation coefficient (used in sbcssm) … … 466 502 CALL iom_get( numror, jpdom_autoglo, 'fraqsr_1lev' , fraqsr_1lev ) 467 503 ELSE 468 !$OMP PARALLEL WORKSHARE 469 fraqsr_1lev(:,:) = 1._wp ! default : no penetration 470 !$OMP END PARALLEL WORKSHARE 504 !$OMP PARALLEL DO schedule(static) private(jj,ji) 505 DO jj = 1, jpj 506 DO ji = 1, jpi 507 fraqsr_1lev(ji,jj) = 1._wp ! default : no penetration 508 END DO 509 END DO 471 510 ENDIF 472 511 !
Note: See TracChangeset
for help on using the changeset viewer.