Changeset 15588 for NEMO/branches/UKMO/r14075_maxval_cce
- Timestamp:
- 2021-12-09T13:30:34+01:00 (2 years ago)
- Location:
- NEMO/branches/UKMO/r14075_maxval_cce/src/OCE
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/UKMO/r14075_maxval_cce/src/OCE/DOM/domain.F90
r14075 r15588 485 485 CALL mpp_maxloc( 'domain', e2t(:,:), tmask_i(:,:), ze2max, ima2 ) 486 486 ELSE 487 ze1m in = MINVAL( e1t(:,:), mask = tmask_i(:,:) == 1._wp)488 ze2m in = MINVAL( e2t(:,:), mask = tmask_i(:,:) == 1._wp)489 ze1m ax = MAXVAL( e1t(:,:), mask = tmask_i(:,:) == 1._wp)490 ze2m ax = MAXVAL( e2t(:,:), mask = tmask_i(:,:) == 1._wp)491 ! 492 iloc = M INLOC( e1t(:,:), mask = tmask_i(:,:) == 1._wp)487 ze1max = MAXVAL( e1t(:,:)*tmask_i(:,:) ) 488 ze2max = MAXVAL( e2t(:,:)*tmask_i(:,:) ) 489 ze1min = ze1max - MAXVAL( (ze1max-e1t(:,:))*tmask_i(:,:) ) 490 ze2min = ze2max - MAXVAL( (ze2max-e2t(:,:))*tmask_i(:,:) ) 491 ! 492 iloc = MAXLOC( (ze1max-e1t(:,:))*tmask_i(:,:) ) 493 493 imi1(1) = iloc(1) + nimpp - 1 494 494 imi1(2) = iloc(2) + njmpp - 1 495 iloc = M INLOC( e2t(:,:), mask = tmask_i(:,:) == 1._wp)495 iloc = MAXLOC( (ze2max-e2t(:,:))*tmask_i(:,:) ) 496 496 imi2(1) = iloc(1) + nimpp - 1 497 497 imi2(2) = iloc(2) + njmpp - 1 498 iloc = MAXLOC( e1t(:,:) , mask = tmask_i(:,:) == 1._wp)498 iloc = MAXLOC( e1t(:,:)*tmask_i(:,:) ) 499 499 ima1(1) = iloc(1) + nimpp - 1 500 500 ima1(2) = iloc(2) + njmpp - 1 501 iloc = MAXLOC( e2t(:,:) , mask = tmask_i(:,:) == 1._wp)501 iloc = MAXLOC( e2t(:,:)*tmask_i(:,:) ) 502 502 ima2(1) = iloc(1) + nimpp - 1 503 503 ima2(2) = iloc(2) + njmpp - 1 -
NEMO/branches/UKMO/r14075_maxval_cce/src/OCE/DOM/domngb.F90
r14075 r15588 70 70 kii = iloc(1) ; kjj = iloc(2) 71 71 ELSE 72 iloc(:) = MINLOC( zdist(:,:), mask = zmask(:,:) == 1.e0 ) 72 zmini = MAXVAL( zdist(:,:)*zmask(:,:) ) 73 iloc(:) = MAXLOC( (zmini-zdist(:,:))*zmask(:,:) ) 73 74 kii = iloc(1) + nimpp - 1 74 75 kjj = iloc(2) + njmpp - 1 -
NEMO/branches/UKMO/r14075_maxval_cce/src/OCE/OBS/obs_averg_h2d.F90
r14075 r15588 612 612 ENDIF 613 613 614 ze1min = MINVAL( e1t(:,:), mask = pmask(:,:) == 1._wp ) 615 ze2min = MINVAL( e2t(:,:), mask = pmask(:,:) == 1._wp ) 614 ze1min = MAXVAL( e1t(:,:)*pmask(:,:) ) 615 ze2min = MAXVAL( e2t(:,:)*pmask(:,:) ) 616 617 ze1min = ze1min - MAXVAL( (ze1min-e1t(:,:))*pmask(:,:) ) 618 ze2min = ze2min - MAXVAL( (ze2min-e2t(:,:))*pmask(:,:) ) 616 619 617 620 IF(lk_mpp) THEN -
NEMO/branches/UKMO/r14075_maxval_cce/src/OCE/stpctl.F90
r14075 r15588 129 129 llmsk(:,:,:) = tmask(:,:,:) == 1._wp 130 130 IF( COUNT( llmsk(:,:,:) ) > 0 ) THEN ! avoid huge values sent back for land processors... 131 zmax( 3) = MAXVAL( -tsn(:,:,:,jp_sal) , mask = llmsk ) ! minussalinity max132 zmax( 4) = MAXVAL( tsn(:,:,:,jp_sal) , mask = llmsk ) !salinity max131 zmax(4) = MAXVAL( tsn(:,:,:,jp_sal)*tmask ) ! salinity max 132 zmax(3) = MAXVAL( (zmax(4)-tsn(:,:,:,jp_sal))*tmask ) - zmax(4) ! minus salinity max 133 133 IF( ll_colruns .OR. jpnij == 1 ) THEN ! following variables are used only in the netcdf file 134 zmax( 5) = MAXVAL( -tsn(:,:,:,jp_tem) , mask = llmsk ) ! minustemperature max135 zmax( 6) = MAXVAL( tsn(:,:,:,jp_tem) , mask = llmsk ) !temperature max134 zmax(6) = MAXVAL( tsn(:,:,:,jp_tem)*tmask ) ! temperature max 135 zmax(5) = zmax(6) - MAXVAL( (zmax(6)-tsn(:,:,:,jp_tem))*tmask ) ! minus temperature max 136 136 IF( ln_zad_Aimp ) THEN 137 zmax(9) = MAXVAL( Cu_adv(:,:,:) , mask = llmsk )! partitioning coeff. max137 zmax(9) = MAXVAL( Cu_adv(:,:,:)*tmask ) ! partitioning coeff. max 138 138 llmsk(:,:,:) = wmask(:,:,:) == 1._wp 139 139 IF( COUNT( llmsk(:,:,:) ) > 0 ) THEN ! avoid huge values sent back for land processors... 140 zmax(8) = MAXVAL( ABS( wi(:,:,:) ) , mask = wmask(:,:,:) == 1._wp) ! implicit vertical vel. max140 zmax(8) = MAXVAL( ABS( wi(:,:,:) )*wmask(:,:,:) ) ! implicit vertical vel. max 141 141 ENDIF 142 142 ENDIF … … 193 193 ih(1:2)= MAXLOC( ABS( sshn(:,:) ) ) + (/ nimpp - 1, njmpp - 1 /) ; ih(3) = 0 194 194 iu(:) = MAXLOC( ABS( un (:,:,:) ) ) + (/ nimpp - 1, njmpp - 1, 0 /) 195 is1(:) = M INLOC( tsn(:,:,:,jp_sal), mask = tmask(:,:,:) == 1._wp) + (/ nimpp - 1, njmpp - 1, 0 /)196 is2(:) = MAXLOC( tsn(:,:,:,jp_sal) , mask = tmask(:,:,:) == 1._wp) + (/ nimpp - 1, njmpp - 1, 0 /)195 is1(:) = MAXLOC( (zmax(4)-tsn(:,:,:,jp_sal))*tmask(:,:,:) ) + (/ nimpp - 1, njmpp - 1, 0 /) 196 is2(:) = MAXLOC( tsn(:,:,:,jp_sal)*tmask(:,:,:) ) + (/ nimpp - 1, njmpp - 1, 0 /) 197 197 iareamin(:) = narea ; iareamax(:) = narea ; iareasum(:) = 1 ! this is local information 198 198 ENDIF
Note: See TracChangeset
for help on using the changeset viewer.