- Timestamp:
- 2017-01-27T18:17:01+01:00 (7 years ago)
- Location:
- branches/CNRS/dev_r6270_PISCES_QUOTA/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/CNRS/dev_r6270_PISCES_QUOTA/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zfechem.F90
r7180 r7617 69 69 INTEGER :: ji, jj, jk, jic, jn 70 70 REAL(wp) :: zdep, zlam1a, zlam1b, zlamfac 71 REAL(wp) :: zkeq, zfeequi, zfesatur, zfecoll, fe3sol, fe3sol171 REAL(wp) :: zkeq, zfeequi, zfesatur, zfecoll, zfecollc, fe3sol, fe3sol1 72 72 REAL(wp) :: zdenom1, zscave, zaggdfea, zaggdfeb, zcoag 73 73 REAL(wp) :: ztrc, zdust … … 78 78 REAL(wp), POINTER, DIMENSION(:,:,:) :: zFeL1, zFeL2, zTL2, zFe2, zFeP 79 79 REAL(wp), POINTER, DIMENSION(:,: ) :: zstrn, zstrn2 80 REAL(wp), POINTER, DIMENSION(:,:,:) :: zcoll3d, zscav3d 80 81 REAL(wp) :: zzFeL1, zzFeL2, zzFe2, zzFeP, zzFe3, zzstrn2 81 82 REAL(wp) :: zrum, zcodel, zargu, zlight … … 84 85 REAL(wp) :: zxs, zfunc, zp, zq, zd, zr, zphi, zfff, zp3, zq2 85 86 REAL(wp) :: ztfe, zoxy, zhplus 86 REAL(wp) :: zstep 87 REAL(wp) :: zstep, zrfact2 87 88 #if defined key_ligand 88 89 REAL(wp) :: zaggliga, zaggligb 89 90 REAL(wp) :: dissol, zligco 91 REAL(wp), POINTER, DIMENSION(:,:,:) :: zlcoll3d 90 92 #endif 91 93 CHARACTER (len=25) :: charout … … 96 98 ! Allocate temporary workspace 97 99 CALL wrk_alloc( jpi, jpj, jpk, zFe3, zFeL1, zTL1, ztotlig, precip ) 100 CALL wrk_alloc( jpi, jpj, jpk, zcoll3d, zscav3d ) 101 #if defined key_ligand 102 CALL wrk_alloc( jpi, jpj, jpk, zlcoll3d ) 103 #endif 98 104 zFe3 (:,:,:) = 0. 99 105 zFeL1(:,:,:) = 0. … … 327 333 ! It requires certainly some more work as it is very poorly constrained. 328 334 ! ---------------------------------------------------------------- 335 zfecollc = trb(ji,jj,jk,jpdoc) / ( 40.E-6 + trb(ji,jj,jk,jpdoc) ) * zfecoll 329 336 zlam1a = ( 0.369 * 0.3 * trb(ji,jj,jk,jpdoc) + 102.4 * trb(ji,jj,jk,jppoc) ) * xdiss(ji,jj,jk) & 330 337 & + ( 114. * 0.3 * trb(ji,jj,jk,jpdoc) ) 331 zaggdfea = zlam1a * zstep * zfecoll 338 zaggdfea = zlam1a * zstep * zfecollc 332 339 ! 333 340 #if defined key_kriest … … 335 342 #else 336 343 zlam1b = 3.53E3 * trb(ji,jj,jk,jpgoc) * xdiss(ji,jj,jk) 337 zaggdfeb = zlam1b * zstep * zfecoll 344 zaggdfeb = zlam1b * zstep * zfecollc 338 345 #endif 339 346 ! precipitation of Fe3+, creation of nanoparticles … … 346 353 tra(ji,jj,jk,jpbfe) = tra(ji,jj,jk,jpbfe) + zscave * zdenom2 + zaggdfeb 347 354 #endif 355 zscav3d(ji,jj,jk) = zscave 356 zcoll3d(ji,jj,jk) = zaggdfea + zaggdfeb 348 357 #if defined key_ligand 349 358 zaggliga = zlam1a * zstep * zligco … … 355 364 tra(ji,jj,jk,jpfep) = tra(ji,jj,jk,jpfep) + precip(ji,jj,jk) 356 365 tra(ji,jj,jk,jplgw) = tra(ji,jj,jk,jplgw) - zaggliga - zaggligb 366 zlcoll3d(ji,jj,jk) = zaggliga + zaggligb 357 367 #endif 358 368 END DO … … 379 389 IF( ln_diatrc .AND. lk_iomput ) THEN 380 390 IF( jnt == nrdttrc ) THEN 391 zrfact2 = 1.e3 * rfact2r ! conversion from mol/L/timestep into mol/m3/s 381 392 CALL iom_put("Fe3" , zFe3 (:,:,:) * tmask(:,:,:) ) ! Fe3+ 382 393 CALL iom_put("FeL1" , zFeL1 (:,:,:) * tmask(:,:,:) ) ! FeL1 383 394 CALL iom_put("TL1" , zTL1 (:,:,:) * tmask(:,:,:) ) ! TL1 384 395 CALL iom_put("Totlig" , ztotlig(:,:,:) * tmask(:,:,:) ) ! TL 385 CALL iom_put("Biron" , biron (:,:,:) * 1e9 * tmask(:,:,:) ) ! biron 396 CALL iom_put("Biron" , biron (:,:,:) * 1e9 * tmask(:,:,:) ) ! biron 397 CALL iom_put("FESCAV" , zscav3d(:,:,:) * 1e9 * tmask(:,:,:) * zrfact2 ) 398 CALL iom_put("FECOLL" , zcoll3d(:,:,:) * 1e9 * tmask(:,:,:) * zrfact2 ) 399 #if defined key_ligand 400 CALL iom_put("LGWCOLL", zlcoll3d(:,:,:) * 1e9 * tmask(:,:,:) * zrfact2 ) 401 #endif 386 402 IF( ln_fechem ) THEN 387 403 CALL iom_put("Fe2" , zFe2 (:,:,:) * tmask(:,:,:) ) ! Fe2+ … … 400 416 ! 401 417 CALL wrk_dealloc( jpi, jpj, jpk, zFe3, zFeL1, zTL1, ztotlig, precip ) 418 CALL wrk_dealloc( jpi, jpj, jpk, zscav3d, zcoll3d ) 419 #if defined key_ligand 420 CALL wrk_dealloc( jpi, jpj, jpk, zlcoll3d ) 421 #endif 422 402 423 IF( ln_fechem ) THEN 403 424 CALL wrk_dealloc( jpi, jpj, zstrn, zstrn2 ) -
branches/CNRS/dev_r6270_PISCES_QUOTA/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zligand.F90
r7180 r7617 59 59 REAL(wp) :: zlgwp, zlgwpr, zlgwr, zlablgw, zrfepa, zfepr 60 60 REAL(wp) :: zstep, zstep2, zrfact2 61 REAL(wp), POINTER, DIMENSION(:,:,:) :: zligrem, zligpr, zrligprod 61 62 CHARACTER (len=25) :: charout 62 63 !!--------------------------------------------------------------------- … … 89 90 zlgwpr = prlgw * zstep * etot(ji,jj,jk) * trn(ji,jj,jk,jplgw) * (1. - fr_i(ji,jj)) 90 91 tra(ji,jj,jk,jplgw) = tra(ji,jj,jk,jplgw) + zlgwp - zlgwr - zlgwpr 92 zligrem(ji,jj,jk) = zlgwr 93 zligpr(ji,jj,jk) = zlgwpr 94 zrligprod(ji,jj,jk) = zlgwp 91 95 END DO 92 96 END DO … … 111 115 END DO 112 116 END DO 117 118 ! Output of some diagnostics variables 119 ! --------------------------------- 120 IF( ln_diatrc .AND. lk_iomput ) THEN 121 IF( jnt == nrdttrc ) THEN 122 CALL iom_put("LIGREM" , zligrem(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) ) 123 CALL iom_put("LIGPR" , zligpr(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) ) 124 CALL iom_put("LPRODR" , zrligprod(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) ) 125 ENDIF 126 ENDIF 127 128 CALL wrk_dealloc( jpi, jpj, jpk, zligrem, zligpr, zrligprod ) 113 129 114 130 IF(ln_ctl) THEN ! print mean trends (used for debugging) -
branches/CNRS/dev_r6270_PISCES_QUOTA/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zlys.F90
r6966 r7617 67 67 CHARACTER (len=25) :: charout 68 68 REAL(wp), POINTER, DIMENSION(:,:,:) :: zco3, zcaldiss, zhinit, zhi, zco3sat 69 REAL(wp), POINTER, DIMENSION(:,:,:) :: zwork 69 70 !!--------------------------------------------------------------------- 70 71 ! … … 72 73 ! 73 74 CALL wrk_alloc( jpi, jpj, jpk, zco3, zcaldiss, zhinit, zhi, zco3sat ) 75 CALL wrk_alloc( jpi, jpj, jpk, zwork ) 74 76 ! 75 77 zco3 (:,:,:) = 0. 76 78 zcaldiss(:,:,:) = 0. 79 zwork (:,:,:) = 0. 77 80 zhinit(:,:,:) = hi(:,:,:) * 1000. / ( rhop(:,:,:) + rtrn ) 78 81 ! ------------------------------------------- … … 133 136 ! 134 137 IF( lk_iomput .AND. knt == nrdttrc ) THEN 135 IF( iom_use( "PH" ) ) CALL iom_put( "PH" , -1. * LOG10( hi(:,:,:) ) * tmask(:,:,:) )138 IF( iom_use( "PH" ) ) CALL iom_put( "PH" , -1. * LOG10( hi(:,:,:) + rtrn ) * tmask(:,:,:) ) 136 139 IF( iom_use( "CO3" ) ) CALL iom_put( "CO3" , zco3(:,:,:) * 1.e+3 * tmask(:,:,:) ) 137 140 IF( iom_use( "CO3sat" ) ) CALL iom_put( "CO3sat", zco3sat(:,:,:) * 1.e+3 * tmask(:,:,:) ) 138 141 IF( iom_use( "DCAL" ) ) CALL iom_put( "DCAL" , zcaldiss(:,:,:) * 1.e+3 * rfact2r * tmask(:,:,:) ) 139 142 IF( iom_use( "AOU" ) ) THEN 143 zwork(:,:,:) = MAX(0., (chemo2(:,:,:) - trn(:,:,:,jpoxy) ) ) * 1.E6 * tmask(:,:,:) 144 CALL iom_put( "AOU" , MAX(0., zwork(:,:,:) ) ) 145 ENDIF 140 146 ELSE 141 147 IF( ln_diatrc ) THEN … … 154 160 ! 155 161 CALL wrk_dealloc( jpi, jpj, jpk, zco3, zcaldiss, zhinit, zhi, zco3sat ) 162 CALL wrk_dealloc( jpi, jpj, jpk, zwork ) 156 163 ! 157 164 IF( nn_timing == 1 ) CALL timing_stop('p4z_lys') -
branches/CNRS/dev_r6270_PISCES_QUOTA/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmeso.F90
r6841 r7617 83 83 REAL(wp) :: zgrazfffp, zgrazfffg, zgrazffep, zgrazffeg 84 84 CHARACTER (len=25) :: charout 85 REAL(wp), POINTER, DIMENSION(:,:,:) :: zgrazing, zw3d 85 REAL(wp), POINTER, DIMENSION(:,:,:) :: zgrazing, zw3d, zfezoo2 86 #if defined key_ligand 87 REAL(wp), POINTER, DIMENSION(:,:,:) :: zz2ligprod 88 #endif 86 89 87 90 !!--------------------------------------------------------------------- … … 89 92 IF( nn_timing == 1 ) CALL timing_start('p4z_meso') 90 93 ! 91 IF( lk_iomput ) THEN 92 CALL wrk_alloc( jpi, jpj, jpk, zgrazing ) 93 zgrazing(:,:,:) = 0._wp 94 ENDIF 94 CALL wrk_alloc( jpi, jpj, jpk, zgrazing, zfezoo2 ) 95 #if defined key_ligand 96 CALL wrk_alloc( jpi, jpj, jpk, zz2ligprod ) 97 zz2ligprod(:,:,:) = 0._wp 98 #endif 99 zgrazing(:,:,:) = 0._wp 100 zfezoo2(:,:,:) = 0._wp 95 101 96 102 DO jk = 1, jpkm1 … … 206 212 #if defined key_ligand 207 213 tra(ji,jj,jk,jplgw) = tra(ji,jj,jk,jplgw) + (zgrarem2 - zgrarsig) * ldocz 214 zz2ligprod(ji,jj,jk) = (zgrarem2 - zgrarsig) * ldocz 208 215 #endif 209 216 tra(ji,jj,jk,jpoxy) = tra(ji,jj,jk,jpoxy) - o2ut * zgrarsig 210 217 tra(ji,jj,jk,jpfer) = tra(ji,jj,jk,jpfer) + zgrafer2 218 zfezoo2(ji,jj,jk) = zgrafer2 211 219 tra(ji,jj,jk,jpdic) = tra(ji,jj,jk,jpdic) + zgrarsig 212 220 tra(ji,jj,jk,jptal) = tra(ji,jj,jk,jptal) + rno3 * zgrarsig … … 243 251 tra(ji,jj,jk,jpbfe) = tra(ji,jj,jk,jpbfe) + ferat3 * zmortzgoc - zgrazfffg & 244 252 & + zgraztotf * unass2 - zfracfe 245 zfracal = trb(ji,jj,jk,jpcal) / (trb(ji,jj,jk,jp poc) + trb(ji,jj,jk,jpgoc) + rtrn )246 zgrazcal = (zgrazffeg + zgrazpoc)* (1. - part2) * zfracal253 zfracal = trb(ji,jj,jk,jpcal) / (trb(ji,jj,jk,jpgoc) + rtrn ) 254 zgrazcal = zgrazffeg * (1. - part2) * zfracal 247 255 #endif 248 256 … … 253 261 zprcaca = part2 * zprcaca 254 262 tra(ji,jj,jk,jpdic) = tra(ji,jj,jk,jpdic) + zgrazcal - zprcaca 255 tra(ji,jj,jk,jptal) = tra(ji,jj,jk,jptal) - 2. * ( zgrazcal +zprcaca )263 tra(ji,jj,jk,jptal) = tra(ji,jj,jk,jptal) + 2. * ( zgrazcal - zprcaca ) 256 264 tra(ji,jj,jk,jpcal) = tra(ji,jj,jk,jpcal) - zgrazcal + zprcaca 257 265 … … 270 278 CALL iom_put( "PCAL", zw3d ) 271 279 ENDIF 280 IF( iom_use( "FEZOO2" ) ) THEN 281 zw3d(:,:,:) = zfezoo2(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) ! 282 CALL iom_put( "FEZOO2", zw3d ) 283 ENDIF 284 #if defined key_ligand 285 IF( iom_use( "LPRODZ2" ) ) THEN 286 zw3d(:,:,:) = zz2ligprod(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) 287 CALL iom_put( "LPRODZ2" , zw3d ) 288 ENDIF 289 #endif 272 290 CALL wrk_dealloc( jpi, jpj, jpk, zw3d ) 273 291 ENDIF … … 279 297 ENDIF 280 298 ! 281 IF( lk_iomput ) CALL wrk_dealloc( jpi, jpj, jpk, zgrazing ) 299 #if defined key_ligand 300 CALL wrk_dealloc( jpi, jpj, jpk, zgrazing, zfezoo2, zz2ligprod ) 301 #else 302 CALL wrk_dealloc( jpi, jpj, jpk, zgrazing, zfezoo2 ) 303 #endif 282 304 ! 283 305 IF( nn_timing == 1 ) CALL timing_stop('p4z_meso') -
branches/CNRS/dev_r6270_PISCES_QUOTA/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmicro.F90
r6453 r7617 78 78 REAL(wp) :: zgrazp, zgrazm, zgrazsd 79 79 REAL(wp) :: zgrazmf, zgrazsf, zgrazpf 80 REAL(wp), POINTER, DIMENSION(:,:,:) :: zgrazing, zw3d 80 REAL(wp), POINTER, DIMENSION(:,:,:) :: zgrazing, zw3d, zfezoo 81 #if defined key_ligand 82 REAL(wp), POINTER, DIMENSION(:,:,:) :: zzligprod 83 #endif 81 84 CHARACTER (len=25) :: charout 82 85 !!--------------------------------------------------------------------- … … 84 87 IF( nn_timing == 1 ) CALL timing_start('p4z_micro') 85 88 ! 86 IF( lk_iomput ) CALL wrk_alloc( jpi, jpj, jpk, zgrazing ) 89 CALL wrk_alloc( jpi, jpj, jpk, zgrazing, zfezoo ) 90 zfezoo(:,:,:) = 0._wp 91 #if defined key_ligand 92 CALL wrk_alloc( jpi, jpj, jpk, zzligprod ) 93 zzligprod(:,:,:) = 0._wp 94 #endif 87 95 ! 88 96 DO jk = 1, jpkm1 … … 151 159 #if defined key_ligand 152 160 tra(ji,jj,jk,jplgw) = tra(ji,jj,jk,jplgw) + (zgrarem - zgrarsig) * ldocz 161 zzligprod(ji,jj,jk) = (zgrarem - zgrarsig) * ldocz 153 162 #endif 154 163 tra(ji,jj,jk,jpoxy) = tra(ji,jj,jk,jpoxy) - o2ut * zgrarsig 155 164 tra(ji,jj,jk,jpfer) = tra(ji,jj,jk,jpfer) + zgrafer 165 zfezoo(ji,jj,jk) = zgrafer 156 166 tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) + zgrapoc 157 167 prodpoc(ji,jj,jk) = prodpoc(ji,jj,jk) + zgrapoc … … 201 211 CALL iom_put( "GRAZ1", zw3d ) 202 212 ENDIF 213 IF( iom_use( "FEZOO" ) ) THEN 214 zw3d(:,:,:) = zfezoo(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) ! 215 CALL iom_put( "FEZOO", zw3d ) 216 ENDIF 217 #if defined key_ligand 218 IF( iom_use( "LPRODZ" ) ) THEN 219 zw3d(:,:,:) = zzligprod(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) 220 CALL iom_put( "LPRODZ" , zw3d ) 221 ENDIF 222 #endif 203 223 CALL wrk_dealloc( jpi, jpj, jpk, zw3d ) 204 224 ENDIF … … 210 230 ENDIF 211 231 ! 212 IF( lk_iomput ) CALL wrk_dealloc( jpi, jpj, jpk, zgrazing ) 232 CALL wrk_dealloc( jpi, jpj, jpk, zgrazing, zfezoo ) 233 #if defined key_ligand 234 CALL wrk_dealloc( jpi, jpj, jpk, zzligprod ) 235 #endif 213 236 ! 214 237 IF( nn_timing == 1 ) CALL timing_stop('p4z_micro') -
branches/CNRS/dev_r6270_PISCES_QUOTA/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zpoc.F90
r7180 r7617 73 73 REAL(wp), POINTER, DIMENSION(:,:,:) :: zremipoc, zremigoc, zorem3 74 74 REAL(wp), POINTER, DIMENSION(:,:,:,:) :: alphag 75 REAL(wp), POINTER, DIMENSION(:,:,:) :: zfolimi 76 75 77 !!--------------------------------------------------------------------- 76 78 ! … … 80 82 CALL wrk_alloc( jpi, jpj, totprod, totthick, totcons ) 81 83 CALL wrk_alloc( jpi, jpj, jpk, zremipoc, zremigoc, zorem3 ) 84 CALL wrk_alloc( jpi, jpj, jpk, zfolimi ) 82 85 ALLOCATE( alphag(jpi,jpj,jpk,jcpoc) ) 83 86 … … 98 101 zorem3(:,:,:) = 0. 99 102 orem (:,:,:) = 0. 103 zfolimi(:,:,:) = 0. 100 104 101 105 DO jn = 1, jcpoc … … 217 221 tra(ji,jj,jk,jpdoc) = tra(ji,jj,jk,jpdoc) + zorem2 218 222 tra(ji,jj,jk,jpfer) = tra(ji,jj,jk,jpfer) + zofer2 223 zfolimi(ji,jj,jk) = zofer2 219 224 END DO 220 225 END DO … … 392 397 orem(ji,jj,jk) = orem(ji,jj,jk) + zorem 393 398 tra(ji,jj,jk,jpfer) = tra(ji,jj,jk,jpfer) + zofer 399 zfolimi(ji,jj,jk) = zfolimi(ji,jj,jk) + zofer 394 400 tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) - zorem 395 401 #if defined key_kriest … … 407 413 CALL iom_put( "REMINP" , zremipoc(:,:,:) * tmask(:,:,:) ) ! Remineralisation rate 408 414 CALL iom_put( "REMING" , zremigoc(:,:,:) * tmask(:,:,:) ) ! Remineralisation rate 415 CALL iom_put( "REMINF" , zfolimi(:,:,:) * tmask(:,:,:) * 1.e+3 * rfact2r ) ! Remineralisation rate 409 416 ENDIF 410 417 … … 416 423 ! 417 424 CALL wrk_dealloc( jpi, jpj, totprod, totthick, totcons ) 418 CALL wrk_dealloc( jpi, jpj, jpk, zremipoc, zremigoc, zorem3 )425 CALL wrk_dealloc( jpi, jpj, jpk, zremipoc, zremigoc, zorem3, zfolimi ) 419 426 DEALLOCATE( alphag ) 420 427 ! -
branches/CNRS/dev_r6270_PISCES_QUOTA/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zprod.F90
r7180 r7617 89 89 REAL(wp), POINTER, DIMENSION(:,:,:) :: zprorcan, zprorcad, zprofed, zprofen, zpronewn, zpronewd 90 90 REAL(wp), POINTER, DIMENSION(:,:,:) :: zmxl_fac, zmxl_chl 91 #if defined key_ligand 92 REAL(wp), POINTER, DIMENSION(:,:,:) :: zpligprod, zpligprod2 93 #endif 91 94 !!--------------------------------------------------------------------- 92 95 ! … … 98 101 CALL wrk_alloc( jpi, jpj, jpk, zmxl_fac, zmxl_chl ) 99 102 CALL wrk_alloc( jpi, jpj, jpk, zprorcan, zprorcad, zprofed, zprofen, zpronewn, zpronewd ) 103 #if defined key_ligand 104 CALL wrk_alloc( jpi, jpj, jpk, zpligprod, zpligprod2 ) 105 #endif 100 106 ! 101 107 zprorcan(:,:,:) = 0._wp ; zprorcad(:,:,:) = 0._wp ; zprofed (:,:,:) = 0._wp … … 345 351 #if defined key_ligand 346 352 tra(ji,jj,jk,jplgw) = tra(ji,jj,jk,jplgw) + zdocprod * ldocp - zfeup * plig(ji,jj,jk) * lthet 353 zpligprod(ji,jj,jk) = zdocprod * ldocp 354 zpligprod2(ji,jj,jk) = zfeup * plig(ji,jj,jk) * lthet 347 355 #endif 348 356 tra(ji,jj,jk,jpoxy) = tra(ji,jj,jk,jpoxy) + o2ut * ( zproreg + zproreg2) & … … 424 432 CALL iom_put( "TPBFE" , zw3d ) 425 433 ENDIF 434 #if defined key_ligand 435 IF( iom_use( "LPRODP" ) ) THEN 436 zw3d(:,:,:) = zpligprod(:,:,:) * 1e9 * zfact * tmask(:,:,:) 437 CALL iom_put( "LPRODP" , zw3d ) 438 ENDIF 439 IF( iom_use( "LDETP" ) ) THEN 440 zw3d(:,:,:) = zpligprod2(:,:,:) * 1e9 * zfact * tmask(:,:,:) 441 CALL iom_put( "LDETP" , zw3d ) 442 ENDIF 443 #endif 426 444 IF( iom_use( "INTPPPHY" ) .OR. iom_use( "INTPPPHY2" ) ) THEN 427 445 zw2d(:,:) = 0. … … 495 513 CALL wrk_dealloc( jpi, jpj, jpk, zmxl_fac, zmxl_chl ) 496 514 CALL wrk_dealloc( jpi, jpj, jpk, zprorcan, zprorcad, zprofed, zprofen, zpronewn, zpronewd ) 515 #if defined key_ligand 516 CALL wrk_dealloc( jpi, jpj, jpk, zpligprod, zpligprod2 ) 517 #endif 497 518 ! 498 519 IF( nn_timing == 1 ) CALL timing_stop('p4z_prod') -
branches/CNRS/dev_r6270_PISCES_QUOTA/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zrem.F90
r7180 r7617 79 79 CHARACTER (len=25) :: charout 80 80 REAL(wp), POINTER, DIMENSION(:,: ) :: ztempbac 81 REAL(wp), POINTER, DIMENSION(:,:,:) :: zdepbac, zolimi, zdepprod, zfacsi, zfacsib 81 REAL(wp), POINTER, DIMENSION(:,:,:) :: zdepbac, zolimi, zdepprod, zfacsi, zfacsib, znitr 82 82 !!--------------------------------------------------------------------- 83 83 ! … … 86 86 ! Allocate temporary workspace 87 87 CALL wrk_alloc( jpi, jpj, ztempbac ) 88 CALL wrk_alloc( jpi, jpj, jpk, zdepbac, zdepprod, zolimi, z facsi, zfacsib )88 CALL wrk_alloc( jpi, jpj, jpk, zdepbac, zdepprod, zolimi, znitr, zfacsi, zfacsib ) 89 89 90 90 ! Initialization of local variables … … 187 187 tra(ji,jj,jk,jpoxy) = tra(ji,jj,jk,jpoxy) - o2nit * zonitr 188 188 tra(ji,jj,jk,jptal) = tra(ji,jj,jk,jptal) - 2 * rno3 * zonitr + rno3 * ( rdenita - 1. ) * zdenitnh4 189 znitr(ji,jj,jk) = zonitr 189 190 END DO 190 191 END DO … … 271 272 CALL iom_put( "REMIN" , zolimi(:,:,:) * tmask(:,:,:) * zrfact2 ) ! Remineralisation rate 272 273 CALL iom_put( "DENIT" , denitr(:,:,:) * rdenit * rno3 * tmask(:,:,:) * zrfact2 ) ! Denitrification 274 CALL iom_put( "NIT" , znitr(:,:,:) * rno3 * tmask(:,:,:) * zrfact2 ) ! 275 CALL iom_put( "BACT", zdepbac(:,:,:) * 1.E6 * tmask(:,:,:) ) ! Bacterial biomass 276 273 277 ENDIF 274 278 ! 275 279 CALL wrk_dealloc( jpi, jpj, ztempbac ) 276 CALL wrk_dealloc( jpi, jpj, jpk, zdepbac, zdepprod, zolimi, zfacsi, zfacsib )280 CALL wrk_dealloc( jpi, jpj, jpk, zdepbac, zdepprod, zolimi, zfacsi, zfacsib, znitr ) 277 281 ! 278 282 IF( nn_timing == 1 ) CALL timing_stop('p4z_rem') -
branches/CNRS/dev_r6270_PISCES_QUOTA/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsbc.F90
r6453 r7617 45 45 REAL(wp), PUBLIC :: fep_rats !: Fep/Fer ratio from sed sources 46 46 REAL(wp), PUBLIC :: fep_rath !: Fep/Fer ratio from hydro sources 47 REAL(wp), PUBLIC :: hydrolig !: Lgw/Fer ratio from hydro sources 47 48 #endif 48 49 … … 231 232 & sedfeinput, dustsolub, icefeinput, wdust, mfrac, nitrfix, diazolight, concfediaz, & 232 233 #if defined key_ligand 233 & fep_rats, fep_rath, &234 & fep_rats, fep_rath, hydrolig, & 234 235 #endif 235 236 & hratio … … 271 272 WRITE(numout,*) ' Fep/Fer ratio from sed sources = ', fep_rats 272 273 WRITE(numout,*) ' Fep/Fer ratio from sed hydro sources = ', fep_rath 274 WRITE(numout,*) ' Lgw/Fer ratio from sed sources = ', hydrolig 273 275 #endif 274 276 END IF … … 286 288 IF( lk_offline ) THEN 287 289 nk_rnf(:,:) = 1 288 h_rnf (:,:) = fs dept(:,:,1)290 h_rnf (:,:) = fse3t(:,:,1) 289 291 ENDIF 290 292 -
branches/CNRS/dev_r6270_PISCES_QUOTA/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsed.F90
r7180 r7617 212 212 #if defined key_ligand 213 213 tra(:,:,:,jpfep) = tra(:,:,:,jpfep) + ( hydrofe(:,:,:) * fep_rath ) * rfact2 214 tra(:,:,:,jplgw) = tra(:,:,:,jplgw) + ( hydrofe(:,:,:) * 0.5) * rfact2214 tra(:,:,:,jplgw) = tra(:,:,:,jplgw) + ( hydrofe(:,:,:) * hydrolig ) * rfact2 215 215 #endif 216 216 !
Note: See TracChangeset
for help on using the changeset viewer.