- Timestamp:
- 2020-06-22T08:29:57+02:00 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/releases/r4.0/r4.0-HEAD/tests/CANAL/MY_SRC/stpctl.F90
r13116 r13137 66 66 REAL(wp), DIMENSION(9) :: zmax, zmaxlocal 67 67 LOGICAL :: ll_wrtstp, ll_colruns, ll_wrtruns 68 LOGICAL, DIMENSION(jpi,jpj,jpk) :: llmsk 68 69 CHARACTER(len=20) :: clname 69 70 !!---------------------------------------------------------------------- … … 111 112 ! 112 113 ! !== test of extrema ==! 114 ! 115 ! define zmax default value. needed for land processors 116 IF( ll_colruns ) THEN ! default value: must not be kept when calling mpp_max -> must be as small as possible 117 zmax(:) = -HUGE(1._wp) 118 ELSE ! default value: must not give true for any of the tests bellow (-> avoid manipulating HUGE...) 119 zmax(:) = 0._wp 120 zmax(3) = -1._wp ! avoid salinity minimum at 0. 121 ENDIF 122 ! 113 123 IF( ll_wd ) THEN 114 124 zmax(1) = MAXVAL( ABS( sshn(:,:) + ssh_ref*tmask(:,:,1) ) ) ! ssh max … … 117 127 ENDIF 118 128 zmax(2) = MAXVAL( ABS( un(:,:,:) ) ) ! velocity max (zonal only) 119 zmax(3) = MAXVAL( -tsn(:,:,:,jp_sal) , mask = tmask(:,:,:) == 1._wp ) ! minus salinity max 120 zmax(4) = MAXVAL( tsn(:,:,:,jp_sal) , mask = tmask(:,:,:) == 1._wp ) ! salinity max 121 IF( ll_colruns .OR. jpnij == 1 ) THEN ! following variables are used only in the netcdf file 122 zmax(5) = MAXVAL( -tsn(:,:,:,jp_tem) , mask = tmask(:,:,:) == 1._wp ) ! minus temperature max 123 zmax(6) = MAXVAL( tsn(:,:,:,jp_tem) , mask = tmask(:,:,:) == 1._wp ) ! temperature max 124 IF( ln_zad_Aimp ) THEN 125 zmax(8) = MAXVAL( ABS( wi(:,:,:) ) , mask = wmask(:,:,:) == 1._wp ) ! implicit vertical vel. max 126 zmax(9) = MAXVAL( Cu_adv(:,:,:) , mask = tmask(:,:,:) == 1._wp ) ! partitioning coeff. max 127 ELSE 128 zmax(8:9) = 0._wp 129 ENDIF 130 ELSE 131 zmax(5:9) = 0._wp 129 llmsk(:,:,:) = tmask(:,:,:) == 1._wp 130 IF( COUNT( llmsk(:,:,:) ) > 0 ) THEN ! avoid huge values sent back for land processors... 131 zmax(3) = MAXVAL( -tsn(:,:,:,jp_sal) , mask = llmsk ) ! minus salinity max 132 zmax(4) = MAXVAL( tsn(:,:,:,jp_sal) , mask = llmsk ) ! salinity max 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 ) ! minus temperature max 135 zmax(6) = MAXVAL( tsn(:,:,:,jp_tem) , mask = llmsk ) ! temperature max 136 IF( ln_zad_Aimp ) THEN 137 zmax(9) = MAXVAL( Cu_adv(:,:,:) , mask = llmsk ) ! partitioning coeff. max 138 llmsk(:,:,:) = wmask(:,:,:) == 1._wp 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. max 141 ENDIF 142 ENDIF 143 ENDIF 132 144 ENDIF 133 145 zmax(7) = REAL( nstop , wp ) ! stop indicator
Note: See TracChangeset
for help on using the changeset viewer.