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 7753 for trunk/NEMOGCM/NEMO/OPA_SRC/TRA/trazdf_imp.F90 – NEMO

Ignore:
Timestamp:
2017-03-03T12:46:59+01:00 (7 years ago)
Author:
mocavero
Message:

Reverting trunk to remove OpenMP

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMOGCM/NEMO/OPA_SRC/TRA/trazdf_imp.F90

    r7698 r7753  
    106106            ! 
    107107            ! vertical mixing coef.: avt for temperature, avs for salinity and passive tracers 
    108             IF( cdtype == 'TRA' .AND. jn == jp_tem ) THEN 
    109 !$OMP PARALLEL DO schedule(static) private(jj, ji) 
    110                DO jj = 1, jpj 
    111                   DO ji = 1, jpi 
    112                      zwt(ji,jj,2:jpk) = avt  (ji,jj,2:jpk) 
    113                   END DO 
    114                END DO 
    115             ELSE                                             
    116 !$OMP PARALLEL DO schedule(static) private(jj, ji) 
    117                DO jj = 1, jpj 
    118                   DO ji = 1, jpi 
    119                      zwt(ji,jj,2:jpk) = fsavs(ji,jj,2:jpk) 
    120                   END DO 
    121                END DO 
     108            IF( cdtype == 'TRA' .AND. jn == jp_tem ) THEN   ;   zwt(:,:,2:jpk) = avt  (:,:,2:jpk) 
     109            ELSE                                            ;   zwt(:,:,2:jpk) = fsavs(:,:,2:jpk) 
    122110            ENDIF 
    123 !$OMP PARALLEL DO schedule(static) private(jj, ji) 
    124             DO jj = 1, jpj 
    125                DO ji = 1, jpi 
    126                   zwt(ji,jj,1) = 0._wp 
    127                END DO 
    128             END DO 
     111            zwt(:,:,1) = 0._wp 
    129112            ! 
    130113            IF( l_ldfslp ) THEN            ! isoneutral diffusion: add the contribution  
    131114               IF( ln_traldf_msc  ) THEN     ! MSC iso-neutral operator  
    132 !$OMP PARALLEL DO schedule(static) private(jk, jj, ji) 
    133115                  DO jk = 2, jpkm1 
    134116                     DO jj = 2, jpjm1 
     
    139121                  END DO 
    140122               ELSE                          ! standard or triad iso-neutral operator 
    141 !$OMP PARALLEL DO schedule(static) private(jk, jj, ji) 
    142123                  DO jk = 2, jpkm1 
    143124                     DO jj = 2, jpjm1 
     
    151132            ! 
    152133            ! Diagonal, lower (i), upper (s)  (including the bottom boundary condition since avt is masked) 
    153 !$OMP PARALLEL  
    154 !$OMP DO schedule(static) private(jk, jj, ji) 
    155134            DO jk = 1, jpkm1 
    156135               DO jj = 2, jpjm1 
     
    183162            !   used as a work space array: its value is modified. 
    184163            ! 
    185 !$OMP DO schedule(static) private(jj, ji) 
    186164            DO jj = 2, jpjm1        !* 1st recurrence:   Tk = Dk - Ik Sk-1 / Tk-1   (increasing k) 
    187165               DO ji = fs_2, fs_jpim1            ! done one for all passive tracers (so included in the IF instruction) 
     
    189167               END DO 
    190168            END DO 
    191 !$OMP END DO NOWAIT  
    192169            DO jk = 2, jpkm1 
    193 !$OMP DO schedule(static) private(jj, ji) 
    194170               DO jj = 2, jpjm1 
    195171                  DO ji = fs_2, fs_jpim1 
     
    198174               END DO 
    199175            END DO 
    200 !$OMP END PARALLEL  
    201176            ! 
    202177         ENDIF  
    203178         !          
    204 !$OMP PARALLEL  
    205 !$OMP DO schedule(static) private(jj, ji) 
    206179         DO jj = 2, jpjm1           !* 2nd recurrence:    Zk = Yk - Ik / Tk-1  Zk-1 
    207180            DO ji = fs_2, fs_jpim1 
     
    210183         END DO 
    211184         DO jk = 2, jpkm1 
    212 !$OMP DO schedule(static) private(jj, ji, zrhs) 
    213185            DO jj = 2, jpjm1 
    214186               DO ji = fs_2, fs_jpim1 
     
    219191         END DO 
    220192         ! 
    221 !$OMP DO schedule(static) private(jj, ji) 
    222193         DO jj = 2, jpjm1           !* 3d recurrence:    Xk = (Zk - Sk Xk+1 ) / Tk   (result is the after tracer) 
    223194            DO ji = fs_2, fs_jpim1 
     
    226197         END DO 
    227198         DO jk = jpk-2, 1, -1 
    228 !$OMP DO schedule(static) private(jj, ji) 
    229199            DO jj = 2, jpjm1 
    230200               DO ji = fs_2, fs_jpim1 
     
    234204            END DO 
    235205         END DO 
    236 !$OMP END PARALLEL  
    237206         !                                            ! ================= ! 
    238207      END DO                                          !  end tracer loop  ! 
Note: See TracChangeset for help on using the changeset viewer.