The TELEMAC-MASCARET system  trunk
suspension_rouse_gaia.f
Go to the documentation of this file.
1 ! ********************************
2  SUBROUTINE suspension_rouse_gaia
3 ! ********************************
4 !
5  &(ustar,hn,npoin,karman,zero,xwc,zref,csratio)
6 !
7 !***********************************************************************
8 ! GAIA
9 !***********************************************************************
10 !
12 !Rouse profile
13 !
14 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
24 !
25  USE bief
27  IMPLICIT NONE
28  ! 2/ GLOBAL VARIABLES
29  ! -------------------
30  TYPE(bief_obj), INTENT(IN) :: USTAR,HN,ZREF
31  INTEGER, INTENT(IN) :: NPOIN
32  DOUBLE PRECISION, INTENT(IN) :: KARMAN,XWC,ZERO
33  TYPE(bief_obj), INTENT(INOUT) :: CSRATIO
34  ! 3/ LOCAL VARIABLES
35  ! ------------------
36  INTEGER :: I
37  DOUBLE PRECISION :: B,EXP1,ROUSE
38 !
39  INTRINSIC max,min,log
40 !
41 !======================================================================!
42 !======================================================================!
43 ! PROGRAM !
44 !======================================================================!
45 !======================================================================!
46 !
47 ! ROUSE NUMBER AND MINIMUM BOUND OF THE EINSTEIN INTEGRAL
48 !
49  DO i=1,npoin
50 !
51 ! ROUSE NUMBER
52 !
53  rouse= xwc / (karman*max(ustar%R(i),zero))
54 !
55 ! MINIMUM BOUND OF THE EINSTEIN INTEGRAL --> B = KS/H
56 !
57 ! B ALWAYS LESS THAN 1.
58  b = zref%R(i)/max(hn%R(i),zref%R(i))
59 !
60 ! RATIO BETWEEN REFERENCE CONC. ON BOTTOM AND MEAN CONC.
61 ! ASSUMING EXPONENTIAL PROFILE WITH EXPONENT ROUSE NUMBER --> CSRATIO
62 !
63  exp1=rouse-1.d0
64  IF(abs(exp1).GT.1.d-4) THEN
65  exp1=min(exp1,3.d0)
66  csratio%R(i)=b*(1.d0-b**exp1)/exp1
67  ELSE
68  csratio%R(i)=-b*log(b)
69  ENDIF
70  csratio%R(i)=max(1.d0/max(csratio%R(i),zero),1.d0)
71  ENDDO
72 !
73 !======================================================================!
74 !======================================================================!
75 !
76  RETURN
77  END
subroutine suspension_rouse_gaia(USTAR, HN, NPOIN, KARMAN, ZERO, XWC, ZREF, CSRATIO)
Definition: bief.f:3