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

Ignore:
Timestamp:
2020-07-10T20:24:21+02:00 (4 years ago)
Author:
acc
Message:

Replace do-loop macros in the trunk with alternative forms with greater flexibility for extra halo applications. This alters a lot of routines but does not change any behaviour or results. do_loop_substitute.h90 is greatly simplified by this change. SETTE results are identical to those with the previous revision

File:
1 edited

Legend:

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

    r13286 r13295  
    125125      ! day length in hours 
    126126      zstrn(:,:) = 0. 
    127       DO_2D_11_11 
     127      DO_2D( 1, 1, 1, 1 ) 
    128128         zargu = TAN( zcodel ) * TAN( gphit(ji,jj) * rad ) 
    129129         zargu = MAX( -1., MIN(  1., zargu ) ) 
     
    132132 
    133133         ! Impact of the day duration on phytoplankton growth 
    134       DO_3D_11_11( 1, jpkm1 ) 
     134      DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    135135         IF( etot_ndcy(ji,jj,jk) > 1.E-3 ) THEN 
    136136            zval = MAX( 1., zstrn(ji,jj) ) 
     
    152152      WHERE( zstrn(:,:) < 1.e0 ) zstrn(:,:) = 24. 
    153153 
    154       DO_3D_11_11( 1, jpkm1 ) 
     154      DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    155155         IF( etot_ndcy(ji,jj,jk) > 1.E-3 ) THEN 
    156156            ! Computation of the P-I slope for nanos and diatoms 
     
    186186      END_3D 
    187187 
    188       DO_3D_11_11( 1, jpkm1 ) 
     188      DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    189189 
    190190          IF( etot_ndcy(ji,jj,jk) > 1.E-3 ) THEN 
     
    208208 
    209209      !  Sea-ice effect on production                                                                                
    210       DO_3D_11_11( 1, jpkm1 ) 
     210      DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    211211         zprbio(ji,jj,jk)  = zprbio(ji,jj,jk) * ( 1. - fr_i(ji,jj) ) 
    212212         zprpic(ji,jj,jk)  = zprpic(ji,jj,jk) * ( 1. - fr_i(ji,jj) )  
     
    216216 
    217217      ! Computation of the various production terms of nanophytoplankton  
    218       DO_3D_11_11( 1, jpkm1 ) 
     218      DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    219219         IF( etot_ndcy(ji,jj,jk) > 1.E-3 ) THEN 
    220220            !  production terms for nanophyto. 
     
    249249 
    250250      ! Computation of the various production terms of picophytoplankton  
    251       DO_3D_11_11( 1, jpkm1 ) 
     251      DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    252252         IF( etot_ndcy(ji,jj,jk) > 1.E-3 ) THEN 
    253253            !  production terms for picophyto. 
     
    282282 
    283283      ! Computation of the various production terms of diatoms 
    284       DO_3D_11_11( 1, jpkm1 ) 
     284      DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    285285         IF( etot_ndcy(ji,jj,jk) > 1.E-3 ) THEN 
    286286            !  production terms for diatomees 
     
    316316      END_3D 
    317317 
    318       DO_3D_11_11( 1, jpkm1 ) 
     318      DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    319319         IF( etot_ndcy(ji,jj,jk) > 1.E-3 ) THEN 
    320320               !  production terms for nanophyto. ( chlorophyll ) 
     
    347347 
    348348      !   Update the arrays TRA which contain the biological sources and sinks 
    349       DO_3D_11_11( 1, jpkm1 ) 
     349      DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    350350        zprontot = zpronewn(ji,jj,jk) + zproregn(ji,jj,jk) 
    351351        zproptot = zpronewp(ji,jj,jk) + zproregp(ji,jj,jk) 
     
    410410     IF( ln_ligand ) THEN 
    411411         zpligprod1(:,:,:) = 0._wp    ;    zpligprod2(:,:,:) = 0._wp              
    412          DO_3D_11_11( 1, jpkm1 ) 
     412         DO_3D( 1, 1, 1, 1, 1, jpkm1 ) 
    413413           zdocprod = excretd * zprorcad(ji,jj,jk) + excretn * zprorcan(ji,jj,jk) + excretp * zprorcap(ji,jj,jk) 
    414414           zfeup    = texcretn * zprofen(ji,jj,jk) + texcretd * zprofed(ji,jj,jk) + texcretp * zprofep(ji,jj,jk) 
Note: See TracChangeset for help on using the changeset viewer.