New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 14963 – NEMO

Changeset 14963


Ignore:
Timestamp:
2021-06-09T18:14:48+02:00 (3 years ago)
Author:
aumont
Message:

Code updates + debugging + configuration files updates

Location:
NEMO/branches/2021/dev_r14383_PISCES_NEWDEV_PISCO
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2021/dev_r14383_PISCES_NEWDEV_PISCO/cfgs/ORCA2_ICE_PISCES/EXPREF/namelist_top_cfg

    r14416 r14963  
    6565   sn_trcdta(14) = 'data_FER_nomask.nc',        -1         ,  'Fer'    ,    .true.    , .true. , 'yearly'  , 'weights_3D_r360x180_bilin.nc'       , ''   , '' 
    6666   sn_trcdta(23) = 'data_NO3_nomask.nc',        -1         ,  'NO3'    ,    .true.    , .true. , 'yearly'  , 'weights_3D_r360x180_bilin.nc'       , ''   , '' 
    67    rn_trfac(1)   =   1.028e-06  !  multiplicative factor 
    68    rn_trfac(2)   =   1.028e-06  !  -      -      -     - 
    69    rn_trfac(3)   =  44.6e-06  !  -      -      -     - 
    70    rn_trfac(5)   = 122.0e-06  !  -      -      -     - 
    71    rn_trfac(7)   =   1.0e-06  !  -      -      -     - 
    72    rn_trfac(10)  =   1.0e-06  !  -      -      -     - 
    73    rn_trfac(14)  =   1.0e-06  !  -      -      -     - 
    74    rn_trfac(23)  =   7.6e-06  !  -      -      -     - 
     67   rn_trfac(1)   =   1.028e-06   !  multiplicative factor 
     68   rn_trfac(2)   =   1.028e-06   !  -      -      -     - 
     69   rn_trfac(3)   =  44.6e-06     !  -      -      -     - 
     70   rn_trfac(5)   = 117.0e-06     !  -      -      -     - 
     71   rn_trfac(7)   =   1.0e-06     !  -      -      -     - 
     72   rn_trfac(10)  =   1.0e-06     !  -      -      -     - 
     73   rn_trfac(14)  =   1.0e-06     !  -      -      -     - 
     74   rn_trfac(23)  =   7.3125e-06  !  -      -      -     - 
    7575/ 
    7676!----------------------------------------------------------------------- 
     
    114114   sn_trcsbc(14) = 'dust.orca.new'   ,       -1          , 'dustfer'     ,  .true.      , .true. , 'yearly'  , ''       , ''    , '' 
    115115   sn_trcsbc(23) = 'ndeposition.orca',      -12          , 'ndep'        ,  .false.     , .true. , 'yearly'  , ''       , ''    , '' 
    116    rn_trsfac(5)  = 8.264e-02   !  (  0.021 / 31. * 122 ) 
    117    rn_trsfac(7)  = 3.313e-01     !  ( 8.8   / 28.1 ) 
    118    rn_trsfac(14) = 6.266e-04   !  (  0.035 / 55.85 ) 
    119    rn_trsfac(23) =  5.4464e-01  !  ( From kgN m-2 s-1 to molC l-1 ====> zfact = 7.625/14 ) 
    120    rn_sbc_time   =  1.          !  Time scaling factor for SBC and CBC data (seconds in a day) 
     116   rn_trsfac(5)  = 7.9258065e-02    !  (  0.021 / 31. * 117 ) 
     117   rn_trsfac(7)  = 3.1316726e-01    !  ( 8.8   / 28.1 ) 
     118   rn_trsfac(14) = 6.2667860e-04    !  (  0.035 / 55.85 ) 
     119   rn_trsfac(23) = 5.2232143e-01    !  ( From kgN m-2 s-1 to molC l-1 ====> zfact = 7.3125/14 ) 
     120   rn_sbc_time   =  1.              !  Time scaling factor for SBC and CBC data (seconds in a day) 
    121121   ! 
    122122   sn_trccbc(1)  = 'river.orca'      ,    120            , 'riverdic'    ,  .true.      , .true. , 'yearly'  , ''       , ''    , '' 
     
    127127   sn_trccbc(14) = 'river.orca'      ,    120            , 'riverdic'    ,  .true.      , .true. , 'yearly'  , ''       , ''    , '' 
    128128   sn_trccbc(23) = 'river.orca'      ,    120            , 'riverdin'    ,  .true.      , .true. , 'yearly'  , ''       , ''    , '' 
    129    rn_trcfac(1)  = 8.333e+01   !  ( data in Mg/m2/yr : 1e3/12/ryyss) 
    130    rn_trcfac(2)  = 8.333e+01   !  ( 1e3 /12 ) 
    131    rn_trcfac(5)  = 3.935e+04   !  ( 1e3 / 31. * 122 ) 
    132    rn_trcfac(7)  = 3.588e+01   !  ( 1e3 / 28.1 ) 
    133    rn_trcfac(10) = 8.333e+01   !  ( 1e3 / 12 
    134    rn_trcfac(14) = 4.166e-03   !  ( 1e3 / 12 * 5e-5 ) 
    135    rn_trcfac(23) = 5.446e+02   !  (  1e3 / 14 * 7.625 ) 
    136    rn_cbc_time   = 3.1536e+7   !  Time scaling factor for CBC data (seconds in a year) 
     129   rn_trcfac(1)  = 8.333e+01      !  ( data in Mg/m2/yr : 1e3/12/ryyss) 
     130   rn_trcfac(2)  = 8.333e+01      !  ( 1e3 /12 ) 
     131   rn_trcfac(5)  = 3.774193e+04   !  ( 1e3 / 31. * 117 ) 
     132   rn_trcfac(7)  = 3.558719e+01   !  ( 1e3 / 28.1 ) 
     133   rn_trcfac(10) = 8.333333e+01   !  ( 1e3 / 12 
     134   rn_trcfac(14) = 4.166667e-03   !  ( 1e3 / 12 * 5e-5 ) 
     135   rn_trcfac(23) = 5.223214e+02   !  (  1e3 / 14 * 7.3125 ) 
     136   rn_cbc_time   = 3.1536e+7      !  Time scaling factor for CBC data (seconds in a year) 
    137137/ 
    138138!---------------------------------------------------------------------- 
  • NEMO/branches/2021/dev_r14383_PISCES_NEWDEV_PISCO/cfgs/ORCA2_OFF_PISCES/EXPREF/namelist_top_cfg

    r14416 r14963  
    6565   sn_trcdta(14) = 'data_FER_nomask.nc',        -1         ,  'Fer'    ,    .true.    , .true. , 'yearly'  , 'weights_3D_r360x180_bilin.nc'       , ''   , '' 
    6666   sn_trcdta(23) = 'data_NO3_nomask.nc',        -1         ,  'NO3'    ,    .true.    , .true. , 'yearly'  , 'weights_3D_r360x180_bilin.nc'       , ''   , '' 
    67    rn_trfac(1)   =   1.028e-06  !  multiplicative factor 
    68    rn_trfac(2)   =   1.028e-06  !  -      -      -     - 
    69    rn_trfac(3)   =  44.6e-06  !  -      -      -     - 
    70    rn_trfac(5)   = 122.0e-06  !  -      -      -     - 
    71    rn_trfac(7)   =   1.0e-06  !  -      -      -     - 
    72    rn_trfac(10)  =   1.0e-06  !  -      -      -     - 
    73    rn_trfac(14)  =   1.0e-06  !  -      -      -     - 
    74    rn_trfac(23)  =   7.6e-06  !  -      -      -     - 
     67   rn_trfac(1)   =   1.028e-06   !  multiplicative factor 
     68   rn_trfac(2)   =   1.028e-06   !  -      -      -     - 
     69   rn_trfac(3)   =  44.6e-06     !  -      -      -     - 
     70   rn_trfac(5)   = 117.0e-06     !  -      -      -     - 
     71   rn_trfac(7)   =   1.0e-06     !  -      -      -     - 
     72   rn_trfac(10)  =   1.0e-06     !  -      -      -     - 
     73   rn_trfac(14)  =   1.0e-06     !  -      -      -     - 
     74   rn_trfac(23)  =   7.3125e-06  !  -      -      -     - 
    7575/ 
    7676!----------------------------------------------------------------------- 
     
    100100&namtrc_ice      !    Representation of sea ice growth & melt effects 
    101101!----------------------------------------------------------------------- 
     102   nn_ice_tr     =  0       !  tracer concentration in sea ice 
    102103/ 
    103104!----------------------------------------------------------------------- 
     
    114115   sn_trcsbc(14) = 'dust.orca.new'   ,       -1          , 'dustfer'     ,  .true.      , .true. , 'yearly'  , ''       , ''    , '' 
    115116   sn_trcsbc(23) = 'ndeposition.orca',      -12          , 'ndep'        ,  .false.     , .true. , 'yearly'  , ''       , ''    , '' 
    116    rn_trsfac(5)  = 8.264e-02   !  (  0.021 / 31. * 122 ) 
    117    rn_trsfac(7)  = 3.313e-01     !  ( 8.8   / 28.1 ) 
    118    rn_trsfac(14) = 6.266e-04   !  (  0.035 / 55.85 ) 
    119    rn_trsfac(23) =  5.4464e-01  !  ( From kgN m-2 s-1 to molC l-1 ====> zfact = 7.625/14 ) 
    120    rn_sbc_time   =  1.          !  Time scaling factor for SBC and CBC data (seconds in a day) 
     117   rn_trsfac(5)  = 7.9258065e-02    !  (  0.021 / 31. * 117 ) 
     118   rn_trsfac(7)  = 3.1316726e-01    !  ( 8.8   / 28.1 ) 
     119   rn_trsfac(14) = 6.2667860e-04    !  (  0.035 / 55.85 ) 
     120   rn_trsfac(23) = 5.2232143e-01    !  ( From kgN m-2 s-1 to molC l-1 ====> zfact = 7.3125/14 ) 
     121   rn_sbc_time   = 1.               !  Time scaling factor for SBC and CBC data (seconds in a day) 
    121122   ! 
    122123   sn_trccbc(1)  = 'river.orca'      ,    120            , 'riverdic'    ,  .true.      , .true. , 'yearly'  , ''       , ''    , '' 
     
    127128   sn_trccbc(14) = 'river.orca'      ,    120            , 'riverdic'    ,  .true.      , .true. , 'yearly'  , ''       , ''    , '' 
    128129   sn_trccbc(23) = 'river.orca'      ,    120            , 'riverdin'    ,  .true.      , .true. , 'yearly'  , ''       , ''    , '' 
    129    rn_trcfac(1)  = 8.333e+01   !  ( data in Mg/m2/yr : 1e3/12/ryyss) 
    130    rn_trcfac(2)  = 8.333e+01   !  ( 1e3 /12 ) 
    131    rn_trcfac(5)  = 3.935e+04   !  ( 1e3 / 31. * 122 ) 
    132    rn_trcfac(7)  = 3.588e+01   !  ( 1e3 / 28.1 ) 
    133    rn_trcfac(10) = 8.333e+01   !  ( 1e3 / 12 
    134    rn_trcfac(14) = 4.166e-03   !  ( 1e3 / 12 * 5e-5 ) 
    135    rn_trcfac(23) = 5.446e+02   !  (  1e3 / 14 * 7.625 ) 
    136    rn_cbc_time   = 3.1536e+7   !  Time scaling factor for CBC data (seconds in a year) 
     130   rn_trcfac(1)  = 8.333e+01      !  ( data in Mg/m2/yr : 1e3/12/ryyss) 
     131   rn_trcfac(2)  = 8.333e+01      !  ( 1e3 /12 ) 
     132   rn_trcfac(5)  = 3.774193e+04   !  ( 1e3 / 31. * 117 ) 
     133   rn_trcfac(7)  = 3.558719e+01   !  ( 1e3 / 28.1 ) 
     134   rn_trcfac(10) = 8.333333e+01   !  ( 1e3 / 12 
     135   rn_trcfac(14) = 4.166667e-03   !  ( 1e3 / 12 * 5e-5 ) 
     136   rn_trcfac(23) = 5.223214e+02   !  (  1e3 / 14 * 7.3125 ) 
     137   rn_cbc_time   = 3.1536e+7      !  Time scaling factor for CBC data (seconds in a year) 
    137138/ 
    138139!---------------------------------------------------------------------- 
  • NEMO/branches/2021/dev_r14383_PISCES_NEWDEV_PISCO/cfgs/SHARED/field_def_nemo-pisces.xml

    r14416 r14963  
    214214    <field id="SIZEP"       long_name="Mean relative size of picophyto."        unit="-"          grid_ref="grid_T_3D" /> 
    215215    <field id="SIZED"       long_name="Mean relative size of diatoms"           unit="-"          grid_ref="grid_T_3D" /> 
     216    <field id="RASSD"       long_name="Size of the protein machinery (Diat.)"   unit="-"          grid_ref="grid_T_3D" /> 
     217    <field id="RASSN"       long_name="Size of the protein machinery (Nano.)"   unit="-"          grid_ref="grid_T_3D" /> 
     218    <field id="RASSP"       long_name="Size of the protein machinery (Pico.)"   unit="-"          grid_ref="grid_T_3D" /> 
    216219    <field id="Fe3"         long_name="Iron III concentration"                  unit="nmol/m3"    grid_ref="grid_T_3D" /> 
    217220    <field id="FeL1"        long_name="Complexed Iron concentration with L1"    unit="nmol/m3"    grid_ref="grid_T_3D" /> 
  • NEMO/branches/2021/dev_r14383_PISCES_NEWDEV_PISCO/cfgs/SHARED/namelist_pisces_ref

    r14416 r14963  
    3434!              !  file name   ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    3535!              !              !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
    36    sn_patm     = 'presatm'    ,     -1.           , 'patm'    ,  .true.      , .true. , 'yearly'  , ''       , ''       , '' 
     36   sn_patm     = 'presatm.orca2'    ,     24.           , 'presatm'    ,  .true.      , .true. , 'yearly'  , ''       , ''       , '' 
    3737   sn_atmco2   = 'presatmco2' ,     -1.           , 'xco2'    ,  .true.      , .true. , 'yearly'  , ''       , ''       , '' 
    3838   cn_dir      = './'     !  root directory for the location of the dynamical files 
    3939! 
    40    ln_presatm    = .false.   ! constant atmopsheric pressure (F) or from a file (T) 
     40   ln_presatm    = .true.   ! constant atmopsheric pressure (F) or from a file (T) 
    4141   ln_presatmco2 = .false.   ! Read spatialized atm co2 files [ppm] if TRUE 
    4242/ 
     
    4646   nrdttrc     =  1       ! time step frequency for biology 
    4747   wsbio       =  2.      ! POC sinking speed 
    48    xkmort      =  2.E-7   ! half saturation constant for mortality 
     48   xkmort      =  1.E-7   ! half saturation constant for mortality 
    4949   feratz      =  10.E-6  ! Fe/C in zooplankton  
    5050   feratm      =  15.E-6  ! Fe/C in mesozooplankton 
     
    5858!                         !  ln_p5z enabled 
    5959   no3rat3     =  0.151   ! N/C ratio in zooplankton 
    60    po4rat3     =  0.00944 ! P/C ratio in zooplankton 
     60   po4rat3     =  0.00943 ! P/C ratio in zooplankton 
    6161/ 
    6262!----------------------------------------------------------------------- 
     
    7979   xksi2      =  20E-6    ! half saturation constant for Si/C 
    8080   xkdoc      =  417.E-6  ! half-saturation constant of DOC remineralization 
    81    qnfelim    =  10.E-6   ! Optimal quota of phyto 
    82    qdfelim    =  10.E-6   ! Optimal quota of diatoms 
    83    caco3r     =  0.28     ! mean rain ratio 
     81   qnfelim    =  9.E-6    ! Optimal quota of phyto 
     82   qdfelim    =  9.E-6    ! Optimal quota of diatoms 
     83   caco3r     =  0.2      ! mean rain ratio 
    8484   oxymin     =  1.E-6    ! Half-saturation constant for anoxia 
    8585/ 
     
    146146   ln_varpar   =  .true.   ! boolean for PAR variable 
    147147   parlux      =  0.43      ! Fraction of shortwave as PAR 
     148   ln_p4z_dcyc =  .false.  ! Diurnal cycle in PISCES 
    148149/  
    149150!----------------------------------------------------------------------- 
     
    219220   sigma2      =  0.6      ! Fraction of mesozoo excretion as DOM 
    220221   unass2      =  0.3      ! non assimilated fraction of P by mesozoo 
    221    grazflux    =  2.e3     ! flux-feeding rate 
     222   grazflux    =  3.e3     ! flux-feeding rate 
    222223   xsigma2     =  0.5      ! Predation window size 
    223224   xsigma2del  =  1.0      ! Predation window size scaling 
     
    254255   xsigma2     =  0.5      ! Predation window size 
    255256   xsigma2del  =  1.0      ! Predation window size scaling 
    256    grazflux    =  2.e3     ! flux-feeding rate 
     257   grazflux    =  3.e3     ! flux-feeding rate 
    257258   ln_dvm_meso =  .false.  ! Activates DVM for mesozooplankton 
    258259   xfracmig    =  0.25     ! Fraction of mesozooplankton performing DVM 
     
    265266   resrat     =  0.02     ! Linear mortality rate of zooplankton 
    266267   mzrat      =  0.005    ! zooplankton mortality rate 
    267    xprefc     =  0.1      ! Microzoo preference for POM 
     268   xprefc     =  0.15      ! Microzoo preference for POM 
    268269   xprefn     =  1.       ! Microzoo preference for Nanophyto 
    269270   xprefd     =  0.8      ! Microzoo preference for Diatoms 
     
    288289   resrat     =  0.02     ! exsudation rate of zooplankton 
    289290   mzrat      =  0.005    ! zooplankton mortality rate 
    290    xprefc     =  0.1      ! Microzoo preference for POM 
     291   xprefc     =  0.15     ! Microzoo preference for POM 
    291292   xprefn     =  1.0      ! Microzoo preference for Nanophyto 
    292293   xprefp     =  1.0      ! Microzoo preference for picophyto 
     
    314315!----------------------------------------------------------------------- 
    315316   ln_ligvar =  .false.   ! variable ligand concentration 
    316    xlam1     =  0.05      ! scavenging rate of Iron by biogenic particles 
     317   xlam1     =  0.02      ! scavenging rate of Iron by biogenic particles 
    317318   xlamdust  =  150.0     ! Scavenging rate of Iron by dust 
    318319   ligand    =  1E-9     ! Ligands concentration  
     
    327328   xsiremlab =  0.03      ! fast remineralization rate of Si 
    328329   xsilab    =  0.5       ! Fraction of labile biogenic silica 
    329    feratb    =  30.E-6    ! Fe/C quota in bacteria 
    330    xkferb    =  3E-10     ! Half-saturation constant for bacteria Fe/C 
     330   feratb    =  60.E-6    ! Fe/C quota in bacteria 
     331   xkferb    =  4E-10     ! Half-saturation constant for bacteria Fe/C 
    331332!                         ! ln_p5z 
    332333   xremikc   =  0.4       ! remineralization rate of DOC 
     
    371372   hratio      =  1.e+7    ! Fe to 3He ratio assumed for vent iron supply 
    372373!                          ! ln_ligand 
    373    lgw_rath    =  0.5      ! Weak ligand ratio from sed hydro sources 
     374   lgw_rath    =  0.2      ! Weak ligand ratio from sed hydro sources 
    374375/ 
    375376!----------------------------------------------------------------------- 
    376377&nampislig     !   Namelist parameters for ligands, nampislig 
    377378!----------------------------------------------------------------------- 
    378    rlgw        =  200.     ! Lifetime (years) of weak ligands 
     379   rlgw        =  300.     ! Lifetime (years) of weak ligands 
    379380   rlig        =  1.E-4    ! Remin ligand production per unit C 
    380    prlgw       =  5.E-4    ! Photolysis of weak ligand 
     381   prlgw       =  3.E-4    ! Photolysis of weak ligand 
    381382   rlgs        =  1.       ! Lifetime (years) of strong ligands 
    382383   xklig       =  1.E-9    ! 1/2 saturation constant of photolysis 
     
    385386&nampissed     !   Namelist parameters for sediment mobilisation 
    386387!----------------------------------------------------------------------- 
    387    nitrfix     =  1.e-7    ! Nitrogen fixation rate 
     388   nitrfix     =  2.e-7    ! Nitrogen fixation rate 
    388389   diazolight  =  30.      ! Diazotrophs sensitivity to light (W/m2) 
    389390   concfediaz  =  1.e-10   ! Diazotrophs half-saturation Cste for Iron 
  • NEMO/branches/2021/dev_r14383_PISCES_NEWDEV_PISCO/src/TOP/PISCES/P4Z/p4zfechem.F90

    r14957 r14963  
    5656      INTEGER  ::   ji, jj, jk, jic, jn 
    5757      REAL(wp) ::   zlam1a, zlam1b 
    58       REAL(wp) ::   zkeq, zfesatur, zfecoll, fe3sol, zligco 
     58      REAL(wp) ::   zkeq, zfesatur, fe3sol, zligco 
    5959      REAL(wp) ::   zscave, zaggdfea, zaggdfeb, ztrc, zdust, zklight 
    6060      REAL(wp) ::   ztfe, zhplus, zxlam, zaggliga, zaggligb 
     
    6262      REAL(wp) ::   zrfact2 
    6363      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 
    6565      REAL(wp), DIMENSION(jpi,jpj,jpk) ::   zcoll3d, zscav3d, zlcoll3d 
    6666      !!--------------------------------------------------------------------- 
     
    7575      zscav3d  (:,:,jpk) = 0. 
    7676      zlcoll3d (:,:,jpk) = 0. 
    77  
     77      zfecoll  (:,:,jpk) = 0. 
     78      xfecolagg(:,:,jpk) = 0. 
     79      xcoagfe  (:,:,jpk) = 0. 
     80      ! 
    7881      ! Total ligand concentration : Ligands can be chosen to be constant or variable 
    7982      ! Parameterization from Pham and Ito (2018) 
    8083      ! ------------------------------------------------- 
     84      xfecolagg(:,:,:) = ligand * 1E9 + MAX(0., chemo2(:,:,:) - tr(:,:,:,jpoxy,Kbb) ) / 400.E-6 
    8185      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(:,:,:) 
    8587         ztotlig(:,:,:) =  MIN( ztotlig(:,:,:), 10. ) 
    8688      ELSE 
     
    111113      ! 
    112114      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 
    113137      DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    114138         ! Scavenging rate of iron. This scavenging rate depends on the load of particles of sea water.  
     
    121145         &         + fesol(ji,jj,jk,5) / zhplus ) 
    122146         ! 
    123          zfecoll = 0.5 * zFeL1(ji,jj,jk) 
    124147         ! precipitation of Fe3+, creation of nanoparticles 
    125148         zprecip = MAX( 0., ( zFe3(ji,jj,jk) - fe3sol ) ) * kfep * xstep * ( 1.0 - nitrfac(ji,jj,jk) )  
     
    144167             &    + ( 2.49  * tr(ji,jj,jk,jppoc,Kbb) )     & 
    145168             &    + ( 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) 
    147170               ! 
    148171         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 
    151174         ! 
    152175         tr(ji,jj,jk,jpfer,Krhs) = tr(ji,jj,jk,jpfer,Krhs) - zscave - zaggdfea - zaggdfeb & 
     
    179202      biron(:,:,:) = tr(:,:,:,jpfer,Kbb)  
    180203      ! 
    181       IF( ln_ligand ) THEN 
    182          ! 
    183          DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    184              ! Coagulation of ligands due to various processes (Brownian, shear, diff. sedimentation 
    185              ! Coefficients are taken from p4zagg 
    186              ! ------------------------------------------------------------------------------------- 
    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 fraction 
    193              ! as for FeL 
    194              zligco   = 0.5 * tr(ji,jj,jk,jplgw,Kbb) 
    195              zaggliga = zlam1a * xstep * zligco  
    196              zaggligb = zlam1b * xstep * zligco 
    197              ! 
    198              tr(ji,jj,jk,jplgw,Krhs) = tr(ji,jj,jk,jplgw,Krhs)  - zaggliga - zaggligb 
    199              zlcoll3d(ji,jj,jk)  = zaggliga + zaggligb 
    200          END_3D 
    201       ENDIF 
    202  
    203204      !  Output of some diagnostics variables 
    204205      !     --------------------------------- 
     
    213214         IF( iom_use("FECOLL") )  CALL iom_put("FECOLL" , zcoll3d(:,:,:)  * 1e9 * tmask(:,:,:) * zrfact2 ) 
    214215         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 ) 
    216216      ENDIF 
    217217 
  • NEMO/branches/2021/dev_r14383_PISCES_NEWDEV_PISCO/src/TOP/PISCES/P4Z/p4zligand.F90

    r14786 r14963  
    4646      ! 
    4747      INTEGER  ::   ji, jj, jk 
    48       REAL(wp) ::   zlgwp, zlgwpr, zlgwr, zlablgw 
    49       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 
    5051      CHARACTER (len=25) ::   charout 
    5152      !!--------------------------------------------------------------------- 
     
    6364         ! This is based on the idea that as LGW is lower 
    6465         ! there is a larger fraction of refractory OM 
    65          zlgwr = max( rlgs , rlgw * exp( -2 * (tr(ji,jj,jk,jplgw,Kbb)*1e9) ) ) ! years 
    66          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) 
    6769         ! photochem loss of weak ligand 
    6870         zlgwpr = prlgw * xstep * etot(ji,jj,jk) * tr(ji,jj,jk,jplgw,Kbb)**3 * (1. - fr_i(ji,jj))   & 
    6971         &        / ( tr(ji,jj,jk,jplgw,Kbb)**2 + (xklig)**2) 
    70          tr(ji,jj,jk,jplgw,Krhs) = tr(ji,jj,jk,jplgw,Krhs) + zlgwp - zlgwr - zlgwpr 
     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         ! 
    7182         zligrem(ji,jj,jk)   = zlgwr 
    7283         zligpr(ji,jj,jk)    = zlgwpr 
    7384         zligprod(ji,jj,jk)  = zlgwp 
    74          ! 
     85         zlcoll3d(ji,jj,jk)  = zaggliga 
    7586      END_3D 
    7687      ! 
     
    8697         IF( iom_use( "LPRODR" ) ) THEN 
    8798           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(:,:,:) ) 
    88102         ENDIF 
    89103      ENDIF 
  • NEMO/branches/2021/dev_r14383_PISCES_NEWDEV_PISCO/src/TOP/PISCES/P4Z/p4zrem.F90

    r14786 r14963  
    7878      CHARACTER (len=25) :: charout 
    7979      REAL(wp), DIMENSION(jpi,jpj,jpk) :: zdepbac, zolimi, zfacsi, zfacsib, zdepeff, zfebact 
     80      REAL(wp), DIMENSION(jpi,jpj    ) :: ztempbac 
    8081      !!--------------------------------------------------------------------- 
    8182      ! 
     
    9697      DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    9798         zdep = MAX( hmld(ji,jj), heup_01(ji,jj) ) 
    98          zdepbac(ji,jj,jk) = 0.6 * ( MAX(0.0, tr(ji,jj,jk,jpzoo,Kbb) + tr(ji,jj,jk,jpmes,Kbb) ) * 1.0E6 )**0.6 * 1.E-6 
    99          IF( gdept(ji,jj,jk,Kmm) >= zdep ) THEN 
     99         IF ( gdept(ji,jj,jk,Kmm) < zdep ) THEN 
     100            zdepbac(ji,jj,jk) = 0.6 * ( MAX(0.0, tr(ji,jj,jk,jpzoo,Kbb) + tr(ji,jj,jk,jpmes,Kbb) ) * 1.0E6 )**0.6 * 1.E-6 
     101            ztempbac(ji,jj)   = zdepbac(ji,jj,jk) 
     102!         IF( gdept(ji,jj,jk,Kmm) >= zdep ) THEN 
     103         ELSE 
    100104            zdepmin = MIN( 1., zdep / gdept(ji,jj,jk,Kmm) ) 
     105            zdepbac (ji,jj,jk) = zdepmin**0.683 * ztempbac(ji,jj) 
    101106            zdepeff(ji,jj,jk) = zdepeff(ji,jj,jk) * zdepmin**0.3 
    102107         ENDIF 
     
    182187         ! is treated here. The GGE of bacteria supposed to be equal to  
    183188         ! 0.33. This is hard-coded.  
    184          tr(ji,jj,jk,jpfer,Krhs) = tr(ji,jj,jk,jpfer,Krhs) - zbactfer*0.18 
    185          tr(ji,jj,jk,jpsfe,Krhs) = tr(ji,jj,jk,jpsfe,Krhs) + zbactfer*0.15 
    186          tr(ji,jj,jk,jpbfe,Krhs) = tr(ji,jj,jk,jpbfe,Krhs) + zbactfer*0.03 
    187          zfebact(ji,jj,jk)   = zbactfer * 0.18 
     189         tr(ji,jj,jk,jpfer,Krhs) = tr(ji,jj,jk,jpfer,Krhs) - zbactfer*0.12 
     190         tr(ji,jj,jk,jpsfe,Krhs) = tr(ji,jj,jk,jpsfe,Krhs) + zbactfer*0.10 
     191         tr(ji,jj,jk,jpbfe,Krhs) = tr(ji,jj,jk,jpbfe,Krhs) + zbactfer*0.02 
     192         zfebact(ji,jj,jk)   = zbactfer * 0.12 
    188193         blim(ji,jj,jk)      = xlimbacl(ji,jj,jk)  * zdepbac(ji,jj,jk) / 1.e-6 
    189194      END_3D 
  • NEMO/branches/2021/dev_r14383_PISCES_NEWDEV_PISCO/src/TOP/PISCES/P4Z/p4zsed.F90

    r14786 r14963  
    1616   USE p4zlim          !  Co-limitations of differents nutrients 
    1717   USE p4zint          !  interpolation and computation of various fields 
     18   USE p4zligand       !  Fe ligands sources and sinks 
    1819   USE sed             !  Sediment module 
    1920   USE iom             !  I/O manager 
     
    208209            zwstpoc = tr(ji,jj,ikt,jpgoc,Kbb) * zws4 + tr(ji,jj,ikt,jppoc,Kbb) * zws3 
    209210            ! Denitrification in the sediments             
    210             zpdenit  = MIN( 0.5 * ( tr(ji,jj,ikt,jpno3,Kbb) - rtrn ) / rdenit, zdenit2d(ji,jj) * zwstpoc * zrivno3 ) 
     211            zpdenit  = MIN( 0.5 * ( tr(ji,jj,ikt,jpno3,Kbb) - rtrn ) / rdenit, zdenit2d(ji,jj) * zwstpoc * zrivno3 * 0.85 ) 
    211212            ! Fraction that is not denitrified 
    212             z1pdenit = zwstpoc * zrivno3 - zpdenit 
     213            z1pdenit = zwstpoc * zrivno3 * 0.85 - zpdenit 
    213214            ! Oxic remineralization of organic matter in the sediments 
    214215            zolimit = MIN( ( tr(ji,jj,ikt,jpoxy,Kbb) - rtrn ) / o2ut, z1pdenit * ( 1.- nitrfac(ji,jj,ikt) ) ) 
    215216            ! The fraction that cannot be denitrified nor oxidized by O2 
    216217            ! is released back to the water column as DOC            
    217             tr(ji,jj,ikt,jpdoc,Krhs) = tr(ji,jj,ikt,jpdoc,Krhs) + z1pdenit - zolimit 
     218            ! 15% of the POC that is processed in sediment is released as DOC 
     219            tr(ji,jj,ikt,jpdoc,Krhs) = tr(ji,jj,ikt,jpdoc,Krhs) + z1pdenit - zolimit + 0.15 * zwstpoc * zrivno3 
    218220            ! Update of the tracers concentrations             
    219221            tr(ji,jj,ikt,jppo4,Krhs) = tr(ji,jj,ikt,jppo4,Krhs) + zpdenit + zolimit 
     
    225227            sdenit(ji,jj) = rdenit * zpdenit * e3t(ji,jj,ikt,Kmm) 
    226228            zsedc(ji,jj)   = (1. - zrivno3) * zwstpoc * e3t(ji,jj,ikt,Kmm) 
     229            IF ( ln_ligand ) tr(ji,jj,ikt,jplgw,Krhs) = tr(ji,jj,ikt,jplgw,Krhs) + 0.15 * zwstpoc * zrivno3 * rlig 
    227230            ! PISCES-QUOTA (p5z)             
    228231            IF( ln_p5z ) THEN 
     
    294297            tr(ji,jj,jk,jppo4,Krhs) = tr(ji,jj,jk,jppo4,Krhs) - zfact * 2.0 / 3.0 
    295298            tr(ji,jj,jk,jpdoc,Krhs) = tr(ji,jj,jk,jpdoc,Krhs) + zfact * 1.0 / 3.0 
     299            IF ( ln_ligand ) tr(ji,jj,jk,jplgw,Krhs) = tr(ji,jj,jk,jplgw,Krhs) + zfact * ldocp 
    296300            tr(ji,jj,jk,jppoc,Krhs) = tr(ji,jj,jk,jppoc,Krhs) + zfact * 1.0 / 3.0 * 2.0 / 3.0 
    297301            tr(ji,jj,jk,jpgoc,Krhs) = tr(ji,jj,jk,jpgoc,Krhs) + zfact * 1.0 / 3.0 * 1.0 / 3.0 
     
    326330            tr(ji,jj,jk,jpdon,Krhs) = tr(ji,jj,jk,jpdon,Krhs) + zfact * 1.0 / 3.0 
    327331            tr(ji,jj,jk,jpdoc,Krhs) = tr(ji,jj,jk,jpdoc,Krhs) + zfact * 1.0 / 3.0 
     332            IF ( ln_ligand ) tr(ji,jj,jk,jplgw,Krhs) = tr(ji,jj,jk,jplgw,Krhs) + zfact * ldocp 
    328333            tr(ji,jj,jk,jpdop,Krhs) = tr(ji,jj,jk,jpdop,Krhs) + 16.0 / 46.0 * zfact / 3.0  & 
    329334            &                     - 16.0 / 46.0 * zfact * ztrdop / (ztrpo4 + ztrdop + rtrn) 
  • NEMO/branches/2021/dev_r14383_PISCES_NEWDEV_PISCO/src/TOP/PISCES/sms_pisces.F90

    r14786 r14963  
    112112   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   sizepa     !: size of picophyto, after 
    113113   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   sizeda     !: size of diatomss, after 
     114   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   xfecolagg  !: Refractory diagnostic concentration of ligands 
     115   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   xcoagfe    !: Coagulation rate of colloidal Fe/ligands 
    114116 
    115117   !!* Variable for chemistry of the CO2 cycle 
     
    158160 
    159161         ! Biological SMS 
    160          ALLOCATE( xfracal (jpi,jpj,jpk), orem(jpi,jpj,jpk)    ,    & 
    161             &      nitrfac(jpi,jpj,jpk) , nitrfac2(jpi,jpj,jpk),    & 
    162             &      prodcal(jpi,jpj,jpk) , xdiss   (jpi,jpj,jpk),    & 
    163             &      prodpoc(jpi,jpj,jpk) , conspoc(jpi,jpj,jpk) ,    & 
    164             &      prodgoc(jpi,jpj,jpk) , consgoc(jpi,jpj,jpk) ,    & 
    165             &      blim   (jpi,jpj,jpk) , consfe3(jpi,jpj,jpk) ,  STAT=ierr(4) ) 
     162         ALLOCATE( xfracal  (jpi,jpj,jpk), orem    (jpi,jpj,jpk),  & 
     163            &      nitrfac  (jpi,jpj,jpk), nitrfac2(jpi,jpj,jpk),  & 
     164            &      prodcal  (jpi,jpj,jpk), xdiss   (jpi,jpj,jpk),  & 
     165            &      prodpoc  (jpi,jpj,jpk), conspoc (jpi,jpj,jpk),  & 
     166            &      prodgoc  (jpi,jpj,jpk), consgoc (jpi,jpj,jpk),  & 
     167            &      blim     (jpi,jpj,jpk), consfe3 (jpi,jpj,jpk),  & 
     168            &      xfecolagg(jpi,jpj,jpk), xcoagfe (jpi,jpj,jpk), STAT=ierr(4) ) 
    166169 
    167170         !* Carbonate chemistry 
    168          ALLOCATE( ak13  (jpi,jpj,jpk)  ,                           & 
    169             &      ak23(jpi,jpj,jpk)    , aksp  (jpi,jpj,jpk) ,     & 
    170             &      hi  (jpi,jpj,jpk)    , excess(jpi,jpj,jpk) ,     & 
     171         ALLOCATE( ak13  (jpi,jpj,jpk)  ,                          & 
     172            &      ak23(jpi,jpj,jpk)    , aksp  (jpi,jpj,jpk) ,    & 
     173            &      hi  (jpi,jpj,jpk)    , excess(jpi,jpj,jpk) ,    & 
    171174            &      aphscale(jpi,jpj,jpk),                         STAT=ierr(5) ) 
    172175         ! 
Note: See TracChangeset for help on using the changeset viewer.