Changeset 15548 for NEMO/branches/2021/ticket2632_r14588_theta_sbcblk/src/TOP/PISCES/P4Z/p4zligand.F90
- Timestamp:
- 2021-11-28T18:59:49+01:00 (3 years ago)
- Location:
- NEMO/branches/2021/ticket2632_r14588_theta_sbcblk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2021/ticket2632_r14588_theta_sbcblk
- Property svn:externals
-
old new 9 9 10 10 # SETTE 11 ^/utils/CI/sette@14244 sette 11 ^/utils/CI/sette@HEAD sette 12
-
- Property svn:externals
-
NEMO/branches/2021/ticket2632_r14588_theta_sbcblk/src/TOP/PISCES/P4Z/p4zligand.F90
r13295 r15548 25 25 REAL(wp), PUBLIC :: rlig !: Remin ligand production 26 26 REAL(wp), PUBLIC :: prlgw !: Photochemical of weak ligand 27 REAL(wp), PUBLIC :: xklig !: 1/2 saturation constant of photolysis 27 28 28 29 !! * Substitutions … … 45 46 ! 46 47 INTEGER :: ji, jj, jk 47 REAL(wp) :: zlgwp, zlgwpr, zlgwr, zlablgw 48 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zligrem, zligpr, zligprod 48 REAL(wp) :: zlgwp, zlgwpr, zlgwr, zlablgw 49 REAL(wp) :: zlam1a, zlam1b, zaggliga, zligco 50 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zligrem, zligpr, zligprod, zlcoll3d 49 51 CHARACTER (len=25) :: charout 50 52 !!--------------------------------------------------------------------- … … 52 54 IF( ln_timing ) CALL timing_start('p4z_ligand') 53 55 ! 54 DO_3D( 1, 1, 1, 1, 1, jpkm1)56 DO_3D( nn_hls, nn_hls, nn_hls, nn_hls, 1, jpkm1) 55 57 ! 56 58 ! ------------------------------------------------------------------ … … 62 64 ! This is based on the idea that as LGW is lower 63 65 ! there is a larger fraction of refractory OM 64 zlgwr = max( rlgs , rlgw * exp( -2 * (tr(ji,jj,jk,jplgw,Kbb)*1e9) ) ) ! years 65 zlgwr = 1. / zlgwr * tgfunc(ji,jj,jk) * ( xstep / nyear_len(1) ) * blim(ji,jj,jk) * tr(ji,jj,jk,jplgw,Kbb) 66 zlgwr = ( 1.0 / rlgs * MAX(0., tr(ji,jj,jk,jplgw,Kbb) - xfecolagg(ji,jj,jk) * 1.0E-9 ) & 67 & + 1.0 / rlgw * xfecolagg(ji,jj,jk) * 1.0E-9 ) / ( rtrn + tr(ji,jj,jk,jplgw,Kbb) ) 68 zlgwr = zlgwr * tgfunc(ji,jj,jk) * ( xstep / nyear_len(1) ) * blim(ji,jj,jk) * tr(ji,jj,jk,jplgw,Kbb) 66 69 ! photochem loss of weak ligand 67 zlgwpr = prlgw * xstep * etot(ji,jj,jk) * tr(ji,jj,jk,jplgw,Kbb) * (1. - fr_i(ji,jj)) 68 tr(ji,jj,jk,jplgw,Krhs) = tr(ji,jj,jk,jplgw,Krhs) + zlgwp - zlgwr - zlgwpr 70 zlgwpr = prlgw * xstep * etot(ji,jj,jk) * tr(ji,jj,jk,jplgw,Kbb)**3 * (1. - fr_i(ji,jj)) & 71 & / ( tr(ji,jj,jk,jplgw,Kbb)**2 + (xklig)**2) 72 ! Coagulation of ligands due to various processes (Brownian, shear, diff. sedimentation 73 ! xcoagfe is computed in p4zfechem 74 ! ------------------------------------------------------------------------------------- 75 ! 50% of the ligands are supposed to be in the colloidal size fraction 76 ! as for FeL 77 zligco = 0.5 * MAX(0., tr(ji,jj,jk,jplgw,Kbb) - xfecolagg(ji,jj,jk) * 1.0E-9 ) 78 zaggliga = xcoagfe(ji,jj,jk) * xstep * zligco 79 80 tr(ji,jj,jk,jplgw,Krhs) = tr(ji,jj,jk,jplgw,Krhs) + zlgwp - zlgwr - zlgwpr - zaggliga 81 ! 69 82 zligrem(ji,jj,jk) = zlgwr 70 83 zligpr(ji,jj,jk) = zlgwpr 71 zligprod(ji,jj,jk) = zlgwp72 !84 zligprod(ji,jj,jk) = zlgwp 85 zlcoll3d(ji,jj,jk) = zaggliga 73 86 END_3D 74 87 ! … … 84 97 IF( iom_use( "LPRODR" ) ) THEN 85 98 zligprod(:,:,jpk) = 0. ; CALL iom_put( "LPRODR", zligprod(:,:,:) * 1e9 * 1.e+3 * rfact2r * tmask(:,:,:) ) 99 ENDIF 100 IF( iom_use( "LGWCOLL" ) ) THEN 101 zlcoll3d(:,:,jpk) = 0. ; CALL iom_put( "LGWCOLL", zlcoll3d(:,:,:) * 1.e9 * 1.e+3 * rfact2r * tmask(:,:,:) ) 86 102 ENDIF 87 103 ENDIF … … 110 126 INTEGER :: ios ! Local integer 111 127 ! 112 NAMELIST/nampislig/ rlgw, prlgw, rlgs, rlig 128 NAMELIST/nampislig/ rlgw, prlgw, rlgs, rlig, xklig 113 129 !!---------------------------------------------------------------------- 114 130 ! … … 130 146 WRITE(numout,*) ' Photolysis of weak ligand prlgw =', prlgw 131 147 WRITE(numout,*) ' Lifetime (years) of strong ligands rlgs =', rlgs 148 WRITE(numout,*) ' 1/2 saturation for photolysis xklig =', xklig 132 149 ENDIF 133 150 !
Note: See TracChangeset
for help on using the changeset viewer.