The TELEMAC-MASCARET system  trunk
qbrek2.f
Go to the documentation of this file.
1 ! *****************
2  SUBROUTINE qbrek2
3 ! *****************
4 !
5  & ( tstot , f , fcar , varian, nf , ndire , npoin2)
6 !
7 !***********************************************************************
8 ! TOMAWAC V6P1 23/06/2011
9 !***********************************************************************
10 !
11 !brief COMPUTES THE CONTRIBUTION OF THE DEPTH-INDUCED
12 !+ BREAKING SOURCE TERM BASED ON THORNTON AND GUZA (1983).
13 !
14 !note THIS SOURCE TERM IS LINEAR IN F(FREQ,TETA), AND THE LINEAR
15 !+ COEFFICIENT DOES NOT VARY WITH TIME.
16 !
17 !reference THORNTON AND GUZA (1983) :
18 !+ "TRANSFORMATION OF WAVE HEIGHT DISTRIBUTION".
19 !
20 !history F. BECQ; M. BENOIT (EDF/DER/LNH)
21 !+ 14/02/96
22 !+ V1P1
23 !+
24 !
25 !history N.DURAND (HRW), S.E.BOURBAN (HRW)
26 !+ 13/07/2010
27 !+ V6P0
28 !+ Translation of French comments within the FORTRAN sources into
29 !+ English comments
30 !
31 !history N.DURAND (HRW), S.E.BOURBAN (HRW)
32 !+ 21/08/2010
33 !+ V6P0
34 !+ Creation of DOXYGEN tags for automated documentation and
35 !+ cross-referencing of the FORTRAN sources
36 !
37 !history G.MATTAROLO (EDF - LNHE)
38 !+ 23/06/2011
39 !+ V6P1
40 !+ Translation of French names of the variables in argument
41 !
42 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
43 !| BORETG |-->| COEFFICIENT B OF WAVE BREAKING TG MODEL
44 !| DEPTH |-->| WATER DEPTH
45 !| F |-->| DIRECTIONAL SPECTRUM
46 !| FCAR |-->| CHARACTERISTIC FREQUENCY
47 !| GAMATG |-->| GAMMA CONSTANT OF WAVE BREAKING TG MODEL
48 !| IWHTG |-->| WEIGHT. FUN.SELECTION OF WAVE BREAKING TG MODEL
49 !| NF |-->| NUMBER OF FREQUENCIES
50 !| NDIRE |-->| NUMBER OF DIRECTIONS
51 !| NPOIN2 |-->| NUMBER OF POINTS IN 2D MESH
52 !| TSTOT |<->| TOTAL PART OF THE SOURCE TERM CONTRIBUTION
53 !| VARIAN |-->| SPECTRUM VARIANCE
54 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
55 !
57  & depth, betabr
58 !
59  USE interface_tomawac, ex_qbrek2 => qbrek2
60  IMPLICIT NONE
61 !
62 !.....VARIABLES IN ARGUMENT
63 ! """"""""""""""""""""
64  INTEGER, INTENT(IN) :: NF, NDIRE, NPOIN2
65  DOUBLE PRECISION, INTENT(IN) :: F(npoin2,ndire,nf)
66  DOUBLE PRECISION, INTENT(IN) :: VARIAN(npoin2), FCAR(npoin2)
67  DOUBLE PRECISION, INTENT(INOUT):: TSTOT(npoin2,ndire,nf)
68 !
69 !.....LOCAL VARIABLES
70 ! """""""""""""""""
71  INTEGER JP , IFF , IP
72  DOUBLE PRECISION COEF , GAMMA2
73 !
74  gamma2 = gamatg**2
75  coef = -24.d0*sqrt(deupi)*boretg**3/gamma2
76 !
77  IF (iwhtg.EQ.1) THEN
78 !
79 !.......COMPUTES THE LINEAR COEFFICIENT BETABR : QBREK2 = BETABR * F
80 ! WITH THE WEIGHT FUNCTION W(H) = CONSTANT
81 ! """""""""""""""""""""""""""""""""""""""""""""""""""""""
82  DO ip = 1,npoin2
83  betabr(ip) = coef*8.d0*sqrt(varian(ip)**5)*fcar(ip)
84  & /(gamma2*depth(ip)**5)
85  DO iff = 1,nf
86  DO jp = 1,ndire
87  tstot(ip,jp,iff) = tstot(ip,jp,iff)
88  & +betabr(ip)*f(ip,jp,iff)
89  ENDDO ! JP
90  ENDDO ! IFF
91  ENDDO
92 !
93  ELSEIF (iwhtg.EQ.2) THEN
94 !
95 !.......COMPUTES THE LINEAR COEFFICIENT BETA : QBREK2 = BETABR * F
96 ! WITH THE WEIGHT FUNCTION W(H) != CONSTANT
97 ! """""""""""""""""""""""""""""""""""""""""""""""""""""""
98  DO ip = 1,npoin2
99  betabr(ip) = (coef*sqrt(varian(ip)**3)*fcar(ip)/
100  & depth(ip)**3)*(1.d0-1.d0/(1.d0+varian(ip)*8.d0
101  & /(gamma2*depth(ip)*depth(ip)))**2.5d0)
102  DO iff = 1,nf
103  DO jp = 1,ndire
104  tstot(ip,jp,iff) = tstot(ip,jp,iff)
105  & +betabr(ip)*f(ip,jp,iff)
106  ENDDO ! JP
107  ENDDO ! IFF
108  ENDDO ! IP
109  ENDIF
110 !
111  RETURN
112  END
subroutine qbrek2(TSTOT, F, FCAR, VARIAN, NF, NDIRE, NPOIN2)
Definition: qbrek2.f:7