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 5433 for branches/2014/dev_r4650_UKMO10_Tidally_Meaned_Diagnostics/NEMOGCM/NEMO/OPA_SRC/DIA/diatmb.F90 – NEMO

Ignore:
Timestamp:
2015-06-18T08:37:20+02:00 (9 years ago)
Author:
deazer
Message:

Corrected loop order, and changed variable names, checked with sette , ok
new output also ok.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2014/dev_r4650_UKMO10_Tidally_Meaned_Diagnostics/NEMOGCM/NEMO/OPA_SRC/DIA/diatmb.F90

    r4756 r5433  
    6262   END SUBROUTINE dia_tmb_init 
    6363 
    64    SUBROUTINE dia_calctmb( infield,outtmb ) 
     64   SUBROUTINE dia_calctmb( pinfield,pouttmb ) 
    6565      !!--------------------------------------------------------------------- 
    6666      !!                  ***  ROUTINE dia_tmb  *** 
     
    8181 
    8282      ! Routine arguments 
    83       REAL(wp), DIMENSION(jpi, jpj, jpk), INTENT(IN   ) :: infield    ! Input 3d field and mask 
    84       REAL(wp), DIMENSION(jpi, jpj, 3  ), INTENT(  OUT) :: outtmb     ! Output top, middle, bottom 
     83      REAL(wp), DIMENSION(jpi, jpj, jpk), INTENT(IN   ) :: pinfield    ! Input 3d field and mask 
     84      REAL(wp), DIMENSION(jpi, jpj, 3  ), INTENT(  OUT) :: pouttmb     ! Output top, middle, bottom 
    8585 
    8686 
     
    9595 
    9696      ! Calculate top 
    97       outtmb(:,:,1) = infield(:,:,1)*tmask(:,:,1)  + zmdi*(1.0-tmask(:,:,1)) 
     97      pouttmb(:,:,1) = pinfield(:,:,1)*tmask(:,:,1)  + zmdi*(1.0-tmask(:,:,1)) 
    9898 
    9999      ! Calculate middle 
    100       DO ji = 1,jpi 
    101          DO jj = 1,jpj 
     100      DO jj = 1,jpj 
     101         DO ji = 1,jpi 
    102102            jk              = max(1,mbathy(ji,jj)/2) 
    103             outtmb(ji,jj,2) = infield(ji,jj,jk)*tmask(ji,jj,jk)  + zmdi*(1.0-tmask(ji,jj,jk)) 
     103            pouttmb(ji,jj,2) = pinfield(ji,jj,jk)*tmask(ji,jj,jk)  + zmdi*(1.0-tmask(ji,jj,jk)) 
    104104         END DO 
    105105      END DO 
    106106 
    107107      ! Calculate bottom 
    108       DO ji = 1,jpi 
    109          DO jj = 1,jpj 
     108      DO jj = 1,jpj 
     109         DO ji = 1,jpi 
    110110            jk              = max(1,mbathy(ji,jj) - 1) 
    111             outtmb(ji,jj,3) = infield(ji,jj,jk)*tmask(ji,jj,jk)  + zmdi*(1.0-tmask(ji,jj,jk)) 
     111            pouttmb(ji,jj,3) = pinfield(ji,jj,jk)*tmask(ji,jj,jk)  + zmdi*(1.0-tmask(ji,jj,jk)) 
    112112         END DO 
    113113      END DO 
Note: See TracChangeset for help on using the changeset viewer.