- Timestamp:
- 2018-03-30T18:08:29+02:00 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/CNRS/dev_r8832_PISCO/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zfechem.F90
r7753 r9450 73 73 REAL(wp) :: zaggliga, zaggligb 74 74 REAL(wp) :: dissol, zligco 75 REAL(wp) :: zrfact2 75 76 CHARACTER (len=25) :: charout 76 77 REAL(wp), POINTER, DIMENSION(:,:,:) :: zTL1, zFe3, ztotlig, precip 77 78 REAL(wp), POINTER, DIMENSION(:,:,:) :: zFeL1, zFeL2, zTL2, zFe2, zFeP 79 REAL(wp), POINTER, DIMENSION(:,:,:) :: zcoll3d, zscav3d, zlcoll3d 78 80 REAL(wp), POINTER, DIMENSION(:,: ) :: zstrn, zstrn2 79 81 !!--------------------------------------------------------------------- … … 83 85 ! Allocate temporary workspace 84 86 CALL wrk_alloc( jpi, jpj, jpk, zFe3, zFeL1, zTL1, ztotlig, precip ) 87 CALL wrk_alloc( jpi, jpj, jpk, zcoll3d, zscav3d ) 88 IF( ln_ligand ) THEN 89 CALL wrk_alloc( jpi, jpj, jpk, zlcoll3d ) 90 ENDIF 85 91 zFe3 (:,:,:) = 0. 86 92 zFeL1(:,:,:) = 0. … … 301 307 tra(ji,jj,jk,jpsfe) = tra(ji,jj,jk,jpsfe) + zscave * zdenom1 + zaggdfea 302 308 tra(ji,jj,jk,jpbfe) = tra(ji,jj,jk,jpbfe) + zscave * zdenom2 + zaggdfeb 309 zscav3d(ji,jj,jk) = zscave 310 zcoll3d(ji,jj,jk) = zaggdfea + zaggdfeb 303 311 ! 304 312 END DO … … 321 329 ! 322 330 zlam1b = 3.53E3 * trb(ji,jj,jk,jpgoc) * xdiss(ji,jj,jk) 323 zligco = MAX( ( 0.1 * trb(ji,jj,jk,jplgw) ), ( trb(ji,jj,jk,jplgw) - fe3sol ) ) 331 IF ( ln_fecolloid) THEN 332 zligco = MAX( ( 0.1 * trb(ji,jj,jk,jplgw) ), ( trb(ji,jj,jk,jplgw) - fe3sol ) ) 333 ELSE 334 zligco = 0.5 * trn(ji,jj,jk,jplgw) 335 ENDIF 324 336 zaggliga = zlam1a * xstep * zligco 325 337 zaggligb = zlam1b * xstep * zligco 326 338 tra(ji,jj,jk,jpfep) = tra(ji,jj,jk,jpfep) + precip(ji,jj,jk) 327 339 tra(ji,jj,jk,jplgw) = tra(ji,jj,jk,jplgw) - zaggliga - zaggligb 340 zlcoll3d(ji,jj,jk) = zaggliga + zaggligb 328 341 END DO 329 342 END DO … … 340 353 IF( lk_iomput ) THEN 341 354 IF( knt == nrdttrc ) THEN 355 zrfact2 = 1.e3 * rfact2r ! conversion from mol/L/timestep into mol/m3/s 342 356 IF( iom_use("Fe3") ) CALL iom_put("Fe3" , zFe3 (:,:,:) * tmask(:,:,:) ) ! Fe3+ 343 357 IF( iom_use("FeL1") ) CALL iom_put("FeL1" , zFeL1 (:,:,:) * tmask(:,:,:) ) ! FeL1 … … 345 359 IF( iom_use("Totlig") ) CALL iom_put("Totlig" , ztotlig(:,:,:) * tmask(:,:,:) ) ! TL 346 360 IF( iom_use("Biron") ) CALL iom_put("Biron" , biron (:,:,:) * 1e9 * tmask(:,:,:) ) ! biron 361 IF( iom_use("FESCAV") ) CALL iom_put("FESCAV" , zscav3d(:,:,:) * 1e9 * tmask(:,:,:) * zrfact2 ) 362 IF( iom_use("FECOLL") ) CALL iom_put("FECOLL" , zcoll3d(:,:,:) * 1e9 * tmask(:,:,:) * zrfact2 ) 363 IF( iom_use("LGWCOLL")) CALL iom_put("LGWCOLL", zlcoll3d(:,:,:) * 1e9 * tmask(:,:,:) * zrfact2 ) 347 364 IF( ln_fechem ) THEN 348 365 IF( iom_use("Fe2") ) CALL iom_put("Fe2" , zFe2 (:,:,:) * tmask(:,:,:) ) ! Fe2+ … … 361 378 ! 362 379 CALL wrk_dealloc( jpi, jpj, jpk, zFe3, zFeL1, zTL1, ztotlig, precip ) 380 CALL wrk_dealloc( jpi, jpj, jpk, zscav3d, zcoll3d ) 363 381 IF( ln_fechem ) THEN 364 382 CALL wrk_dealloc( jpi, jpj, zstrn, zstrn2 ) 365 383 CALL wrk_dealloc( jpi, jpj, jpk, zFe2, zFeL2, zTL2, zFeP ) 384 ENDIF 385 IF ( ln_ligand ) THEN 386 CALL wrk_dealloc( jpi, jpj, jpk, zlcoll3d ) 366 387 ENDIF 367 388 !
Note: See TracChangeset
for help on using the changeset viewer.