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 10425 for NEMO/trunk/src/OCE/DOM/domvvl.F90 – NEMO

Ignore:
Timestamp:
2018-12-19T22:54:16+01:00 (5 years ago)
Author:
smasson
Message:

trunk: merge back dev_r10164_HPC09_ESIWACE_PREP_MERGE@10424 into the trunk

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk/src/OCE/DOM/domvvl.F90

    r10213 r10425  
    7979            &      dtilde_e3t_a(jpi,jpj,jpk) , un_td  (jpi,jpj,jpk)     , vn_td  (jpi,jpj,jpk)     ,   & 
    8080            &      STAT = dom_vvl_alloc        ) 
    81          IF( lk_mpp             )   CALL mpp_sum ( dom_vvl_alloc ) 
    82          IF( dom_vvl_alloc /= 0 )   CALL ctl_warn('dom_vvl_alloc: failed to allocate arrays') 
     81         CALL mpp_sum ( 'domvvl', dom_vvl_alloc ) 
     82         IF( dom_vvl_alloc /= 0 )   CALL ctl_stop( 'STOP', 'dom_vvl_alloc: failed to allocate arrays' ) 
    8383         un_td = 0._wp 
    8484         vn_td = 0._wp 
     
    8686      IF( ln_vvl_ztilde ) THEN 
    8787         ALLOCATE( frq_rst_e3t(jpi,jpj) , frq_rst_hdv(jpi,jpj) , hdiv_lf(jpi,jpj,jpk) , STAT= dom_vvl_alloc ) 
    88          IF( lk_mpp             )   CALL mpp_sum ( dom_vvl_alloc ) 
    89          IF( dom_vvl_alloc /= 0 )   CALL ctl_warn('dom_vvl_alloc: failed to allocate arrays') 
     88         CALL mpp_sum ( 'domvvl', dom_vvl_alloc ) 
     89         IF( dom_vvl_alloc /= 0 )   CALL ctl_stop( 'STOP', 'dom_vvl_alloc: failed to allocate arrays' ) 
    9090      ENDIF 
    9191      ! 
     
    410410         !                       ! d - thickness diffusion transport: boundary conditions 
    411411         !                             (stored for tracer advction and continuity equation) 
    412          CALL lbc_lnk_multi( un_td , 'U' , -1._wp, vn_td , 'V' , -1._wp) 
     412         CALL lbc_lnk_multi( 'domvvl', un_td , 'U' , -1._wp, vn_td , 'V' , -1._wp) 
    413413 
    414414         ! 4 - Time stepping of baroclinic scale factors 
     
    421421            z2dt = 2.0_wp * rdt 
    422422         ENDIF 
    423          CALL lbc_lnk( tilde_e3t_a(:,:,:), 'T', 1._wp ) 
     423         CALL lbc_lnk( 'domvvl', tilde_e3t_a(:,:,:), 'T', 1._wp ) 
    424424         tilde_e3t_a(:,:,:) = tilde_e3t_b(:,:,:) + z2dt * tmask(:,:,:) * tilde_e3t_a(:,:,:) 
    425425 
     
    431431         END DO 
    432432         z_tmax = MAXVAL( ze3t(:,:,:) ) 
    433          IF( lk_mpp )   CALL mpp_max( z_tmax )                 ! max over the global domain 
     433         CALL mpp_max( 'domvvl', z_tmax )                 ! max over the global domain 
    434434         z_tmin = MINVAL( ze3t(:,:,:) ) 
    435          IF( lk_mpp )   CALL mpp_min( z_tmin )                 ! min over the global domain 
     435         CALL mpp_min( 'domvvl', z_tmin )                 ! min over the global domain 
    436436         ! - ML - test: for the moment, stop simulation for too large e3_t variations 
    437437         IF( ( z_tmax >  rn_zdef_max ) .OR. ( z_tmin < - rn_zdef_max ) ) THEN 
    438438            IF( lk_mpp ) THEN 
    439                CALL mpp_maxloc( ze3t, tmask, z_tmax, ijk_max(1), ijk_max(2), ijk_max(3) ) 
    440                CALL mpp_minloc( ze3t, tmask, z_tmin, ijk_min(1), ijk_min(2), ijk_min(3) ) 
     439               CALL mpp_maxloc( 'domvvl', ze3t, tmask, z_tmax, ijk_max ) 
     440               CALL mpp_minloc( 'domvvl', ze3t, tmask, z_tmin, ijk_min ) 
    441441            ELSE 
    442442               ijk_max = MAXLOC( ze3t(:,:,:) ) 
     
    452452               WRITE(numout, *) 'MIN( tilde_e3t_a(:,:,:) / e3t_0(:,:,:) ) =', z_tmin 
    453453               WRITE(numout, *) 'at i, j, k=', ijk_min             
    454                CALL ctl_warn('MAX( ABS( tilde_e3t_a(:,:,:) ) / e3t_0(:,:,:) ) too high') 
     454               CALL ctl_stop( 'STOP', 'MAX( ABS( tilde_e3t_a(:,:,: ) ) / e3t_0(:,:,:) ) too high') 
    455455            ENDIF 
    456456         ENDIF 
     
    495495         IF ( ln_vvl_ztilde .OR. ln_vvl_layer ) THEN 
    496496            z_tmax = MAXVAL( tmask(:,:,1) * tmask_i(:,:) * ABS( zht(:,:) ) ) 
    497             IF( lk_mpp ) CALL mpp_max( z_tmax )                             ! max over the global domain 
     497            CALL mpp_max( 'domvvl', z_tmax )                             ! max over the global domain 
    498498            IF( lwp    ) WRITE(numout, *) kt,' MAXVAL(abs(SUM(tilde_e3t_a))) =', z_tmax 
    499499         END IF 
     
    504504         END DO 
    505505         z_tmax = MAXVAL( tmask(:,:,1) * tmask_i(:,:) * ABS( ht_0(:,:) + sshn(:,:) - zht(:,:) ) ) 
    506          IF( lk_mpp ) CALL mpp_max( z_tmax )                                ! max over the global domain 
     506         CALL mpp_max( 'domvvl', z_tmax )                                ! max over the global domain 
    507507         IF( lwp    ) WRITE(numout, *) kt,' MAXVAL(abs(ht_0+sshn-SUM(e3t_n))) =', z_tmax 
    508508         ! 
     
    512512         END DO 
    513513         z_tmax = MAXVAL( tmask(:,:,1) * tmask_i(:,:) * ABS( ht_0(:,:) + ssha(:,:) - zht(:,:) ) ) 
    514          IF( lk_mpp ) CALL mpp_max( z_tmax )                                ! max over the global domain 
     514         CALL mpp_max( 'domvvl', z_tmax )                                ! max over the global domain 
    515515         IF( lwp    ) WRITE(numout, *) kt,' MAXVAL(abs(ht_0+ssha-SUM(e3t_a))) =', z_tmax 
    516516         ! 
     
    520520         END DO 
    521521         z_tmax = MAXVAL( tmask(:,:,1) * tmask_i(:,:) * ABS( ht_0(:,:) + sshb(:,:) - zht(:,:) ) ) 
    522          IF( lk_mpp ) CALL mpp_max( z_tmax )                                ! max over the global domain 
     522         CALL mpp_max( 'domvvl', z_tmax )                                ! max over the global domain 
    523523         IF( lwp    ) WRITE(numout, *) kt,' MAXVAL(abs(ht_0+sshb-SUM(e3t_b))) =', z_tmax 
    524524         ! 
    525525         z_tmax = MAXVAL( tmask(:,:,1) *  ABS( sshb(:,:) ) ) 
    526          IF( lk_mpp ) CALL mpp_max( z_tmax )                                ! max over the global domain 
     526         CALL mpp_max( 'domvvl', z_tmax )                                ! max over the global domain 
    527527         IF( lwp    ) WRITE(numout, *) kt,' MAXVAL(abs(sshb))) =', z_tmax 
    528528         ! 
    529529         z_tmax = MAXVAL( tmask(:,:,1) *  ABS( sshn(:,:) ) ) 
    530          IF( lk_mpp ) CALL mpp_max( z_tmax )                                ! max over the global domain 
     530         CALL mpp_max( 'domvvl', z_tmax )                                ! max over the global domain 
    531531         IF( lwp    ) WRITE(numout, *) kt,' MAXVAL(abs(sshn))) =', z_tmax 
    532532         ! 
    533533         z_tmax = MAXVAL( tmask(:,:,1) *  ABS( ssha(:,:) ) ) 
    534          IF( lk_mpp ) CALL mpp_max( z_tmax )                                ! max over the global domain 
     534         CALL mpp_max( 'domvvl', z_tmax )                                ! max over the global domain 
    535535         IF( lwp    ) WRITE(numout, *) kt,' MAXVAL(abs(ssha))) =', z_tmax 
    536536      END IF 
     
    713713            END DO 
    714714         END DO 
    715          CALL lbc_lnk( pe3_out(:,:,:), 'U', 1._wp ) 
     715         CALL lbc_lnk( 'domvvl', pe3_out(:,:,:), 'U', 1._wp ) 
    716716         pe3_out(:,:,:) = pe3_out(:,:,:) + e3u_0(:,:,:) 
    717717         ! 
     
    726726            END DO 
    727727         END DO 
    728          CALL lbc_lnk( pe3_out(:,:,:), 'V', 1._wp ) 
     728         CALL lbc_lnk( 'domvvl', pe3_out(:,:,:), 'V', 1._wp ) 
    729729         pe3_out(:,:,:) = pe3_out(:,:,:) + e3v_0(:,:,:) 
    730730         ! 
     
    740740            END DO 
    741741         END DO 
    742          CALL lbc_lnk( pe3_out(:,:,:), 'F', 1._wp ) 
     742         CALL lbc_lnk( 'domvvl', pe3_out(:,:,:), 'F', 1._wp ) 
    743743         pe3_out(:,:,:) = pe3_out(:,:,:) + e3f_0(:,:,:) 
    744744         ! 
Note: See TracChangeset for help on using the changeset viewer.