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 12377 for NEMO/trunk/src/TOP/PISCES/P4Z/p4zsink.F90 – NEMO

Ignore:
Timestamp:
2020-02-12T15:39:06+01:00 (4 years ago)
Author:
acc
Message:

The big one. Merging all 2019 developments from the option 1 branch back onto the trunk.

This changeset reproduces 2019/dev_r11943_MERGE_2019 on the trunk using a 2-URL merge
onto a working copy of the trunk. I.e.:

svn merge --ignore-ancestry \

svn+ssh://acc@forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/NEMO/trunk \
svn+ssh://acc@forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/NEMO/branches/2019/dev_r11943_MERGE_2019 ./

The --ignore-ancestry flag avoids problems that may otherwise arise from the fact that
the merge history been trunk and branch may have been applied in a different order but
care has been taken before this step to ensure that all applicable fixes and updates
are present in the merge branch.

The trunk state just before this step has been branched to releases/release-4.0-HEAD
and that branch has been immediately tagged as releases/release-4.0.2. Any fixes
or additions in response to tickets on 4.0, 4.0.1 or 4.0.2 should be done on
releases/release-4.0-HEAD. From now on future 'point' releases (e.g. 4.0.2) will
remain unchanged with periodic releases as needs demand. Note release-4.0-HEAD is a
transitional naming convention. Future full releases, say 4.2, will have a release-4.2
branch which fulfills this role and the first point release (e.g. 4.2.0) will be made
immediately following the release branch creation.

2020 developments can be started from any trunk revision later than this one.

