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 1300 for trunk/NEMO/NST_SRC/agrif_top_update.F90 – NEMO

Ignore:
Timestamp:
2009-02-09T16:36:04+01:00 (15 years ago)
Author:
rblod
Message:

Correct a bug in TOP update part

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMO/NST_SRC/agrif_top_update.F90

    r1271 r1300  
    1515   PUBLIC Agrif_Update_Trc 
    1616 
    17    INTEGER :: nbcline 
     17   INTEGER, PUBLIC :: nbcline_trc = 0 
    1818 
    1919   !!---------------------------------------------------------------------- 
     
    3939      Agrif_SpecialValueFineGrid = 0. 
    4040  
    41      IF (MOD(nbcline,nbclineupdate) == 0) THEN 
     41     IF (MOD(nbcline_trc,nbclineupdate) == 0) THEN 
    4242         CALL Agrif_Update_Variable(ztra,trn, procname=updateTRC) 
    4343      ELSE 
     
    4646 
    4747      Agrif_UseSpecialValueInUpdate = .FALSE. 
     48      nbcline_trc = nbcline_trc + 1 
    4849#endif 
    4950 
    5051   END SUBROUTINE Agrif_Update_Trc 
    5152 
    52    SUBROUTINE updateTRC(tabres,i1,i2,j1,j2,k1,k2,before) 
     53   SUBROUTINE updateTRC(tabres,i1,i2,j1,j2,k1,k2,l1,l2,before) 
    5354      !!--------------------------------------------- 
    5455      !!   *** ROUTINE UpdateTrc *** 
     
    5657#  include "domzgr_substitute.h90" 
    5758 
    58       INTEGER, INTENT(in) :: i1,i2,j1,j2,k1,k2 
    59       REAL, DIMENSION(i1:i2,j1:j2,k1:k2,jptra), INTENT(inout) :: tabres 
     59      INTEGER, INTENT(in) :: i1,i2,j1,j2,k1,k2,l1,l2 
     60      REAL, DIMENSION(i1:i2,j1:j2,k1:k2,l1:l2), INTENT(inout) :: tabres 
    6061      LOGICAL, INTENT(in) :: before 
    6162    
    62       INTEGER :: ji,jj,jk,jn 
    63  
    64       DO jn=1, jptra   
     63      INTEGER :: ji,jj,jk,jl 
    6564 
    6665         IF (before) THEN 
    67             DO jk=k1,k2 
    68                DO jj=j1,j2 
    69                   DO ji=i1,i2 
    70                      tabres(ji,jj,jk,jn) = trn(ji,jj,jk,jn) 
     66            DO jl=l1,l2 
     67               DO jk=k1,k2 
     68                  DO jj=j1,j2 
     69                     DO ji=i1,i2 
     70                        tabres(ji,jj,jk,jl) = trn(ji,jj,jk,jl) 
     71                     ENDDO 
    7172                  ENDDO 
    7273               ENDDO 
    7374            ENDDO 
    7475         ELSE 
    75             DO jk=k1,k2 
    76                DO jj=j1,j2 
    77                   DO ji=i1,i2 
    78                      IF (tabres(ji,jj,jk,jn).NE.0.) THEN 
    79                         trn(ji,jj,jk,jn) = tabres(ji,jj,jk,jn) * tmask(ji,jj,jk) 
    80                      ENDIF 
     76            DO jl=l1,l2 
     77               DO jk=k1,k2 
     78                  DO jj=j1,j2 
     79                     DO ji=i1,i2 
     80                        IF (tabres(ji,jj,jk,jl).NE.0.) THEN 
     81                           trn(ji,jj,jk,jl) = tabres(ji,jj,jk,jl) * tmask(ji,jj,jk) 
     82                        ENDIF 
     83                     ENDDO 
    8184                  ENDDO 
    8285               ENDDO 
    8386            ENDDO 
    8487         ENDIF 
    85  
    86       END DO 
    8788 
    8889   END SUBROUTINE updateTRC 
Note: See TracChangeset for help on using the changeset viewer.