- Timestamp:
- 2021-12-03T20:32:50+01:00 (3 years ago)
- Location:
- NEMO/branches/2021/dev_r14318_RK3_stage1
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2021/dev_r14318_RK3_stage1
- Property svn:externals
-
old new 9 9 10 10 # SETTE 11 ^/utils/CI/sette@14244 sette 11 ^/utils/CI/sette@HEAD sette 12
-
- Property svn:externals
-
NEMO/branches/2021/dev_r14318_RK3_stage1/src/OCE/TRA/traqsr.F90
r15157 r15574 118 118 IF( ln_timing ) CALL timing_start('tra_qsr') 119 119 ! 120 IF( ntile == 0.OR. ntile == 1 ) THEN ! Do only on the first tile120 IF( .NOT. l_istiled .OR. ntile == 1 ) THEN ! Do only on the first tile 121 121 IF( kt == nit000 ) THEN 122 122 IF(lwp) WRITE(numout,*) … … 134 134 ! ! MLF only : heat content trend due to Qsr flux (qsr_hc) 135 135 ! 136 ! !-----------------------------------! 137 ! ! before qsr induced heat content ! 138 ! !-----------------------------------! 136 139 IF( kt == nit000 ) THEN !== 1st time step ==! 137 140 IF( ln_rstart .AND. .NOT.l_1st_euler ) THEN ! read in restart 138 141 z1_2 = 0.5_wp 139 IF( ntile == 0.OR. ntile == 1 ) THEN ! Do only on the first tile142 IF( .NOT. l_istiled .OR. ntile == 1 ) THEN ! Do only on the first tile 140 143 IF(lwp) WRITE(numout,*) ' nit000-1 qsr tracer content forcing field read in the restart file' 141 144 CALL iom_get( numror, jpdom_auto, 'qsr_hc_b', qsr_hc_b ) ! before heat content trend due to Qsr flux … … 143 146 ELSE ! No restart or Euler forward at 1st time step 144 147 z1_2 = 1._wp 145 DO_3D ( nn_hls, nn_hls, nn_hls, nn_hls, 1, jpk )148 DO_3D_OVR( nn_hls, nn_hls, nn_hls, nn_hls, 1, jpk ) 146 149 qsr_hc_b(ji,jj,jk) = 0._wp 147 150 END_3D … … 149 152 ELSE !== Swap of qsr heat content ==! 150 153 z1_2 = 0.5_wp 151 DO_3D ( nn_hls, nn_hls, nn_hls, nn_hls, 1, jpk )154 DO_3D_OVR( nn_hls, nn_hls, nn_hls, nn_hls, 1, jpk ) 152 155 qsr_hc_b(ji,jj,jk) = qsr_hc(ji,jj,jk) 153 156 END_3D … … 207 210 !!st7-2 208 211 ! sea-ice: store the 1st ocean level attenuation coefficient 209 DO_2D ( 0, 0, 0, 0)212 DO_2D_OVR( nn_hls, nn_hls, nn_hls, nn_hls ) 210 213 IF( qsr(ji,jj) /= 0._wp ) THEN ; fraqsr_1lev(ji,jj) = qsr_hc(ji,jj,1) / ( r1_rho0_rcp * qsr(ji,jj) ) 211 214 ELSE ; fraqsr_1lev(ji,jj) = 1._wp … … 217 220 !!st CALL lbc_lnk( 'tra_qsr', qsr_hc(:,:,:), 'T', 1._wp ) 218 221 ! 219 ! TEMP: [tiling] This change not necessary and working array can use A2D(nn_hls) if using XIOS (subdomain support) 220 IF( ntile == 0 .OR. ntile == nijtile ) THEN ! Do only for the full domain 221 IF( iom_use('qsr3d') ) THEN ! output the shortwave Radiation distribution 222 ALLOCATE( zetot(jpi,jpj,jpk) ) 223 zetot(:,:,nksr+1:jpk) = 0._wp ! below ~400m set to zero 224 DO jk = nksr, 1, -1 225 zetot(:,:,jk) = zetot(:,:,jk+1) + qsr_hc(:,:,jk) * rho0_rcp 226 END DO 227 CALL iom_put( 'qsr3d', zetot ) ! 3D distribution of shortwave Radiation 228 DEALLOCATE( zetot ) 229 ENDIF 222 IF( iom_use('qsr3d') ) THEN ! output the shortwave Radiation distribution 223 ALLOCATE( zetot(A2D(nn_hls),jpk) ) 224 zetot(:,:,nksr+1:jpk) = 0._wp ! below ~400m set to zero 225 DO_3DS(0, 0, 0, 0, nksr, 1, -1) 226 zetot(ji,jj,jk) = zetot(ji,jj,jk+1) + qsr_hc(ji,jj,jk) * rho0_rcp 227 END_3D 228 CALL iom_put( 'qsr3d', zetot ) ! 3D distribution of shortwave Radiation 229 DEALLOCATE( zetot ) 230 230 ENDIF 231 231 ! … … 237 237 #endif 238 238 ! 239 IF( ntile == 0.OR. ntile == nijtile ) THEN ! Do only on the last tile239 IF( .NOT. l_istiled .OR. ntile == nijtile ) THEN ! Do only on the last tile 240 240 IF( lrst_oce ) THEN ! write in the ocean restart file 241 241 CALL iom_rstput( kt, nitrst, numrow, 'qsr_hc_b' , qsr_hc )
Note: See TracChangeset
for help on using the changeset viewer.