From fe70ee7390f166c3fe5563b11acff46880513add Mon Sep 17 00:00:00 2001 From: Ming Chen Date: Tue, 9 Dec 2025 19:23:44 +0000 Subject: [PATCH 1/4] resolve Intel remark #7712 in w3pro3md --- model/src/w3pro3md.F90 | 43 +++++++++++++++++++----------------------- 1 file changed, 19 insertions(+), 24 deletions(-) diff --git a/model/src/w3pro3md.F90 b/model/src/w3pro3md.F90 index cd28cd96a2..41b1337e33 100644 --- a/model/src/w3pro3md.F90 +++ b/model/src/w3pro3md.F90 @@ -215,12 +215,15 @@ SUBROUTINE W3MAP3 ! ! 10. Source code : !/ ------------------------------------------------------------------- / - USE W3GDATMD, ONLY: NK, NTH, NSPEC, NX, NY, NSEA, MAPSTA, MAPSF,& - GTYPE + USE W3GDATMD, ONLY: NK, NTH, NX, NY, NSEA, MAPSTA, MAPSF, GTYPE USE W3ADATMD, ONLY: NMX0, NMX1, NMX2, NMY0, NMY1, NMY2, NACT, & NCENT, MAPX2, MAPY2, MAPAXY, MAPCXY, & MAPTH2, MAPWN2 +#ifdef W3_T + USE W3GDATMD, ONLY: NSPEC USE W3ODATMD, ONLY: NDST +#endif + !/ #ifdef W3_S USE W3SERVMD, ONLY: STRACE #endif @@ -571,7 +574,7 @@ SUBROUTINE W3MAPT ! ! 10. Source code : !/ ------------------------------------------------------------------- / - USE W3GDATMD, ONLY: NX, NY, NSEA, MAPSF + USE W3GDATMD, ONLY: NSEA, MAPSF USE W3ADATMD, ONLY: ATRNX, ATRNY, MAPTRN #ifdef W3_S USE W3SERVMD, ONLY: STRACE @@ -788,14 +791,14 @@ SUBROUTINE W3XYP3 ( ISP, DTG, MAPSTA, MAPFS, VQ, VGX, VGY ) USE W3TIMEMD, ONLY: DSEC21 ! USE W3GDATMD, ONLY: NX, NY, NSEA, MAPSF, DTCFL, CLATS, & - ICLOSE, FLCX, FLCY, NK, NTH, DTH, XFR, & + ICLOSE, FLCX, FLCY, NTH, DTH, XFR, & ICLOSE_NONE, ICLOSE_SMPL, ICLOSE_TRPL, & - ECOS, ESIN, SIG, WDCG, WDTH, PFMOVE, & + ECOS, ESIN, SIG, WDCG, WDTH, & FLAGLL, DPDX, DPDY, DQDX, DQDY, GSQRT USE W3WDATMD, ONLY: TIME USE W3ADATMD, ONLY: NMX0, NMX1, NMX2, NMY0, NMY1, NMY2, NACT, & - NCENT, MAPX2, MAPY2, MAPAXY, MAPCXY, & - MAPTRN, CG, CX, CY, ATRNX, ATRNY, ITIME + NCENT, MAPX2, MAPY2, MAPAXY, MAPCXY, & + MAPTRN, CG, CX, CY, ATRNX, ATRNY USE W3IDATMD, ONLY: FLCUR USE W3ODATMD, ONLY: NDSE, NDST, FLBPI, NBI, TBPI0, TBPIN, & ISBPI, BBPI0, BBPIN, IAPROC, NAPERR @@ -808,6 +811,9 @@ SUBROUTINE W3XYP3 ( ISP, DTG, MAPSTA, MAPFS, VQ, VGX, VGY ) #endif #ifdef W3_UNO USE W3UNO2MD +#endif +#ifdef W3_MGG + USE W3GDATMD, ONLY: PFMOVE #endif !/ IMPLICIT NONE @@ -1625,7 +1631,7 @@ SUBROUTINE W3KTP3 ( ISEA, FACTH, FACK, CTHG0, CG, WN, DW, & USE W3GDATMD, ONLY: NK, NK2, NTH, NSPEC, SIG, DSIP, ECOS, ESIN, & EC2, ESC, ES2, FACHFA, MAPWN, FLCTH, FLCK, & CTMAX, DMIN - USE W3ADATMD, ONLY: MAPTH2, MAPWN2, ITIME, ITSTEP + USE W3ADATMD, ONLY: MAPTH2, MAPWN2, ITSTEP USE W3IDATMD, ONLY: FLCUR USE W3ODATMD, ONLY: NDSE, NDST #ifdef W3_S @@ -2050,17 +2056,10 @@ SUBROUTINE W3CFLXY ( ISEA, DTG, MAPSTA, MAPFS, CFLXYMAX, VGX, VGY ) ! USE W3TIMEMD, ONLY: DSEC21 ! - USE W3GDATMD, ONLY: NX, NY, NSEA, MAPSF, DTCFL, CLATS, & - FLCX, FLCY, NK, NTH, DTH, XFR, & - ECOS, ESIN, SIG, WDCG, WDTH, PFMOVE, & - FLAGLL, DPDX, DPDY, DQDX, DQDY, GSQRT - USE W3WDATMD, ONLY: TIME - USE W3ADATMD, ONLY: NMX0, NMX1, NMX2, NMY0, NMY1, NMY2, NACT, & - NCENT, MAPX2, MAPY2, MAPAXY, MAPCXY, & - MAPTRN, CG, CX, CY, ATRNX, ATRNY, ITIME + USE W3GDATMD, ONLY: NX, NY, MAPSF, CLATS, & + NK, NTH, ECOS, ESIN, DPDX, DPDY, DQDX, DQDY + USE W3ADATMD, ONLY: CG, CX, CY USE W3IDATMD, ONLY: FLCUR - USE W3ODATMD, ONLY: NDSE, NDST, FLBPI, NBI, TBPI0, TBPIN, & - ISBPI, BBPI0, BBPIN #ifdef W3_S USE W3SERVMD, ONLY: STRACE #endif @@ -2077,15 +2076,11 @@ SUBROUTINE W3CFLXY ( ISEA, DTG, MAPSTA, MAPFS, CFLXYMAX, VGX, VGY ) !/ ------------------------------------------------------------------- / !/ Local parameters !/ - INTEGER :: ITH, IK, IXY, IP - INTEGER :: IX, IY, IXC, IYC, IBI + INTEGER :: ITH, IK, IXY + INTEGER :: IX, IY #ifdef W3_S INTEGER, SAVE :: IENT = 0 #endif - REAL :: CG0, CGA, CGN, CGX, CGY, CXC, CYC, & - CXMIN, CXMAX, CYMIN, CYMAX - REAL :: CGC, FGSE = 1. - REAL :: FTH, FTHX, FTHY, FCG, FCGX, FCGY REAL :: CP, CQ !/ !/ Automatic work arrays From f9d9985d3a2aea6a0ea3e35debe9a155529351c2 Mon Sep 17 00:00:00 2001 From: Ming Chen Date: Tue, 9 Dec 2025 19:24:25 +0000 Subject: [PATCH 2/4] resolve Intel remark #7712 in w3profsmd --- model/src/w3profsmd.F90 | 72 +++++++++++++++++------------------------ 1 file changed, 30 insertions(+), 42 deletions(-) diff --git a/model/src/w3profsmd.F90 b/model/src/w3profsmd.F90 index 6078cba32e..63d0108eea 100644 --- a/model/src/w3profsmd.F90 +++ b/model/src/w3profsmd.F90 @@ -136,16 +136,13 @@ SUBROUTINE W3XYPUG ( ISP, FACX, FACY, DTG, VQ, VGX, VGY, LCALC ) ! USE W3TIMEMD, ONLY: DSEC21 ! - USE W3GDATMD, ONLY: NX, NY, NSEA, MAPSF, MAPFS, DTCFL, CLATS, & - FLCX, FLCY, NK, NTH, DTH, XFR, & - ECOS, ESIN, SIG, PFMOVE,IEN, & - NTRI, TRIGP, CCON , & - IE_CELL, POS_CELL, IOBP, IOBPD, IOBDP, & - FSN, FSPSI, FSFCT, FSNIMP, GTYPE, UNGTYPE + USE W3GDATMD, ONLY: NX, NY, NSEA, MAPSF, MAPFS, CLATS, & + NTH, ECOS, ESIN, IOBP, & + IOBDP, FSN, FSPSI, FSFCT, FSNIMP, UNGTYPE USE W3WDATMD, ONLY: TIME USE W3ODATMD, ONLY: TBPI0, TBPIN, FLBPI - USE W3ADATMD, ONLY: CG, CX, CY, ATRNX, ATRNY, ITIME, CFLXYMAX, DW + USE W3ADATMD, ONLY: CG, CX, CY USE W3IDATMD, ONLY: FLCUR ! USE W3ODATMD, ONLY: NDSE, NDST, FLBPI, NBI, TBPI0, TBPIN, & ! ISBPI, BBPI0, BBPIN @@ -347,17 +344,14 @@ SUBROUTINE W3CFLUG ( ISEA, NKCFL, FACX, FACY, DT, MAPFS, CFLXYMAX, & ! USE W3TIMEMD, ONLY: DSEC21 ! - USE W3GDATMD, ONLY: NX, NY, NSEA, MAPSF, DTCFL, CLATS, & - FLCX, FLCY, NK, NTH, DTH, XFR, & - ECOS, ESIN, SIG, PFMOVE,IEN, INDEX_CELL, & - NTRI, TRIGP, CCON , & - IE_CELL, POS_CELL, COUNTRI, SI, IOBP + USE W3GDATMD, ONLY: NX, NY, NSEA, MAPSF, CLATS, & + NTH, ECOS, ESIN, IEN, INDEX_CELL, & + TRIGP, IE_CELL, POS_CELL, SI, IOBP - USE W3ADATMD, ONLY: CG, CX, CY, ATRNX, ATRNY, ITIME, DW + USE W3ADATMD, ONLY: CG, CX, CY USE W3IDATMD, ONLY: FLCUR #ifdef W3_T - USE W3ODATMD, ONLY: NDSE, NDST, FLBPI, NBI, TBPI0, TBPIN, & - ISBPI, BBPI0, BBPIN + USE W3ODATMD, ONLY: FLBPI, NBI, ISBPI, BBPI0, BBPIN #endif #ifdef W3_S USE W3SERVMD, ONLY: STRACE @@ -531,15 +525,14 @@ SUBROUTINE W3XYPFSN2 ( ISP, C, LCALC, RD10, RD20, DT, AC) ! !/ ------------------------------------------------------------------- / !/ - USE W3GDATMD, ONLY : NK, NTH, NTRI, NX, CCON, IE_CELL,POS_CELL, SI, & - IEN, TRIGP, CLATS, MAPSF, IOBPD, IOBP, IOBDP, & + USE W3GDATMD, ONLY : NTH, NTRI, NX, SI, & + IEN, TRIGP, CLATS, MAPSF, IOBPD, IOBP, IOBDP, & IOBPA, FSBCCFL #ifdef W3_REF1 USE W3GDATMD, ONLY : REFPARS #endif - USE W3WDATMD, ONLY: TIME - USE W3ADATMD, ONLY: CG, ITER, DW - USE W3ODATMD, ONLY: NDSE, NDST, FLBPI, NBI, TBPI0, TBPIN, ISBPI, BBPI0, BBPIN + USE W3ADATMD, ONLY: CG, ITER + USE W3ODATMD, ONLY: FLBPI, NBI, ISBPI, BBPI0, BBPIN USE W3TIMEMD, ONLY: DSEC21 #ifdef W3_S USE W3SERVMD, ONLY: STRACE @@ -582,13 +575,13 @@ SUBROUTINE W3XYPFSN2 ( ISP, C, LCALC, RD10, RD20, DT, AC) ! ! local double ! - REAL*8 :: UTILDE, BOUNDARY_FORCING + REAL*8 :: UTILDE REAL*8 :: CFLXY REAL*8 :: FL11, FL12, FL21, FL22, FL31, FL32 REAL*8 :: FL111, FL112, FL211, FL212, FL311, FL312 REAL*8 :: DTSI(NX), U(NX) REAL*8 :: DTMAXGL, DTMAXEXP, REST - REAL*8 :: LAMBDA(2), KTMP(3), CLOC(2,3) + REAL*8 :: LAMBDA(2), KTMP(3) REAL*8 :: KELEM(3,NTRI), FLALL(3,NTRI) REAL*8 :: KKSUM(NX), ST(NX) REAL*8 :: NM(NTRI) @@ -778,14 +771,13 @@ SUBROUTINE W3XYPFSPSI2 ( ISP, C, LCALC, RD10, RD20, DT, AC) ! !/ ------------------------------------------------------------------- / !/ - USE W3GDATMD, ONLY : NK, NTH, NTRI, NX, CCON, IE_CELL,POS_CELL, SI, & - IEN, TRIGP, CLATS, MAPSF, IOBPA, IOBPD, IOBP, NNZ, IOBDP + USE W3GDATMD, ONLY : NTH, NTRI, NX, SI, & + IEN, TRIGP, CLATS, MAPSF, IOBPA, IOBPD, IOBDP #ifdef W3_REF1 USE W3GDATMD, ONLY : REFPARS #endif - USE W3WDATMD, ONLY: TIME USE W3ADATMD, ONLY: CG, ITER - USE W3ODATMD, ONLY: NDSE, NDST, FLBPI, NBI, TBPI0, TBPIN, ISBPI, BBPI0, BBPIN + USE W3ODATMD, ONLY: FLBPI, NBI, ISBPI, BBPI0, BBPIN USE W3TIMEMD, ONLY: DSEC21 #ifdef W3_S USE W3SERVMD, ONLY: STRACE @@ -828,13 +820,13 @@ SUBROUTINE W3XYPFSPSI2 ( ISP, C, LCALC, RD10, RD20, DT, AC) !: ! local double ! - REAL*8 :: UTILDE, BOUNDARY_FORCING + REAL*8 :: UTILDE REAL*8 :: FT, CFLXY REAL*8 :: FL11, FL12, FL21, FL22, FL31, FL32 REAL*8 :: FL111, FL112, FL211, FL212, FL311, FL312 REAL*8 :: DTSI(NX), U(NX) REAL*8 :: DTMAXGL, DTMAXEXP, REST - REAL*8 :: LAMBDA(2), KTMP(3), TMP(3) + REAL*8 :: LAMBDA(2), KTMP(3) REAL*8 :: THETA_L(3), BET1(3), BETAHAT(3) REAL*8 :: KELEM(3,NTRI), FLALL(3,NTRI) REAL*8 :: KKSUM(NX), ST(NX) @@ -1032,15 +1024,14 @@ SUBROUTINE W3XYPFSNIMP ( ISP, C, LCALC, RD10, RD20, DT, AC) ! !/ ------------------------------------------------------------------- / !/ - USE W3GDATMD, ONLY : NK, NTH, NTRI, NX, CCON, IE_CELL,POS_CELL, SI, & - IEN, TRIGP, CLATS, MAPSF, IOBPD, IOBPA, IOBP, IAA, JAA, POSI, & + USE W3GDATMD, ONLY : NTH, NTRI, NX, CCON, IE_CELL,POS_CELL, & + IEN, TRIGP, CLATS, MAPSF, IOBPD, IOBPA, IAA, JAA, POSI, & TRIA, NNZ #ifdef W3_REF1 USE W3GDATMD, ONLY : REFPARS #endif - USE W3WDATMD, ONLY: TIME - USE W3ADATMD, ONLY: CG, ITER - USE W3ODATMD, ONLY: NDSE, NDST, FLBPI, NBI, TBPI0, TBPIN, ISBPI, BBPI0, BBPIN + USE W3ADATMD, ONLY: CG + USE W3ODATMD, ONLY: FLBPI, NBI, ISBPI, BBPI0, BBPIN USE W3TIMEMD, ONLY: DSEC21 #ifdef W3_S USE W3SERVMD, ONLY: STRACE @@ -1084,7 +1075,6 @@ SUBROUTINE W3XYPFSNIMP ( ISP, C, LCALC, RD10, RD20, DT, AC) !: ! local double ! - REAL*8 :: BOUNDARY_FORCING REAL*8 :: FL11, FL12, FL21, FL22, FL31, FL32 REAL*8 :: U(NX) REAL*8 :: DTMAXGL @@ -1332,14 +1322,13 @@ SUBROUTINE W3XYPFSFCT2 ( ISP, C, LCALC, RD10, RD20, DT, AC) ! !/ ------------------------------------------------------------------- / !/ - USE W3GDATMD, ONLY : NK, NTH, NTRI, NX, CCON, IE_CELL,POS_CELL, SI, & - IEN, TRIGP, CLATS, MAPSF, IOBPD, IOBPA, TRIA, IOBDP + USE W3GDATMD, ONLY : NTH, NTRI, NX, SI, & + IEN, TRIGP, CLATS, MAPSF, IOBPD, IOBPA, IOBDP #ifdef W3_REF1 USE W3GDATMD, ONLY : REFPARS #endif - USE W3WDATMD, ONLY: TIME USE W3ADATMD, ONLY: CG, ITER - USE W3ODATMD, ONLY: NDSE, NDST, FLBPI, NBI, TBPI0, TBPIN, ISBPI, BBPI0, BBPIN + USE W3ODATMD, ONLY: FLBPI, NBI, ISBPI, BBPI0, BBPIN USE W3TIMEMD, ONLY: DSEC21 #ifdef W3_S USE W3SERVMD, ONLY: STRACE @@ -1383,7 +1372,7 @@ SUBROUTINE W3XYPFSFCT2 ( ISP, C, LCALC, RD10, RD20, DT, AC) !: ! local double ! - REAL*8 :: UTILDE, BOUNDARY_FORCING + REAL*8 :: UTILDE REAL*8 :: FT, CFLXY REAL*8 :: FL11, FL12, FL21, FL22, FL31, FL32 REAL*8 :: FL111, FL112, FL211, FL212, FL311, FL312 @@ -1637,8 +1626,7 @@ SUBROUTINE SETDEPTH USE W3SERVMD, ONLY: STRACE #endif ! - USE CONSTANTS, ONLY : LPDLIB - USE W3GDATMD, ONLY: MAPSF, NSEAL, DMIN, IOBDP, MAPSTA, IOBP, MAPFS, NX + USE W3GDATMD, ONLY: DMIN, IOBDP, MAPFS, NX USE W3ADATMD, ONLY: DW IMPLICIT NONE @@ -1655,7 +1643,7 @@ SUBROUTINE SETDEPTH !/ !/ ------------------------------------------------------------------- / ! - INTEGER :: JSEA, ISEA, IX, IP + INTEGER :: IP REAL*8, PARAMETER :: DTHR = 10E-6 #ifdef W3_S CALL STRACE (IENT, 'SETDEPTH') From abca0f8944954424203b66237106dc71db8e5198 Mon Sep 17 00:00:00 2001 From: Ming Chen Date: Tue, 9 Dec 2025 19:24:48 +0000 Subject: [PATCH 3/4] resolve Intel remark #7712 in w3sdb1md --- model/src/w3sdb1md.F90 | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/model/src/w3sdb1md.F90 b/model/src/w3sdb1md.F90 index 0e0c09e809..1be24a9759 100644 --- a/model/src/w3sdb1md.F90 +++ b/model/src/w3sdb1md.F90 @@ -183,19 +183,22 @@ SUBROUTINE W3SDB1 (IX, A, DEPTH, EMEAN, FMEAN, WNMEAN, CG, LBREAK, S, D ) !/ ------------------------------------------------------------------- / !/ USE CONSTANTS - USE W3GDATMD, ONLY: NK, NTH, NSPEC, SDBC1, SDBC2, FDONLY, FSSOURCE, DDEN - USE W3ODATMD, ONLY: NDST + USE W3GDATMD, ONLY: NK, NTH, NSPEC, SDBC1, SDBC2, FDONLY, DDEN USE W3GDATMD, ONLY: SIG - USE W3ODATMD, only : IAPROC USE W3PARALL, only : THR #ifdef W3_S USE W3SERVMD, ONLY: STRACE #endif +#ifdef W3_T + USE W3ODATMD, ONLY: NDST +#endif #ifdef W3_T0 USE W3ARRYMD, ONLY: PRT2DS + USE W3ODATMD, ONLY: NDST #endif #ifdef W3_T1 USE W3ARRYMD, ONLY: OUTMAT + USE W3ODATMD, ONLY: NDST #endif !/ IMPLICIT NONE From fb59f6e6edf63c97c684027e11cd3972d798fc00 Mon Sep 17 00:00:00 2001 From: Ming Chen Date: Tue, 9 Dec 2025 19:25:04 +0000 Subject: [PATCH 4/4] resolve Intel remark #7712 in w3strkmd --- model/src/w3strkmd.F90 | 38 +++++++++++++++----------------------- 1 file changed, 15 insertions(+), 23 deletions(-) diff --git a/model/src/w3strkmd.F90 b/model/src/w3strkmd.F90 index 97796dfda1..c10e02d30f 100644 --- a/model/src/w3strkmd.F90 +++ b/model/src/w3strkmd.F90 @@ -369,8 +369,7 @@ SUBROUTINE waveTracking_NWS_V2 (intype ,tmax , & INTEGER :: maxGroup, intype, tmax, tcur, ntint INTEGER, POINTER :: maxSys(:) TYPE(dat2d), POINTER :: wsdat(:) - TYPE(timsys), POINTER :: sysA(:), sysAA(:) - INTEGER :: NumConsSys, iConsSys + TYPE(timsys), POINTER :: sysA(:) REAL :: dt REAL :: minlon, maxlon, minlat, maxlat INTEGER :: mxcwt, mycwt @@ -419,7 +418,7 @@ SUBROUTINE waveTracking_NWS_V2 (intype ,tmax , & REAL, ALLOCATABLE :: mlon(:,:), mlat(:,:), tmp_r4(:) REAL, POINTER :: uniqueTim(:),uniqueLatraw(:),uniqueLonraw(:), & uniqueLat(:),uniqueLon(:) - INTEGER :: ioerr,ierr, i, j, k, l, alreadyIn, ok, tss, tsA + INTEGER :: ioerr,ierr, i, j, k, l, tsA INTEGER :: maxPart, DATETIME(2) INTEGER :: tstep, iline, numpart, skipln, readln, filesize REAL :: x,y,wnd,wnddir @@ -427,14 +426,13 @@ SUBROUTINE waveTracking_NWS_V2 (intype ,tmax , & REAL :: invar5, invar6, invar7 REAL, ALLOCATABLE :: phs(:),ptp(:),pdir(:),pspr(:),pwf(:) ! current partition values REAL*8 :: date1, date2, ttest, ttemp - INTEGER :: ic, leng, maxpartout ! Remove? - REAL :: dx + INTEGER :: maxpartout ! Remove? INTEGER :: latind1, latind2, lonind1, lonind2 REAL :: lonext, latext LOGICAL :: endloop #ifdef W3_MPI - INTEGER :: rank, irank, nproc, EXTENT, DOMSIZE, tag1, tag2 + INTEGER :: rank, irank, nproc, EXTENT, DOMSIZE, tag1, tag2, ic ! INTEGER :: MPI_INT_DOMARR, MPI_REAL_DOMARR type(MPI_STATUS) :: MPI_STAT INTEGER :: REQ(16) @@ -2127,21 +2125,18 @@ SUBROUTINE timeTrackingV2 (sysA ,maxSys ,tpTimeKnob , & LOGICAL :: file_exists CHARACTER :: dummy*23 TYPE(sysmemory) :: sysMem(50) !!! 50 memory spaces should be enough Check!!! - INTEGER :: leng, l, i, ii, j, k, kk, idir, numSys, & - counter, new, DIFSIZE, tpMinInd, dirMinInd, used, ok - REAL :: Tb, deltaPer, deltaDir, tpMinVal, dirMinVal, & - dirForTpMin, tpForDirMin + INTEGER :: leng, l, i, ii, j, k, kk, idir, & + counter, new, tpMinInd, dirMinInd, used, ok + REAL :: deltaPer, deltaDir, tpMinVal REAL, ALLOCATABLE :: sysOrdered(:), TEMP(:), dirs(:) - REAL, POINTER :: DIFARR(:) INTEGER, ALLOCATABLE :: indSorted(:), alreadyUsed(:), allInd(:) INTEGER, ALLOCATABLE :: ind(:), ind2(:) INTEGER :: ts1 REAL, ALLOCATABLE :: GOF(:,:), GOFMinVal(:), GOFMinInd(:), & Tbsysmem(:), deltaDirsysmem(:), & deltaPersysmem(:),m1sysmem(:),m2sysmem(:) - REAL :: m1, m2 REAL :: lonmean, latmean, dmndiag - INTEGER :: npnts, npnts2 + INTEGER :: npnts REAL, ALLOCATABLE :: mnlonlist(:), mnlatlist(:), mndist(:) REAL, POINTER :: dummy1(:),dummy2(:),dummy3(:) INTEGER, ALLOCATABLE :: olsize(:) @@ -3057,14 +3052,12 @@ SUBROUTINE findSys (i ,j ,wsdat ,maxSys , & TYPE(mtchsys) :: match LOGICAL :: found INTEGER :: counter, ii, jj, nngbr, startCount, endCount, l,& - nout, maxS, s, p, n, countAll, ind, minInd, & - npart, pp, leng + nout, maxS, s, p, n, countAll, ind, npart, pp, leng INTEGER :: allFullSys(50) REAL, POINTER :: realarr(:) INTEGER, ALLOCATABLE :: allSys(:) REAL :: hsAll(50),tpAll(50),dirAll(50),GOF(50) - REAL :: absDir,absPer,absHs,T,& - deltaPer,deltaDir,deltaHs,temp + REAL :: absDir,absPer,absHs,T,deltaPer,deltaDir,deltaHs REAL :: dx, m1, m2 REAL :: GOFMinVal INTEGER :: GOFMinInd @@ -3344,7 +3337,7 @@ SUBROUTINE combineWaveSystems (wsdat ,maxSys ,maxPts , & ! combine Int input Toggle: 1=combine systems; 0=do not combine TYPE(dat2d) :: wsdat - TYPE(system), POINTER :: sys(:), systemp(:) + TYPE(system), POINTER :: sys(:) INTEGER :: maxSys, maxPts, maxI, maxJ, combine REAL :: perKnob ,dirKnob, hsKnob @@ -3357,12 +3350,11 @@ SUBROUTINE combineWaveSystems (wsdat ,maxSys ,maxPts , & ! nSys Int Number of wave systems (for checking iterative combining loop) ! LOGICAL :: found - INTEGER, ALLOCATABLE :: sysOut(:) INTEGER, ALLOCATABLE :: actSysInd(:) INTEGER :: iter, ok, nSys, mS, s, so, ss, ind, leng, & iw, jw, iloop INTEGER :: actSys - REAL :: dev, hsCmp, maxHgt, temp(5) + REAL :: dev, hsCmp, maxHgt ! ! 4. Subroutines used : ! @@ -3835,7 +3827,7 @@ SUBROUTINE combineSys (wsdat ,sys ,maxSys ,maxI , & REAL, ALLOCATABLE :: sysOrdered(:), rounded(:) REAL, POINTER :: uniarr(:), difarr(:), allngbr(:) INTEGER :: leng, leng2, s, ss, so, ngb, lsys, lsys2, hh, i, j, & - ii, jj, ind, ind2, nn, nbr, icEnd,ic,iii,iloop + ii, jj, ind, ind2, nn, nbr, ic, iii INTEGER :: myngbr, indMatch, matchSys, keep, replacedInd, & hhForIndMatch, lMatch, tot, outsize INTEGER :: ngbIndex(10000), keepInd(maxI*maxJ), oneLess(1000) !Array large enough? @@ -4428,7 +4420,7 @@ SUBROUTINE combinePartitionsV2 (dat) TYPE(duplicate) :: dup(100) !40.PAR LOGICAL :: found - INTEGER :: nsys, ndup, p, pp, maxInd, npart, s, ss, ppp + INTEGER :: nsys, p, pp, maxInd, npart, s, ss, ppp REAL :: temp ! ! 4. Subroutines used : @@ -5869,7 +5861,7 @@ RECURSIVE SUBROUTINE QSORT_DESC(ARRAY,IDX,LO,HI) !/ ! Local variables ! ---------------------------------------------------------------- - INTEGER :: TOP, BOT, I + INTEGER :: TOP, BOT REAL :: VAL, TMP LOGICAL :: LOOP !