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 7646 for trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zlim.F90 – NEMO

Ignore:
Timestamp:
2017-02-06T10:25:03+01:00 (7 years ago)
Author:
timgraham
Message:

Merge of dev_merge_2016 into trunk. UPDATE TO ARCHFILES NEEDED for XIOS2.
LIM_SRC_s/limrhg.F90 to follow in next commit due to change of kind (I'm unable to do it in this commit).
Merged using the following steps:

1) svn merge --reintegrate svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk .
2) Resolve minor conflicts in sette.sh and namelist_cfg for ORCA2LIM3 (due to a change in trunk after branch was created)
3) svn commit
4) svn switch svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk
5) svn merge svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/branches/2016/dev_merge_2016 .
6) At this stage I checked out a clean copy of the branch to compare against what is about to be committed to the trunk.
6) svn commit #Commit code to the trunk

In this commit I have also reverted a change to Fcheck_archfile.sh which was causing problems on the Paris machine.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zlim.F90

    r6945 r7646  
    88   !!             3.4  !  2011-04  (O. Aumont, C. Ethe) Limitation for iron modelled in quota  
    99   !!---------------------------------------------------------------------- 
    10 #if defined key_pisces 
    11    !!---------------------------------------------------------------------- 
    12    !!   'key_pisces'                                       PISCES bio-model 
    13    !!---------------------------------------------------------------------- 
    1410   !!   p4z_lim        :   Compute the nutrients limitation terms  
    1511   !!   p4z_lim_init   :   Read the namelist  
     
    1814   USE trc             ! Tracers defined 
    1915   USE sms_pisces      ! PISCES variables 
    20    USE p4zopt          ! Optical 
    2116   USE iom             !  I/O manager 
    2217 
     
    2621   PUBLIC p4z_lim     
    2722   PUBLIC p4z_lim_init     
     23   PUBLIC p4z_lim_alloc 
    2824 
    2925   !! * Shared module variables 
     
    4844   REAL(wp), PUBLIC ::  qdfelim     !:  optimal Fe quota for diatoms 
    4945   REAL(wp), PUBLIC ::  caco3r      !:  mean rainratio  
     46 
     47   !!* Phytoplankton limitation terms 
     48   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   xnanono3   !: ??? 
     49   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   xdiatno3   !: ??? 
     50   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   xnanonh4   !: ??? 
     51   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   xdiatnh4   !: ??? 
     52   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   xnanopo4   !: ??? 
     53   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   xdiatpo4   !: ??? 
     54   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   xlimphy    !: ??? 
     55   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   xlimdia    !: ??? 
     56   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   xlimnfe    !: ??? 
     57   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   xlimdfe    !: ??? 
     58   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   xlimsi     !: ??? 
     59   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   xlimbac    !: ?? 
     60   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   xlimbacl   !: ?? 
     61   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   concdfe    !: ??? 
     62   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:)  ::   concnfe    !: ??? 
    5063 
    5164   ! Coefficient for iron limitation 
     
    224237      !!---------------------------------------------------------------------- 
    225238 
    226       NAMELIST/nampislim/ concnno3, concdno3, concnnh4, concdnh4, concnfer, concdfer, concbfe,   & 
     239      NAMELIST/namp4zlim/ concnno3, concdno3, concnnh4, concdnh4, concnfer, concdfer, concbfe,   & 
    227240         &                concbno3, concbnh4, xsizedia, xsizephy, xsizern, xsizerd,          &  
    228241         &                xksi1, xksi2, xkdoc, qnfelim, qdfelim, caco3r, oxymin 
     
    230243 
    231244      REWIND( numnatp_ref )              ! Namelist nampislim in reference namelist : Pisces nutrient limitation parameters 
    232       READ  ( numnatp_ref, nampislim, IOSTAT = ios, ERR = 901) 
    233 901   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampislim in reference namelist', lwp ) 
     245      READ  ( numnatp_ref, namp4zlim, IOSTAT = ios, ERR = 901) 
     246901   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namp4zlim in reference namelist', lwp ) 
    234247 
    235248      REWIND( numnatp_cfg )              ! Namelist nampislim in configuration namelist : Pisces nutrient limitation parameters  
    236       READ  ( numnatp_cfg, nampislim, IOSTAT = ios, ERR = 902 ) 
    237 902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nampislim in configuration namelist', lwp ) 
    238       IF(lwm) WRITE ( numonp, nampislim ) 
     249      READ  ( numnatp_cfg, namp4zlim, IOSTAT = ios, ERR = 902 ) 
     250902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namp4zlim in configuration namelist', lwp ) 
     251      IF(lwm) WRITE ( numonp, namp4zlim ) 
    239252 
    240253      IF(lwp) THEN                         ! control print 
    241254         WRITE(numout,*) ' ' 
    242          WRITE(numout,*) ' Namelist parameters for nutrient limitations, nampislim' 
     255         WRITE(numout,*) ' Namelist parameters for nutrient limitations, namp4zlim' 
    243256         WRITE(numout,*) ' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~' 
    244257         WRITE(numout,*) '    mean rainratio                           caco3r    = ', caco3r 
     
    268281   END SUBROUTINE p4z_lim_init 
    269282 
    270 #else 
    271    !!====================================================================== 
    272    !!  Dummy module :                                   No PISCES bio-model 
    273    !!====================================================================== 
    274 CONTAINS 
    275    SUBROUTINE p4z_lim                   ! Empty routine 
    276    END SUBROUTINE p4z_lim 
    277 #endif  
     283   INTEGER FUNCTION p4z_lim_alloc() 
     284      !!---------------------------------------------------------------------- 
     285      !!                     ***  ROUTINE p5z_lim_alloc  *** 
     286      !!---------------------------------------------------------------------- 
     287      USE lib_mpp , ONLY: ctl_warn 
     288      !!---------------------------------------------------------------------- 
     289 
     290      !*  Biological arrays for phytoplankton growth 
     291      ALLOCATE( xnanono3(jpi,jpj,jpk), xdiatno3(jpi,jpj,jpk),       & 
     292         &      xnanonh4(jpi,jpj,jpk), xdiatnh4(jpi,jpj,jpk),       & 
     293         &      xnanopo4(jpi,jpj,jpk), xdiatpo4(jpi,jpj,jpk),       & 
     294         &      xlimphy (jpi,jpj,jpk), xlimdia (jpi,jpj,jpk),       & 
     295         &      xlimnfe (jpi,jpj,jpk), xlimdfe (jpi,jpj,jpk),       & 
     296         &      xlimbac (jpi,jpj,jpk), xlimbacl(jpi,jpj,jpk),       & 
     297         &      concnfe (jpi,jpj,jpk), concdfe (jpi,jpj,jpk),       & 
     298         &      xlimsi  (jpi,jpj,jpk), STAT=p4z_lim_alloc ) 
     299      ! 
     300      IF( p4z_lim_alloc /= 0 ) CALL ctl_warn('p4z_lim_alloc : failed to allocate arrays.') 
     301      ! 
     302   END FUNCTION p4z_lim_alloc 
    278303 
    279304   !!====================================================================== 
Note: See TracChangeset for help on using the changeset viewer.