- Timestamp:
- 2019-11-22T15:29:17+01:00 (4 years ago)
- Location:
- NEMO/branches/2019/dev_r11943_MERGE_2019/src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r11943_MERGE_2019/src
- Property svn:mergeinfo deleted
-
NEMO/branches/2019/dev_r11943_MERGE_2019/src/TOP/PISCES/P4Z/p4zsbc.F90
r11536 r11949 85 85 CONTAINS 86 86 87 SUBROUTINE p4z_sbc( kt )87 SUBROUTINE p4z_sbc( kt, Kmm ) 88 88 !!---------------------------------------------------------------------- 89 89 !! *** routine p4z_sbc *** … … 97 97 !!---------------------------------------------------------------------- 98 98 INTEGER, INTENT(in) :: kt ! ocean time step 99 INTEGER, INTENT(in) :: Kmm ! time level indices 99 100 ! 100 101 INTEGER :: ji, jj … … 174 175 zcoef = 14. * rno3 175 176 CALL fld_read( kt, 1, sf_ndepo ) 176 nitdep(:,:) = MAX( rtrn, sf_ndepo(1)%fnow(:,:,1) / zcoef / e3t _n(:,:,1) )177 nitdep(:,:) = MAX( rtrn, sf_ndepo(1)%fnow(:,:,1) / zcoef / e3t(:,:,1,Kmm) ) 177 178 ENDIF 178 179 IF( .NOT.ln_linssh ) THEN 179 180 zcoef = 14. * rno3 180 nitdep(:,:) = MAX( rtrn, sf_ndepo(1)%fnow(:,:,1) / zcoef / e3t _n(:,:,1) )181 nitdep(:,:) = MAX( rtrn, sf_ndepo(1)%fnow(:,:,1) / zcoef / e3t(:,:,1,Kmm) ) 181 182 ENDIF 182 183 ENDIF … … 187 188 188 189 189 SUBROUTINE p4z_sbc_init 190 SUBROUTINE p4z_sbc_init( Kmm ) 190 191 !!---------------------------------------------------------------------- 191 192 !! *** routine p4z_sbc_init *** … … 199 200 !! 200 201 !!---------------------------------------------------------------------- 202 INTEGER, INTENT(in) :: Kmm ! time level indices 201 203 INTEGER :: ji, jj, jk, jm, ifpr 202 204 INTEGER :: ii0, ii1, ij0, ij1 … … 274 276 IF( l_offline ) THEN 275 277 nk_rnf(:,:) = 1 276 h_rnf (:,:) = gdept _n(:,:,1)278 h_rnf (:,:) = gdept(:,:,1,Kmm) 277 279 ENDIF 278 280 … … 287 289 ! 288 290 ALLOCATE( sf_dust(1), STAT=ierr ) !* allocate and fill sf_sst (forcing structure) with sn_sst 289 IF( ierr > 0 ) CALL ctl_stop( 'STOP', 'p4z_s ed_init: unable to allocate sf_dust structure' )290 ! 291 CALL fld_fill( sf_dust, (/ sn_dust /), cn_dir, 'p4z_s ed_init', 'Atmospheric dust deposition', 'nampissed' )291 IF( ierr > 0 ) CALL ctl_stop( 'STOP', 'p4z_sbc_init: unable to allocate sf_dust structure' ) 292 ! 293 CALL fld_fill( sf_dust, (/ sn_dust /), cn_dir, 'p4z_sbc_init', 'Atmospheric dust deposition', 'nampissed' ) 292 294 ALLOCATE( sf_dust(1)%fnow(jpi,jpj,1) ) 293 295 IF( sn_dust%ln_tint ) ALLOCATE( sf_dust(1)%fdta(jpi,jpj,1,2) ) … … 311 313 ! 312 314 ALLOCATE( sf_solub(1), STAT=ierr ) !* allocate and fill sf_sst (forcing structure) with sn_sst 313 IF( ierr > 0 ) CALL ctl_stop( 'STOP', 'p4z_s ed_init: unable to allocate sf_solub structure' )314 ! 315 CALL fld_fill( sf_solub, (/ sn_solub /), cn_dir, 'p4z_s ed_init', 'Solubility of atm. iron ', 'nampissed' )315 IF( ierr > 0 ) CALL ctl_stop( 'STOP', 'p4z_sbc_init: unable to allocate sf_solub structure' ) 316 ! 317 CALL fld_fill( sf_solub, (/ sn_solub /), cn_dir, 'p4z_sbc_init', 'Solubility of atm. iron ', 'nampissed' ) 316 318 ALLOCATE( sf_solub(1)%fnow(jpi,jpj,1) ) 317 319 IF( sn_solub%ln_tint ) ALLOCATE( sf_solub(1)%fdta(jpi,jpj,1,2) ) … … 336 338 rivinput(:) = 0._wp 337 339 338 IF( ierr1 > 0 ) CALL ctl_stop( 'STOP', 'p4z_s ed_init: unable to allocate sf_irver structure' )339 ! 340 CALL fld_fill( sf_river, slf_river, cn_dir, 'p4z_s ed_init', 'Input from river ', 'nampissed' )340 IF( ierr1 > 0 ) CALL ctl_stop( 'STOP', 'p4z_sbc_init: unable to allocate sf_irver structure' ) 341 ! 342 CALL fld_fill( sf_river, slf_river, cn_dir, 'p4z_sbc_init', 'Input from river ', 'nampissed' ) 341 343 DO ifpr = 1, jpriv 342 344 ALLOCATE( sf_river(ifpr)%fnow(jpi,jpj,1 ) ) … … 385 387 ! 386 388 ALLOCATE( sf_ndepo(1), STAT=ierr3 ) !* allocate and fill sf_sst (forcing structure) with sn_sst 387 IF( ierr3 > 0 ) CALL ctl_stop( 'STOP', 'p4z_s ed_init: unable to allocate sf_ndepo structure' )388 ! 389 CALL fld_fill( sf_ndepo, (/ sn_ndepo /), cn_dir, 'p4z_s ed_init', 'Nutrient atmospheric depositon ', 'nampissed' )389 IF( ierr3 > 0 ) CALL ctl_stop( 'STOP', 'p4z_sbc_init: unable to allocate sf_ndepo structure' ) 390 ! 391 CALL fld_fill( sf_ndepo, (/ sn_ndepo /), cn_dir, 'p4z_sbc_init', 'Nutrient atmospheric depositon ', 'nampissed' ) 390 392 ALLOCATE( sf_ndepo(1)%fnow(jpi,jpj,1) ) 391 393 IF( sn_ndepo%ln_tint ) ALLOCATE( sf_ndepo(1)%fdta(jpi,jpj,1,2) ) … … 441 443 DO jj = 1, jpj 442 444 DO ji = 1, jpi 443 zexpide = MIN( 8.,( gdept _n(ji,jj,jk) / 500. )**(-1.5) )445 zexpide = MIN( 8.,( gdept(ji,jj,jk,Kmm) / 500. )**(-1.5) ) 444 446 zdenitide = -0.9543 + 0.7662 * LOG( zexpide ) - 0.235 * LOG( zexpide )**2 445 447 zcmask(ji,jj,jk) = zcmask(ji,jj,jk) * MIN( 1., EXP( zdenitide ) / 0.5 ) … … 475 477 ENDIF 476 478 ! 477 IF( ll_sbc ) CALL p4z_sbc( nit000 )479 IF( ll_sbc ) CALL p4z_sbc( nit000, Kmm ) 478 480 ! 479 481 IF(lwp) THEN
Note: See TracChangeset
for help on using the changeset viewer.