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/SED/seddta.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/SED/seddta.F90

    r10362 r12377  
    2222   REAL(wp) ::  conv2    ! [kg/m2/month]-->[g/cm2/s] ( 1 month has 30 days ) 
    2323 
     24   !! * Substitutions 
     25#  include "do_loop_substitute.h90" 
    2426   !! $Id$ 
    2527CONTAINS 
     
    2931   !!--------------------------------------------------------------------------- 
    3032 
    31    SUBROUTINE sed_dta( kt ) 
     33   SUBROUTINE sed_dta( kt, Kbb, Kmm ) 
    3234      !!---------------------------------------------------------------------- 
    3335      !!                   ***  ROUTINE sed_dta  *** 
     
    4345 
    4446      !! Arguments 
    45       INTEGER, INTENT(in) ::  kt    ! time-step 
     47      INTEGER, INTENT(in) ::  kt         ! time-step 
     48      INTEGER, INTENT(in) ::  Kbb, Kmm   ! time level indices 
    4649 
    4750      !! * Local declarations 
     
    9295      !    ----------------------------------------------------------- 
    9396      IF (ln_sediment_offline) THEN 
    94          DO jj = 1, jpj 
    95             DO ji = 1, jpi 
    96                ikt = mbkt(ji,jj) 
    97                zwsbio4(ji,jj) = wsbio2 / rday 
    98                zwsbio3(ji,jj) = wsbio  / rday 
    99             END DO 
    100          END DO 
     97         DO_2D_11_11 
     98            ikt = mbkt(ji,jj) 
     99            zwsbio4(ji,jj) = wsbio2 / rday 
     100            zwsbio3(ji,jj) = wsbio  / rday 
     101         END_2D 
    101102      ELSE 
    102          DO jj = 1, jpj 
    103             DO ji = 1, jpi 
    104                ikt = mbkt(ji,jj) 
    105                zdep = e3t_n(ji,jj,ikt) / r2dttrc 
    106                zwsbio4(ji,jj) = MIN( 0.99 * zdep, wsbio4(ji,jj,ikt) / rday ) 
    107                zwsbio3(ji,jj) = MIN( 0.99 * zdep, wsbio3(ji,jj,ikt) / rday ) 
    108             END DO 
    109          END DO 
     103         DO_2D_11_11 
     104            ikt = mbkt(ji,jj) 
     105            zdep = e3t(ji,jj,ikt,Kmm) / r2dttrc 
     106            zwsbio4(ji,jj) = MIN( 0.99 * zdep, wsbio4(ji,jj,ikt) / rday ) 
     107            zwsbio3(ji,jj) = MIN( 0.99 * zdep, wsbio3(ji,jj,ikt) / rday ) 
     108         END_2D 
    110109      ENDIF 
    111110 
    112111      trc_data(:,:,:) = 0. 
    113       DO jj = 1,jpj 
    114          DO ji = 1, jpi 
    115             ikt = mbkt(ji,jj) 
    116             IF ( tmask(ji,jj,ikt) == 1 ) THEN 
    117                trc_data(ji,jj,1)   = trb(ji,jj,ikt,jpsil) 
    118                trc_data(ji,jj,2)   = trb(ji,jj,ikt,jpoxy) 
    119                trc_data(ji,jj,3)   = trb(ji,jj,ikt,jpdic) 
    120                trc_data(ji,jj,4)   = trb(ji,jj,ikt,jpno3) / 7.625 
    121                trc_data(ji,jj,5)   = trb(ji,jj,ikt,jppo4) / 122. 
    122                trc_data(ji,jj,6)   = trb(ji,jj,ikt,jptal) 
    123                trc_data(ji,jj,7)   = trb(ji,jj,ikt,jpnh4) / 7.625 
    124                trc_data(ji,jj,8)   = 0.0 
    125                trc_data(ji,jj,9)   = 28.0E-3 
    126                trc_data(ji,jj,10)  = trb(ji,jj,ikt,jpfer) 
    127                trc_data(ji,jj,11 ) = MIN(trb(ji,jj,ikt,jpgsi), 1E-4) * zwsbio4(ji,jj) * 1E3 
    128                trc_data(ji,jj,12 ) = MIN(trb(ji,jj,ikt,jppoc), 1E-4) * zwsbio3(ji,jj) * 1E3 
    129                trc_data(ji,jj,13 ) = MIN(trb(ji,jj,ikt,jpgoc), 1E-4) * zwsbio4(ji,jj) * 1E3 
    130                trc_data(ji,jj,14)  = MIN(trb(ji,jj,ikt,jpcal), 1E-4) * zwsbio4(ji,jj) * 1E3 
    131                trc_data(ji,jj,15)  = tsn(ji,jj,ikt,jp_tem) 
    132                trc_data(ji,jj,16)  = tsn(ji,jj,ikt,jp_sal) 
    133                trc_data(ji,jj,17 ) = ( trb(ji,jj,ikt,jpsfe) * zwsbio3(ji,jj) + trb(ji,jj,ikt,jpbfe)  & 
    134                &                     * zwsbio4(ji,jj)  ) * 1E3 / ( trc_data(ji,jj,12 ) + trc_data(ji,jj,13 ) + rtrn ) 
    135                trc_data(ji,jj,17 ) = MIN(1E-3, trc_data(ji,jj,17 ) ) 
    136             ENDIF 
    137          ENDDO 
    138       ENDDO 
     112      DO_2D_11_11 
     113         ikt = mbkt(ji,jj) 
     114         IF ( tmask(ji,jj,ikt) == 1 ) THEN 
     115            trc_data(ji,jj,1)   = tr(ji,jj,ikt,jpsil,Kbb) 
     116            trc_data(ji,jj,2)   = tr(ji,jj,ikt,jpoxy,Kbb) 
     117            trc_data(ji,jj,3)   = tr(ji,jj,ikt,jpdic,Kbb) 
     118            trc_data(ji,jj,4)   = tr(ji,jj,ikt,jpno3,Kbb) / 7.625 
     119            trc_data(ji,jj,5)   = tr(ji,jj,ikt,jppo4,Kbb) / 122. 
     120            trc_data(ji,jj,6)   = tr(ji,jj,ikt,jptal,Kbb) 
     121            trc_data(ji,jj,7)   = tr(ji,jj,ikt,jpnh4,Kbb) / 7.625 
     122            trc_data(ji,jj,8)   = 0.0 
     123            trc_data(ji,jj,9)   = 28.0E-3 
     124            trc_data(ji,jj,10)  = tr(ji,jj,ikt,jpfer,Kbb) 
     125            trc_data(ji,jj,11 ) = MIN(tr(ji,jj,ikt,jpgsi,Kbb), 1E-4) * zwsbio4(ji,jj) * 1E3 
     126            trc_data(ji,jj,12 ) = MIN(tr(ji,jj,ikt,jppoc,Kbb), 1E-4) * zwsbio3(ji,jj) * 1E3 
     127            trc_data(ji,jj,13 ) = MIN(tr(ji,jj,ikt,jpgoc,Kbb), 1E-4) * zwsbio4(ji,jj) * 1E3 
     128            trc_data(ji,jj,14)  = MIN(tr(ji,jj,ikt,jpcal,Kbb), 1E-4) * zwsbio4(ji,jj) * 1E3 
     129            trc_data(ji,jj,15)  = ts(ji,jj,ikt,jp_tem,Kmm) 
     130            trc_data(ji,jj,16)  = ts(ji,jj,ikt,jp_sal,Kmm) 
     131            trc_data(ji,jj,17 ) = ( tr(ji,jj,ikt,jpsfe,Kbb) * zwsbio3(ji,jj) + tr(ji,jj,ikt,jpbfe,Kbb)  & 
     132            &                     * zwsbio4(ji,jj)  ) * 1E3 / ( trc_data(ji,jj,12 ) + trc_data(ji,jj,13 ) + rtrn ) 
     133            trc_data(ji,jj,17 ) = MIN(1E-3, trc_data(ji,jj,17 ) ) 
     134         ENDIF 
     135      END_2D 
    139136 
    140137      ! Pore water initial concentration [mol/l] in  k=1 
Note: See TracChangeset for help on using the changeset viewer.