- Timestamp:
- 2020-11-27T17:26:33+01:00 (4 years ago)
- Location:
- NEMO/branches/2020/tickets_icb_1900
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/tickets_icb_1900
- Property svn:externals
-
NEMO/branches/2020/tickets_icb_1900/src/OCE/TRA/traqsr.F90
r13237 r13899 63 63 REAL(wp) :: xsi1r ! inverse of rn_si1 64 64 ! 65 REAL(wp) , DIMENSION(3,61):: rkrgb ! tabulated attenuation coefficients for RGB absorption65 REAL(wp) , PUBLIC, DIMENSION(3,61) :: rkrgb ! tabulated attenuation coefficients for RGB absorption 66 66 TYPE(FLD), ALLOCATABLE, DIMENSION(:) :: sf_chl ! structure of input Chl (file informations, fields read) 67 67 … … 138 138 IF(lwp) WRITE(numout,*) ' nit000-1 qsr tracer content forcing field read in the restart file' 139 139 z1_2 = 0.5_wp 140 CALL iom_get( numror, jpdom_auto glo, 'qsr_hc_b', qsr_hc_b, ldxios = lrxios ) ! before heat content trend due to Qsr flux140 CALL iom_get( numror, jpdom_auto, 'qsr_hc_b', qsr_hc_b, ldxios = lrxios ) ! before heat content trend due to Qsr flux 141 141 ELSE ! No restart or restart not found: Euler forward time stepping 142 142 z1_2 = 1._wp … … 172 172 ! most expensive calculations) 173 173 ! 174 DO_2D _00_00174 DO_2D( 0, 0, 0, 0 ) 175 175 ! zlogc = log(zchl) 176 176 zlogc = LOG ( MIN( 10. , MAX( 0.03, sf_chl(1)%fnow(ji,jj,1) ) ) ) … … 191 191 192 192 ! 193 DO_3D _00_00 (1, nksr + 1 )193 DO_3D( 0, 0, 0, 0, 1, nksr + 1 ) 194 194 ! zchl = ALOG( ze0(ji,jj) ) 195 195 zlogc = ze0(ji,jj) … … 221 221 ! 222 222 zcoef = ( 1. - rn_abs ) / 3._wp !* surface equi-partition in R-G-B 223 DO_2D _00_00223 DO_2D( 0, 0, 0, 0 ) 224 224 ze0(ji,jj) = rn_abs * qsr(ji,jj) 225 225 ze1(ji,jj) = zcoef * qsr(ji,jj) … … 231 231 END_2D 232 232 ! 233 ! * interior equi-partition in R-G-B depending on vertical profile of Chl234 DO_3D _00_00 (2, nksr + 1 )233 ! !* interior equi-partition in R-G-B depending on vertical profile of Chl 234 DO_3D( 0, 0, 0, 0, 2, nksr + 1 ) 235 235 ze3t = e3t(ji,jj,jk-1,Kmm) 236 236 irgb = NINT( ztmp3d(ji,jj,jk) ) … … 246 246 END_3D 247 247 ! 248 DO_3D _00_00( 1, nksr )248 DO_3D( 0, 0, 0, 0, 1, nksr ) !* now qsr induced heat content 249 249 qsr_hc(ji,jj,jk) = r1_rho0_rcp * ( ztmp3d(ji,jj,jk) - ztmp3d(ji,jj,jk+1) ) 250 250 END_3D … … 256 256 zz0 = rn_abs * r1_rho0_rcp ! surface equi-partition in 2-bands 257 257 zz1 = ( 1. - rn_abs ) * r1_rho0_rcp 258 DO_3D _00_00( 1, nksr )258 DO_3D( 0, 0, 0, 0, 1, nksr ) ! solar heat absorbed at T-point in the top 400m 259 259 zc0 = zz0 * EXP( -gdepw(ji,jj,jk ,Kmm)*xsi0r ) + zz1 * EXP( -gdepw(ji,jj,jk ,Kmm)*xsi1r ) 260 260 zc1 = zz0 * EXP( -gdepw(ji,jj,jk+1,Kmm)*xsi0r ) + zz1 * EXP( -gdepw(ji,jj,jk+1,Kmm)*xsi1r ) … … 265 265 ! 266 266 ! !-----------------------------! 267 DO_3D_00_00( 1, nksr ) 267 ! ! update to the temp. trend ! 268 ! !-----------------------------! 269 DO_3D( 0, 0, 0, 0, 1, nksr ) 268 270 pts(ji,jj,jk,jp_tem,Krhs) = pts(ji,jj,jk,jp_tem,Krhs) & 269 271 & + z1_2 * ( qsr_hc_b(ji,jj,jk) + qsr_hc(ji,jj,jk) ) & … … 272 274 ! 273 275 ! sea-ice: store the 1st ocean level attenuation coefficient 274 DO_2D _00_00276 DO_2D( 0, 0, 0, 0 ) 275 277 IF( qsr(ji,jj) /= 0._wp ) THEN ; fraqsr_1lev(ji,jj) = qsr_hc(ji,jj,1) / ( r1_rho0_rcp * qsr(ji,jj) ) 276 278 ELSE ; fraqsr_1lev(ji,jj) = 1._wp … … 417 419 IF( .NOT.lk_top ) CALL ctl_stop( 'No bio model : ln_qsr_bio = true impossible ' ) 418 420 ! 421 CALL trc_oce_rgb( rkrgb ) ! tabulated attenuation coef. 422 ! 423 nksr = trc_oce_ext_lev( r_si2, 33._wp ) ! level of light extinction 424 ! 425 IF(lwp) WRITE(numout,*) ' level of light extinction = ', nksr, ' ref depth = ', gdepw_1d(nksr+1), ' m' 426 ! 419 427 END SELECT 420 428 ! … … 423 431 ! 1st ocean level attenuation coefficient (used in sbcssm) 424 432 IF( iom_varid( numror, 'fraqsr_1lev', ldstop = .FALSE. ) > 0 ) THEN 425 CALL iom_get( numror, jpdom_auto glo, 'fraqsr_1lev' , fraqsr_1lev, ldxios = lrxios )433 CALL iom_get( numror, jpdom_auto, 'fraqsr_1lev' , fraqsr_1lev, ldxios = lrxios ) 426 434 ELSE 427 435 fraqsr_1lev(:,:) = 1._wp ! default : no penetration
Note: See TracChangeset
for help on using the changeset viewer.