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 10222 for NEMO/trunk/src/TOP/PISCES/P4Z – NEMO

Ignore:
Timestamp:
2018-10-25T11:42:23+02:00 (5 years ago)
Author:
aumont
Message:

update of the sediment module + enhancement, bug correction in PISCES generating O2 negative values

Location:
NEMO/trunk/src/TOP/PISCES/P4Z
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk/src/TOP/PISCES/P4Z/p4zche.F90

    r10068 r10222  
    3737   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   tempis   ! In situ temperature 
    3838 
    39    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   akb3       !: ??? 
    40    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   akw3       !: ??? 
    41    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   akf3       !: ??? 
    42    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   aks3       !: ??? 
    43    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   ak1p3      !: ??? 
    44    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   ak2p3      !: ??? 
    45    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   ak3p3      !: ??? 
    46    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   aksi3      !: ??? 
    47    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   borat      !: ??? 
    48    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   fluorid    !: ??? 
    49    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   sulfat     !: ??? 
     39   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   akb3       !: ??? 
     40   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   akw3       !: ??? 
     41   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   akf3       !: ??? 
     42   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   aks3       !: ??? 
     43   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   ak1p3      !: ??? 
     44   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   ak2p3      !: ??? 
     45   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   ak3p3      !: ??? 
     46   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   aksi3      !: ??? 
     47   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   borat      !: ??? 
     48   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   fluorid    !: ??? 
     49   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   sulfat     !: ??? 
    5050 
    5151   !!* Variable for chemistry of the CO2 cycle 
     
    233233        END DO 
    234234 
    235  
    236  
    237235      ! CHEMICAL CONSTANTS - DEEP OCEAN 
    238236      ! ------------------------------- 
     
    449447      ! 
    450448   END SUBROUTINE p4z_che 
    451  
    452449 
    453450   SUBROUTINE ahini_for_at(p_hini) 
  • NEMO/trunk/src/TOP/PISCES/P4Z/p4zmeso.F90

    r10069 r10222  
    108108               zdenom    = zfoodlim / ( xkgraz2 + zfoodlim ) 
    109109               zdenom2   = zdenom / ( zfood + rtrn ) 
    110                zgraze2   = grazrat2 * xstep * tgfunc2(ji,jj,jk) * trb(ji,jj,jk,jpmes)  
     110               zgraze2   = grazrat2 * xstep * tgfunc2(ji,jj,jk) * trb(ji,jj,jk,jpmes) * (1. - nitrfac(ji,jj,jk))  
    111111 
    112112               zgrazd    = zgraze2  * xprefc   * zcompadi  * zdenom2  
  • NEMO/trunk/src/TOP/PISCES/P4Z/p4zrem.F90

    r10069 r10222  
    116116                  zammonic = zremik * nitrfac(ji,jj,jk) * trb(ji,jj,jk,jpdoc) 
    117117                  denitr(ji,jj,jk)  = zammonic * ( 1. - nitrfac2(ji,jj,jk) ) 
    118                   zoxyrem           = zammonic *        nitrfac2(ji,jj,jk) 
     118                  denitr(ji,jj,jk)  = MIN( ( trb(ji,jj,jk,jpno3) - rtrn ) / rdenit, denitr(ji,jj,jk) ) 
     119                  zoxyrem           = zammonic - denitr(ji,jj,jk) 
    119120                  ! 
    120121                  zolimi (ji,jj,jk) = MAX( 0.e0, zolimi (ji,jj,jk) ) 
     
    189190               &         / ( 1.+ emoy(ji,jj,jk) ) * ( 1. + fr_i(ji,jj) * emoy(ji,jj,jk) )  
    190191               zdenitnh4 = nitrif * xstep * trb(ji,jj,jk,jpnh4) * nitrfac(ji,jj,jk) 
     192               zdenitnh4 = MIN(  ( trb(ji,jj,jk,jpno3) - rtrn ) / rdenita, zdenitnh4 )  
    191193               ! Update of the tracers trends 
    192194               ! ---------------------------- 
  • NEMO/trunk/src/TOP/PISCES/P4Z/p4zsms.F90

    r10213 r10222  
    101101      ENDIF 
    102102      ! 
     103      IF( ll_sbc ) CALL p4z_sbc( kt )   ! external sources of nutrients  
     104      ! 
     105#if ! defined key_sed_off 
    103106      CALL p4z_che              ! computation of chemical constants 
    104107      CALL p4z_int( kt )        ! computation of various rates for biogeochemistry 
    105108      ! 
    106       IF( ll_sbc ) CALL p4z_sbc( kt )   ! external sources of nutrients  
    107  
    108109      DO jnt = 1, nrdttrc          ! Potential time splitting if requested 
    109110         ! 
     
    149150         END DO 
    150151      END IF 
    151       ! 
    152       IF( lk_sed ) THEN  
     152#endif 
     153      ! 
     154      IF( ln_sediment ) THEN  
    153155         ! 
    154156         CALL sed_model( kt )     !  Main program of Sediment model 
     157         ! 
     158         IF( ln_top_euler ) THEN 
     159            DO jn = jp_pcs0, jp_pcs1 
     160               trn(:,:,:,jn) = trb(:,:,:,jn) 
     161            END DO 
     162         ENDIF 
    155163         ! 
    156164      ENDIF 
     
    352360      IF(lwp)  WRITE(numout,*) 
    353361 
    354       IF( cn_cfg == "ORCA" .OR. cn_cfg == "orca" ) THEN 
     362      IF( cn_cfg == "ORCA" .OR. cn_cfg == "orca") THEN 
    355363         IF( .NOT. lk_c1d ) THEN      ! ORCA configuration (not 1D) ! 
    356364            !                                                ! --------------------------- ! 
Note: See TracChangeset for help on using the changeset viewer.