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 7525 for branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC – NEMO

Ignore:
Timestamp:
2017-01-04T17:47:47+01:00 (8 years ago)
Author:
mocavero
Message:

changes after review

Location:
branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC
Files:
15 edited

Legend:

Unmodified
Added
Removed
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zche.F90

    r7037 r7525  
    199199      ! CHEMICAL CONSTANTS - DEEP OCEAN 
    200200      ! ------------------------------- 
    201 !$OMP DO schedule(static) private(jk,jj,ji,zpres,ztkel,zsal,zsqrt,zsal15,zlogt,ztr,zis,zis2,zisqrt,ztc,zcl,zst,zft,zcks,zckf,zckb,zck1,zck2,zckw,zaksp0,zak1,zak2,zakb,zakw,zaksp1,zcpexp,zcpexp2,zbuf1,zbuf2) 
     201!$OMP DO schedule(static) private(jk,jj,ji,zpres,ztkel,zsal,zsqrt,zsal15,zlogt,ztr,zis,zis2,zisqrt,ztc,zcl,zst) & 
     202!$OMP& private(zft,zcks,zckf,zckb,zck1,zck2,zckw,zaksp0,zak1,zak2,zakb,zakw,zaksp1,zcpexp,zcpexp2,zbuf1,zbuf2) 
    202203      DO jk = 1, jpk 
    203204         DO jj = 1, jpj 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zfechem.F90

    r7508 r7525  
    136136            END DO 
    137137         END DO 
    138 !$OMP DO schedule(static) private(jk,jj,ji,ztligand,zionic,zph,zoxy,zkox,zkph2,zkph1,ztfe,za,zb,zc,zkappa1,zkappa2,za2,za1,za0,zp,zq,zp3,zq2,zd,zr,zphi,zxs,zfff,zfunc) 
     138!$OMP DO schedule(static) private(jk,jj,ji,ztligand,zionic,zph,zoxy,zkox,zkph2,zkph1,ztfe,za) & 
     139!$OMP& private(zb,zc,zkappa1,zkappa2,za2,za1,za0,zp,zq,zp3,zq2,zd,zr,zphi,zxs,zfff,zfunc) 
    139140         DO jk = 1, jpkm1 
    140141            DO jj = 1, jpj 
     
    240241      zdust = 0.         ! if no dust available 
    241242      ! 
    242 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji,zkeq,zfesatur,ztfe,zstep,zfeequi,zfecoll,ztrc,zlam1b,zscave,zdenom1,zdenom2,zlamfac,zdep,zcoag,zlam1a,zaggdfea,zaggdfeb) 
     243!$OMP PARALLEL DO schedule(static) private(jk,jj,ji,zkeq,zfesatur,ztfe,zstep,zfeequi,zfecoll) & 
     244!$OMP& private(ztrc,zlam1b,zscave,zdenom1,zdenom2,zlamfac,zdep,zcoag,zlam1a,zaggdfea,zaggdfeb) 
    243245      DO jk = 1, jpkm1 
    244246         DO jj = 1, jpj 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zlim.F90

    r7037 r7525  
    8484      ! 
    8585!$OMP PARALLEL 
    86 !$OMP DO schedule(static) private(jk,jj,ji,zno3,zferlim,zconcd,zconcd2,zconcn,zconcn2,z1_trbphy,z1_trbdia,zconc1d,zconc1dnh4,zconc0n,zconc0nnh4,zdenom,zlim1,zlim2,zlim3,zlim4,zratio,zironmin) 
     86!$OMP DO schedule(static) private(jk,jj,ji,zno3,zferlim,zconcd,zconcd2,zconcn,zconcn2,z1_trbphy,z1_trbdia) & 
     87!$OMP& private(zconc1d,zconc1dnh4,zconc0n,zconc0nnh4,zdenom,zlim1,zlim2,zlim3,zlim4,zratio,zironmin) 
    8788      DO jk = 1, jpkm1 
    8889         DO jj = 1, jpj 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmeso.F90

    r7508 r7525  
    9999      ENDIF 
    100100 
    101 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji,zcompam,zstep,zfact,zrespz2,ztortz2,zcompadi,zcompaz,zcompaph,zcompapoc,zfood,zfoodlim,zdenom,zdenom2,zgraze2,zgrazd,zgrazz,zgrazn,zgrazpoc,zgraznf,zgrazf,zgrazpof,zgrazffeg,zgrazfffg,zgrazffep,zgrazfffp,zgraztot,zproport,zratio,zratio2,zfrac,zfracfe,zgraztotf,zgrasrat,zgrasratn,zepshert,zepsherv,zgrarem2,zgrafer2,zgrapoc2,zgrarsig,zmortz2,zmortzgoc,zprcaca) 
     101!$OMP PARALLEL DO schedule(static) private(jk,jj,ji,zcompam,zstep,zfact,zrespz2,ztortz2,zcompadi,zcompaz,zcompaph) & 
     102!$OMP& private(zcompapoc,zfood,zfoodlim,zdenom,zdenom2,zgraze2,zgrazd,zgrazz,zgrazn,zgrazpoc,zgraznf,zgrazf,zgrazpof) & 
     103!$OMP& private(zgrazffeg,zgrazfffg,zgrazffep,zgrazfffp,zgraztot,zproport,zratio,zratio2,zfrac,zfracfe,zgraztotf,zgrasrat) & 
     104!$OMP& private(zgrasratn,zepshert,zepsherv,zgrarem2,zgrafer2,zgrapoc2,zgrarsig,zmortz2,zmortzgoc,zprcaca) 
    102105      DO jk = 1, jpkm1 
    103106         DO jj = 1, jpj 
     
    269272         IF( iom_use( "PCAL" ) ) THEN 
    270273!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    271          DO jk = 1, jpk 
    272             DO jj = 1, jpj 
    273                DO ji = 1, jpi 
    274                   zw3d(ji,jj,jk) = prodcal(ji,jj,jk) * 1.e+3 * rfact2r * tmask(ji,jj,jk)   !  Calcite production 
     274            DO jk = 1, jpk 
     275               DO jj = 1, jpj 
     276                  DO ji = 1, jpi 
     277                     zw3d(ji,jj,jk) = prodcal(ji,jj,jk) * 1.e+3 * rfact2r * tmask(ji,jj,jk)   !  Calcite production 
     278                  END DO 
     279               END DO 
    275280            END DO 
    276          END DO 
    277       END DO 
    278281            CALL iom_put( "PCAL", zw3d )   
    279282         ENDIF 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmicro.F90

    r7508 r7525  
    8585      IF( lk_iomput )  CALL wrk_alloc( jpi, jpj, jpk, zgrazing ) 
    8686      ! 
    87 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji,zcompaz,zstep,zfact,zrespz,ztortz,zcompadi,zcompaph,zcompapoc,zfood,zfoodlim,zdenom,zdenom2,zgraze,zgrazp,zgrazm,zgrazsd,zgrazpf,zgrazmf,zgrazsf,zgraztot,zgraztotf,zgraztotn,zgrasrat,zgrasratn,zepshert,zepsherv,zgrafer,zgrarem,zgrapoc,zgrarsig,zmortz,zprcaca) 
     87!$OMP PARALLEL DO schedule(static) private(jk,jj,ji,zcompaz,zstep,zfact,zrespz,ztortz,zcompadi,zcompaph,zcompapoc) & 
     88!$OMP& private(zfood,zfoodlim,zdenom,zdenom2,zgraze,zgrazp,zgrazm,zgrazsd,zgrazpf,zgrazmf,zgrazsf,zgraztot,zgraztotf) & 
     89!$OMP& private(zgraztotn,zgrasrat,zgrasratn,zepshert,zepsherv,zgrafer,zgrarem,zgrapoc,zgrarsig,zmortz,zprcaca) 
    8890      DO jk = 1, jpkm1 
    8991         DO jj = 1, jpj 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zopt.F90

    r7508 r7525  
    9090!$OMP PARALLEL 
    9191!$OMP DO schedule(static) private(jk,jj,ji) 
    92             DO jk = 1, jpk 
    93                DO jj = 1, jpj 
    94                   DO ji = 1, jpi 
    95                      ze1(ji,jj,jk) = 0._wp 
    96                      ze2(ji,jj,jk) = 0._wp 
    97                      ze3(ji,jj,jk) = 0._wp 
    98                   END DO 
    99                END DO 
    100             END DO 
     92      DO jk = 1, jpk 
     93         DO jj = 1, jpj 
     94            DO ji = 1, jpi 
     95               ze1(ji,jj,jk) = 0._wp 
     96               ze2(ji,jj,jk) = 0._wp 
     97               ze3(ji,jj,jk) = 0._wp 
     98            END DO 
     99         END DO 
     100      END DO 
    101101!$OMP END DO NOWAIT 
    102102      !                                        !* attenuation coef. function of Chlorophyll and wavelength (Red-Green-Blue) 
     
    249249      ! 
    250250!$OMP DO schedule(static) private(jk,jj,ji) 
    251             DO jk = 1, jpk 
    252                DO jj = 1, jpj 
    253                   DO ji = 1, jpi 
    254       emoy(ji,jj,jk) = etot(ji,jj,jk)       ! remineralisation 
    255       zpar(ji,jj,jk) = etot_ndcy(ji,jj,jk)  ! diagnostic : PAR with no diurnal cycle  
     251      DO jk = 1, jpk 
     252         DO jj = 1, jpj 
     253            DO ji = 1, jpi 
     254               emoy(ji,jj,jk) = etot(ji,jj,jk)       ! remineralisation 
     255               zpar(ji,jj,jk) = etot_ndcy(ji,jj,jk)  ! diagnostic : PAR with no diurnal cycle  
    256256            END DO 
    257257         END DO 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zprod.F90

    r7513 r7525  
    129129 
    130130      IF( lk_degrad ) THEN 
    131 !$OMP DO schedule(static) private(jk,jj,ji) 
    132       DO jk = 1, jpk 
    133          DO jj = 1, jpj 
    134             DO ji = 1, jpi 
    135                prmax(ji,jj,jk) = prmax(ji,jj,jk) * facvol(ji,jj,jk)  
    136             END DO 
    137          END DO 
    138       END DO  
     131!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
     132         DO jk = 1, jpk 
     133            DO jj = 1, jpj 
     134               DO ji = 1, jpi 
     135                  prmax(ji,jj,jk) = prmax(ji,jj,jk) * facvol(ji,jj,jk)  
     136               END DO 
     137            END DO 
     138         END DO  
    139139      END IF 
    140140 
     
    453453          IF( iom_use( "PPPHY" ) .OR. iom_use( "PPPHY2" ) )  THEN 
    454454!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    455             DO jk = 1, jpk 
    456                DO jj = 1, jpj 
    457                   DO ji = 1, jpi 
    458                      zw3d(ji,jj,jk) = zprorca (ji,jj,jk) * zfact * tmask(ji,jj,jk)  ! primary production by nanophyto 
    459                   END DO 
    460                END DO 
    461             END DO 
    462               CALL iom_put( "PPPHY"  , zw3d ) 
    463 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    464             DO jk = 1, jpk 
    465                DO jj = 1, jpj 
    466                   DO ji = 1, jpi 
    467                      zw3d(ji,jj,jk) = zprorcad (ji,jj,jk) * zfact * tmask(ji,jj,jk)  ! primary production by nanophyto 
    468                   END DO 
    469                END DO 
    470             END DO 
     455             DO jk = 1, jpk 
     456                DO jj = 1, jpj 
     457                   DO ji = 1, jpi 
     458                      zw3d(ji,jj,jk) = zprorca (ji,jj,jk) * zfact * tmask(ji,jj,jk)  ! primary production by nanophyto 
     459                   END DO 
     460                END DO 
     461             END DO 
     462             CALL iom_put( "PPPHY"  , zw3d ) 
     463!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
     464             DO jk = 1, jpk 
     465                DO jj = 1, jpj 
     466                   DO ji = 1, jpi 
     467                      zw3d(ji,jj,jk) = zprorcad (ji,jj,jk) * zfact * tmask(ji,jj,jk)  ! primary production by nanophyto 
     468                   END DO 
     469                END DO 
     470             END DO 
     471             ! 
     472             CALL iom_put( "PPPHY2"  , zw3d ) 
     473          ENDIF 
     474          IF( iom_use( "PPNEWN" ) .OR. iom_use( "PPNEWD" ) )  THEN 
     475!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
     476             DO jk = 1, jpk 
     477                DO jj = 1, jpj 
     478                   DO ji = 1, jpi 
     479                      zw3d(ji,jj,jk) = zpronew (ji,jj,jk) * zfact * tmask(ji,jj,jk)  ! new primary production by nanophyto 
     480                   END DO 
     481                END DO 
     482             END DO 
     483             CALL iom_put( "PPNEWN"  , zw3d ) 
     484             ! 
     485!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
     486             DO jk = 1, jpk 
     487                DO jj = 1, jpj 
     488                   DO ji = 1, jpi 
     489                      zw3d(ji,jj,jk) = zpronewd (ji,jj,jk) * zfact * tmask(ji,jj,jk)  ! new primary production by nanophyto 
     490                   END DO 
     491                END DO 
     492             END DO 
     493             CALL iom_put( "PPNEWD"  , zw3d ) 
     494          ENDIF 
     495          IF( iom_use( "PBSi" ) )  THEN 
     496!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
     497             DO jk = 1, jpk 
     498                DO jj = 1, jpj 
     499                   DO ji = 1, jpi 
     500                      zw3d(ji,jj,jk) = zprorcad(ji,jj,jk) * zfact * tmask(ji,jj,jk) * zysopt(ji,jj,jk) ! biogenic silica production 
     501                   END DO 
     502                END DO 
     503             END DO 
     504             CALL iom_put( "PBSi"  , zw3d ) 
     505          ENDIF 
     506          IF( iom_use( "PFeN" ) .OR. iom_use( "PFeD" ) )  THEN 
     507!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
     508             DO jk = 1, jpk 
     509                DO jj = 1, jpj 
     510                   DO ji = 1, jpi 
     511                      zw3d(ji,jj,jk) = zprofen(ji,jj,jk) * zfact * tmask(ji,jj,jk)  ! biogenic iron production by nanophyto 
     512                   END DO 
     513                END DO 
     514             END DO 
     515             CALL iom_put( "PFeN"  , zw3d ) 
     516             ! 
     517!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
     518             DO jk = 1, jpk 
     519                DO jj = 1, jpj 
     520                   DO ji = 1, jpi 
     521                      zw3d(ji,jj,jk) = zprofed(ji,jj,jk) * zfact * tmask(ji,jj,jk)  ! biogenic iron production by nanophyto 
     522                   END DO 
     523                END DO 
     524             END DO 
     525             CALL iom_put( "PFeD"  , zw3d ) 
     526          ENDIF 
     527          IF( iom_use( "Mumax" ) )  THEN 
     528!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
     529             DO jk = 1, jpk 
     530                DO jj = 1, jpj 
     531                   DO ji = 1, jpi 
     532                      zw3d(ji,jj,jk) = prmax(ji,jj,jk) * tmask(ji,jj,jk)   ! Maximum growth rate 
     533                   END DO 
     534                END DO 
     535             END DO 
     536             CALL iom_put( "Mumax"  , zw3d ) 
     537          ENDIF 
     538          IF( iom_use( "MuN" ) .OR. iom_use( "MuD" ) )  THEN 
     539!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
     540             DO jk = 1, jpk 
     541                DO jj = 1, jpj 
     542                   DO ji = 1, jpi 
     543                      zw3d(ji,jj,jk) = zprbio(ji,jj,jk) * xlimphy(ji,jj,jk) * tmask(ji,jj,jk)  ! Realized growth rate for nanophyto 
     544                   END DO 
     545                END DO 
     546             END DO 
     547             CALL iom_put( "MuN"  , zw3d ) 
    471548              ! 
    472               CALL iom_put( "PPPHY2"  , zw3d ) 
    473           ENDIF 
    474           IF( iom_use( "PPNEWN" ) .OR. iom_use( "PPNEWD" ) )  THEN 
    475 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    476             DO jk = 1, jpk 
    477                DO jj = 1, jpj 
    478                   DO ji = 1, jpi 
    479                      zw3d(ji,jj,jk) = zpronew (ji,jj,jk) * zfact * tmask(ji,jj,jk)  ! new primary production by nanophyto 
    480                   END DO 
    481                END DO 
    482             END DO 
    483               CALL iom_put( "PPNEWN"  , zw3d ) 
    484               ! 
    485 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    486             DO jk = 1, jpk 
    487                DO jj = 1, jpj 
    488                   DO ji = 1, jpi 
    489                      zw3d(ji,jj,jk) = zpronewd (ji,jj,jk) * zfact * tmask(ji,jj,jk)  ! new primary production by nanophyto 
    490                   END DO 
    491                END DO 
    492             END DO 
    493               CALL iom_put( "PPNEWD"  , zw3d ) 
    494           ENDIF 
    495           IF( iom_use( "PBSi" ) )  THEN 
    496 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    497             DO jk = 1, jpk 
    498                DO jj = 1, jpj 
    499                   DO ji = 1, jpi 
    500                      zw3d(ji,jj,jk) = zprorcad(ji,jj,jk) * zfact * tmask(ji,jj,jk) * zysopt(ji,jj,jk) ! biogenic silica production 
    501                   END DO 
    502                END DO 
    503             END DO 
    504               CALL iom_put( "PBSi"  , zw3d ) 
    505           ENDIF 
    506           IF( iom_use( "PFeN" ) .OR. iom_use( "PFeD" ) )  THEN 
    507 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    508             DO jk = 1, jpk 
    509                DO jj = 1, jpj 
    510                   DO ji = 1, jpi 
    511                      zw3d(ji,jj,jk) = zprofen(ji,jj,jk) * zfact * tmask(ji,jj,jk)  ! biogenic iron production by nanophyto 
    512                   END DO 
    513                END DO 
    514             END DO 
    515               CALL iom_put( "PFeN"  , zw3d ) 
    516               ! 
    517 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    518             DO jk = 1, jpk 
    519                DO jj = 1, jpj 
    520                   DO ji = 1, jpi 
    521                      zw3d(ji,jj,jk) = zprofed(ji,jj,jk) * zfact * tmask(ji,jj,jk)  ! biogenic iron production by nanophyto 
    522                   END DO 
    523                END DO 
    524             END DO 
    525               CALL iom_put( "PFeD"  , zw3d ) 
    526           ENDIF 
    527           IF( iom_use( "Mumax" ) )  THEN 
    528 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    529             DO jk = 1, jpk 
    530                DO jj = 1, jpj 
    531                   DO ji = 1, jpi 
    532                      zw3d(ji,jj,jk) = prmax(ji,jj,jk) * tmask(ji,jj,jk)   ! Maximum growth rate 
    533                   END DO 
    534                END DO 
    535             END DO 
    536               CALL iom_put( "Mumax"  , zw3d ) 
    537           ENDIF 
    538           IF( iom_use( "MuN" ) .OR. iom_use( "MuD" ) )  THEN 
    539 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    540             DO jk = 1, jpk 
    541                DO jj = 1, jpj 
    542                   DO ji = 1, jpi 
    543                      zw3d(ji,jj,jk) = zprbio(ji,jj,jk) * xlimphy(ji,jj,jk) * tmask(ji,jj,jk)  ! Realized growth rate for nanophyto 
    544                   END DO 
    545                END DO 
    546             END DO 
    547               CALL iom_put( "MuN"  , zw3d ) 
    548               ! 
    549 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    550             DO jk = 1, jpk 
    551                DO jj = 1, jpj 
    552                   DO ji = 1, jpi 
    553                      zw3d(ji,jj,jk) =  zprdia(ji,jj,jk) * xlimdia(ji,jj,jk) * tmask(ji,jj,jk)  ! Realized growth rate for diatoms 
    554                   END DO 
    555                END DO 
    556             END DO 
    557               CALL iom_put( "MuD"  , zw3d ) 
     549!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
     550             DO jk = 1, jpk 
     551                DO jj = 1, jpj 
     552                   DO ji = 1, jpi 
     553                      zw3d(ji,jj,jk) =  zprdia(ji,jj,jk) * xlimdia(ji,jj,jk) * tmask(ji,jj,jk)  ! Realized growth rate for diatoms 
     554                   END DO 
     555                END DO 
     556             END DO 
     557             CALL iom_put( "MuD"  , zw3d ) 
    558558          ENDIF 
    559559          IF( iom_use( "LNlight" ) .OR. iom_use( "LDlight" ) )  THEN 
    560560!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    561             DO jk = 1, jpk 
    562                DO jj = 1, jpj 
    563                   DO ji = 1, jpi 
    564                      zw3d(ji,jj,jk) = zprbio (ji,jj,jk) / (prmax(ji,jj,jk) + rtrn) * tmask(ji,jj,jk) ! light limitation term 
    565                   END DO 
    566                END DO 
    567             END DO 
    568               CALL iom_put( "LNlight"  , zw3d ) 
    569               ! 
    570 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    571             DO jk = 1, jpk 
    572                DO jj = 1, jpj 
    573                   DO ji = 1, jpi 
    574                      zw3d(ji,jj,jk) =  zprdia (ji,jj,jk) / (prmax(ji,jj,jk) + rtrn) * tmask(ji,jj,jk)  ! light limitation term 
    575                   END DO 
    576                END DO 
    577             END DO 
    578               CALL iom_put( "LDlight"  , zw3d ) 
     561             DO jk = 1, jpk 
     562                DO jj = 1, jpj 
     563                   DO ji = 1, jpi 
     564                      zw3d(ji,jj,jk) = zprbio (ji,jj,jk) / (prmax(ji,jj,jk) + rtrn) * tmask(ji,jj,jk) ! light limitation term 
     565                   END DO 
     566                END DO 
     567             END DO 
     568             CALL iom_put( "LNlight"  , zw3d ) 
     569             ! 
     570!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
     571             DO jk = 1, jpk 
     572                DO jj = 1, jpj 
     573                   DO ji = 1, jpi 
     574                      zw3d(ji,jj,jk) =  zprdia (ji,jj,jk) / (prmax(ji,jj,jk) + rtrn) * tmask(ji,jj,jk)  ! light limitation term 
     575                   END DO 
     576                END DO 
     577             END DO 
     578             CALL iom_put( "LDlight"  , zw3d ) 
    579579          ENDIF 
    580580          IF( iom_use( "TPP" ) )  THEN 
    581581!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    582             DO jk = 1, jpk 
    583                DO jj = 1, jpj 
    584                   DO ji = 1, jpi 
    585                      zw3d(ji,jj,jk) = ( zprorca(ji,jj,jk) + zprorcad(ji,jj,jk) ) * zfact * tmask(ji,jj,jk)  ! total primary production 
    586                   END DO 
    587                END DO 
    588             END DO 
    589               CALL iom_put( "TPP"  , zw3d ) 
     582             DO jk = 1, jpk 
     583                DO jj = 1, jpj 
     584                   DO ji = 1, jpi 
     585                      zw3d(ji,jj,jk) = ( zprorca(ji,jj,jk) + zprorcad(ji,jj,jk) ) * zfact * tmask(ji,jj,jk)  ! total primary production 
     586                   END DO 
     587                END DO 
     588             END DO 
     589             CALL iom_put( "TPP"  , zw3d ) 
    590590          ENDIF 
    591591          IF( iom_use( "TPNEW" ) )  THEN 
    592592!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    593             DO jk = 1, jpk 
    594                DO jj = 1, jpj 
    595                   DO ji = 1, jpi 
    596                      zw3d(ji,jj,jk) = ( zpronew(ji,jj,jk) + zpronewd(ji,jj,jk) ) * zfact * tmask(ji,jj,jk)  ! total new production 
    597                   END DO 
    598                END DO 
    599             END DO 
    600               CALL iom_put( "TPNEW"  , zw3d ) 
     593             DO jk = 1, jpk 
     594                DO jj = 1, jpj 
     595                   DO ji = 1, jpi 
     596                      zw3d(ji,jj,jk) = ( zpronew(ji,jj,jk) + zpronewd(ji,jj,jk) ) * zfact * tmask(ji,jj,jk)  ! total new production 
     597                   END DO 
     598                END DO 
     599             END DO 
     600             CALL iom_put( "TPNEW"  , zw3d ) 
    601601          ENDIF 
    602602          IF( iom_use( "TPBFE" ) )  THEN 
    603603!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    604             DO jk = 1, jpk 
    605                DO jj = 1, jpj 
    606                   DO ji = 1, jpi 
    607                      zw3d(ji,jj,jk) = ( zprofen(ji,jj,jk) + zprofed(ji,jj,jk) ) * zfact * tmask(ji,jj,jk)  ! total biogenic iron production 
    608                   END DO 
    609                END DO 
    610             END DO 
    611               CALL iom_put( "TPBFE"  , zw3d ) 
     604             DO jk = 1, jpk 
     605                DO jj = 1, jpj 
     606                   DO ji = 1, jpi 
     607                      zw3d(ji,jj,jk) = ( zprofen(ji,jj,jk) + zprofed(ji,jj,jk) ) * zfact * tmask(ji,jj,jk)  ! total biogenic iron production 
     608                   END DO 
     609                END DO 
     610             END DO 
     611             CALL iom_put( "TPBFE"  , zw3d ) 
    612612          ENDIF 
    613613          IF( iom_use( "INTPPPHY" ) .OR. iom_use( "INTPPPHY2" ) ) THEN   
     
    708708             ENDDO 
    709709!$OMP END PARALLEL 
    710             CALL iom_put( "INTPBFE" , zw2d ) 
     710             CALL iom_put( "INTPBFE" , zw2d ) 
    711711          ENDIF 
    712712          IF( iom_use( "INTPBSI" ) ) THEN           !   total biogenic silica production  ( vertically integrated ) 
     
    739739           zfact = 1.e+3 * rfact2r 
    740740!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    741             DO jk = 1, jpk 
    742                DO jj = 1, jpj 
    743                   DO ji = 1, jpi 
    744                      trc3d(ji,jj,jk,jp_pcs0_3d + 4)  = zprorca (ji,jj,jk) * zfact * tmask(ji,jj,jk) 
    745                      trc3d(ji,jj,jk,jp_pcs0_3d + 5)  = zprorcad(ji,jj,jk) * zfact * tmask(ji,jj,jk) 
    746                      trc3d(ji,jj,jk,jp_pcs0_3d + 6)  = zpronew (ji,jj,jk) * zfact * tmask(ji,jj,jk) 
    747                      trc3d(ji,jj,jk,jp_pcs0_3d + 7)  = zpronewd(ji,jj,jk) * zfact * tmask(ji,jj,jk) 
    748                      trc3d(ji,jj,jk,jp_pcs0_3d + 8)  = zprorcad(ji,jj,jk) * zfact * tmask(ji,jj,jk) * zysopt(ji,jj,jk) 
    749                      trc3d(ji,jj,jk,jp_pcs0_3d + 9)  = zprofed (ji,jj,jk) * zfact * tmask(ji,jj,jk) 
     741           DO jk = 1, jpk 
     742              DO jj = 1, jpj 
     743                 DO ji = 1, jpi 
     744                    trc3d(ji,jj,jk,jp_pcs0_3d + 4)  = zprorca (ji,jj,jk) * zfact * tmask(ji,jj,jk) 
     745                    trc3d(ji,jj,jk,jp_pcs0_3d + 5)  = zprorcad(ji,jj,jk) * zfact * tmask(ji,jj,jk) 
     746                    trc3d(ji,jj,jk,jp_pcs0_3d + 6)  = zpronew (ji,jj,jk) * zfact * tmask(ji,jj,jk) 
     747                    trc3d(ji,jj,jk,jp_pcs0_3d + 7)  = zpronewd(ji,jj,jk) * zfact * tmask(ji,jj,jk) 
     748                    trc3d(ji,jj,jk,jp_pcs0_3d + 8)  = zprorcad(ji,jj,jk) * zfact * tmask(ji,jj,jk) * zysopt(ji,jj,jk) 
     749                    trc3d(ji,jj,jk,jp_pcs0_3d + 9)  = zprofed (ji,jj,jk) * zfact * tmask(ji,jj,jk) 
    750750#  if ! defined key_kriest 
    751                      trc3d(ji,jj,jk,jp_pcs0_3d + 10) = zprofen (ji,jj,jk) * zfact * tmask(ji,jj,jk) 
     751                    trc3d(ji,jj,jk,jp_pcs0_3d + 10) = zprofen (ji,jj,jk) * zfact * tmask(ji,jj,jk) 
    752752#  endif 
    753                   END DO 
    754                END DO 
    755             END DO 
     753                 END DO 
     754              END DO 
     755           END DO 
    756756        ENDIF 
    757757     ENDIF 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsbc.F90

    r7508 r7525  
    115115            IF( nn_ice_tr == -1 .AND. .NOT. ln_ironice ) THEN 
    116116!$OMP PARALLEL DO schedule(static) private(jj, ji) 
    117             DO jj = 1, jpj 
    118                DO ji = 1, jpi 
    119                   dust(ji,jj) = sf_dust(1)%fnow(ji,jj,1) 
    120                END DO 
    121             END DO 
     117               DO jj = 1, jpj 
     118                  DO ji = 1, jpi 
     119                     dust(ji,jj) = sf_dust(1)%fnow(ji,jj,1) 
     120                  END DO 
     121               END DO 
    122122            ELSE 
    123123!$OMP PARALLEL DO schedule(static) private(jj, ji) 
    124             DO jj = 1, jpj 
    125                DO ji = 1, jpi 
    126                   dust(ji,jj) = sf_dust(1)%fnow(ji,jj,1) * ( 1.0 - fr_i(ji,jj) ) 
    127                END DO 
    128             END DO 
     124               DO jj = 1, jpj 
     125                  DO ji = 1, jpi 
     126                     dust(ji,jj) = sf_dust(1)%fnow(ji,jj,1) * ( 1.0 - fr_i(ji,jj) ) 
     127                  END DO 
     128               END DO 
    129129            ENDIF 
    130130         ENDIF 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsink.F90

    r7508 r7525  
    209209      !  Exchange between organic matter compartments due to coagulation/disaggregation 
    210210      !  --------------------------------------------------- 
    211 !$OMP PARALLEL DO schedule(static) private(jk, jj, ji, zstep, zfact, zagg, zagg1, zagg2, zagg3, zagg4, zaggfe, zaggdoc, zaggdoc2, zaggdoc3) 
     211!$OMP PARALLEL DO schedule(static) private(jk, jj, ji, zstep, zfact, zagg, zagg1, zagg2) & 
     212!$OMP& private(zagg3, zagg4, zaggfe, zaggdoc, zaggdoc2, zaggdoc3) 
    212213      DO jk = 1, jpkm1 
    213214         DO jj = 1, jpj 
     
    259260     ! Total carbon export per year 
    260261     IF( iom_use( "tcexp" ) .OR. ( ln_check_mass .AND. kt == nitend .AND. knt == nrdttrc )  ) & 
    261  &        t_oce_co2_exp = glob_sum( ( sinking(:,:,ik100) + sinking2(:,:,ik100) ) * e1e2t(:,:) * tmask(:,:,1) ) 
     262        &        t_oce_co2_exp = glob_sum( ( sinking(:,:,ik100) + sinking2(:,:,ik100) ) * e1e2t(:,:) * tmask(:,:,1) ) 
    262263     ! 
    263264     IF( lk_iomput ) THEN 
     
    269270          IF( iom_use( "EPC100" ) )  THEN 
    270271!$OMP DO schedule(static) private(jj, ji) 
    271             DO jj = 1, jpj 
    272                DO ji = 1, jpi 
    273                   zw2d(ji,jj) = ( sinking(ji,jj,ik100) + sinking2(ji,jj,ik100) ) * zfact * tmask(ji,jj,1) ! Export of carbon at 100m 
    274                END DO 
    275             END DO 
    276               CALL iom_put( "EPC100"  , zw2d ) 
     272             DO jj = 1, jpj 
     273                DO ji = 1, jpi 
     274                   zw2d(ji,jj) = ( sinking(ji,jj,ik100) + sinking2(ji,jj,ik100) ) * zfact * tmask(ji,jj,1) ! Export of carbon at 100m 
     275                END DO 
     276             END DO 
     277             CALL iom_put( "EPC100"  , zw2d ) 
    277278          ENDIF 
    278279          IF( iom_use( "EPFE100" ) )  THEN 
    279280!$OMP DO schedule(static) private(jj, ji) 
    280             DO jj = 1, jpj 
    281                DO ji = 1, jpi 
    282                   zw2d(ji,jj) = ( sinkfer(ji,jj,ik100) + sinkfer2(ji,jj,ik100) ) * zfact * tmask(ji,jj,1) ! Export of iron at 100m 
    283                END DO 
    284             END DO 
    285               CALL iom_put( "EPFE100"  , zw2d ) 
     281             DO jj = 1, jpj 
     282                DO ji = 1, jpi 
     283                   zw2d(ji,jj) = ( sinkfer(ji,jj,ik100) + sinkfer2(ji,jj,ik100) ) * zfact * tmask(ji,jj,1) ! Export of iron at 100m 
     284                END DO 
     285             END DO 
     286             CALL iom_put( "EPFE100"  , zw2d ) 
    286287          ENDIF 
    287288          IF( iom_use( "EPCAL100" ) )  THEN 
    288289!$OMP DO schedule(static) private(jj, ji) 
    289             DO jj = 1, jpj 
    290                DO ji = 1, jpi 
    291                   zw2d(ji,jj) = sinkcal(ji,jj,ik100) * zfact * tmask(ji,jj,1) ! Export of calcite at 100m 
    292                END DO 
    293             END DO 
    294               CALL iom_put( "EPCAL100"  , zw2d ) 
     290             DO jj = 1, jpj 
     291                DO ji = 1, jpi 
     292                   zw2d(ji,jj) = sinkcal(ji,jj,ik100) * zfact * tmask(ji,jj,1) ! Export of calcite at 100m 
     293                END DO 
     294             END DO 
     295             CALL iom_put( "EPCAL100"  , zw2d ) 
    295296          ENDIF 
    296297          IF( iom_use( "EPSI100" ) )  THEN 
    297298!$OMP DO schedule(static) private(jj, ji) 
    298             DO jj = 1, jpj 
    299                DO ji = 1, jpi 
    300                   zw2d(ji,jj) =  sinksil(ji,jj,ik100) * zfact * tmask(ji,jj,1) ! Export of bigenic silica at 100m 
    301                END DO 
    302             END DO 
    303               CALL iom_put( "EPSI100"  , zw2d ) 
     299             DO jj = 1, jpj 
     300                DO ji = 1, jpi 
     301                   zw2d(ji,jj) =  sinksil(ji,jj,ik100) * zfact * tmask(ji,jj,1) ! Export of bigenic silica at 100m 
     302                END DO 
     303             END DO 
     304             CALL iom_put( "EPSI100"  , zw2d ) 
    304305          ENDIF 
    305306          IF( iom_use( "EXPC" ) )  THEN 
    306307!$OMP DO schedule(static) private(jk, jj, ji) 
    307             DO jk = 1, jpk 
    308                DO jj = 1, jpj 
    309                   DO ji = 1, jpi 
    310                      zw3d(ji,jj,jk) = ( sinking(ji,jj,jk) + sinking2(ji,jj,jk) ) * zfact * tmask(ji,jj,jk) ! Export of carbon in the water column 
    311                   END DO 
    312                END DO 
    313             END DO 
    314               CALL iom_put( "EXPC"  , zw3d ) 
     308             DO jk = 1, jpk 
     309                DO jj = 1, jpj 
     310                   DO ji = 1, jpi 
     311                      zw3d(ji,jj,jk) = ( sinking(ji,jj,jk) + sinking2(ji,jj,jk) ) * zfact * tmask(ji,jj,jk) ! Export of carbon in the water column 
     312                   END DO 
     313                END DO 
     314             END DO 
     315             CALL iom_put( "EXPC"  , zw3d ) 
    315316          ENDIF 
    316317          IF( iom_use( "EXPFE" ) )  THEN 
    317318!$OMP DO schedule(static) private(jk, jj, ji) 
    318             DO jk = 1, jpk 
    319                DO jj = 1, jpj 
    320                   DO ji = 1, jpi 
    321                      zw3d(ji,jj,jk) = ( sinkfer(ji,jj,jk) + sinkfer2(ji,jj,jk) ) * zfact * tmask(ji,jj,jk) ! Export of iron  
    322                   END DO 
    323                END DO 
    324             END DO 
    325               CALL iom_put( "EXPFE"  , zw3d ) 
     319             DO jk = 1, jpk 
     320                DO jj = 1, jpj 
     321                   DO ji = 1, jpi 
     322                      zw3d(ji,jj,jk) = ( sinkfer(ji,jj,jk) + sinkfer2(ji,jj,jk) ) * zfact * tmask(ji,jj,jk) ! Export of iron  
     323                   END DO 
     324                END DO 
     325             END DO 
     326             CALL iom_put( "EXPFE"  , zw3d ) 
    326327          ENDIF 
    327328          IF( iom_use( "EXPCAL" ) )  THEN 
    328329!$OMP DO schedule(static) private(jk, jj, ji) 
    329             DO jk = 1, jpk 
    330                DO jj = 1, jpj 
    331                   DO ji = 1, jpi 
    332                      zw3d(ji,jj,jk) = sinkcal(ji,jj,jk) * zfact * tmask(ji,jj,jk) ! Export of calcite  
    333                   END DO 
    334                END DO 
    335             END DO 
    336               CALL iom_put( "EXPCAL"  , zw3d ) 
     330             DO jk = 1, jpk 
     331                DO jj = 1, jpj 
     332                   DO ji = 1, jpi 
     333                      zw3d(ji,jj,jk) = sinkcal(ji,jj,jk) * zfact * tmask(ji,jj,jk) ! Export of calcite  
     334                   END DO 
     335                END DO 
     336             END DO 
     337             CALL iom_put( "EXPCAL"  , zw3d ) 
    337338          ENDIF 
    338339          IF( iom_use( "EXPSI" ) )  THEN 
    339340!$OMP DO schedule(static) private(jk, jj, ji) 
    340             DO jk = 1, jpk 
    341                DO jj = 1, jpj 
    342                   DO ji = 1, jpi 
    343                      zw3d(ji,jj,jk) = sinksil(ji,jj,jk) * zfact * tmask(ji,jj,jk) ! Export of bigenic silica 
    344                   END DO 
    345                END DO 
    346             END DO 
    347               CALL iom_put( "EXPSI"  , zw3d ) 
     341             DO jk = 1, jpk 
     342                DO jj = 1, jpj 
     343                   DO ji = 1, jpi 
     344                      zw3d(ji,jj,jk) = sinksil(ji,jj,jk) * zfact * tmask(ji,jj,jk) ! Export of bigenic silica 
     345                   END DO 
     346                END DO 
     347             END DO 
     348             CALL iom_put( "EXPSI"  , zw3d ) 
    348349          ENDIF 
    349350          IF( iom_use( "tcexp" ) )  CALL iom_put( "tcexp" , t_oce_co2_exp * zfact )   ! molC/s 
     
    526527      zval4 = 4. + xkr_eta 
    527528 
    528 !$OMP PARALLEL DO schedule(static) private(jk, jj, ji, znum, zeps, zfm, zsm, zdiv, zdiv1, zdiv2, zdiv3, zdiv4, zdiv5, zagg, zagg1, zagg2, zagg3, zagg4, zagg5, zfract, zaggdoc, zaggdoc1, zaggsh, zaggsi, znumdoc) 
     529!$OMP PARALLEL DO schedule(static) private(jk, jj, ji, znum, zeps, zfm, zsm, zdiv, zdiv1, zdiv2, zdiv3, zdiv4) & 
     530!$OMP& private(zdiv5, zagg, zagg1, zagg2, zagg3, zagg4, zagg5, zfract, zaggdoc, zaggdoc1, zaggsh, zaggsi, znumdoc) 
    529531      DO jk = 1,jpkm1 
    530532         DO jj = 1,jpj 
     
    632634          IF( iom_use( "EPC100" ) )  THEN 
    633635!$OMP DO schedule(static) private(jj, ji) 
    634             DO jj = 1, jpj 
    635                DO ji = 1, jpi 
    636                   zw2d(ji,jj) = sinking(ji,jj,ik100) * zfact * tmask(ji,jj,1) ! Export of carbon at 100m 
    637                END DO 
    638             END DO 
    639               CALL iom_put( "EPC100"  , zw2d ) 
     636             DO jj = 1, jpj 
     637                DO ji = 1, jpi 
     638                   zw2d(ji,jj) = sinking(ji,jj,ik100) * zfact * tmask(ji,jj,1) ! Export of carbon at 100m 
     639                END DO 
     640             END DO 
     641             CALL iom_put( "EPC100"  , zw2d ) 
    640642          ENDIF 
    641643          IF( iom_use( "EPN100" ) )  THEN 
    642644!$OMP DO schedule(static) private(jj, ji) 
    643             DO jj = 1, jpj 
    644                DO ji = 1, jpi 
    645                   zw2d(ji,jj) = sinking2(ji,jj,ik100) * zfact * tmask(ji,jj,1) ! Export of number of aggregates ? 
    646                END DO 
    647             END DO 
    648               CALL iom_put( "EPN100"  , zw2d ) 
     645             DO jj = 1, jpj 
     646                DO ji = 1, jpi 
     647                   zw2d(ji,jj) = sinking2(ji,jj,ik100) * zfact * tmask(ji,jj,1) ! Export of number of aggregates ? 
     648                END DO 
     649             END DO 
     650             CALL iom_put( "EPN100"  , zw2d ) 
    649651          ENDIF 
    650652          IF( iom_use( "EPCAL100" ) )  THEN 
    651653!$OMP DO schedule(static) private(jj, ji) 
    652             DO jj = 1, jpj 
    653                DO ji = 1, jpi 
    654                   zw2d(ji,jj) = sinkcal(ji,jj,ik100) * zfact * tmask(ji,jj,1) !Export of calcite at 100m 
    655                END DO 
    656             END DO 
    657               CALL iom_put( "EPCAL100"  , zw2d ) 
     654             DO jj = 1, jpj 
     655                DO ji = 1, jpi 
     656                   zw2d(ji,jj) = sinkcal(ji,jj,ik100) * zfact * tmask(ji,jj,1) !Export of calcite at 100m 
     657                END DO 
     658             END DO 
     659             CALL iom_put( "EPCAL100"  , zw2d ) 
    658660          ENDIF 
    659661          IF( iom_use( "EPSI100" ) )  THEN 
    660662!$OMP DO schedule(static) private(jj, ji) 
    661             DO jj = 1, jpj 
    662                DO ji = 1, jpi 
    663                   zw2d(ji,jj) =  sinksil(ji,jj,ik100) * zfact * tmask(ji,jj,1) ! Export of bigenic silica at 100m 
    664                END DO 
    665             END DO 
    666               CALL iom_put( "EPSI100"  , zw2d ) 
     663             DO jj = 1, jpj 
     664                DO ji = 1, jpi 
     665                   zw2d(ji,jj) =  sinksil(ji,jj,ik100) * zfact * tmask(ji,jj,1) ! Export of bigenic silica at 100m 
     666                END DO 
     667             END DO 
     668             CALL iom_put( "EPSI100"  , zw2d ) 
    667669          ENDIF 
    668670          IF( iom_use( "EXPC" ) )  THEN 
    669671!$OMP DO schedule(static) private(jk, jj, ji) 
    670             DO jk = 1, jpk 
    671                DO jj = 1, jpj 
    672                   DO ji = 1, jpi 
    673                      zw3d(ji,jj,jk) = sinking(ji,jj,jk) * zfact * tmask(ji,jj,jk) ! Export of carbon in the water column 
    674                   END DO 
    675                END DO 
    676             END DO 
    677               CALL iom_put( "EXPC"  , zw3d ) 
     672             DO jk = 1, jpk 
     673                DO jj = 1, jpj 
     674                   DO ji = 1, jpi 
     675                      zw3d(ji,jj,jk) = sinking(ji,jj,jk) * zfact * tmask(ji,jj,jk) ! Export of carbon in the water column 
     676                   END DO 
     677                END DO 
     678             END DO 
     679             CALL iom_put( "EXPC"  , zw3d ) 
    678680          ENDIF 
    679681          IF( iom_use( "EXPN" ) )  THEN 
    680682!$OMP DO schedule(static) private(jk, jj, ji) 
    681             DO jk = 1, jpk 
    682                DO jj = 1, jpj 
    683                   DO ji = 1, jpi 
    684                      zw3d(ji,jj,jk) = sinking(ji,jj,jk) * zfact * tmask(ji,jj,jk) ! Export of carbon in the water column 
    685                   END DO 
    686                END DO 
    687             END DO 
    688               CALL iom_put( "EXPN"  , zw3d ) 
     683             DO jk = 1, jpk 
     684                DO jj = 1, jpj 
     685                   DO ji = 1, jpi 
     686                      zw3d(ji,jj,jk) = sinking(ji,jj,jk) * zfact * tmask(ji,jj,jk) ! Export of carbon in the water column 
     687                   END DO 
     688                END DO 
     689             END DO 
     690             CALL iom_put( "EXPN"  , zw3d ) 
    689691          ENDIF 
    690692          IF( iom_use( "EXPCAL" ) )  THEN 
    691693!$OMP DO schedule(static) private(jk, jj, ji) 
    692             DO jk = 1, jpk 
    693                DO jj = 1, jpj 
    694                   DO ji = 1, jpi 
    695                      zw3d(ji,jj,jk) = sinkcal(ji,jj,jk) * zfact * tmask(ji,jj,jk) ! Export of calcite  
    696                   END DO 
    697                END DO 
    698             END DO 
    699               CALL iom_put( "EXPCAL"  , zw3d ) 
     694             DO jk = 1, jpk 
     695                DO jj = 1, jpj 
     696                   DO ji = 1, jpi 
     697                      zw3d(ji,jj,jk) = sinkcal(ji,jj,jk) * zfact * tmask(ji,jj,jk) ! Export of calcite  
     698                   END DO 
     699                END DO 
     700             END DO 
     701             CALL iom_put( "EXPCAL"  , zw3d ) 
    700702          ENDIF 
    701703          IF( iom_use( "EXPSI" ) )  THEN 
    702704!$OMP DO schedule(static) private(jk, jj, ji) 
    703             DO jk = 1, jpk 
    704                DO jj = 1, jpj 
    705                   DO ji = 1, jpi 
    706                      zw3d(ji,jj,jk) = sinksil(ji,jj,jk) * zfact * tmask(ji,jj,jk) ! Export of bigenic silica 
    707                   END DO 
    708                END DO 
    709             END DO 
    710               CALL iom_put( "EXPSI"  , zw3d ) 
     705             DO jk = 1, jpk 
     706                DO jj = 1, jpj 
     707                   DO ji = 1, jpi 
     708                      zw3d(ji,jj,jk) = sinksil(ji,jj,jk) * zfact * tmask(ji,jj,jk) ! Export of bigenic silica 
     709                   END DO 
     710                END DO 
     711             END DO 
     712             CALL iom_put( "EXPSI"  , zw3d ) 
    711713          ENDIF 
    712714          IF( iom_use( "XNUM" ) )  THEN 
    713715!$OMP DO schedule(static) private(jk, jj, ji) 
    714             DO jk = 1, jpk 
    715                DO jj = 1, jpj 
    716                   DO ji = 1, jpi 
    717                      zw3d(ji,jj,jk) = znum3d(ji,jj,jk) * tmask(ji,jj,jk) !  Number of particles on aggregats 
    718                   END DO 
    719                END DO 
    720             END DO 
    721               CALL iom_put( "XNUM"  , zw3d ) 
     716             DO jk = 1, jpk 
     717                DO jj = 1, jpj 
     718                   DO ji = 1, jpi 
     719                      zw3d(ji,jj,jk) = znum3d(ji,jj,jk) * tmask(ji,jj,jk) !  Number of particles on aggregats 
     720                   END DO 
     721                END DO 
     722             END DO 
     723             CALL iom_put( "XNUM"  , zw3d ) 
    722724          ENDIF 
    723725          IF( iom_use( "WSC" ) )  THEN 
    724726!$OMP DO schedule(static) private(jk, jj, ji) 
    725             DO jk = 1, jpk 
    726                DO jj = 1, jpj 
    727                   DO ji = 1, jpi 
    728                      zw3d(ji,jj,jk) = wsbio3(ji,jj,jk) * tmask(ji,jj,jk) ! Sinking speed of carbon particles 
    729                   END DO 
    730                END DO 
    731             END DO 
    732               CALL iom_put( "WSC"  , zw3d ) 
     727             DO jk = 1, jpk 
     728                DO jj = 1, jpj 
     729                   DO ji = 1, jpi 
     730                      zw3d(ji,jj,jk) = wsbio3(ji,jj,jk) * tmask(ji,jj,jk) ! Sinking speed of carbon particles 
     731                   END DO 
     732                END DO 
     733             END DO 
     734             CALL iom_put( "WSC"  , zw3d ) 
    733735          ENDIF 
    734736          IF( iom_use( "WSN" ) )  THEN 
    735737!$OMP DO schedule(static) private(jk, jj, ji) 
    736             DO jk = 1, jpk 
    737                DO jj = 1, jpj 
    738                   DO ji = 1, jpi 
    739                      zw3d(ji,jj,jk) = wsbio4(ji,jj,jk) * tmask(ji,jj,jk) ! Sinking speed of particles number 
    740                   END DO 
    741                END DO 
    742             END DO 
    743               CALL iom_put( "WSN"  , zw3d ) 
     738             DO jk = 1, jpk 
     739                DO jj = 1, jpj 
     740                   DO ji = 1, jpi 
     741                      zw3d(ji,jj,jk) = wsbio4(ji,jj,jk) * tmask(ji,jj,jk) ! Sinking speed of particles number 
     742                   END DO 
     743                END DO 
     744             END DO 
     745             CALL iom_put( "WSN"  , zw3d ) 
    744746          ENDIF 
    745747          ! 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/TRP/trcbbl.F90

    r7508 r7525  
    6161      IF( l_trdtrc )  THEN 
    6262         CALL wrk_alloc( jpi, jpj, jpk, jptra, ztrtrd ) ! temporary save of trends 
     63!$OMP PARALLEL DO schedule(static) private(jn,jk,jj,ji) 
    6364         DO jn = 1, jptra 
    64 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    6565            DO jk = 1, jpk 
    6666               DO jj = 1, jpj 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/TRP/trcldf.F90

    r7508 r7525  
    7676      IF( l_trdtrc )  THEN 
    7777         CALL wrk_alloc( jpi,jpj,jpk,jptra,   ztrtrd ) 
     78!$OMP PARALLEL DO schedule(static) private(jn,jk,jj,ji) 
    7879         DO jn = 1, jptra 
    79 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    8080            DO jk = 1, jpk 
    8181               DO jj = 1, jpj 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/TRP/trcnxt.F90

    r7508 r7525  
    108108      IF( l_trdtrc )  THEN             ! trends: store now fields before the Asselin filter application 
    109109         CALL wrk_alloc( jpi, jpj, jpk, jptra, ztrdt ) 
     110!$OMP PARALLEL DO schedule(static) private(jn,jk,jj,ji) 
    110111         DO jn = 1, jptra 
    111 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    112112            DO jk = 1, jpk 
    113113               DO jj = 1, jpj 
     
    121121      !                                ! Leap-Frog + Asselin filter time stepping 
    122122      IF( neuler == 0 .AND. kt == nittrc000 ) THEN    ! Euler time-stepping at first time-step (only swap) 
     123!$OMP PARALLEL DO schedule(static) private(jn,jk,jj,ji) 
    123124         DO jn = 1, jptra 
    124 !$OMP PARALLEL DO schedule(static) private(jk) 
    125125            DO jk = 1, jpkm1 
    126                trn(:,:,jk,jn) = tra(:,:,jk,jn) 
     126               DO jj = 1, jpj 
     127                  DO ji = 1, jpi 
     128                     trn(ji,jj,jk,jn) = tra(ji,jj,jk,jn) 
     129                  END DO 
     130               END DO 
    127131            END DO 
    128132         END DO 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/TRP/trcsbc.F90

    r7508 r7525  
    109109         ELSE                                         ! No restart or restart not found: Euler forward time stepping 
    110110           zfact = 1._wp 
     111!$OMP PARALLEL DO schedule(static) private(jn,jj,ji) 
    111112           DO jn = 1, jptra 
    112 !$OMP PARALLEL DO schedule(static) private(jj,ji) 
    113113              DO jj = 1, jpj 
    114114                 DO ji = 1, jpi 
     
    121121         IF( ln_top_euler ) THEN 
    122122            zfact = 1._wp 
     123!$OMP PARALLEL DO schedule(static) private(jn,jj,ji) 
    123124           DO jn = 1, jptra 
    124 !$OMP PARALLEL DO schedule(static) private(jj,ji) 
    125125              DO jj = 1, jpj 
    126126                 DO ji = 1, jpi 
     
    131131         ELSE 
    132132            zfact = 0.5_wp 
     133!$OMP PARALLEL DO schedule(static) private(jn,jj,ji) 
    133134           DO jn = 1, jptra 
    134 !$OMP PARALLEL DO schedule(static) private(jj,ji) 
    135135              DO jj = 1, jpj 
    136136                 DO ji = 1, jpi 
     
    220220         IF( l_trdtrc ) THEN 
    221221!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    222            DO jk = 1, jpk 
    223               DO jj = 1, jpj 
    224                  DO ji = 1, jpi 
    225                     ztrtrd(ji,jj,jk) = tra(ji,jj,jk,jn) - ztrtrd(ji,jj,jk) 
    226                  END DO 
    227               END DO 
    228            END DO                                      ! online coupling free surface or offline with free surface 
     222            DO jk = 1, jpk 
     223               DO jj = 1, jpj 
     224                  DO ji = 1, jpi 
     225                     ztrtrd(ji,jj,jk) = tra(ji,jj,jk,jn) - ztrtrd(ji,jj,jk) 
     226                  END DO 
     227               END DO 
     228            END DO                                      ! online coupling free surface or offline with free surface 
    229229            CALL trd_tra( kt, 'TRC', jn, jptra_nsr, ztrtrd ) 
    230230         END IF 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/TRP/trczdf.F90

    r7508 r7525  
    7171      IF( l_trdtrc )  THEN 
    7272         CALL wrk_alloc( jpi, jpj, jpk, jptra, ztrtrd ) 
     73!$OMP PARALLEL DO schedule(static) private(jn,jk,jj,ji) 
    7374         DO jn = 1, jptra 
    74 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    7575            DO jk = 1, jpk 
    7676               DO jj = 1, jpj 
     
    9090      IF( l_trdtrc )   THEN                      ! save the vertical diffusive trends for further diagnostics 
    9191         DO jn = 1, jptra 
    92 !$OMP PARALLEL DO schedule(static) private(jk) 
     92!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    9393            DO jk = 1, jpkm1 
    94                ztrtrd(:,:,jk,jn) = ( ( tra(:,:,jk,jn) - trb(:,:,jk,jn) ) / r2dttrc ) - ztrtrd(:,:,jk,jn) 
     94               DO jj = 1, jpj 
     95                  DO ji = 1, jpi 
     96                     ztrtrd(ji,jj,jk,jn) = ( ( tra(ji,jj,jk,jn) - trb(ji,jj,jk,jn) ) / r2dttrc ) - ztrtrd(ji,jj,jk,jn) 
     97                  END DO 
     98               END DO 
    9599            END DO 
    96100            CALL trd_tra( kt, 'TRC', jn, jptra_zdf, ztrtrd(:,:,:,jn) ) 
  • branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/TOP_SRC/trcini.F90

    r7508 r7525  
    119119!$OMP PARALLEL DO schedule(static) private(jk) 
    120120      DO jk = 1, jpk 
    121          cvol(:,:,jk) = e1e2t(:,:) * e3t_n(:,:,jk) * tmask(:,:,jk) 
     121         DO jj = 1, jpj 
     122            DO ji = 1, jpi 
     123               cvol(ji,jj,jk) = e1e2t(ji,jj) * e3t_n(ji,jj,jk) * tmask(ji,jj,jk) 
     124            END DO 
     125         END DO 
    122126      END DO 
    123127      IF( lk_degrad ) THEN   
    124128!$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    125       DO jk = 1, jpk 
    126          DO jj = 1, jpj 
    127             DO ji = 1, jpi 
    128                cvol(ji,jj,jk) = cvol(ji,jj,jk) * facvol(ji,jj,jk)    ! degrad option: reduction by facvol 
     129         DO jk = 1, jpk 
     130            DO jj = 1, jpj 
     131               DO ji = 1, jpi 
     132                  cvol(ji,jj,jk) = cvol(ji,jj,jk) * facvol(ji,jj,jk)    ! degrad option: reduction by facvol 
     133               END DO 
    129134            END DO 
    130135         END DO 
    131       END DO 
    132136      END IF 
    133137      !                                                              ! total volume of the ocean  
     
    255259        ENDIF 
    256260        ! 
     261!$OMP PARALLEL DO schedule(static) private(jn,jk,jj,ji) 
    257262      DO jn = 1, jptra 
    258 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    259263         DO jk = 1, jpk 
    260264            DO jj = 1, jpj 
     
    268272      ENDIF 
    269273  
     274!$OMP PARALLEL DO schedule(static) private(jn,jk,jj,ji) 
    270275      DO jn = 1, jptra 
    271 !$OMP PARALLEL DO schedule(static) private(jk,jj,ji) 
    272276         DO jk = 1, jpk 
    273277            DO jj = 1, jpj 
Note: See TracChangeset for help on using the changeset viewer.