- Timestamp:
- 2013-05-24T11:58:01+02:00 (11 years ago)
- Location:
- trunk/NEMOGCM
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMOGCM/ARCH/CNRS/arch-macport_osx.fcm
r3756 r3904 27 27 %NCDF_INC -I/opt/local/include 28 28 %NCDF_LIB -L/opt/local/lib -lnetcdf -lnetcdff 29 %XIOS_ROOT /Users/ smasson/XIOS29 %XIOS_ROOT /Users/cethe/XIOS 30 30 %FC mpif90 31 31 %FCFLAGS -fdefault-real-8 -O3 -funroll-all-loops -fcray-pointer … … 34 34 %LDFLAGS -lstdc++ -lmpi_cxx 35 35 %FPPFLAGS -P -C -traditional 36 %AR libtool37 %ARFLAGS -c -s -o36 %AR ar 37 %ARFLAGS rs 38 38 %MK make 39 39 %USER_INC %NCDF_INC -I%XIOS_ROOT/inc -
trunk/NEMOGCM/CONFIG/ORCA2_LIM_PISCES/EXP00/namelist_pisces
r3824 r3904 30 30 cn_dir = './' ! root directory for the location of the dynamical files 31 31 ! 32 ln_presatm = . true. ! constant atmopsheric pressure (F) or from a file (T)32 ln_presatm = .false. ! constant atmopsheric pressure (F) or from a file (T) 33 33 / 34 34 !''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' … … 39 39 xkmort = 2.E-7 ! half saturation constant for mortality 40 40 ferat3 = 10.E-6 ! Fe/C in zooplankton 41 wsbio2 = 30. ! Big particles sinking speed41 wsbio2 = 50. ! Big particles sinking speed 42 42 niter1max = 1 ! Maximum number of iterations for POC 43 43 niter2max = 1 ! Maximum number of iterations for GOC … … 47 47 !,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 48 48 concnno3 = 1.e-6 ! Nitrate half saturation of nanophytoplankton 49 concdno3 = 3.E-6 ! Phosphate half saturation for diatoms49 concdno3 = 3.E-6 ! Phosphate half saturation for diatoms 50 50 concnnh4 = 1.E-7 ! NH4 half saturation for phyto 51 concdnh4 = 3.E-7 ! NH4 half saturation for diatoms52 concnfer = 1.E-9 53 concdfer = 3.E-9 ! Iron half saturation for diatoms51 concdnh4 = 3.E-7 ! NH4 half saturation for diatoms 52 concnfer = 1.E-9 ! Iron half saturation for phyto 53 concdfer = 3.E-9 ! Iron half saturation for diatoms 54 54 concbfe = 1.E-11 ! Half-saturation for Fe limitation of Bacteria 55 55 concbnh4 = 2.5E-8 ! NH4 half saturation for phyto … … 60 60 xsizerd = 3.0 ! Size ratio for diatoms 61 61 xksi1 = 2.E-6 ! half saturation constant for Si uptake 62 xksi2 = 20E-6 ! half saturation constant for Si/C62 xksi2 = 20E-6 ! half saturation constant for Si/C 63 63 xkdoc = 417.E-6 ! half-saturation constant of DOC remineralization 64 64 qnfelim = 7.E-6 ! Optimal quota of phyto … … 84 84 excret2 = 0.05 ! excretion ratio of diatoms 85 85 ln_newprod = .true. ! Enable new parame. of production (T/F) 86 bresp = 0.0 0333! Basal respiration rate86 bresp = 0.0333 ! Basal respiration rate 87 87 chlcnm = 0.033 ! Minimum Chl/C in nanophytoplankton 88 88 chlcdm = 0.05 ! Minimum Chl/C in diatoms … … 106 106 part2 = 0.75 ! part of calcite not dissolved in mesozoo guts 107 107 grazrat2 = 0.75 ! maximal mesozoo grazing rate 108 resrat2 = 0.0 05! exsudation rate of mesozooplankton108 resrat2 = 0.01 ! exsudation rate of mesozooplankton 109 109 mzrat2 = 0.03 ! mesozooplankton mortality rate 110 110 xprefc = 1. ! zoo preference for phyto … … 118 118 xthresh2 = 3E-7 ! Food threshold for grazing 119 119 xkgraz2 = 20.E-6 ! half sturation constant for meso grazing 120 epsher2 = 0. 3! Efficicency of Mesozoo growth120 epsher2 = 0.4 ! Efficicency of Mesozoo growth 121 121 sigma2 = 0.6 ! Fraction of mesozoo excretion as DOM 122 122 unass2 = 0.3 ! non assimilated fraction of P by mesozoo … … 128 128 part = 0.5 ! part of calcite not dissolved in microzoo gutsa 129 129 grazrat = 3.0 ! maximal zoo grazing rate 130 resrat = 0.0 3! exsudation rate of zooplankton130 resrat = 0.05 ! exsudation rate of zooplankton 131 131 mzrat = 0.004 ! zooplankton mortality rate 132 132 xpref2c = 0.1 ! Microzoo preference for POM … … 138 138 xthresh = 3.E-7 ! Food threshold for feeding 139 139 xkgraz = 20.E-6 ! half sturation constant for grazing 140 epsher = 0. 3! Efficiency of microzoo growth140 epsher = 0.4 ! Efficiency of microzoo growth 141 141 sigma1 = 0.6 ! Fraction of microzoo excretion as DOM 142 142 unass = 0.3 ! non assimilated fraction of phyto by zoo … … 146 146 !,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 147 147 ln_fechem = .false. ! complex iron chemistry ( T/F ) 148 ln_ligvar = . true. ! variable ligand concentration148 ln_ligvar = .false. ! variable ligand concentration 149 149 xlam1 = 0.005 ! scavenging rate of Iron 150 150 xlamdust = 150.0 ! Scavenging rate of dust … … 154 154 &nampisrem ! parameters for remineralization 155 155 !,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 156 xremik = 0.3 5! remineralization rate of DOC156 xremik = 0.3 ! remineralization rate of DOC 157 157 xremip = 0.025 ! remineralisation rate of POC 158 158 nitrif = 0.05 ! NH4 nitrification rate … … 261 261 &nampismass ! Mass conservation 262 262 !,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 263 ln_check_mass = . false. ! Check mass conservation264 / 263 ln_check_mass = .true. ! Check mass conservation 264 / -
trunk/NEMOGCM/CONFIG/ORCA2_OFF_PISCES/EXP00/namelist_pisces
r3824 r3904 30 30 cn_dir = './' ! root directory for the location of the dynamical files 31 31 ! 32 ln_presatm = . true. ! constant atmopsheric pressure (F) or from a file (T)32 ln_presatm = .false. ! constant atmopsheric pressure (F) or from a file (T) 33 33 / 34 34 !''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' … … 39 39 xkmort = 2.E-7 ! half saturation constant for mortality 40 40 ferat3 = 10.E-6 ! Fe/C in zooplankton 41 wsbio2 = 30. ! Big particles sinking speed41 wsbio2 = 50. ! Big particles sinking speed 42 42 niter1max = 1 ! Maximum number of iterations for POC 43 43 niter2max = 1 ! Maximum number of iterations for GOC … … 47 47 !,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 48 48 concnno3 = 1.e-6 ! Nitrate half saturation of nanophytoplankton 49 concdno3 = 3.E-6 ! Phosphate half saturation for diatoms49 concdno3 = 3.E-6 ! Phosphate half saturation for diatoms 50 50 concnnh4 = 1.E-7 ! NH4 half saturation for phyto 51 concdnh4 = 3.E-7 ! NH4 half saturation for diatoms52 concnfer = 1.E-9 53 concdfer = 3.E-9 ! Iron half saturation for diatoms51 concdnh4 = 3.E-7 ! NH4 half saturation for diatoms 52 concnfer = 1.E-9 ! Iron half saturation for phyto 53 concdfer = 3.E-9 ! Iron half saturation for diatoms 54 54 concbfe = 1.E-11 ! Half-saturation for Fe limitation of Bacteria 55 55 concbnh4 = 2.5E-8 ! NH4 half saturation for phyto … … 60 60 xsizerd = 3.0 ! Size ratio for diatoms 61 61 xksi1 = 2.E-6 ! half saturation constant for Si uptake 62 xksi2 = 20E-6 ! half saturation constant for Si/C62 xksi2 = 20E-6 ! half saturation constant for Si/C 63 63 xkdoc = 417.E-6 ! half-saturation constant of DOC remineralization 64 64 qnfelim = 7.E-6 ! Optimal quota of phyto … … 84 84 excret2 = 0.05 ! excretion ratio of diatoms 85 85 ln_newprod = .true. ! Enable new parame. of production (T/F) 86 bresp = 0.0 0333! Basal respiration rate86 bresp = 0.0333 ! Basal respiration rate 87 87 chlcnm = 0.033 ! Minimum Chl/C in nanophytoplankton 88 88 chlcdm = 0.05 ! Minimum Chl/C in diatoms … … 106 106 part2 = 0.75 ! part of calcite not dissolved in mesozoo guts 107 107 grazrat2 = 0.75 ! maximal mesozoo grazing rate 108 resrat2 = 0.0 05! exsudation rate of mesozooplankton108 resrat2 = 0.01 ! exsudation rate of mesozooplankton 109 109 mzrat2 = 0.03 ! mesozooplankton mortality rate 110 110 xprefc = 1. ! zoo preference for phyto … … 118 118 xthresh2 = 3E-7 ! Food threshold for grazing 119 119 xkgraz2 = 20.E-6 ! half sturation constant for meso grazing 120 epsher2 = 0. 3! Efficicency of Mesozoo growth120 epsher2 = 0.4 ! Efficicency of Mesozoo growth 121 121 sigma2 = 0.6 ! Fraction of mesozoo excretion as DOM 122 122 unass2 = 0.3 ! non assimilated fraction of P by mesozoo … … 128 128 part = 0.5 ! part of calcite not dissolved in microzoo gutsa 129 129 grazrat = 3.0 ! maximal zoo grazing rate 130 resrat = 0.0 3! exsudation rate of zooplankton130 resrat = 0.05 ! exsudation rate of zooplankton 131 131 mzrat = 0.004 ! zooplankton mortality rate 132 132 xpref2c = 0.1 ! Microzoo preference for POM … … 138 138 xthresh = 3.E-7 ! Food threshold for feeding 139 139 xkgraz = 20.E-6 ! half sturation constant for grazing 140 epsher = 0. 3! Efficiency of microzoo growth140 epsher = 0.4 ! Efficiency of microzoo growth 141 141 sigma1 = 0.6 ! Fraction of microzoo excretion as DOM 142 142 unass = 0.3 ! non assimilated fraction of phyto by zoo … … 146 146 !,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 147 147 ln_fechem = .false. ! complex iron chemistry ( T/F ) 148 ln_ligvar = . true. ! variable ligand concentration148 ln_ligvar = .false. ! variable ligand concentration 149 149 xlam1 = 0.005 ! scavenging rate of Iron 150 150 xlamdust = 150.0 ! Scavenging rate of dust … … 154 154 &nampisrem ! parameters for remineralization 155 155 !,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 156 xremik = 0.3 5! remineralization rate of DOC156 xremik = 0.3 ! remineralization rate of DOC 157 157 xremip = 0.025 ! remineralisation rate of POC 158 158 nitrif = 0.05 ! NH4 nitrification rate … … 261 261 &nampismass ! Mass conservation 262 262 !,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, 263 ln_check_mass = . false. ! Check mass conservation264 / 263 ln_check_mass = .true. ! Check mass conservation 264 / -
trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zfechem.F90
r3780 r3904 263 263 zdep = MIN( 1., 1000. / fsdept(ji,jj,jk) ) 264 264 zlam1b = xlam1 * MAX( 0.e0, ( trn(ji,jj,jk,jpfer) * 1.e9 - ztotlig(ji,jj,jk) ) ) 265 zcoag = zfeequi * zlam1b * zstep + 1E-4 * ( 1. - zlamfac ) * zdep * zstep * zfecoll265 zcoag = zfeequi * zlam1b * zstep + 1E-4 * ( 1. - zlamfac ) * zdep * zstep * trn(ji,jj,jk,jpfer) 266 266 267 267 ! Compute the coagulation of colloidal iron. This parameterization … … 278 278 tra(ji,jj,jk,jpsfe) = tra(ji,jj,jk,jpsfe) + zscave * zdenom1 + zaggdfea + zaggdfeb 279 279 #else 280 zlam1b = 3.53E3 * trn(ji,jj,jk,jpgoc) * xdiss(ji,jj,jk) + 1E-4 * ( 1. - zlamfac ) * zdep280 zlam1b = 3.53E3 * trn(ji,jj,jk,jpgoc) * xdiss(ji,jj,jk) 281 281 zaggdfeb = zlam1b * zstep * zfecoll 282 282 ! -
trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmeso.F90
r3856 r3904 140 140 ! ---------------------------------- 141 141 # if ! defined key_kriest 142 zgrazffeg = grazflux * zstep * wsbio4(ji,jj,jk) & 143 ! & * tgfunc2(ji,jj,jk) * trn(ji,jj,jk,jpgoc) * trn(ji,jj,jk,jpmes) 144 & * 2. * trn(ji,jj,jk,jpgoc) * trn(ji,jj,jk,jpmes) 142 zgrazffeg = grazflux * zstep * wsbio4(ji,jj,jk) * trn(ji,jj,jk,jpgoc) * trn(ji,jj,jk,jpmes) 145 143 zgrazfffg = zgrazffeg * trn(ji,jj,jk,jpbfe) / (trn(ji,jj,jk,jpgoc) + rtrn) 146 144 # endif 147 zgrazffep = grazflux * zstep * wsbio3(ji,jj,jk) & 148 ! & * tgfunc2(ji,jj,jk) * trn(ji,jj,jk,jppoc) * trn(ji,jj,jk,jpmes) 149 & * 2. * trn(ji,jj,jk,jppoc) * trn(ji,jj,jk,jpmes) 145 zgrazffep = grazflux * zstep * wsbio3(ji,jj,jk) * trn(ji,jj,jk,jppoc) * trn(ji,jj,jk,jpmes) 150 146 zgrazfffp = zgrazffep * trn(ji,jj,jk,jpsfe) / (trn(ji,jj,jk,jppoc) + rtrn) 151 147 ! … … 154 150 ! Compute the proportion of filter feeders 155 151 zproport = (zgrazffep + zgrazffeg)/(rtrn + zgraztot) 152 ! Compute fractionation of aggregates. It is assumed that diatoms based aggregates are more prone to fractionation 153 ! since they are more porous (marine snow instead of fecal pellets) 156 154 zratio = trn(ji,jj,jk,jpgsi) / ( trn(ji,jj,jk,jpgoc) + rtrn ) 157 155 zratio2 = zratio * zratio 158 ! zfrac = zproport * 0.15 * zstep * & 159 ! ( 0.2 + 0.8 * zratio2 / ( 1.5**2 + zratio2 ) ) & 160 ! *trn(ji,jj,jk,jpmes)/3E-7 *trn(ji,jj,jk,jpgoc) 161 zfrac = zproport * grazflux * zstep * wsbio4(ji,jj,jk) & 162 & * ( 0.1 + 3.9 * zratio2 / ( 1.**2 + zratio2 ) ) & 163 & * 2. * trn(ji,jj,jk,jpmes) * trn(ji,jj,jk,jpgoc) 156 zfrac = zproport * zgrazffeg * ( 0.1 + 3.9 * zratio2 / ( 1.**2 + zratio2 ) ) 164 157 165 158 zfracfe = zfrac * trn(ji,jj,jk,jpbfe) / (trn(ji,jj,jk,jpgoc) + rtrn) … … 193 186 zepshert = epsher2 * MIN( 1., zncratio ) 194 187 zepsherv = zepshert * MIN( 1., zgrasrat / ferat3 ) 195 zgrarem2 = zgraztot * ( 1. - zepsherv - unass2 ) + zrespz2 &196 & + ( 1. - zepsherv - unass2 ) /( 1. - zepsherv + rtrn) * ztortz2197 zgrafer2 = zgraztot * MAX( 0. , ( 1. - unass2 ) * zgrasrat - ferat3 * zepsherv ) &198 & + ferat3 * ( zrespz2 + ( 1. - zepsherv - unass2 ) /( 1. - zepsherv + rtrn) * ztortz2 )188 zgrarem2 = zgraztot * ( 1. - zepsherv - unass2 ) + zrespz2 & 189 & + ( 1. - zepsherv - unass2 ) /( 1. - zepsherv ) * ztortz2 190 zgrafer2 = zgraztot * MAX( 0. , ( 1. - unass2 ) * zgrasrat - ferat3 * zepsherv ) & 191 & + ferat3 * ( zrespz2 + ( 1. - zepsherv - unass2 ) /( 1. - zepsherv ) * ztortz2 ) 199 192 zgrapoc2 = zgraztot * unass2 200 193 … … 208 201 tra(ji,jj,jk,jpdic) = tra(ji,jj,jk,jpdic) + zgrarsig 209 202 tra(ji,jj,jk,jptal) = tra(ji,jj,jk,jptal) + rno3 * zgrarsig 210 #if defined key_kriest 211 tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) + zgrapoc2 212 tra(ji,jj,jk,jpnum) = tra(ji,jj,jk,jpnum) + zgrapoc2 * xkr_dmeso 213 tra(ji,jj,jk,jpsfe) = tra(ji,jj,jk,jpsfe) + zgraztotf * unass2 214 #else 215 tra(ji,jj,jk,jpgoc) = tra(ji,jj,jk,jpgoc) + zgrapoc2 - zfrac 216 tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) + zfrac 217 tra(ji,jj,jk,jpbfe) = tra(ji,jj,jk,jpbfe) + zgraztotf * unass2 - zfracfe 218 tra(ji,jj,jk,jpsfe) = tra(ji,jj,jk,jpsfe) + zfracfe 219 220 #endif 203 221 204 zmortz2 = ztortz2 + zrespz2 222 zmortzgoc = unass2 / ( 1. - zepsherv + rtrn) * ztortz2205 zmortzgoc = unass2 / ( 1. - zepsherv ) * ztortz2 223 206 tra(ji,jj,jk,jpmes) = tra(ji,jj,jk,jpmes) - zmortz2 + zepsherv * zgraztot 224 207 tra(ji,jj,jk,jpdia) = tra(ji,jj,jk,jpdia) - zgrazd … … 242 225 #if defined key_kriest 243 226 znumpoc = trn(ji,jj,jk,jpnum) / ( trn(ji,jj,jk,jppoc) + rtrn ) 244 tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) + zmortzgoc - zgrazpoc - zgrazffep 245 tra(ji,jj,jk,jpnum) = tra(ji,jj,jk,jpnum) - zgrazpoc * znumpoc &246 & + zmortzgoc * xkr_dmeso - zgrazffep * znumpoc * wsbio4(ji,jj,jk) / ( wsbio3(ji,jj,jk) + rtrn )247 tra(ji,jj,jk,jpsfe) = tra(ji,jj,jk,jpsfe) + ferat3 * zmortz2 - zgrazfffp - zgrazpof 227 tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) + zmortzgoc - zgrazpoc - zgrazffep + zgrapoc2 228 tra(ji,jj,jk,jpnum) = tra(ji,jj,jk,jpnum) - zgrazpoc * znumpoc + zgrapoc2 * xkr_dmeso & 229 & + zmortzgoc * xkr_dmeso - zgrazffep * znumpoc * wsbio4(ji,jj,jk) / ( wsbio3(ji,jj,jk) + rtrn ) 230 tra(ji,jj,jk,jpsfe) = tra(ji,jj,jk,jpsfe) + ferat3 * zmortz2 - zgrazfffp - zgrazpof + zgraztotf * unass2 248 231 #else 249 tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) - zgrazpoc - zgrazffep 250 tra(ji,jj,jk,jpgoc) = tra(ji,jj,jk,jpgoc) + zmortzgoc - zgrazffeg 251 tra(ji,jj,jk,jpsfe) = tra(ji,jj,jk,jpsfe) - zgrazpof - zgrazfffp 252 tra(ji,jj,jk,jpbfe) = tra(ji,jj,jk,jpbfe) + ferat3 * zmortzgoc - zgrazfffg 232 tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) - zgrazpoc - zgrazffep + zfrac 233 tra(ji,jj,jk,jpgoc) = tra(ji,jj,jk,jpgoc) + zmortzgoc - zgrazffeg + zgrapoc2 - zfrac 234 tra(ji,jj,jk,jpsfe) = tra(ji,jj,jk,jpsfe) - zgrazpof - zgrazfffp + zfracfe 235 tra(ji,jj,jk,jpbfe) = tra(ji,jj,jk,jpbfe) + ferat3 * zmortzgoc - zgrazfffg + zgraztotf * unass2 - zfracfe 253 236 #endif 254 255 237 END DO 256 238 END DO -
trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zprod.F90
r3686 r3904 201 201 zconctemp2 = trn(ji,jj,jk,jpdia) - zconctemp 202 202 ! 203 zpislopead (ji,jj,jk) = pislope * ( 1.+ zadap * EXP( enano(ji,jj,jk) ) )203 zpislopead (ji,jj,jk) = pislope * ( 1.+ zadap * EXP( -0.21 * enano(ji,jj,jk) ) ) 204 204 zpislopead2(ji,jj,jk) = (pislope * zconctemp2 + pislope2 * zconctemp) / ( trn(ji,jj,jk,jpdia) + rtrn ) 205 205 -
trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsed.F90
r3751 r3904 69 69 REAL(wp) :: zwflux, zfminus, zfplus 70 70 REAL(wp) :: zlim, zfact, zfactcal 71 REAL(wp) :: zo2, zno3, zflx, zpdenit, z1pdenit 71 REAL(wp) :: zo2, zno3, zflx, zpdenit, z1pdenit, zdenitt, zolimit 72 72 REAL(wp) :: zsiloss, zcaloss, zwsbio3, zwsbio4, zwscal, zdep, zwstpoc 73 73 REAL(wp) :: ztrfer, ztrpo4, zwdust … … 135 135 ENDIF 136 136 zsidep(:,:) = 8.8 * 0.075 * dust(:,:) * rfact2 / fse3t(:,:,1) / ( 28.1 * rmtss ) 137 zpdep (:,:) = 0.1 * 0.021 * dust(:,:) * rfact2 / fse3t(:,:,1) / ( 31. * rmtss ) 137 zpdep (:,:) = 0.1 * 0.021 * dust(:,:) * rfact2 / fse3t(:,:,1) / ( 31. * rmtss ) / po4r 138 138 ! ! Iron solubilization of particles in the water column 139 139 zwdust = 0.005 / ( wdust * 55.85 * 30.42 ) / ( 45. * rday ) … … 246 246 #endif 247 247 248 ! THEN this loss is scaled at each bottom grid cell for 249 ! equilibrating the total budget of silica in the ocean. 250 ! Thus, the amount of silica lost in the sediments equal 251 ! the supply at the surface (dust+rivers) 248 ! This loss is scaled at each bottom grid cell for equilibrating the total budget of silica in the ocean. 249 ! Thus, the amount of silica lost in the sediments equal the supply at the surface (dust+rivers) 252 250 ! ------------------------------------------------------ 253 251 #if ! defined key_sed … … 302 300 303 301 #if ! defined key_sed 304 zpdenit = MIN( ( trn(ji,jj,ikt,jpno3) - rtrn ) / rdenit, zdenit2d(ji,jj) * zwstpoc * zrivno3 ) 302 ! The 0.5 factor in zpdenit and zdenitt is to avoid negative NO3 concentration after both denitrification 303 ! in the sediments and just above the sediments. Not very clever, but simpliest option. 304 zpdenit = MIN( 0.5 * ( trn(ji,jj,ikt,jpno3) - rtrn ) / rdenit, zdenit2d(ji,jj) * zwstpoc * zrivno3 ) 305 305 z1pdenit = zwstpoc * zrivno3 - zpdenit 306 trn(ji,jj,ikt,jpdoc) = trn(ji,jj,ikt,jpdoc) + z1pdenit 307 trn(ji,jj,ikt,jppo4) = trn(ji,jj,ikt,jppo4) + zpdenit 308 trn(ji,jj,ikt,jpnh4) = trn(ji,jj,ikt,jpnh4) + zpdenit 309 trn(ji,jj,ikt,jpno3) = trn(ji,jj,ikt,jpno3) - rdenit * zpdenit 310 trn(ji,jj,ikt,jptal) = trn(ji,jj,ikt,jptal) + rno3 * ( 1. + rdenit ) * zpdenit 311 trn(ji,jj,ikt,jpdic) = trn(ji,jj,ikt,jpdic) + zpdenit 306 zolimit = MIN( ( trn(ji,jj,ikt,jpoxy) - rtrn ) / o2ut, z1pdenit * ( 1.- nitrfac(ji,jj,ikt) ) ) 307 zdenitt = MIN( 0.5 * ( trn(ji,jj,ikt,jpno3) - rtrn ) / rdenit, z1pdenit * nitrfac(ji,jj,ikt) ) 308 trn(ji,jj,ikt,jpdoc) = trn(ji,jj,ikt,jpdoc) + z1pdenit - zolimit - zdenitt 309 trn(ji,jj,ikt,jppo4) = trn(ji,jj,ikt,jppo4) + zpdenit + zolimit + zdenitt 310 trn(ji,jj,ikt,jpnh4) = trn(ji,jj,ikt,jpnh4) + zpdenit + zolimit + zdenitt 311 trn(ji,jj,ikt,jpno3) = trn(ji,jj,ikt,jpno3) - rdenit * (zpdenit + zdenitt) 312 trn(ji,jj,ikt,jpoxy) = trn(ji,jj,ikt,jpoxy) - zolimit * o2ut 313 trn(ji,jj,ikt,jptal) = trn(ji,jj,ikt,jptal) + rno3 * (zolimit + (1.+rdenit) * (zpdenit + zdenitt) ) 314 trn(ji,jj,ikt,jpdic) = trn(ji,jj,ikt,jpdic) + zpdenit + zolimit + zdenitt 312 315 zwork4(ji,jj) = rdenit * zpdenit * fse3t(ji,jj,ikt) 313 316 #endif -
trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsink.F90
r3829 r3904 156 156 DO ji = 1, jpi 157 157 IF( tmask(ji,jj,jk) == 1 ) THEN 158 zwsmax = 0. 8* fse3t(ji,jj,jk) / xstep158 zwsmax = 0.5 * fse3t(ji,jj,jk) / xstep 159 159 wsbio3(ji,jj,jk) = MIN( wsbio3(ji,jj,jk), zwsmax * FLOAT( iiter1 ) ) 160 160 wsbio4(ji,jj,jk) = MIN( wsbio4(ji,jj,jk), zwsmax * FLOAT( iiter2 ) ) … … 217 217 zaggdoc = ( ( 0.369 * 0.3 * trn(ji,jj,jk,jpdoc) + 102.4 * trn(ji,jj,jk,jppoc) ) * zfact & 218 218 & + 2.4 * zstep * trn(ji,jj,jk,jppoc) ) * 0.3 * trn(ji,jj,jk,jpdoc) 219 ! zaggdoc = ( 0.83 * trn(ji,jj,jk,jpdoc) + 271. * trn(ji,jj,jk,jppoc) ) * zfact * trn(ji,jj,jk,jpdoc)220 219 ! transfer of DOC to GOC : 221 220 ! 1st term is shear aggregation 222 221 ! 2nd term is differential settling 223 222 zaggdoc2 = ( 3.53E3 * zfact + 0.1 * zstep ) * trn(ji,jj,jk,jpgoc) * 0.3 * trn(ji,jj,jk,jpdoc) 224 ! zaggdoc2 = 1.07e4 * zfact * trn(ji,jj,jk,jpgoc) * trn(ji,jj,jk,jpdoc)225 223 ! tranfer of DOC to POC due to brownian motion 226 ! zaggdoc3 = 0.02 * ( 16706. * trn(ji,jj,jk,jppoc) + 231. * trn(ji,jj,jk,jpdoc) ) * zstep * trn(ji,jj,jk,jpdoc)227 224 zaggdoc3 = ( 5095. * trn(ji,jj,jk,jppoc) + 114. * 0.3 * trn(ji,jj,jk,jpdoc) ) *zstep * 0.3 * trn(ji,jj,jk,jpdoc) 228 225
Note: See TracChangeset
for help on using the changeset viewer.