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/TOP_SRC/PISCES/P4Z/p4zsbc.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/TOP_SRC/PISCES/P4Z/p4zsbc.F90

    r7698 r7753  
    116116            CALL fld_read( kt, 1, sf_dust ) 
    117117            IF( nn_ice_tr == -1 .AND. .NOT. ln_ironice ) THEN 
    118 !$OMP PARALLEL DO schedule(static) private(jj, ji) 
    119                DO jj = 1, jpj 
    120                   DO ji = 1, jpi 
    121                      dust(ji,jj) = sf_dust(1)%fnow(ji,jj,1) 
    122                   END DO 
    123                END DO 
     118               dust(:,:) = sf_dust(1)%fnow(:,:,1) 
    124119            ELSE 
    125 !$OMP PARALLEL DO schedule(static) private(jj, ji) 
    126                DO jj = 1, jpj 
    127                   DO ji = 1, jpi 
    128                      dust(ji,jj) = sf_dust(1)%fnow(ji,jj,1) * ( 1.0 - fr_i(ji,jj) ) 
    129                   END DO 
    130                END DO 
     120               dust(:,:) = sf_dust(1)%fnow(:,:,1) * ( 1.0 - fr_i(:,:) ) 
    131121            ENDIF 
    132122         ENDIF 
     
    136126         IF( kt == nit000 .OR. ( kt /= nit000 .AND. ntimes_solub > 1 ) ) THEN 
    137127            CALL fld_read( kt, 1, sf_solub ) 
    138 !$OMP PARALLEL DO schedule(static) private(jj, ji) 
    139             DO jj = 1, jpj 
    140                DO ji = 1, jpi 
    141                   solub(ji,jj) = sf_solub(1)%fnow(ji,jj,1) 
    142                END DO 
    143             END DO 
     128            solub(:,:) = sf_solub(1)%fnow(:,:,1) 
    144129         ENDIF 
    145130      ENDIF 
     
    152137            CALL fld_read( kt, 1, sf_river ) 
    153138            IF( ln_p4z ) THEN 
    154 !$OMP PARALLEL DO schedule(static) private(jj, ji, zcoef) 
    155139               DO jj = 1, jpj 
    156140                  DO ji = 1, jpi 
     
    169153               END DO 
    170154            ELSE    !  ln_p5z 
    171 !$OMP PARALLEL DO schedule(static) private(jj, ji, zcoef) 
    172155               DO jj = 1, jpj 
    173156                  DO ji = 1, jpi 
     
    196179      IF( ln_ndepo ) THEN 
    197180         IF( kt == nit000 .OR. ( kt /= nit000 .AND. ntimes_ndep > 1 ) ) THEN 
    198             zcoef = rno3 * 14E6 * ryyss 
    199             CALL fld_read( kt, 1, sf_ndepo ) 
    200 !$OMP PARALLEL DO schedule(static) private(jj, ji) 
    201             DO jj = 1, jpj 
    202                DO ji = 1, jpi 
    203                   nitdep(ji,jj) = sf_ndepo(1)%fnow(ji,jj,1) / zcoef / e3t_n(ji,jj,1) 
    204                END DO 
    205             END DO 
     181             zcoef = rno3 * 14E6 * ryyss 
     182             CALL fld_read( kt, 1, sf_ndepo ) 
     183             nitdep(:,:) = sf_ndepo(1)%fnow(:,:,1) / zcoef / e3t_n(:,:,1)  
    206184         ENDIF 
    207185         IF( .NOT.ln_linssh ) THEN 
    208             zcoef = rno3 * 14E6 * ryyss 
    209 !$OMP PARALLEL DO schedule(static) private(jj, ji) 
    210             DO jj = 1, jpj 
    211                DO ji = 1, jpi 
    212                   nitdep(ji,jj) = sf_ndepo(1)%fnow(ji,jj,1) / zcoef / e3t_n(ji,jj,1) 
    213                END DO 
    214             END DO 
     186           zcoef = rno3 * 14E6 * ryyss 
     187           nitdep(:,:) = sf_ndepo(1)%fnow(:,:,1) / zcoef / e3t_n(:,:,1)  
    215188         ENDIF 
    216189      ENDIF 
     
    319292      ! online configuration : computed in sbcrnf 
    320293      IF( l_offline ) THEN 
    321 !$OMP PARALLEL DO schedule(static) private(jj, ji) 
    322          DO jj = 1, jpj 
    323             DO ji = 1, jpi 
    324                nk_rnf(ji,jj) = 1 
    325                h_rnf (ji,jj) = gdept_n(ji,jj,1) 
    326             END DO 
    327          END DO 
     294        nk_rnf(:,:) = 1 
     295        h_rnf (:,:) = gdept_n(:,:,1) 
    328296      ENDIF 
    329297 
     
    498466         IF (lwp) WRITE(numout,*) ' Level corresponding to 50m depth ',  ik50,' ', gdept_1d(ik50+1) 
    499467         IF (lwp) WRITE(numout,*) 
    500 !$OMP PARALLEL DO schedule(static) private(jk, jj, ji, zmaskt) 
    501468         DO jk = 1, ik50 
    502469            DO jj = 2, jpjm1 
     
    513480         CALL lbc_lnk( zcmask , 'T', 1. )      ! lateral boundary conditions on cmask   (sign unchanged) 
    514481         ! 
    515 !$OMP PARALLEL 
    516 !$OMP DO schedule(static) private(jk, jj, ji, zexpide, zdenitide) 
    517482         DO jk = 1, jpk 
    518483            DO jj = 1, jpj 
     
    524489            END DO 
    525490         END DO 
    526 !$OMP END DO NOWAIT 
    527491         ! Coastal supply of iron 
    528492         ! ------------------------- 
    529 !$OMP DO schedule(static) private(jj,ji) 
    530          DO jj = 1, jpj 
    531             DO ji = 1, jpi 
    532                ironsed(ji,jj,jpk) = 0._wp 
    533             END DO 
     493         ironsed(:,:,jpk) = 0._wp 
     494         DO jk = 1, jpkm1 
     495            ironsed(:,:,jk) = sedfeinput * zcmask(:,:,jk) / ( e3t_0(:,:,jk) * rday ) 
    534496         END DO 
    535 !$OMP DO schedule(static) private(jk,jj,ji) 
    536          DO jk = 1, jpkm1 
    537             DO jj = 1, jpj 
    538                DO ji = 1, jpi 
    539                   ironsed(ji,jj,jk) = sedfeinput * zcmask(ji,jj,jk) / ( e3t_0(ji,jj,jk) * rday ) 
    540                END DO 
    541             END DO 
    542          END DO 
    543 !$OMP END PARALLEL 
    544497         DEALLOCATE( zcmask) 
    545498      ENDIF 
Note: See TracChangeset for help on using the changeset viewer.