Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
72 changes: 49 additions & 23 deletions model/src/w3srcemd.F90
Original file line number Diff line number Diff line change
Expand Up @@ -498,12 +498,19 @@ SUBROUTINE W3SRCE ( srce_call, IT, ISEA, JSEA, IX, IY, IMOD, &
srce_direct, GRAV, TPI, TPIINV
USE W3GDATMD, ONLY: NK, NTH, NSPEC, SIG, TH, DMIN, DTMAX, &
DTMIN, FACTI1, FACTI2, FACSD, FACHFA, FACP, &
XFC, XFLT, XREL, XFT, FXFM, FXPM, DDEN, &
FTE, FTF, FHMAX, ECOS, ESIN, IICEDISP, &
XFLT, XREL, FXFM, FXPM, DDEN, &
FHMAX, ECOS, ESIN, IICEDISP, &
ICESCALES, IICESMOOTH
USE W3GDATMD, ONLY: IC_NUMERICS
#if defined(W3_NL5) || defined(W3_NNT)
USE W3WDATMD, ONLY: TIME
USE W3ODATMD, ONLY: NDSE, NDST, IAPROC
#endif
#if defined(W3_T) || defined(W3_ST1) || defined(W3_ST2) || defined(W3_ST3) || defined(W3_ST6)
USE W3ODATMD, ONLY: NDST
#endif
#if defined(W3_NNT) || defined(W3_PDLIB) || defined(W3_DEBUGSRC)
USE W3ODATMD, ONLY: IAPROC
#endif
USE W3IDATMD, ONLY: INFLAGS2
USE W3DISPMD
#ifdef W3_T
Expand All @@ -513,7 +520,7 @@ SUBROUTINE W3SRCE ( srce_call, IT, ISEA, JSEA, IX, IY, IMOD, &
USE W3GDATMD, ONLY: IOBP, IOBPD, GTYPE, UNGTYPE, REFPARS
#endif
#ifdef W3_NNT
USE W3ODATMD, ONLY: IAPROC, SCREEN, FNMPRE
USE W3ODATMD, ONLY: SCREEN, FNMPRE
#endif
#ifdef W3_FLD1
USE W3FLD1MD, ONLY: W3FLD1
Expand Down Expand Up @@ -549,7 +556,7 @@ SUBROUTINE W3SRCE ( srce_call, IT, ISEA, JSEA, IX, IY, IMOD, &
#endif
#ifdef W3_ST2
USE W3SRC2MD
USE W3GDATMD, ONLY : ZWIND
USE W3GDATMD, ONLY : ZWIND, XFC, XFT
#endif
#ifdef W3_ST3
USE W3SRC3MD
Expand Down Expand Up @@ -638,6 +645,7 @@ SUBROUTINE W3SRCE ( srce_call, IT, ISEA, JSEA, IX, IY, IMOD, &
#endif
#ifdef W3_NNT
USE W3SERVMD, ONLY: EXTOPN, EXTIOF
USE W3ODATMD, ONLY: NDSE
#endif
#ifdef W3_UOST
USE W3UOSTMD, ONLY: UOST_SRCTRMCOMPUTE
Expand Down Expand Up @@ -684,46 +692,56 @@ SUBROUTINE W3SRCE ( srce_call, IT, ISEA, JSEA, IX, IY, IMOD, &
!/ Local parameters
!/
INTEGER :: IK, ITH, IS, IS0, NSTEPS, NKH, NKH1, &
IKS1, IS1, NSPECH, IDT, IERR, ISP
IKS1, IS1, NSPECH, IDT
REAL :: DTTOT, FHIGH, DT, AFILT, DAMAX, AFAC, &
HDT, ZWND, FP, DEPTH, TAUSCX, TAUSCY, FHIGI
HDT, ZWND, DEPTH, TAUSCX, TAUSCY, FHIGI
! Scaling factor for SIN, SDS, SNL
REAL :: ICESCALELN, ICESCALEIN, ICESCALENL, ICESCALEDS
REAL :: EMEAN, FMEAN, AMAX, CD, Z0, SCAT, &
SMOOTH_ICEDISP
REAL :: EMEAN, FMEAN, AMAX, CD, Z0
REAL :: WN_R(NK), CG_ICE(NK), ALPHA_LIU(NK), ICECOEF2, R(NK)
DOUBLE PRECISION :: ATT, ISO
DOUBLE PRECISION :: ATT
REAL :: EBAND, DIFF, EFINISH, HSTOT, PHINL, &
FMEAN1, FMEANWS, &
FACTOR, FACTOR2, DRAT, TAUWAX, TAUWAY, &
MWXFINISH, MWYFINISH, A1BAND, B1BAND, &
COSI(2)
REAL :: SPECINIT(NSPEC), SPEC2(NSPEC), FRLOCAL, JAC2
REAL :: DAM (NSPEC), DAM2(NSPEC), WN2(NSPEC), &
REAL :: SPECINIT(NSPEC), SPEC2(NSPEC)
REAL :: DAM (NSPEC), WN2(NSPEC), &
VSLN(NSPEC), &
VSIN(NSPEC), VDIN(NSPEC), &
VSNL(NSPEC), VDNL(NSPEC), &
VSDS(NSPEC), VDDS(NSPEC), &
VSBT(NSPEC), VDBT(NSPEC)
REAL :: VS(NSPEC), VD(NSPEC), EB(NK)
REAL :: VS(NSPEC), VD(NSPEC)

LOGICAL :: SHAVE
LOGICAL :: LBREAK
LOGICAL, SAVE :: FIRST = .TRUE.
LOGICAL :: PrintDeltaSmDA
REAL :: eInc1, eInc2, eVS, eVD, JAC
REAL :: DeltaSRC(NSPEC)
REAL :: eInc1, eInc2

REAL :: FOUT(NK,NTH), SOUT(NK,NTH), DOUT(NK,NTH)
REAL, SAVE :: TAUNUX, TAUNUY
LOGICAL, SAVE :: FLTEST = .FALSE., FLAGNN = .TRUE.

#if defined(W3_OMPG) || defined(W3_T) || defined(W3_ST1) || defined(W3_ST2) || defined(W3_ST3) || defined(W3_ST6)
LOGICAL, SAVE :: FLTEST = .FALSE.
#endif

#if defined(W3_OMPG) || defined(W3_NNT)
LOGICAL, SAVE :: FLAGNN = .TRUE.
#endif

#ifdef W3_OMPG
!$omp threadprivate( TAUNUX, TAUNUY)
!$omp threadprivate( FLTEST, FLAGNN )
!$omp threadprivate( FIRST )
#endif

#if defined(W3_PDLIB) || defined(W3_REF1)
INTEGER :: ISP
#endif

#if defined(W3_ST0) || defined(W3_ST1) || defined(W3_ST2) || defined(W3_ST6) || defined(W3_FLX2) || defined(W3_FLX3)
REAL :: FP
#endif
!/
!/ ------------------------------------------------------------------- /
!/ Local parameters dependent on compile switch
Expand All @@ -735,6 +753,9 @@ SUBROUTINE W3SRCE ( srce_call, IT, ISEA, JSEA, IX, IY, IMOD, &
#ifdef W3_NNT
INTEGER, SAVE :: NDSD = 89, NDSD2 = 88, J
REAL :: QCERR = 0. !/XNL2 and !/NNT
INTEGER :: IERR
REAL :: FOUT(NK,NTH), SOUT(NK,NTH), DOUT(NK,NTH)
LOGICAL, SAVE :: FLAGNN = .TRUE.
#endif

#ifdef W3_NL5
Expand Down Expand Up @@ -786,7 +807,9 @@ SUBROUTINE W3SRCE ( srce_call, IT, ISEA, JSEA, IX, IY, IMOD, &

#ifdef W3_IS2
REAL :: VDIR2(NSPEC)
REAL :: SCAT, SMOOTH_ICEDISP
DOUBLE PRECISION :: SCATSPEC(NTH)
DOUBLE PRECISION :: ISO
#endif

#ifdef W3_UOST
Expand All @@ -806,7 +829,7 @@ SUBROUTINE W3SRCE ( srce_call, IT, ISEA, JSEA, IX, IY, IMOD, &
#endif

#ifdef W3_ST4
REAL :: FMEANS, FH1, FH2, FAGE, DLWMEAN
REAL :: FH1, FH2, FAGE, DLWMEAN
REAL :: BRLAMBDA(NSPEC)
#endif

Expand All @@ -820,6 +843,9 @@ SUBROUTINE W3SRCE ( srce_call, IT, ISEA, JSEA, IX, IY, IMOD, &

#ifdef W3_PDLIB
REAL :: PreVS, DVS, SIDT, FAKS, MAXDAC
LOGICAL :: PrintDeltaSmDA
REAL :: DeltaSRC(NSPEC), DAM2(NSPEC)
REAL :: FRLOCAL, JAC, JAC2, eVS, eVD
#endif

#ifdef W3_NNT
Expand Down Expand Up @@ -2578,7 +2604,7 @@ SUBROUTINE SIGN_VSD_SEMI_IMPLICIT_WW3(SPEC, VS, VD)
USE W3SERVMD, ONLY: STRACE
#endif
!
USE W3GDATMD, only : NTH, NK, NSPEC
USE W3GDATMD, only : NSPEC
IMPLICIT NONE
!/
!/ ------------------------------------------------------------------- /
Expand All @@ -2594,7 +2620,7 @@ SUBROUTINE SIGN_VSD_SEMI_IMPLICIT_WW3(SPEC, VS, VD)
!/ ------------------------------------------------------------------- /
!/

INTEGER :: ISP, ITH, IK, IS
INTEGER :: IS
REAL, INTENT(IN) :: SPEC(NSPEC)
REAL, INTENT(INOUT) :: VS(NSPEC), VD(NSPEC)
#ifdef W3_S
Expand Down Expand Up @@ -2667,7 +2693,7 @@ SUBROUTINE SIGN_VSD_PATANKAR_WW3(SPEC, VS, VD)
#endif
!

USE W3GDATMD, only : NTH, NK, NSPEC
USE W3GDATMD, only : NSPEC
IMPLICIT NONE
!/
!/ ------------------------------------------------------------------- /
Expand All @@ -2682,7 +2708,7 @@ SUBROUTINE SIGN_VSD_PATANKAR_WW3(SPEC, VS, VD)
!/
!/ ------------------------------------------------------------------- /
!/
INTEGER :: ISP, ITH, IK, IS
INTEGER :: IS
REAL, INTENT(IN) :: SPEC(NSPEC)
REAL, INTENT(INOUT) :: VS(NSPEC), VD(NSPEC)
#ifdef W3_S
Expand Down
13 changes: 6 additions & 7 deletions model/src/w3tidemd.F90
Original file line number Diff line number Diff line change
Expand Up @@ -289,8 +289,8 @@ SUBROUTINE TIDE_FIND_INDICES_PREDICTION(LIST,INDS,TIDE_PRMF)
!
! 10. Source code :
!
USE W3ODATMD, ONLY: IAPROC, NAPROC, NAPERR, NAPOUT
USE W3ODATMD, ONLY: NDSE, NDSO
USE W3ODATMD, ONLY: IAPROC, NAPOUT
USE W3ODATMD, ONLY: NDSO
#ifdef W3_S
USE W3SERVMD, ONLY: STRACE
#endif
Expand Down Expand Up @@ -387,8 +387,8 @@ SUBROUTINE TIDE_FIND_INDICES_ANALYSIS(LIST)
!
! 10. Source code :
!
USE W3ODATMD, ONLY: IAPROC, NAPROC, NAPERR, NAPOUT
USE W3ODATMD, ONLY: NDSE, NDSO
USE W3ODATMD, ONLY: IAPROC, NAPOUT
USE W3ODATMD, ONLY: NDSO
#ifdef W3_S
USE W3SERVMD, ONLY: STRACE
#endif
Expand All @@ -401,7 +401,6 @@ SUBROUTINE TIDE_FIND_INDICES_ANALYSIS(LIST)
!/
CHARACTER(LEN=100), INTENT(IN) :: LIST(70)
!
INTEGER TIDE_MF_ALL
CHARACTER(LEN=5) :: TIDECON_NAME_ALL(65) ! array of names of tidal constituents
REAL :: TIDE_FREQC_ALL(65) ! array of freq. of tidal constituents
INTEGER :: INDS(65), J, FOUND, NTIDES
Expand Down Expand Up @@ -2137,8 +2136,8 @@ subroutine flex_tidana_webpage(IX,IY,XLON,XLAT,KD1,KD2,ndef, itrend, RES, SSQ, R
FX, FXI, S, S2, S3, UX, VX, UXI, VXI, &
WMIN, WMAX, XMID
REAL :: TOLER
REAL(KIND=8) :: AV, SDEV, SUM2, hrm
DOUBLE PRECISION :: X(NR),Y(NR), TIME(NR)
REAL(KIND=8) :: AV, SDEV, hrm
DOUBLE PRECISION :: X(NR),TIME(NR)
REAL :: Q(NMAXPM,NMAXP1),FREQ(MC),AMP(MC),PH(MC)
DOUBLE PRECISION :: P(NMAXP1),CENHR,CUMHR
DOUBLE PRECISION :: yy
Expand Down
Loading