Location:
NEMO/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk

    • Property svn:externals
      •  

        old new  
        33^/utils/build/mk@HEAD         mk 
        44^/utils/tools@HEAD            tools 
        5 ^/vendors/AGRIF/dev@HEAD      ext/AGRIF 
         5^/vendors/AGRIF/dev_r11615_ENHANCE-04_namelists_as_internalfiles_agrif@HEAD      ext/AGRIF 
        66^/vendors/FCM@HEAD            ext/FCM 
        77^/vendors/IOIPSL@HEAD         ext/IOIPSL 
  • NEMO/trunk/src/TOP/PISCES/P4Z/p4zsink.F90

    r12276 r12377  
    3838   INTEGER  :: ik100 
    3939 
     40   !! * Substitutions 
     41#  include "do_loop_substitute.h90" 
    4042   !!---------------------------------------------------------------------- 
    4143   !! NEMO/TOP 4.0 , NEMO Consortium (2018) 
     
    4951   !!---------------------------------------------------------------------- 
    5052 
    51    SUBROUTINE p4z_sink ( kt, knt ) 
     53   SUBROUTINE p4z_sink ( kt, knt, Kbb, Kmm, Krhs ) 
    5254      !!--------------------------------------------------------------------- 
    5355      !!                     ***  ROUTINE p4z_sink  *** 
     
    5961      !!--------------------------------------------------------------------- 
    6062      INTEGER, INTENT(in) :: kt, knt 
     63      INTEGER, INTENT(in) :: Kbb, Kmm, Krhs  ! time level indices 
    6164      INTEGER  ::   ji, jj, jk 
    6265      CHARACTER (len=25) :: charout 
     
    7780      !    by data and from the coagulation theory 
    7881      !    ----------------------------------------------------------- 
    79       DO jk = 1, jpkm1 
    80          DO jj = 1, jpj 
    81             DO ji = 1,jpi 
    82                zmax  = MAX( heup_01(ji,jj), hmld(ji,jj) ) 
    83                zfact = MAX( 0., gdepw_n(ji,jj,jk+1) - zmax ) / wsbio2scale 
    84                wsbio4(ji,jj,jk) = wsbio2 + MAX(0., ( wsbio2max - wsbio2 )) * zfact 
    85             END DO 
    86          END DO 
    87       END DO 
     82      DO_3D_11_11( 1, jpkm1 ) 
     83         zmax  = MAX( heup_01(ji,jj), hmld(ji,jj) ) 
     84         zfact = MAX( 0., gdepw(ji,jj,jk+1,Kmm) - zmax ) / wsbio2scale 
     85         wsbio4(ji,jj,jk) = wsbio2 + MAX(0., ( wsbio2max - wsbio2 )) * zfact 
     86      END_3D 
    8887 
    8988      ! limit the values of the sinking speeds to avoid numerical instabilities   
     
    102101      !   Compute the sedimentation term using p4zsink2 for all the sinking particles 
    103102      !   ----------------------------------------------------- 
    104       CALL trc_sink( kt, wsbio3, sinking , jppoc, rfact2 ) 
    105       CALL trc_sink( kt, wsbio3, sinkfer , jpsfe, rfact2 ) 
    106       CALL trc_sink( kt, wsbio4, sinking2, jpgoc, rfact2 ) 
    107       CALL trc_sink( kt, wsbio4, sinkfer2, jpbfe, rfact2 ) 
    108       CALL trc_sink( kt, wsbio4, sinksil , jpgsi, rfact2 ) 
    109       CALL trc_sink( kt, wsbio4, sinkcal , jpcal, rfact2 ) 
     103      CALL trc_sink( kt, Kbb, Kmm, wsbio3, sinking , jppoc, rfact2 ) 
     104      CALL trc_sink( kt, Kbb, Kmm, wsbio3, sinkfer , jpsfe, rfact2 ) 
     105      CALL trc_sink( kt, Kbb, Kmm, wsbio4, sinking2, jpgoc, rfact2 ) 
     106      CALL trc_sink( kt, Kbb, Kmm, wsbio4, sinkfer2, jpbfe, rfact2 ) 
     107      CALL trc_sink( kt, Kbb, Kmm, wsbio4, sinksil , jpgsi, rfact2 ) 
     108      CALL trc_sink( kt, Kbb, Kmm, wsbio4, sinkcal , jpcal, rfact2 ) 
    110109 
    111110      IF( ln_p5z ) THEN 
     
    117116         !   Compute the sedimentation term using p4zsink2 for all the sinking particles 
    118117         !   ----------------------------------------------------- 
    119          CALL trc_sink( kt, wsbio3, sinkingn , jppon, rfact2 ) 
    120          CALL trc_sink( kt, wsbio3, sinkingp , jppop, rfact2 ) 
    121          CALL trc_sink( kt, wsbio4, sinking2n, jpgon, rfact2 ) 
    122          CALL trc_sink( kt, wsbio4, sinking2p, jpgop, rfact2 ) 
     118         CALL trc_sink( kt, Kbb, Kmm, wsbio3, sinkingn , jppon, rfact2 ) 
     119         CALL trc_sink( kt, Kbb, Kmm, wsbio3, sinkingp , jppop, rfact2 ) 
     120         CALL trc_sink( kt, Kbb, Kmm, wsbio4, sinking2n, jpgon, rfact2 ) 
     121         CALL trc_sink( kt, Kbb, Kmm, wsbio4, sinking2p, jpgop, rfact2 ) 
    123122      ENDIF 
    124123 
     
    142141      ENDIF 
    143142      ! 
    144       IF(ln_ctl)   THEN  ! print mean trends (used for debugging) 
     143      IF(sn_cfctl%l_prttrc)   THEN  ! print mean trends (used for debugging) 
    145144         WRITE(charout, FMT="('sink')") 
    146145         CALL prt_ctl_trc_info(charout) 
    147          CALL prt_ctl_trc(tab4d=tra, mask=tmask, clinfo=ctrcnm) 
     146         CALL prt_ctl_trc(tab4d=tr(:,:,:,:,Krhs), mask=tmask, clinfo=ctrcnm) 
    148147      ENDIF 
    149148      ! 
Note: See TracChangeset for help on using the changeset viewer.