The TELEMAC-MASCARET system  trunk
fcte1.f
Go to the documentation of this file.
1 ! *******************************
2  DOUBLE PRECISION FUNCTION fcte1
3 ! *******************************
4 !
5  &(xx)
6 !
7 !***********************************************************************
8 ! ARTEMIS V6P1 31/05/2011
9 !***********************************************************************
10 !
11 !brief EVALUATE FUNCTION E1(KH) FOR SECOND
12 !+ ORDER BOTTOM EFFECTS (GRADIENT)
13 !
14 !
15 !history C.PEYRARD
16 !+ 31/05/2011
17 !+ V6P1
18 !+
19 !
20 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21 !| XX |-->| K*H
22 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23 !
24  USE interface_artemis, ex_fcte1 => fcte1
25  IMPLICIT NONE
26 !
27 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
28 !
29  DOUBLE PRECISION, INTENT(IN) :: XX
30 !
31 !+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
32 !
33  DOUBLE PRECISION SHHX , SHH2X , CHHX ,XXX
34  INTRINSIC sinh, cosh
35 !
36  xxx=2.d0*xx
37 !
38  IF(xxx.LT.0.001d0) THEN
39  fcte1=-1.d0/6.d0
40  ELSE
41  shhx = sinh(xxx)
42  shh2x = sinh(2.d0*xxx)
43  chhx = cosh(xxx)
44  fcte1=3.d0*( (chhx-1.d0)**2 + 2.d0 )*(xxx + 2.d0*shhx)*xxx
45  fcte1=fcte1 + shhx*(xxx**4/shhx +4.d0*xxx**3 -9.d0*shh2x)
46  fcte1=fcte1/(3.d0*(xxx+shhx)**4)
47  ENDIF
48 !
49 !-----------------------------------------------------------------------
50 !
51  RETURN
52  END
double precision function fcte1(XX)
Definition: fcte1.f:7