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 12453 for NEMO/branches/UKMO/r12083_India_uncoupled/src/OCE/stpctl.F90 – NEMO

Ignore:
Timestamp:
2020-02-25T16:29:34+01:00 (4 years ago)
Author:
jcastill
Message:

First implementation of the branch - compiling after merge

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/UKMO/r12083_India_uncoupled/src/OCE/stpctl.F90

    r11715 r12453  
    115115         zmax(1) = MAXVAL(  ABS( sshn(:,:) )  )                               ! ssh max 
    116116      ENDIF 
    117       zmax(2) = MAXVAL(  ABS( un(:,:,:) )  )                                  ! velocity max (zonal only) 
     117      zmax(2) = MAXVAL(  un(:,:,:)*un(:,:,:) + vn(:,:,:)*vn(:,:,:)  )         ! velocity max 
    118118      zmax(3) = MAXVAL( -tsn(:,:,:,jp_sal) , mask = tmask(:,:,:) == 1._wp )   ! minus salinity max 
    119119      zmax(4) = MAXVAL(  tsn(:,:,:,jp_sal) , mask = tmask(:,:,:) == 1._wp )   !       salinity max 
     
    149149      IF( ( ln_ctl .OR. lsomeoce ) .AND. (   &             ! have use mpp_max (because ln_ctl=.T.) or contains some ocean points 
    150150         &  zmax(1) >   20._wp .OR.   &                    ! too large sea surface height ( > 20 m ) 
    151          &  zmax(2) >   10._wp .OR.   &                    ! too large velocity ( > 10 m/s) 
     151         &  zmax(2) >  100._wp .OR.   &                    ! too large velocity ( > 10 m/s) 
    152152         &  zmax(3) >=   0._wp .OR.   &                    ! negative or zero sea surface salinity 
    153153         &  zmax(4) >= 100._wp .OR.   &                    ! too large sea surface salinity ( > 100 ) 
     
    156156         IF( lk_mpp .AND. ln_ctl ) THEN 
    157157            CALL mpp_maxloc( 'stpctl', ABS(sshn)        , ssmask(:,:)  , zzz, ih  ) 
    158             CALL mpp_maxloc( 'stpctl', ABS(un)          , umask (:,:,:), zzz, iu  ) 
     158            CALL mpp_maxloc( 'stpctl', un*un + vn*vn    , umask (:,:,:), zzz, iu  ) 
    159159            CALL mpp_minloc( 'stpctl', tsn(:,:,:,jp_sal), tmask (:,:,:), zzz, is1 ) 
    160160            CALL mpp_maxloc( 'stpctl', tsn(:,:,:,jp_sal), tmask (:,:,:), zzz, is2 ) 
    161161         ELSE 
    162162            ih(:)  = MAXLOC( ABS( sshn(:,:)   )                              ) + (/ nimpp - 1, njmpp - 1    /) 
    163             iu(:)  = MAXLOC( ABS( un  (:,:,:) )                              ) + (/ nimpp - 1, njmpp - 1, 0 /) 
     163            iu(:)  = MAXLOC( un(:,:,:)*un(:,:,:) + vn(:,:,:)*vn(:,:,:)       ) + (/ nimpp - 1, njmpp - 1, 0 /) 
    164164            is1(:) = MINLOC( tsn(:,:,:,jp_sal), mask = tmask(:,:,:) == 1._wp ) + (/ nimpp - 1, njmpp - 1, 0 /) 
    165165            is2(:) = MAXLOC( tsn(:,:,:,jp_sal), mask = tmask(:,:,:) == 1._wp ) + (/ nimpp - 1, njmpp - 1, 0 /) 
     
    187187      ! 
    1881889100  FORMAT (' kt=',i8,'   |ssh| max: ',1pg11.4,', at  i j  : ',2i5) 
    189 9200  FORMAT (' kt=',i8,'   |U|   max: ',1pg11.4,', at  i j k: ',3i5) 
     1899200  FORMAT (' kt=',i8,'   Vel2  max: ',1pg11.4,', at  i j k: ',3i5) 
    1901909300  FORMAT (' kt=',i8,'   S     min: ',1pg11.4,', at  i j k: ',3i5) 
    1911919400  FORMAT (' kt=',i8,'   S     max: ',1pg11.4,', at  i j k: ',3i5) 
    192 9500  FORMAT(' it :', i8, '    |ssh|_max: ', D23.16, ' |U|_max: ', D23.16,' S_min: ', D23.16,' S_max: ', D23.16) 
     1929500  FORMAT(' it :', i8, '    |ssh|_max: ', D23.16, ' Vel2_max: ', D23.16,' S_min: ', D23.16,' S_max: ', D23.16) 
    193193      ! 
    194194   END SUBROUTINE stp_ctl 
Note: See TracChangeset for help on using the changeset viewer.