Changeset 14963 for NEMO/branches/2021/dev_r14383_PISCES_NEWDEV_PISCO/src/TOP/PISCES/P4Z/p4zfechem.F90
- Timestamp:
- 2021-06-09T18:14:48+02:00 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2021/dev_r14383_PISCES_NEWDEV_PISCO/src/TOP/PISCES/P4Z/p4zfechem.F90
r14957 r14963 56 56 INTEGER :: ji, jj, jk, jic, jn 57 57 REAL(wp) :: zlam1a, zlam1b 58 REAL(wp) :: zkeq, zfesatur, zfecoll,fe3sol, zligco58 REAL(wp) :: zkeq, zfesatur, fe3sol, zligco 59 59 REAL(wp) :: zscave, zaggdfea, zaggdfeb, ztrc, zdust, zklight 60 60 REAL(wp) :: ztfe, zhplus, zxlam, zaggliga, zaggligb … … 62 62 REAL(wp) :: zrfact2 63 63 CHARACTER (len=25) :: charout 64 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zTL1, zFe3, ztotlig, zfeprecip, zFeL1 64 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zTL1, zFe3, ztotlig, zfeprecip, zFeL1, zfecoll 65 65 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zcoll3d, zscav3d, zlcoll3d 66 66 !!--------------------------------------------------------------------- … … 75 75 zscav3d (:,:,jpk) = 0. 76 76 zlcoll3d (:,:,jpk) = 0. 77 77 zfecoll (:,:,jpk) = 0. 78 xfecolagg(:,:,jpk) = 0. 79 xcoagfe (:,:,jpk) = 0. 80 ! 78 81 ! Total ligand concentration : Ligands can be chosen to be constant or variable 79 82 ! Parameterization from Pham and Ito (2018) 80 83 ! ------------------------------------------------- 84 xfecolagg(:,:,:) = ligand * 1E9 + MAX(0., chemo2(:,:,:) - tr(:,:,:,jpoxy,Kbb) ) / 400.E-6 81 85 IF( ln_ligvar ) THEN 82 ztotlig(:,:,:) = 0.09 * 0.667 * tr(:,:,:,jpdoc,Kbb) * 1E6 & 83 & + ligand * 1E9 & 84 & + MAX(0., chemo2(:,:,:) - tr(:,:,:,jpoxy,Kbb) ) / 400.E-6 86 ztotlig(:,:,:) = 0.09 * 0.667 * tr(:,:,:,jpdoc,Kbb) * 1E6 + xfecolagg(:,:,:) 85 87 ztotlig(:,:,:) = MIN( ztotlig(:,:,:), 10. ) 86 88 ELSE … … 111 113 ! 112 114 zdust = 0. ! if no dust available 115 116 ! Computation of the colloidal fraction that is subjecto to coagulation 117 ! The assumption is that 50% of complexed iron is colloidal. Furthermore 118 ! The refractory part is supposed to be non sticky. The refractory 119 ! fraction is supposed to equal to the background concentration + 120 ! the fraction that accumulates in the deep ocean. AOU is taken as a 121 ! proxy of that accumulation following numerous studies showing 122 ! some relationship between weak ligands and AOU. 123 ! An issue with that parameterization is that when ligands are not 124 ! prognostic or non variable, all the colloidal fraction is supposed 125 ! to coagulate 126 ! ---------------------------------------------------------------------- 127 IF (ln_ligand) THEN 128 zfecoll(:,:,:) = 0.5 * zFeL1(:,:,:) * MAX(0., tr(:,:,:,jplgw,Kbb) - xfecolagg(:,:,:) * 1.0E-9 ) / ( tr(:,:,:,jplgw,Kbb) + rtrn ) 129 ELSE 130 IF (ln_ligvar) THEN 131 zfecoll(:,:,:) = 0.5 * zFeL1(:,:,:) * MAX(0., tr(:,:,:,jplgw,Kbb) - xfecolagg(:,:,:) * 1.0E-9 ) / ( tr(:,:,:,jplgw,Kbb) + rtrn ) 132 ELSE 133 zfecoll(:,:,:) = 0.5 * zFeL1(:,:,:) 134 ENDIF 135 ENDIF 136 113 137 DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 114 138 ! Scavenging rate of iron. This scavenging rate depends on the load of particles of sea water. … … 121 145 & + fesol(ji,jj,jk,5) / zhplus ) 122 146 ! 123 zfecoll = 0.5 * zFeL1(ji,jj,jk)124 147 ! precipitation of Fe3+, creation of nanoparticles 125 148 zprecip = MAX( 0., ( zFe3(ji,jj,jk) - fe3sol ) ) * kfep * xstep * ( 1.0 - nitrfac(ji,jj,jk) ) … … 144 167 & + ( 2.49 * tr(ji,jj,jk,jppoc,Kbb) ) & 145 168 & + ( 127.8 * 0.3 * tr(ji,jj,jk,jpdoc,Kbb) + 725.7 * tr(ji,jj,jk,jppoc,Kbb) ) 146 zaggdfea = zlam1a * xstep * zfecoll 169 zaggdfea = zlam1a * xstep * zfecoll(ji,jj,jk) 147 170 ! 148 171 zlam1b = ( 1.94 * xdiss(ji,jj,jk) + 1.37 ) * tr(ji,jj,jk,jpgoc,Kbb) 149 zaggdfeb = zlam1b * xstep * zfecoll 150 172 zaggdfeb = zlam1b * xstep * zfecoll(ji,jj,jk) 173 xcoagfe(ji,jj,jk) = zlam1a + zlam1b 151 174 ! 152 175 tr(ji,jj,jk,jpfer,Krhs) = tr(ji,jj,jk,jpfer,Krhs) - zscave - zaggdfea - zaggdfeb & … … 179 202 biron(:,:,:) = tr(:,:,:,jpfer,Kbb) 180 203 ! 181 IF( ln_ligand ) THEN182 !183 DO_3D( 1, 1, 1, 1, 1, jpkm1 )184 ! Coagulation of ligands due to various processes (Brownian, shear, diff. sedimentation185 ! Coefficients are taken from p4zagg186 ! -------------------------------------------------------------------------------------187 zlam1a = ( 12.0 * 0.3 * tr(ji,jj,jk,jpdoc,Kbb) + 9.05 * tr(ji,jj,jk,jppoc,Kbb) ) * xdiss(ji,jj,jk) &188 & + ( 2.49 * tr(ji,jj,jk,jppoc,Kbb) ) &189 & + ( 127.8 * 0.3 * tr(ji,jj,jk,jpdoc,Kbb) + 725.7 * tr(ji,jj,jk,jppoc,Kbb) )190 !191 zlam1b = ( 1.94 * xdiss(ji,jj,jk) + 1.37 ) * tr(ji,jj,jk,jpgoc,Kbb)192 ! 50% of the ligands are supposed to be in the colloidal size fraction193 ! as for FeL194 zligco = 0.5 * tr(ji,jj,jk,jplgw,Kbb)195 zaggliga = zlam1a * xstep * zligco196 zaggligb = zlam1b * xstep * zligco197 !198 tr(ji,jj,jk,jplgw,Krhs) = tr(ji,jj,jk,jplgw,Krhs) - zaggliga - zaggligb199 zlcoll3d(ji,jj,jk) = zaggliga + zaggligb200 END_3D201 ENDIF202 203 204 ! Output of some diagnostics variables 204 205 ! --------------------------------- … … 213 214 IF( iom_use("FECOLL") ) CALL iom_put("FECOLL" , zcoll3d(:,:,:) * 1e9 * tmask(:,:,:) * zrfact2 ) 214 215 IF( iom_use("FEPREC") ) CALL iom_put("FEPREC" , zfeprecip(:,:,:) *1e9*tmask(:,:,:)*zrfact2 ) 215 IF( iom_use("LGWCOLL")) CALL iom_put("LGWCOLL", zlcoll3d(:,:,:) * 1e9 * tmask(:,:,:) * zrfact2 )216 216 ENDIF 217 217
Note: See TracChangeset
for help on using the changeset viewer.