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 6140 for trunk/NEMOGCM/NEMO/TOP_SRC/PISCES – NEMO

Ignore:
Timestamp:
2015-12-21T12:35:23+01:00 (8 years ago)
Author:
timgraham
Message:

Merge of branches/2015/dev_merge_2015 back into trunk. Merge excludes NEMOGCM/TOOLS/OBSTOOLS/ for now due to issues with the change of file type. Will sort these manually with further commits.

Branch merged as follows:
In the working copy of branch ran:
svn merge svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk@HEAD
Small conflicts due to bug fixes applied to trunk since the dev_merge_2015 was copied. Bug fixes were applied to the branch as well so these were easy to resolve.
Branch committed at this stage

In working copy run:
svn switch svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/trunk
to switch working copy

Run:
svn merge --reintegrate svn+ssh://forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/branches/2015/dev_merge_2015
to merge the branch into the trunk and then commit - no conflicts at this stage.

Location:
trunk/NEMOGCM/NEMO/TOP_SRC/PISCES
Files:
17 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zbio.F90

    r5836 r6140  
    6060 
    6161   !! * Substitutions 
    62 #  include "domzgr_substitute.h90" 
    6362#  include "vectopt_loop_substitute.h90" 
    6463   !!---------------------------------------------------------------------- 
     
    6766   !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 
    6867   !!---------------------------------------------------------------------- 
    69  
    7068CONTAINS 
    7169 
     
    187185               !    closure : flux grazing is redistributed below level jpkbio 
    188186               zzoobod = tmminz * zzoo * zzoo 
    189                xksi(ji,jj) = xksi(ji,jj) + (1-fdbod) * zzoobod * fse3t(ji,jj,jk) 
     187               xksi(ji,jj) = xksi(ji,jj) + (1-fdbod) * zzoobod * e3t_n(ji,jj,jk) 
    190188               zboddet = fdbod * zzoobod 
    191189 
     
    242240                IF( ln_diatrc .OR. lk_iomput ) THEN 
    243241                  ! convert fluxes in per day 
    244                   ze3t = fse3t(ji,jj,jk) * 86400. 
     242                  ze3t = e3t_n(ji,jj,jk) * 86400._wp 
    245243                  zw2d(ji,jj,1)  = zw2d(ji,jj,1)  + zno3phy * ze3t 
    246244                  zw2d(ji,jj,2)  = zw2d(ji,jj,2)  + znh4phy * ze3t 
     
    363361                IF( ln_diatrc .OR. lk_iomput ) THEN 
    364362                  ! convert fluxes in per day 
    365                   ze3t = fse3t(ji,jj,jk) * 86400. 
     363                  ze3t = e3t_n(ji,jj,jk) * 86400._wp 
    366364                  zw2d(ji,jj,1)  = zw2d(ji,jj,1)  + zno3phy * ze3t 
    367365                  zw2d(ji,jj,2)  = zw2d(ji,jj,2)  + znh4phy * ze3t 
     
    382380                  zw2d(ji,jj,17) = zw2d(ji,jj,17) + zdetdom * ze3t 
    383381                  !    
    384                   zw3d(ji,jj,jk,1) = zno3phy * 86400 
    385                   zw3d(ji,jj,jk,2) = znh4phy * 86400 
    386                   zw3d(ji,jj,jk,3) = znh4no3 * 86400 
     382                  zw3d(ji,jj,jk,1) = zno3phy * 86400._wp 
     383                  zw3d(ji,jj,jk,2) = znh4phy * 86400._wp 
     384                  zw3d(ji,jj,jk,3) = znh4no3 * 86400._wp 
    387385                   ! 
    388386                ENDIF 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zexp.F90

    r5836 r6140  
    4242 
    4343   !! * Substitutions 
    44 #  include "domzgr_substitute.h90" 
    4544#  include "vectopt_loop_substitute.h90" 
    4645   !!---------------------------------------------------------------------- 
     
    4948   !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 
    5049   !!---------------------------------------------------------------------- 
    51  
    5250CONTAINS 
    5351 
     
    9593         DO jj = 2, jpjm1 
    9694            DO ji = fs_2, fs_jpim1 
    97                ze3t = 1. / fse3t(ji,jj,jk) 
     95               ze3t = 1. / e3t_n(ji,jj,jk) 
    9896               tra(ji,jj,jk,jpno3) = tra(ji,jj,jk,jpno3) + ze3t * dmin3(ji,jj,jk) * xksi(ji,jj) 
    9997            END DO 
     
    110108         DO ji = fs_2, fs_jpim1 
    111109            ikt = mbkt(ji,jj)  
    112             tra(ji,jj,ikt,jpno3) = tra(ji,jj,ikt,jpno3) + sedlam * sedpocn(ji,jj) / fse3t(ji,jj,ikt)  
     110            tra(ji,jj,ikt,jpno3) = tra(ji,jj,ikt,jpno3) + sedlam * sedpocn(ji,jj) / e3t_n(ji,jj,ikt)  
    113111            ! Deposition of organic matter in the sediment 
    114112            zwork = vsed * trn(ji,jj,ikt,jpdet) 
     
    121119      DO jj = 2, jpjm1 
    122120         DO ji = fs_2, fs_jpim1 
    123             tra(ji,jj,1,jpno3) = tra(ji,jj,1,jpno3) + zgeolpoc * cmask(ji,jj) / areacot / fse3t(ji,jj,1) 
     121            tra(ji,jj,1,jpno3) = tra(ji,jj,1,jpno3) + zgeolpoc * cmask(ji,jj) / areacot / e3t_n(ji,jj,1) 
    124122         END DO 
    125123      END DO 
     
    212210         DO jj = 1, jpj 
    213211            DO ji = 1, jpi 
    214                zfluo = ( fsdepw(ji,jj,jk  ) / fsdepw(ji,jj,jpkb) )**xhr 
    215                zfluu = ( fsdepw(ji,jj,jk+1) / fsdepw(ji,jj,jpkb) )**xhr 
     212               zfluo = ( gdepw_n(ji,jj,jk  ) / gdepw_n(ji,jj,jpkb) )**xhr 
     213               zfluu = ( gdepw_n(ji,jj,jk+1) / gdepw_n(ji,jj,jpkb) )**xhr 
    216214               IF( zfluo.GT.1. )   zfluo = 1._wp 
    217215               zdm0(ji,jj,jk) = zfluo - zfluu 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zopt.F90

    r5836 r6140  
    4040   REAL(wp), PUBLIC ::  reddom    ! redfield ratio (C:N) for DOM 
    4141 
    42    !! * Substitutions 
    43 #  include "domzgr_substitute.h90" 
    4442   !!---------------------------------------------------------------------- 
    4543   !! NEMO/TOP 3.3 , NEMO Consortium (2010) 
     
    4745   !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 
    4846   !!---------------------------------------------------------------------- 
    49  
    5047CONTAINS 
    5148 
     
    105102               zkr  = xkr0 + xkrp * EXP( xlr * zpig ) 
    106103               zkg  = xkg0 + xkgp * EXP( xlg * zpig ) 
    107                zparr(ji,jj,jk) = zparr(ji,jj,jk-1) * EXP( -zkr * fse3t(ji,jj,jk-1) ) 
    108                zparg(ji,jj,jk) = zparg(ji,jj,jk-1) * EXP( -zkg * fse3t(ji,jj,jk-1) ) 
     104               zparr(ji,jj,jk) = zparr(ji,jj,jk-1) * EXP( -zkr * e3t_n(ji,jj,jk-1) ) 
     105               zparg(ji,jj,jk) = zparg(ji,jj,jk-1) * EXP( -zkg * e3t_n(ji,jj,jk-1) ) 
    109106            END DO 
    110107        END DO 
     
    116113               zkr  = xkr0 + xkrp * EXP( xlr * zpig ) 
    117114               zkg  = xkg0 + xkgp * EXP( xlg * zpig ) 
    118                zparr(ji,jj,jk) = zparr(ji,jj,jk) / ( zkr * fse3t(ji,jj,jk) ) * ( 1 - EXP( -zkr * fse3t(ji,jj,jk) ) ) 
    119                zparg(ji,jj,jk) = zparg(ji,jj,jk) / ( zkg * fse3t(ji,jj,jk) ) * ( 1 - EXP( -zkg * fse3t(ji,jj,jk) ) ) 
     115               zparr(ji,jj,jk) = zparr(ji,jj,jk) / ( zkr * e3t_n(ji,jj,jk) ) * ( 1 - EXP( -zkr * e3t_n(ji,jj,jk) ) ) 
     116               zparg(ji,jj,jk) = zparg(ji,jj,jk) / ( zkg * e3t_n(ji,jj,jk) ) * ( 1 - EXP( -zkg * e3t_n(ji,jj,jk) ) ) 
    120117               etot (ji,jj,jk) = MAX( zparr(ji,jj,jk) + zparg(ji,jj,jk), 1.e-15 ) 
    121118            END DO 
     
    138135      DO jj = 1, jpj 
    139136         DO ji = 1, jpi 
    140             heup(ji,jj) = fsdepw(ji,jj,neln(ji,jj)) 
     137            heup(ji,jj) = gdepw_n(ji,jj,neln(ji,jj)) 
    141138         END DO 
    142139      END DO  
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zsed.F90

    r5836 r6140  
    3434   REAL(wp), PUBLIC ::   xhr         ! coeff for martin''s remineralisation profile 
    3535 
    36    !! * Substitutions 
    37 #  include "domzgr_substitute.h90" 
    3836   !!---------------------------------------------------------------------- 
    3937   !! NEMO/TOP 3.3 , NEMO Consortium (2010) 
     
    102100         DO jj = 1, jpj 
    103101            DO ji = 1, jpi 
    104                ztra(ji,jj,jk)  = - ( zwork(ji,jj,jk) - zwork(ji,jj,jk+1) ) / fse3t(ji,jj,jk) 
     102               ztra(ji,jj,jk)  = - ( zwork(ji,jj,jk) - zwork(ji,jj,jk+1) ) / e3t_n(ji,jj,jk) 
    105103               tra(ji,jj,jk,jpdet) = tra(ji,jj,jk,jpdet) + ztra(ji,jj,jk)  
    106104            END DO 
     
    111109         IF( iom_use( "TDETSED" ) ) THEN 
    112110            CALL wrk_alloc( jpi, jpj, zw2d ) 
    113             zw2d(:,:) =  ztra(:,:,1) * fse3t(:,:,1) * 86400. 
     111            zw2d(:,:) =  ztra(:,:,1) * e3t_n(:,:,1) * 86400._wp 
    114112            DO jk = 2, jpkm1 
    115                zw2d(:,:) = zw2d(:,:) + ztra(:,:,jk) * fse3t(:,:,jk) * 86400. 
     113               zw2d(:,:) = zw2d(:,:) + ztra(:,:,jk) * e3t_n(:,:,jk) * 86400._wp 
    116114            END DO 
    117115            CALL iom_put( "TDETSED", zw2d ) 
     
    121119         IF( ln_diatrc ) THEN  
    122120            CALL wrk_alloc( jpi, jpj, zw2d ) 
    123             zw2d(:,:) =  ztra(:,:,1) * fse3t(:,:,1) * 86400. 
     121            zw2d(:,:) =  ztra(:,:,1) * e3t_n(:,:,1) * 86400._wp 
    124122            DO jk = 2, jpkm1 
    125                zw2d(:,:) = zw2d(:,:) + ztra(:,:,jk) * fse3t(:,:,jk) * 86400. 
     123               zw2d(:,:) = zw2d(:,:) + ztra(:,:,jk) * e3t_n(:,:,jk) * 86400._wp 
    126124            END DO 
    127125            trc2d(:,:,jp_pcs0_2d + 7) = zw2d(:,:) 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zbio.F90

    r5836 r6140  
    3434   PUBLIC  p4z_bio     
    3535 
    36    !! * Substitutions 
    37 #  include "domzgr_substitute.h90" 
    3836   !!---------------------------------------------------------------------- 
    3937   !! NEMO/TOP 3.3 , NEMO Consortium (2010) 
     
    4139   !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 
    4240   !!---------------------------------------------------------------------- 
    43  
    4441CONTAINS 
    4542 
     
    7067         DO jj = 1, jpj 
    7168            DO ji = 1, jpi 
    72                IF( fsdepw(ji,jj,jk+1) > hmld(ji,jj) )   xdiss(ji,jj,jk) = 0.01 
     69!!gm  :  use nmln  and test on jk ...  less memory acces 
     70               IF( gdepw_n(ji,jj,jk+1) > hmld(ji,jj) )   xdiss(ji,jj,jk) = 0.01 
    7371            END DO  
    7472         END DO 
    7573      END DO 
    7674 
    77            
    7875      CALL p4z_opt  ( kt, knt )     ! Optic: PAR in the water column 
    7976      CALL p4z_sink ( kt, knt )     ! vertical flux of particulate organic matter 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zche.F90

    r5836 r6140  
    164164   REAL(wp) :: devk55  = 0.3692E-3       
    165165 
    166    !! * Substitutions 
    167 #  include "domzgr_substitute.h90" 
    168166   !!---------------------------------------------------------------------- 
    169167   !! NEMO/TOP 3.3 , NEMO Consortium (2010) 
     
    244242 
    245243 
    246  
    247244      ! CHEMICAL CONSTANTS - DEEP OCEAN 
    248245      ! ------------------------------- 
     
    252249 
    253250               ! SET PRESSION 
    254                zpres   = 1.025e-1 * fsdept(ji,jj,jk) 
     251               zpres   = 1.025e-1 * gdept_n(ji,jj,jk) 
    255252 
    256253               ! SET ABSOLUTE TEMPERATURE 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zfechem.F90

    r5836 r6140  
    3030   PUBLIC   p4z_fechem_init ! called in trcsms_pisces.F90 
    3131 
    32    !! * Shared module variables 
    33    LOGICAL          ::  ln_fechem    !: boolean for complex iron chemistry following Tagliabue and voelker 
    34    LOGICAL          ::  ln_ligvar    !: boolean for variable ligand concentration following Tagliabue and voelker 
    35    REAL(wp), PUBLIC ::  xlam1        !: scavenging rate of Iron  
    36    REAL(wp), PUBLIC ::  xlamdust     !: scavenging rate of Iron by dust  
    37    REAL(wp), PUBLIC ::  ligand       !: ligand concentration in the ocean  
    38  
     32   LOGICAL          ::   ln_fechem    !: boolean for complex iron chemistry following Tagliabue and voelker 
     33   LOGICAL          ::   ln_ligvar    !: boolean for variable ligand concentration following Tagliabue and voelker 
     34   REAL(wp), PUBLIC ::   xlam1        !: scavenging rate of Iron  
     35   REAL(wp), PUBLIC ::   xlamdust     !: scavenging rate of Iron by dust  
     36   REAL(wp), PUBLIC ::   ligand       !: ligand concentration in the ocean  
     37 
     38!!gm Not DOCTOR norm !!! 
    3939   REAL(wp) :: kl1, kl2, kb1, kb2, ks, kpr, spd, con, kth 
    4040 
    41    !! * Substitutions 
    42 #  include "domzgr_substitute.h90" 
    4341   !!---------------------------------------------------------------------- 
    4442   !! NEMO/TOP 3.3 , NEMO Consortium (2010) 
     
    6159      !!                    and one particulate form (ln_fechem) 
    6260      !!--------------------------------------------------------------------- 
    63       ! 
    64       INTEGER, INTENT(in) ::   kt, knt ! ocean time step 
     61      INTEGER, INTENT(in) ::   kt, knt   ! ocean time step 
    6562      ! 
    6663      INTEGER  ::   ji, jj, jk, jic 
     64      CHARACTER (len=25) :: charout 
    6765      REAL(wp) ::   zdep, zlam1a, zlam1b, zlamfac 
    6866      REAL(wp) ::   zkeq, zfeequi, zfesatur, zfecoll 
     
    7977      REAL(wp) :: ztfe, zoxy 
    8078      REAL(wp) :: zstep 
    81       CHARACTER (len=25) :: charout 
    8279      !!--------------------------------------------------------------------- 
    8380      ! 
    8481      IF( nn_timing == 1 )  CALL timing_start('p4z_fechem') 
    8582      ! 
    86       ! Allocate temporary workspace 
    87       CALL wrk_alloc( jpi, jpj, jpk, zFe3, zFeL1, zTL1, ztotlig ) 
     83      CALL wrk_alloc( jpi,jpj,jpk,   zFe3, zFeL1, zTL1, ztotlig ) 
    8884      zFe3 (:,:,:) = 0. 
    8985      zFeL1(:,:,:) = 0. 
    9086      zTL1 (:,:,:) = 0. 
    9187      IF( ln_fechem ) THEN 
    92          CALL wrk_alloc( jpi, jpj, jpk, zFe2, zFeL2, zTL2, zFeP ) 
     88         CALL wrk_alloc( jpi,jpj,jpk,  zFe2, zFeL2, zTL2, zFeP ) 
    9389         zFe2 (:,:,:) = 0. 
    9490         zFeL2(:,:,:) = 0. 
     
    253249               zlamfac = MAX( 0.e0, ( gphit(ji,jj) + 55.) / 30. ) 
    254250               zlamfac = MIN( 1.  , zlamfac ) 
    255                zdep    = MIN( 1., 1000. / fsdept(ji,jj,jk) ) 
     251!!gm very small BUG :  it is unlikely but possible that gdept_n = 0  ..... 
     252               zdep    = MIN( 1., 1000. / gdept_n(ji,jj,jk) ) 
    256253               zlam1b  = xlam1 * MAX( 0.e0, ( trb(ji,jj,jk,jpfer) * 1.e9 - ztotlig(ji,jj,jk) ) ) 
    257254               zcoag   = zfeequi * zlam1b * zstep + 1E-4 * ( 1. - zlamfac ) * zdep * zstep * trb(ji,jj,jk,jpfer) 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zflx.F90

    r5836 r6140  
    5959   REAL(wp) ::  xconv  = 0.01_wp / 3600._wp !: coefficients for conversion  
    6060 
    61    !! * Substitutions 
    62 #  include "domzgr_substitute.h90" 
    6361   !!---------------------------------------------------------------------- 
    6462   !! NEMO/TOP 3.3 , NEMO Consortium (2010) 
     
    182180            oce_co2(ji,jj) = ( zfld - zflu ) * rfact2 * e1e2t(ji,jj) * tmask(ji,jj,1) * 1000. 
    183181            ! compute the trend 
    184             tra(ji,jj,1,jpdic) = tra(ji,jj,1,jpdic) + ( zfld - zflu ) * rfact2 / fse3t(ji,jj,1) 
     182            tra(ji,jj,1,jpdic) = tra(ji,jj,1,jpdic) + ( zfld - zflu ) * rfact2 / e3t_n(ji,jj,1) 
    185183 
    186184            ! Compute O2 flux  
     
    188186            zflu16 = trb(ji,jj,1,jpoxy) * tmask(ji,jj,1) * zkgo2(ji,jj) 
    189187            zoflx(ji,jj) = zfld16 - zflu16 
    190             tra(ji,jj,1,jpoxy) = tra(ji,jj,1,jpoxy) + zoflx(ji,jj) * rfact2 / fse3t(ji,jj,1) 
     188            tra(ji,jj,1,jpoxy) = tra(ji,jj,1,jpoxy) + zoflx(ji,jj) * rfact2 / e3t_n(ji,jj,1) 
    191189         END DO 
    192190      END DO 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zopt.F90

    r5836 r6140  
    5151   REAL(wp), DIMENSION(3,61), PUBLIC ::   xkrgb   !: tabulated attenuation coefficients for RGB absorption 
    5252    
    53    !! * Substitutions 
    54 #  include "domzgr_substitute.h90" 
    5553   !!---------------------------------------------------------------------- 
    5654   !! NEMO/TOP 3.3 , NEMO Consortium (2010) 
     
    10199               irgb = NINT( 41 + 20.* LOG10( zchl ) + rtrn ) 
    102100               !                                                          
    103                ekb(ji,jj,jk) = xkrgb(1,irgb) * fse3t(ji,jj,jk) 
    104                ekg(ji,jj,jk) = xkrgb(2,irgb) * fse3t(ji,jj,jk) 
    105                ekr(ji,jj,jk) = xkrgb(3,irgb) * fse3t(ji,jj,jk) 
     101               ekb(ji,jj,jk) = xkrgb(1,irgb) * e3t_n(ji,jj,jk) 
     102               ekg(ji,jj,jk) = xkrgb(2,irgb) * e3t_n(ji,jj,jk) 
     103               ekr(ji,jj,jk) = xkrgb(3,irgb) * e3t_n(ji,jj,jk) 
    106104            END DO 
    107105         END DO 
     
    162160                 neln(ji,jj) = jk+1                    ! Euphotic level : 1rst T-level strictly below Euphotic layer 
    163161                 !                                     ! nb: ensure the compatibility with nmld_trc definition in trd_mld_trc_zint 
    164                  heup(ji,jj) = fsdepw(ji,jj,jk+1)      ! Euphotic layer depth 
     162                 heup(ji,jj) = gdepw_n(ji,jj,jk+1)     ! Euphotic layer depth 
    165163              ENDIF 
    166164           END DO 
     
    179177         DO jj = 1, jpj 
    180178            DO ji = 1, jpi 
    181                IF( fsdepw(ji,jj,jk+1) <= hmld(ji,jj) ) THEN 
    182                   zetmp1 (ji,jj) = zetmp1 (ji,jj) + etot     (ji,jj,jk) * fse3t(ji,jj,jk) ! remineralisation 
    183                   zetmp2 (ji,jj) = zetmp2 (ji,jj) + etot_ndcy(ji,jj,jk) * fse3t(ji,jj,jk) ! production 
    184                   zetmp3 (ji,jj) = zetmp3 (ji,jj) + enano    (ji,jj,jk) * fse3t(ji,jj,jk) ! production 
    185                   zetmp4 (ji,jj) = zetmp4 (ji,jj) + ediat    (ji,jj,jk) * fse3t(ji,jj,jk) ! production 
    186                   zdepmoy(ji,jj) = zdepmoy(ji,jj) + fse3t(ji,jj,jk) 
     179               IF( gdepw_n(ji,jj,jk+1) <= hmld(ji,jj) ) THEN 
     180                  zetmp1 (ji,jj) = zetmp1 (ji,jj) + etot     (ji,jj,jk) * e3t_n(ji,jj,jk) ! remineralisation 
     181                  zetmp2 (ji,jj) = zetmp2 (ji,jj) + etot_ndcy(ji,jj,jk) * e3t_n(ji,jj,jk) ! production 
     182                  zetmp3 (ji,jj) = zetmp3 (ji,jj) + enano    (ji,jj,jk) * e3t_n(ji,jj,jk) ! production 
     183                  zetmp4 (ji,jj) = zetmp4 (ji,jj) + ediat    (ji,jj,jk) * e3t_n(ji,jj,jk) ! production 
     184                  zdepmoy(ji,jj) = zdepmoy(ji,jj) +                       e3t_n(ji,jj,jk) 
    187185               ENDIF 
    188186            END DO 
     
    196194         DO jj = 1, jpj 
    197195            DO ji = 1, jpi 
    198                IF( fsdepw(ji,jj,jk+1) <= hmld(ji,jj) ) THEN 
     196               IF( gdepw_n(ji,jj,jk+1) <= hmld(ji,jj) ) THEN 
    199197                  z1_dep = 1. / ( zdepmoy(ji,jj) + rtrn ) 
    200198                  emoy (ji,jj,jk) = zetmp1(ji,jj) * z1_dep 
     
    260258            DO jj = 1, jpj 
    261259               DO ji = 1, jpi 
    262                   pe0(ji,jj,jk) = pe0(ji,jj,jk-1) * EXP( -fse3t(ji,jj,jk-1) * xsi0r ) 
     260                  pe0(ji,jj,jk) = pe0(ji,jj,jk-1) * EXP( -e3t_n(ji,jj,jk-1) * xsi0r ) 
    263261                  pe1(ji,jj,jk) = pe1(ji,jj,jk-1) * EXP( -ekb(ji,jj,jk-1 ) ) 
    264262                  pe2(ji,jj,jk) = pe2(ji,jj,jk-1) * EXP( -ekg(ji,jj,jk-1 ) ) 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zprod.F90

    r5836 r6140  
    5454   REAL(wp) :: texcret2               !: 1 - excret2         
    5555 
    56    !! * Substitutions 
    57 #  include "domzgr_substitute.h90" 
    5856   !!---------------------------------------------------------------------- 
    5957   !! NEMO/TOP 3.3 , NEMO Consortium (2010) 
     
    277275         DO jj = 1, jpj 
    278276            DO ji = 1, jpi 
    279                IF( fsdepw(ji,jj,jk+1) <= hmld(ji,jj) ) THEN 
     277               IF( gdepw_n(ji,jj,jk+1) <= hmld(ji,jj) ) THEN 
    280278                  zprbio(ji,jj,jk) = zprbio(ji,jj,jk) * zmixnano(ji,jj) 
    281279                  zprdia(ji,jj,jk) = zprdia(ji,jj,jk) * zmixdiat(ji,jj) 
     
    321319            DO jj = 1, jpj 
    322320               DO ji = 1, jpi 
    323                   IF( fsdepw(ji,jj,jk+1) <= hmld(ji,jj) ) THEN 
     321                  IF( gdepw_n(ji,jj,jk+1) <= hmld(ji,jj) ) THEN 
    324322                     zprnch(ji,jj,jk) = zprnch(ji,jj,jk) * zmixnano(ji,jj) 
    325323                     zprdch(ji,jj,jk) = zprdch(ji,jj,jk) * zmixdiat(ji,jj) 
     
    462460             zw2d(:,:) = 0. 
    463461             DO jk = 1, jpkm1 
    464                zw2d(:,:) = zw2d(:,:) + zprorca (:,:,jk) * fse3t(:,:,jk) * zfact * tmask(:,:,jk)  ! vert. integrated  primary produc. by nano 
     462               zw2d(:,:) = zw2d(:,:) + zprorca (:,:,jk) * e3t_n(:,:,jk) * zfact * tmask(:,:,jk)  ! vert. integrated  primary produc. by nano 
    465463             ENDDO 
    466464             CALL iom_put( "INTPPPHY" , zw2d ) 
     
    468466             zw2d(:,:) = 0. 
    469467             DO jk = 1, jpkm1 
    470                 zw2d(:,:) = zw2d(:,:) + zprorcad(:,:,jk) * fse3t(:,:,jk) * zfact * tmask(:,:,jk) ! vert. integrated  primary produc. by diatom 
     468                zw2d(:,:) = zw2d(:,:) + zprorcad(:,:,jk) * e3t_n(:,:,jk) * zfact * tmask(:,:,jk) ! vert. integrated  primary produc. by diatom 
    471469             ENDDO 
    472470             CALL iom_put( "INTPPPHY2" , zw2d ) 
     
    475473             zw2d(:,:) = 0. 
    476474             DO jk = 1, jpkm1 
    477                 zw2d(:,:) = zw2d(:,:) + ( zprorca(:,:,jk) + zprorcad(:,:,jk) ) * fse3t(:,:,jk) * zfact * tmask(:,:,jk) ! vert. integrated pp 
     475                zw2d(:,:) = zw2d(:,:) + ( zprorca(:,:,jk) + zprorcad(:,:,jk) ) * e3t_n(:,:,jk) * zfact * tmask(:,:,jk) ! vert. integrated pp 
    478476             ENDDO 
    479477             CALL iom_put( "INTPP" , zw2d ) 
     
    482480             zw2d(:,:) = 0. 
    483481             DO jk = 1, jpkm1 
    484                 zw2d(:,:) = zw2d(:,:) + ( zpronew(:,:,jk) + zpronewd(:,:,jk) ) * fse3t(:,:,jk) * zfact * tmask(:,:,jk)  ! vert. integrated new prod 
     482                zw2d(:,:) = zw2d(:,:) + ( zpronew(:,:,jk) + zpronewd(:,:,jk) ) * e3t_n(:,:,jk) * zfact * tmask(:,:,jk)  ! vert. integrated new prod 
    485483             ENDDO 
    486484             CALL iom_put( "INTPNEW" , zw2d ) 
     
    489487             zw2d(:,:) = 0. 
    490488             DO jk = 1, jpkm1 
    491                 zw2d(:,:) = zw2d(:,:) + ( zprofen(:,:,jk) + zprofed(:,:,jk) ) * fse3t(:,:,jk) * zfact * tmask(:,:,jk) ! vert integr. bfe prod 
     489                zw2d(:,:) = zw2d(:,:) + ( zprofen(:,:,jk) + zprofed(:,:,jk) ) * e3t_n(:,:,jk) * zfact * tmask(:,:,jk) ! vert integr. bfe prod 
    492490             ENDDO 
    493491            CALL iom_put( "INTPBFE" , zw2d ) 
     
    496494             zw2d(:,:) = 0. 
    497495             DO jk = 1, jpkm1 
    498                 zw2d(:,:) = zw2d(:,:) + zprorcad(:,:,jk) * zysopt(:,:,jk) * fse3t(:,:,jk) * zfact * tmask(:,:,jk)  ! vert integr. bsi prod 
     496                zw2d(:,:) = zw2d(:,:) + zprorcad(:,:,jk) * zysopt(:,:,jk) * e3t_n(:,:,jk) * zfact * tmask(:,:,jk)  ! vert integr. bsi prod 
    499497             ENDDO 
    500498             CALL iom_put( "INTPBSI" , zw2d ) 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zrem.F90

    r5836 r6140  
    5050   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   denitnh4   !: -    -    -    -   - 
    5151 
    52    !! * Substitutions 
    53 #  include "domzgr_substitute.h90" 
    5452   !!---------------------------------------------------------------------- 
    5553   !! NEMO/TOP 3.3 , NEMO Consortium (2010) 
     
    103101            DO ji = 1, jpi 
    104102               zdep = MAX( hmld(ji,jj), heup(ji,jj) ) 
    105                IF( fsdept(ji,jj,jk) < zdep ) THEN 
     103               IF( gdept_n(ji,jj,jk) < zdep ) THEN 
    106104                  zdepbac(ji,jj,jk) = MIN( 0.7 * ( trb(ji,jj,jk,jpzoo) + 2.* trb(ji,jj,jk,jpmes) ), 4.e-6 ) 
    107105                  ztempbac(ji,jj)   = zdepbac(ji,jj,jk) 
    108106               ELSE 
    109                   zdepmin = MIN( 1., zdep / fsdept(ji,jj,jk) ) 
     107                  zdepmin = MIN( 1., zdep / gdept_n(ji,jj,jk) ) 
    110108                  zdepbac (ji,jj,jk) = zdepmin**0.683 * ztempbac(ji,jj) 
    111109                  zdepprod(ji,jj,jk) = zdepmin**0.273 
     
    283281               ! ---------------------------------------------------------- 
    284282               zdep     = MAX( hmld(ji,jj), heup(ji,jj) )  
    285                zdep     = MAX( 0., fsdept(ji,jj,jk) - zdep ) 
     283               zdep     = MAX( 0., gdept_n(ji,jj,jk) - zdep ) 
    286284               ztem     = MAX( tsn(ji,jj,1,jp_tem), 0. ) 
    287285               zfactdep = xsilab * EXP(-( xsiremlab - xsirem ) * znusil2 * zdep / wsbio2 ) * ztem / ( ztem + 10. ) 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsbc.F90

    r5836 r6140  
    2525   PUBLIC   p4z_sbc_init    
    2626 
    27    !! * Shared module variables 
    2827   LOGICAL , PUBLIC  :: ln_dust     !: boolean for dust input from the atmosphere 
    2928   LOGICAL , PUBLIC  :: ln_solub    !: boolean for variable solubility of atmospheric iron 
     
    4544   LOGICAL , PUBLIC  :: ll_sbc 
    4645 
    47    !! * Module variables 
    4846   LOGICAL  ::  ll_solub 
    4947 
     
    8078   REAL(wp), PUBLIC :: rivdininput, rivdipinput, rivdsiinput 
    8179 
    82  
    8380   !! * Substitutions 
    84 #  include "domzgr_substitute.h90" 
    8581#  include "vectopt_loop_substitute.h90" 
    8682   !!---------------------------------------------------------------------- 
     
    8985   !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 
    9086   !!---------------------------------------------------------------------- 
    91  
    9287CONTAINS 
    9388 
     
    163158            DO jj = 1, jpj 
    164159               DO ji = 1, jpi 
    165                   nitdep(ji,jj) = sf_ndepo(1)%fnow(ji,jj,1) / rno3 / ( 14E6 * ryyss * fse3t(ji,jj,1) + rtrn ) 
     160                  nitdep(ji,jj) = sf_ndepo(1)%fnow(ji,jj,1) / rno3 / ( 14E6 * ryyss * e3t_n(ji,jj,1) + rtrn ) 
    166161               END DO 
    167162            END DO 
     
    267262      IF( lk_offline ) THEN 
    268263        nk_rnf(:,:) = 1 
    269         h_rnf (:,:) = fsdept(:,:,1) 
     264        h_rnf (:,:) = gdept_n(:,:,1) 
    270265      ENDIF 
    271266 
     
    456451            DO jj = 1, jpj 
    457452               DO ji = 1, jpi 
    458                   zexpide   = MIN( 8.,( fsdept(ji,jj,jk) / 500. )**(-1.5) ) 
     453                  zexpide   = MIN( 8.,( gdept_n(ji,jj,jk) / 500. )**(-1.5) ) 
    459454                  zdenitide = -0.9543 + 0.7662 * LOG( zexpide ) - 0.235 * LOG( zexpide )**2 
    460455                  zcmask(ji,jj,jk) = zcmask(ji,jj,jk) * MIN( 1., EXP( zdenitide ) / 0.5 ) 
     
    466461         ironsed(:,:,jpk) = 0._wp 
    467462         DO jk = 1, jpkm1 
    468             ironsed(:,:,jk) = sedfeinput * zcmask(:,:,jk) / ( fse3t(:,:,jk) * rday ) 
     463            ironsed(:,:,jk) = sedfeinput * zcmask(:,:,jk) / ( e3t_n(:,:,jk) * rday ) 
    469464         END DO 
    470465         DEALLOCATE( zcmask) 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsed.F90

    r5836 r6140  
    3232   PUBLIC   p4z_sed_alloc 
    3333  
    34  
    35    !! * Module variables 
    3634   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) :: nitrpot    !: Nitrogen fixation  
    3735   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:  ) :: sdenit     !: Nitrate reduction in the sediments 
    3836   REAL(wp) :: r1_rday                  !: inverse of rday 
    3937 
    40    !! * Substitutions 
    41 #  include "domzgr_substitute.h90" 
    4238   !!---------------------------------------------------------------------- 
    4339   !! NEMO/TOP 3.3 , NEMO Consortium (2010) 
     
    10096         DO jj = 1, jpj 
    10197            DO ji = 1, jpi 
    102                zdep    = rfact2 / fse3t(ji,jj,1) 
     98               zdep    = rfact2 / e3t_n(ji,jj,1) 
    10399               zwflux  = fmmflx(ji,jj) / 1000._wp 
    104100               zfminus = MIN( 0._wp, -zwflux ) * trb(ji,jj,1,jpfer) * zdep 
     
    111107         !  
    112108         IF( lk_iomput .AND. knt == nrdttrc .AND. iom_use( "Ironice" ) )   & 
    113             &   CALL iom_put( "Ironice", zironice(:,:) * 1.e+3 * rfact2r * fse3t(:,:,1) * tmask(:,:,1) ) ! iron flux from ice 
     109            &   CALL iom_put( "Ironice", zironice(:,:) * 1.e+3 * rfact2r * e3t_n(:,:,1) * tmask(:,:,1) ) ! iron flux from ice 
    114110         ! 
    115111         CALL wrk_dealloc( jpi, jpj, zironice ) 
     
    125121         !                                              ! Iron and Si deposition at the surface 
    126122         IF( ln_solub ) THEN 
    127             zirondep(:,:,1) = solub(:,:) * dust(:,:) * mfrac * rfact2 / fse3t(:,:,1) / 55.85 + 3.e-10 * r1_ryyss  
     123            zirondep(:,:,1) = solub(:,:) * dust(:,:) * mfrac * rfact2 / e3t_n(:,:,1) / 55.85 + 3.e-10 * r1_ryyss  
    128124         ELSE 
    129             zirondep(:,:,1) = dustsolub  * dust(:,:) * mfrac * rfact2 / fse3t(:,:,1) / 55.85 + 3.e-10 * r1_ryyss  
     125            zirondep(:,:,1) = dustsolub  * dust(:,:) * mfrac * rfact2 / e3t_n(:,:,1) / 55.85 + 3.e-10 * r1_ryyss  
    130126         ENDIF 
    131          zsidep(:,:) = 8.8 * 0.075 * dust(:,:) * mfrac * rfact2 / fse3t(:,:,1) / 28.1  
    132          zpdep (:,:) = 0.1 * 0.021 * dust(:,:) * mfrac * rfact2 / fse3t(:,:,1) / 31. / po4r  
     127         zsidep(:,:) = 8.8 * 0.075 * dust(:,:) * mfrac * rfact2 / e3t_n(:,:,1) / 28.1  
     128         zpdep (:,:) = 0.1 * 0.021 * dust(:,:) * mfrac * rfact2 / e3t_n(:,:,1) / 31. / po4r  
    133129         !                                              ! Iron solubilization of particles in the water column 
    134130         !                                              ! dust in kg/m2/s ---> 1/55.85 to put in mol/Fe ;  wdust in m/j 
    135131         zwdust = 0.03 * rday / ( wdust * 55.85 ) / ( 270. * rday ) 
    136132         DO jk = 2, jpkm1 
    137             zirondep(:,:,jk) = dust(:,:) * mfrac * zwdust * rfact2 * EXP( -fsdept(:,:,jk) / 540. ) 
     133            zirondep(:,:,jk) = dust(:,:) * mfrac * zwdust * rfact2 * EXP( -gdept_n(:,:,jk) / 540. ) 
    138134         END DO 
    139135         !                                              ! Iron solubilization of particles in the water column 
     
    145141            IF( knt == nrdttrc ) THEN 
    146142                IF( iom_use( "Irondep" ) )   & 
    147                 &  CALL iom_put( "Irondep", zirondep(:,:,1) * 1.e+3 * rfact2r * fse3t(:,:,1) * tmask(:,:,1) ) ! surface downward dust depo of iron 
     143                &  CALL iom_put( "Irondep", zirondep(:,:,1) * 1.e+3 * rfact2r * e3t_n(:,:,1) * tmask(:,:,1) ) ! surface downward dust depo of iron 
    148144                IF( iom_use( "pdust" ) )   & 
    149145                &  CALL iom_put( "pdust"  , dust(:,:) / ( wdust * rday )  * tmask(:,:,1) ) ! dust concentration at surface 
     
    151147         ELSE                                     
    152148            IF( ln_diatrc )  & 
    153               &  trc2d(:,:,jp_pcs0_2d + 11) = zirondep(:,:,1) * 1.e+3 * rfact2r * fse3t(:,:,1) * tmask(:,:,1) 
     149              &  trc2d(:,:,jp_pcs0_2d + 11) = zirondep(:,:,1) * 1.e+3 * rfact2r * e3t_n(:,:,1) * tmask(:,:,1) 
    154150         ENDIF 
    155151         CALL wrk_dealloc( jpi, jpj,      zpdep, zsidep ) 
     
    206202         DO ji = 1, jpi 
    207203            ikt  = mbkt(ji,jj) 
    208             zdep = fse3t(ji,jj,ikt) / xstep 
     204            zdep = e3t_n(ji,jj,ikt) / xstep 
    209205            zwsbio4(ji,jj) = MIN( 0.99 * zdep, wsbio4(ji,jj,ikt) ) 
    210206            zwscal (ji,jj) = MIN( 0.99 * zdep, wscal (ji,jj,ikt) ) 
     
    230226              zo2   = LOG10( MAX( 10. , trb(ji,jj,ikt,jpoxy) * 1E6 ) ) 
    231227              zno3  = LOG10( MAX( 1.  , trb(ji,jj,ikt,jpno3) * 1E6 * rno3 ) ) 
    232               zdep  = LOG10( fsdepw(ji,jj,ikt+1) ) 
     228              zdep  = LOG10( gdepw_n(ji,jj,ikt+1) ) 
    233229              zdenit2d(ji,jj) = -2.2567 - 1.185 * zflx - 0.221 * zflx**2 - 0.3995 * zno3 * zo2 + 1.25 * zno3    & 
    234230              &                + 0.4721 * zo2 - 0.0996 * zdep + 0.4256 * zflx * zo2 
     
    279275         DO ji = 1, jpi 
    280276            ikt  = mbkt(ji,jj) 
    281             zdep = xstep / fse3t(ji,jj,ikt)  
     277            zdep = xstep / e3t_n(ji,jj,ikt)  
    282278            zws4 = zwsbio4(ji,jj) * zdep 
    283279            zwsc = zwscal (ji,jj) * zdep 
     
    305301         DO ji = 1, jpi 
    306302            ikt  = mbkt(ji,jj) 
    307             zdep = xstep / fse3t(ji,jj,ikt)  
     303            zdep = xstep / e3t_n(ji,jj,ikt)  
    308304            zws4 = zwsbio4(ji,jj) * zdep 
    309305            zws3 = zwsbio3(ji,jj) * zdep 
     
    336332            tra(ji,jj,ikt,jptal) = tra(ji,jj,ikt,jptal) + rno3 * (zolimit + (1.+rdenit) * (zpdenit + zdenitt) ) 
    337333            tra(ji,jj,ikt,jpdic) = tra(ji,jj,ikt,jpdic) + zpdenit + zolimit + zdenitt 
    338             sdenit(ji,jj) = rdenit * zpdenit * fse3t(ji,jj,ikt) 
     334            sdenit(ji,jj) = rdenit * zpdenit * e3t_n(ji,jj,ikt) 
    339335#endif 
    340336         END DO 
     
    388384               zwork1(:,:) = 0. 
    389385               DO jk = 1, jpkm1 
    390                  zwork1(:,:) = zwork1(:,:) + nitrpot(:,:,jk) * nitrfix * zfact * fse3t(:,:,jk) * tmask(:,:,jk) 
     386                 zwork1(:,:) = zwork1(:,:) + nitrpot(:,:,jk) * nitrfix * zfact * e3t_n(:,:,jk) * tmask(:,:,jk) 
    391387               ENDDO 
    392388               CALL iom_put( "INTNFIX" , zwork1 )  
     
    395391      ELSE 
    396392         IF( ln_diatrc )  & 
    397             &  trc2d(:,:,jp_pcs0_2d + 12) = nitrpot(:,:,1) * nitrfix * rno3 * 1.e+3 * rfact2r * fse3t(:,:,1) * tmask(:,:,1) 
     393            &  trc2d(:,:,jp_pcs0_2d + 12) = nitrpot(:,:,1) * nitrfix * rno3 * 1.e+3 * rfact2r * e3t_n(:,:,1) * tmask(:,:,1) 
    398394      ENDIF 
    399395      ! 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsink.F90

    r5836 r6140  
    6565#endif 
    6666 
    67    !! * Substitutions 
    68 #  include "domzgr_substitute.h90" 
    6967   !!---------------------------------------------------------------------- 
    7068   !! NEMO/TOP 3.3 , NEMO Consortium (2010) 
     
    108106            DO ji = 1,jpi 
    109107               zmax  = MAX( heup(ji,jj), hmld(ji,jj) ) 
    110                zfact = MAX( 0., fsdepw(ji,jj,jk+1) - zmax ) / 5000._wp 
     108               zfact = MAX( 0., gdepw_n(ji,jj,jk+1) - zmax ) / 5000._wp 
    111109               wsbio4(ji,jj,jk) = wsbio2 + ( 200.- wsbio2 ) * zfact 
    112110            END DO 
     
    137135             DO ji = 1, jpi 
    138136                IF( tmask(ji,jj,jk) == 1) THEN 
    139                    zwsmax =  0.5 * fse3t(ji,jj,jk) / xstep 
     137                   zwsmax =  0.5 * e3t_n(ji,jj,jk) / xstep 
    140138                   iiter1 =  MAX( iiter1, INT( wsbio3(ji,jj,jk) / zwsmax ) ) 
    141139                   iiter2 =  MAX( iiter2, INT( wsbio4(ji,jj,jk) / zwsmax ) ) 
     
    156154            DO ji = 1, jpi 
    157155               IF( tmask(ji,jj,jk) == 1 ) THEN 
    158                  zwsmax = 0.5 * fse3t(ji,jj,jk) / xstep 
     156                 zwsmax = 0.5 * e3t_n(ji,jj,jk) / xstep 
    159157                 wsbio3(ji,jj,jk) = MIN( wsbio3(ji,jj,jk), zwsmax * FLOAT( iiter1 ) ) 
    160158                 wsbio4(ji,jj,jk) = MIN( wsbio4(ji,jj,jk), zwsmax * FLOAT( iiter2 ) ) 
     
    700698         zl = zmin 
    701699         zr = zmax 
    702          wmax = 0.5 * fse3t(1,1,jk) * rday * float(niter1max) / rfact2 
     700         wmax = 0.5 * e3t_n(1,1,jk) * rday * float(niter1max) / rfact2 
    703701         zdiv = xkr_zeta + xkr_eta - xkr_eta * zl 
    704702         znum = zl - 1. 
     
    844842            DO jj = 1, jpj       
    845843               DO ji = 1, jpi     
    846                   zigma = zwsink2(ji,jj,jk+1) * zstep / fse3w(ji,jj,jk+1) 
     844                  zigma = zwsink2(ji,jj,jk+1) * zstep / e3w_n(ji,jj,jk+1) 
    847845                  zew   = zwsink2(ji,jj,jk+1) 
    848846                  psinkflx(ji,jj,jk+1) = -zew * ( trb(ji,jj,jk,jp_tra) - 0.5 * ( 1 + zigma ) * zakz(ji,jj,jk) ) * zstep 
     
    858856            DO jj = 1,jpj 
    859857               DO ji = 1, jpi 
    860                   zflx = ( psinkflx(ji,jj,jk) - psinkflx(ji,jj,jk+1) ) / fse3t(ji,jj,jk) 
     858                  zflx = ( psinkflx(ji,jj,jk) - psinkflx(ji,jj,jk+1) ) / e3t_n(ji,jj,jk) 
    861859                  trb(ji,jj,jk,jp_tra) = trb(ji,jj,jk,jp_tra) + zflx 
    862860               END DO 
     
    869867         DO jj = 1,jpj 
    870868            DO ji = 1, jpi 
    871                zflx = ( psinkflx(ji,jj,jk) - psinkflx(ji,jj,jk+1) ) / fse3t(ji,jj,jk) 
     869               zflx = ( psinkflx(ji,jj,jk) - psinkflx(ji,jj,jk+1) ) / e3t_n(ji,jj,jk) 
    872870               ztrb(ji,jj,jk) = ztrb(ji,jj,jk) + 2. * zflx 
    873871            END DO 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsms.F90

    r5836 r6140  
    9292      ! 
    9393      !                                                                    !   set time step size (Euler/Leapfrog) 
    94       IF( ( neuler == 0 .AND. kt == nittrc000 ) .OR. ln_top_euler ) THEN   ;    rfact = rdttrc(1)     !  at nittrc000 
    95       ELSEIF( kt <= nittrc000 + nn_dttrc )                          THEN   ;    rfact = 2. * rdttrc(1)   ! at nittrc000 or nittrc000+nn_dttrc (Leapfrog) 
     94      IF( ( neuler == 0 .AND. kt == nittrc000 ) .OR. ln_top_euler ) THEN   ;    rfact = rdttrc     !  at nittrc000 
     95      ELSEIF( kt <= nittrc000 + nn_dttrc )                          THEN   ;    rfact = 2. * rdttrc   ! at nittrc000 or nittrc000+nn_dttrc (Leapfrog) 
    9696      ENDIF 
    9797      ! 
     
    102102         xstep = rfact2 / rday         ! Time step duration for biology 
    103103         IF(lwp) WRITE(numout,*)  
    104          IF(lwp) WRITE(numout,*) '    Passive Tracer  time step    rfact  = ', rfact, ' rdt = ', rdttra(1) 
     104         IF(lwp) WRITE(numout,*) '    Passive Tracer  time step    rfact  = ', rfact, ' rdt = ', rdt 
    105105         IF(lwp) write(numout,*) '    PISCES  Biology time step    rfact2 = ', rfact2 
    106106         IF(lwp) WRITE(numout,*) 
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/SED/sedrst.F90

    r5215 r6140  
    6060 
    6161      ALLOCATE( zdta(jpi,jpj,jpksed,jptrased), zdta1(jpi,jpj,jpksed,2), zhipor(jpoce,jpksed) )  
    62  
    63       IF ( jprstlib == jprstdimg ) THEN 
    64         ! eventually read netcdf file (monobloc)  for restarting on different number of processors 
    65         ! if restart_sed.nc exists, then set jlibalt to jpnf90 
    66         INQUIRE( FILE = 'restart_sed.nc', EXIST = llok ) 
    67         IF ( llok ) THEN ; jlibalt = jpnf90  ; ELSE ; jlibalt = jprstlib ; ENDIF 
    68       ENDIF 
    6962 
    7063      CALL iom_open( 'restart_sed', numrsr, kiolib = jlibalt )      
  • trunk/NEMOGCM/NEMO/TOP_SRC/PISCES/trcwri_pisces.F90

    r5836 r6140  
    2121   PUBLIC trc_wri_pisces  
    2222 
    23    !! * Substitutions 
    24 #  include "domzgr_substitute.h90" 
    25  
     23   !!---------------------------------------------------------------------- 
     24   !! NEMO/TOP 3.3 , NEMO Consortium (2010) 
     25   !! $Id: trcnam.F90 5836 2015-10-26 14:49:40Z cetlod $ 
     26   !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 
     27   !!---------------------------------------------------------------------- 
    2628CONTAINS 
    2729 
     
    5759         zdic(:,:) = 0. 
    5860         DO jk = 1, jpkm1 
    59             zdic(:,:) = zdic(:,:) + trn(:,:,jk,jpdic) * fse3t(:,:,jk) * tmask(:,:,jk) * 12. 
     61            zdic(:,:) = zdic(:,:) + trn(:,:,jk,jpdic) * e3t_n(:,:,jk) * tmask(:,:,jk) * 12. 
    6062         ENDDO 
    6163         CALL iom_put( 'INTDIC', zdic )      
     
    6466      IF( iom_use( "O2MIN" ) .OR. iom_use ( "ZO2MIN" ) ) THEN  ! Oxygen minimum concentration and depth  
    6567         zo2min   (:,:) = trn(:,:,1,jpoxy) * tmask(:,:,1) 
    66          zdepo2min(:,:) = fsdepw(:,:,1)    * tmask(:,:,1) 
     68         zdepo2min(:,:) = gdepw_n(:,:,1)   * tmask(:,:,1) 
    6769         DO jk = 2, jpkm1 
    6870            DO jj = 1, jpj 
     
    7173                     IF( trn(ji,jj,jk,jpoxy) < zo2min(ji,jj) ) then 
    7274                        zo2min   (ji,jj) = trn(ji,jj,jk,jpoxy) 
    73                         zdepo2min(ji,jj) = fsdepw(ji,jj,jk) 
     75                        zdepo2min(ji,jj) = gdepw_n(ji,jj,jk) 
    7476                     ENDIF 
    7577                  ENDIF 
Note: See TracChangeset for help on using the changeset viewer.