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 4147 for branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z – NEMO

Ignore:
Timestamp:
2013-11-04T12:51:55+01:00 (10 years ago)
Author:
cetlod
Message:

merge in dev_LOCEAN_2013, the 1st development branch dev_r3853_CNRS9_Confsetting, from its starting point ( r3853 ) on the trunk: see ticket #1169

Location:
branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zbio.F90

    r3446 r4147  
    3131   PUBLIC   p2z_bio_init    ! called in ??? 
    3232 
    33    REAL(wp) ::   tmumax     = 1.21e-5    ! maximal phytoplankton growth rate            [s-1] 
    34    REAL(wp) ::   rgamma     =  0.05      ! phytoplankton exudation fraction             [%] 
    35    REAL(wp) ::   fphylab    =  0.75      ! NH4 fraction of phytoplankton exsudation 
    36    REAL(wp) ::   tmminp     =  5.8e-7    ! minimal phytoplancton mortality rate         [0.05/86400 s-1=20 days] 
    37    REAL(wp) ::   aki        =  33.       ! light photosynthesis half saturation constant[W/m2] 
     33   REAL(wp) ::   tmumax     ! maximal phytoplankton growth rate            [s-1] 
     34   REAL(wp) ::   rgamma     ! phytoplankton exudation fraction             [%] 
     35   REAL(wp) ::   fphylab    ! NH4 fraction of phytoplankton exsudation 
     36   REAL(wp) ::   tmminp     ! minimal phytoplancton mortality rate         [0.05/86400 s-1=20 days] 
     37   REAL(wp) ::   aki        ! light photosynthesis half saturation constant[W/m2] 
    3838   ! 
    39    REAL(wp) ::   akno3      =  0.7       ! nitrate limitation half-saturation value     [mmol/m3] 
    40    REAL(wp) ::   aknh4      =  0.001     ! ammonium limitation half-saturation value    [mmol/m3] 
    41    REAL(wp) ::   taunn      =  5.80e-7   ! nitrification rate                           [s-1] 
    42    REAL(wp) ::   psinut     =  3.        ! inhibition of nitrate uptake by ammonium 
     39   REAL(wp) ::   akno3      ! nitrate limitation half-saturation value     [mmol/m3] 
     40   REAL(wp) ::   aknh4      ! ammonium limitation half-saturation value    [mmol/m3] 
     41   REAL(wp) ::   taunn      ! nitrification rate                           [s-1] 
     42   REAL(wp) ::   psinut     ! inhibition of nitrate uptake by ammonium 
    4343   ! 
    44    REAL(wp) ::   taudn      = 5.80e-7    ! detritus breakdown rate                        [0.1/86400 s-1=10 days] 
    45    REAL(wp) ::   fdetlab    = 0.         ! NH4 fraction of detritus dissolution 
     44   REAL(wp) ::   taudn      ! detritus breakdown rate                        [0.1/86400 s-1=10 days] 
     45   REAL(wp) ::   fdetlab    ! NH4 fraction of detritus dissolution 
    4646   ! 
    47    REAL(wp) ::   taudomn    = 6.43e-8    ! DOM breakdown rate                             [s-1] 
    48    !                                     ! slow remineralization rate of semi-labile dom to nh4 (1 month) 
     47   REAL(wp) ::   taudomn    ! DOM breakdown rate                             [s-1] 
     48   !                        ! slow remineralization rate of semi-labile dom to nh4 (1 month) 
    4949   ! 
    50    REAL(wp) ::   rppz       = 0.         ! ivlev coeff for zoo mortality 
    51    REAL(wp) ::   taus       = 9.26E-6    ! specific zooplankton maximal grazing rate              [s-1] 
     50   REAL(wp) ::   rppz       ! ivlev coeff for zoo mortality 
     51   REAL(wp) ::   taus       ! specific zooplankton maximal grazing rate              [s-1] 
    5252   !                                     ! 0.75/86400 s-1=8.680555E-6    1/86400 = 1.15e-5 
    53    REAL(wp) ::   aks        = 1.         ! half-saturation constant for total zooplankton grazing [mmolN.m-3] 
    54    REAL(wp) ::   rpnaz      = 0.3        ! non-assimilated phytoplankton by zooplancton           [%] 
    55    REAL(wp) ::   rdnaz      = 0.3        ! non-assimilated detritus by zooplankton                [%] 
    56    REAL(wp) ::   tauzn      = 8.1e-7     ! zooplancton specific excretion rate                    [0.1/86400 s-1=10 days] 
    57    REAL(wp) ::   tmminz     = 2.31e-6    ! minimal zooplankton mortality rate                     [(mmolN/m3)-1 d-1] 
    58    REAL(wp) ::   fzoolab    = 0.5        ! NH4 fraction of zooplankton excretion 
    59    REAL(wp) ::   fdbod      = 0.5        ! zooplankton mortality fraction that goes to detritus 
     53   REAL(wp) ::   aks        ! half-saturation constant for total zooplankton grazing [mmolN.m-3] 
     54   REAL(wp) ::   rpnaz      ! non-assimilated phytoplankton by zooplancton           [%] 
     55   REAL(wp) ::   rdnaz      ! non-assimilated detritus by zooplankton                [%] 
     56   REAL(wp) ::   tauzn      ! zooplancton specific excretion rate                    [0.1/86400 s-1=10 days] 
     57   REAL(wp) ::   tmminz     ! minimal zooplankton mortality rate                     [(mmolN/m3)-1 d-1] 
     58   REAL(wp) ::   fzoolab    ! NH4 fraction of zooplankton excretion 
     59   REAL(wp) ::   fdbod      ! zooplankton mortality fraction that goes to detritus 
    6060 
    6161   !!* Substitution 
     
    480480      !!                  ***  ROUTINE p2z_bio_init  *** 
    481481      !! 
    482       !! ** Purpose :  bilogical parameters  
     482      !! ** Purpose :  biological parameters  
    483483      !! 
    484484      !! ** Method  :   Read namelist and check the parameters 
     
    490490      NAMELIST/namlobdet/  taudn, fdetlab 
    491491      NAMELIST/namlobdom/ taudomn 
     492      INTEGER :: ios                 ! Local integer output status for namelist read 
    492493      !!---------------------------------------------------------------------- 
    493494 
    494       REWIND( numnatp ) 
    495       READ  ( numnatp, namlobphy ) 
     495      REWIND( numnatp_ref )              ! Namelist namlobphy in reference namelist : Lobster biological parameters 
     496      READ  ( numnatp_ref, namlobphy, IOSTAT = ios, ERR = 901) 
     497901   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobphy in reference namelist', lwp ) 
     498 
     499      REWIND( numnatp_cfg )              ! Namelist namlobphy in configuration namelist : Lobster biological parameters 
     500      READ  ( numnatp_cfg, namlobphy, IOSTAT = ios, ERR = 902 ) 
     501902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobphy in configuration namelist', lwp ) 
     502      WRITE ( numonp, namlobphy ) 
    496503 
    497504      IF(lwp) THEN 
     
    505512      ENDIF 
    506513 
    507       REWIND( numnatp ) 
    508       READ  ( numnatp, namlobnut ) 
     514      REWIND( numnatp_ref )              ! Namelist namlobnut in reference namelist : Lobster nutriments parameters 
     515      READ  ( numnatp_ref, namlobnut, IOSTAT = ios, ERR = 903) 
     516903   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobnut in reference namelist', lwp ) 
     517 
     518      REWIND( numnatp_cfg )              ! Namelist namlobnut in configuration namelist : Lobster nutriments parameters 
     519      READ  ( numnatp_cfg, namlobnut, IOSTAT = ios, ERR = 904 ) 
     520904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobnut in configuration namelist', lwp ) 
     521      WRITE ( numonp, namlobnut ) 
     522 
    509523      IF(lwp) THEN 
    510524          WRITE(numout,*) ' Namelist namlobnut' 
     
    516530      ENDIF 
    517531 
    518       REWIND( numnatp ) 
    519       READ  ( numnatp, namlobzoo ) 
     532      REWIND( numnatp_ref )              ! Namelist namlobzoo in reference namelist : Lobster zooplankton parameters 
     533      READ  ( numnatp_ref, namlobzoo, IOSTAT = ios, ERR = 905) 
     534905   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobzoo in reference namelist', lwp ) 
     535 
     536      REWIND( numnatp_cfg )              ! Namelist namlobzoo in configuration namelist : Lobster zooplankton parameters 
     537      READ  ( numnatp_cfg, namlobzoo, IOSTAT = ios, ERR = 906 ) 
     538906   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobzoo in configuration namelist', lwp ) 
     539      WRITE ( numonp, namlobzoo ) 
    520540 
    521541      IF(lwp) THEN 
     
    533553      ENDIF 
    534554 
    535       REWIND( numnatp ) 
    536       READ  ( numnatp, namlobdet ) 
     555      REWIND( numnatp_ref )              ! Namelist namlobdet in reference namelist : Lobster detritus parameters 
     556      READ  ( numnatp_ref, namlobdet, IOSTAT = ios, ERR = 907) 
     557907   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobdet in reference namelist', lwp ) 
     558 
     559      REWIND( numnatp_cfg )              ! Namelist namlobdet in configuration namelist : Lobster detritus parameters 
     560      READ  ( numnatp_cfg, namlobdet, IOSTAT = ios, ERR = 908 ) 
     561908   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobdet in configuration namelist', lwp ) 
     562      WRITE ( numonp, namlobdet ) 
    537563 
    538564      IF(lwp) THEN 
     
    543569      ENDIF 
    544570 
    545       REWIND( numnatp ) 
    546       READ  ( numnatp, namlobdom ) 
     571      REWIND( numnatp_ref )              ! Namelist namlobdom in reference namelist : Lobster DOM breakdown rate 
     572      READ  ( numnatp_ref, namlobdom, IOSTAT = ios, ERR = 909) 
     573909   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobdom in reference namelist', lwp ) 
     574 
     575      REWIND( numnatp_cfg )              ! Namelist namlobdom in configuration namelist : Lobster DOM breakdown rate 
     576      READ  ( numnatp_cfg, namlobdom, IOSTAT = ios, ERR = 910 ) 
     577910   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobdom in configuration namelist', lwp ) 
     578      WRITE ( numonp, namlobdom ) 
    547579 
    548580      IF(lwp) THEN 
  • branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zopt.F90

    r3443 r4147  
    2828   PUBLIC   p2z_opt_init   ! 
    2929 
    30    REAL(wp), PUBLIC ::  xkr0   = 0.0232_wp   !: water coefficient absorption in red       
    31    REAL(wp), PUBLIC ::  xkg0   = 0.225_wp    !: water coefficient absorption in green     
    32    REAL(wp), PUBLIC ::  xkrp   = 0.074_wp    !: pigment coefficient absorption in red     
    33    REAL(wp), PUBLIC ::  xkgp   = 0.037_wp    !: pigment coefficient absorption in green   
    34    REAL(wp), PUBLIC ::  xlr    = 0.674_wp    !: exposant for pigment absorption in red   
    35    REAL(wp), PUBLIC ::  xlg    = 0.629_wp    !: exposant for pigment absorption in green  
    36    REAL(wp), PUBLIC ::  rpig   = 0.7_wp      !: chla/chla+phea ratio     
     30   REAL(wp), PUBLIC ::  xkr0      !: water coefficient absorption in red       
     31   REAL(wp), PUBLIC ::  xkg0      !: water coefficient absorption in green     
     32   REAL(wp), PUBLIC ::  xkrp      !: pigment coefficient absorption in red     
     33   REAL(wp), PUBLIC ::  xkgp      !: pigment coefficient absorption in green   
     34   REAL(wp), PUBLIC ::  xlr       !: exposant for pigment absorption in red   
     35   REAL(wp), PUBLIC ::  xlg       !: exposant for pigment absorption in green  
     36   REAL(wp), PUBLIC ::  rpig      !: chla/chla+phea ratio     
    3737   !                  
    38    REAL(wp), PUBLIC ::  rcchl  =  60_wp      ! Carbone/Chlorophyl ratio [mgC.mgChla-1] 
    39    REAL(wp), PUBLIC ::  redf   = 6.56_wp     ! redfield ratio (C:N) for phyto 
    40    REAL(wp), PUBLIC ::  reddom = 6.56_wp     ! redfield ratio (C:N) for DOM 
     38   REAL(wp), PUBLIC ::  rcchl     ! Carbone/Chlorophyl ratio [mgC.mgChla-1] 
     39   REAL(wp), PUBLIC ::  redf      ! redfield ratio (C:N) for phyto 
     40   REAL(wp), PUBLIC ::  reddom    ! redfield ratio (C:N) for DOM 
    4141 
    4242   !!* Substitution 
     
    164164      NAMELIST/namlobopt/ xkg0, xkr0, xkgp, xkrp, xlg, xlr, rpig 
    165165      NAMELIST/namlobrat/ rcchl, redf, reddom 
     166      INTEGER :: ios                 ! Local integer output status for namelist read 
    166167      !!---------------------------------------------------------------------- 
    167168 
    168       REWIND( numnatp ) 
    169       READ  ( numnatp, namlobopt ) 
     169      REWIND( numnatp_ref )              ! Namelist namlobopt in reference namelist : Lobster options 
     170      READ  ( numnatp_ref, namlobopt, IOSTAT = ios, ERR = 901) 
     171901   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobopt in reference namelist', lwp ) 
     172 
     173      REWIND( numnatp_cfg )              ! Namelist namlobopt in configuration namelist : Lobster options 
     174      READ  ( numnatp_cfg, namlobopt, IOSTAT = ios, ERR = 902 ) 
     175902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobopt in configuration namelist', lwp ) 
     176      WRITE ( numonp, namlobopt ) 
    170177 
    171178      IF(lwp) THEN 
     
    182189      ENDIF 
    183190      ! 
    184       REWIND( numnatp ) 
    185       READ  ( numnatp, namlobrat ) 
     191      REWIND( numnatp_ref )              ! Namelist namlobrat in reference namelist : Lobster ratios 
     192      READ  ( numnatp_ref, namlobrat, IOSTAT = ios, ERR = 903) 
     193903   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobrat in reference namelist', lwp ) 
     194 
     195      REWIND( numnatp_cfg )              ! Namelist namlobrat in configuration namelist : Lobster ratios 
     196      READ  ( numnatp_cfg, namlobrat, IOSTAT = ios, ERR = 904 ) 
     197904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobrat in configuration namelist', lwp ) 
     198      WRITE ( numonp, namlobrat ) 
    186199 
    187200      IF(lwp) THEN 
  • branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zsed.F90

    r3443 r4147  
    2929   PUBLIC   p2z_sed_init    ! called in ??? 
    3030 
    31    REAL(wp), PUBLIC ::   sedlam     = 3.86e-7  !: time coefficient of POC remineralization in sediments 
    32    REAL(wp), PUBLIC ::   sedlostpoc = 0.        ! mass of POC lost in sediments  
    33    REAL(wp), PUBLIC ::   vsed       = 3.47e-5  ! detritus sedimentation speed [m/s]  
    34    REAL(wp), PUBLIC ::   xhr        = -0.858    ! coeff for martin''s remineralisation profile 
     31   REAL(wp), PUBLIC ::   sedlam      !: time coefficient of POC remineralization in sediments 
     32   REAL(wp), PUBLIC ::   sedlostpoc ! mass of POC lost in sediments  
     33   REAL(wp), PUBLIC ::   vsed        ! detritus sedimentation speed [m/s]  
     34   REAL(wp), PUBLIC ::   xhr        ! coeff for martin''s remineralisation profile 
    3535 
    3636   !!* Substitution 
     
    151151      !!---------------------------------------------------------------------- 
    152152      NAMELIST/namlobsed/ sedlam, sedlostpoc, vsed, xhr 
     153      INTEGER :: ios                 ! Local integer output status for namelist read 
    153154 
    154       REWIND( numnatp ) 
    155       READ  ( numnatp, namlobsed ) 
     155      REWIND( numnatp_ref )              ! Namelist namlobsed in reference namelist : Lobster sediments 
     156      READ  ( numnatp_ref, namlobsed, IOSTAT = ios, ERR = 901) 
     157901   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlosed in reference namelist', lwp ) 
     158 
     159      REWIND( numnatp_cfg )              ! Namelist namlobsed in configuration namelist : Lobster sediments 
     160      READ  ( numnatp_cfg, namlobsed, IOSTAT = ios, ERR = 902 ) 
     161902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namlobsed in configuration namelist', lwp ) 
     162      WRITE ( numonp, namlobsed ) 
    156163 
    157164      IF(lwp) THEN 
  • branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zsms.F90

    r3443 r4147  
    1515   USE oce_trc          ! 
    1616   USE trc 
     17   USE sms_pisces 
    1718   USE p2zbio 
    1819   USE p2zopt 
     
    6667      IF( lk_trdmld_trc )  CALL trd_mld_bio( kt )   ! trends: Mixed-layer 
    6768      ! 
     69      IF ( kt == nittrc000 ) CALL FLUSH    ( numonp )     ! flush output namelist PISCES 
    6870      IF( nn_timing == 1 )  CALL timing_stop('p2z_sms') 
    6971      ! 
Note: See TracChangeset for help on using the changeset viewer.