The TELEMAC-MASCARET system  trunk
bedload_hiding_factor_gaia.f
Go to the documentation of this file.
1 ! *************************************
3 ! *************************************
4 !
5  &(acladm, hidfac, npoin, hidi, dcla, k_h_y, hiding)
6 !
7 !***********************************************************************
8 ! GAIA
9 !***********************************************************************
10 !
12 !
13 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
22 !
23  USE interface_gaia,
24  & ex_bedload_hiding_factor => bedload_hiding_factor_gaia
25  USE bief
27  IMPLICIT NONE
28 !
29  TYPE(bief_obj), INTENT(IN) :: ACLADM
30  INTEGER, INTENT(IN) :: HIDFAC, NPOIN
31  DOUBLE PRECISION, INTENT(IN) :: HIDI, DCLA, K_H_Y
32  TYPE(bief_obj), INTENT(INOUT) :: HIDING
33 !
34  INTEGER :: J
35  DOUBLE PRECISION :: C1, C2
36 !
37 !======================================================================!
38 !======================================================================!
39 ! PROGRAM !
40 !======================================================================!
41 !======================================================================!
42 !
43 ! ***************************
44 ! IA - CONSTANT HIDING FACTOR
45 ! ***************************
46 !
47  IF (hidfac == 0) THEN
48 !
49  CALL os('X=C ', x=hiding, c=hidi)
50 !
51 ! ***************************
52 ! IB - EGIAZAROFF FORMULATION
53 ! ***************************
54 !
55  ELSEIF (hidfac == 1) THEN
56 !
57  c1 = log10(19.d0)
58  c2 = 19.d0*dcla
59  DO j = 1, npoin
60  hiding%R(j) = (c1/log10(c2/acladm%R(j)))**2
61  ENDDO
62 !
63 ! ***********************************
64 ! IC - ASHIDA AND MICHIUE FORMULATION
65 ! ***********************************
66 !
67  ELSEIF (hidfac == 2) THEN
68 !
69  c1 = log10(19.d0)
70  c2 = 19.d0*dcla
71  DO j = 1, npoin
72 !
73  IF(dcla/acladm%R(j) >= 0.4d0) THEN
74  hiding%R(j) = (c1 / log10(c2/acladm%R(j)) )**2
75  ELSE
76  hiding%R(j) = 0.85d0*(acladm%R(j)/dcla)
77  ENDIF
78 !
79  ENDDO
80 !
81 ! **************************************
82 ! IE - KARIM, HOLLY AND YANG FORMULATION
83 ! **************************************
84 !
85  ELSEIF (hidfac == 4) THEN
86 !
87  CALL os('X=1/Y ', x=hiding, y=acladm)
88  CALL os('X=CX ', x=hiding, c=dcla)
89  CALL os('X=Y**C ', x=hiding, y=hiding, c=k_h_y)
90 !
91  ELSE
92 !
93  WRITE(lu,*) 'UNKNOWN HIDING FACTOR FORMULA: ',hidfac
94  CALL plante(1)
95  stop
96 !
97  ENDIF
98 !
99 !======================================================================!
100 !======================================================================!
101 !
102  RETURN
103  END SUBROUTINE bedload_hiding_factor_gaia
subroutine bedload_hiding_factor_gaia(ACLADM, HIDFAC, NPOIN, HIDI, DCLA, K_H_Y, HIDING)
subroutine os(OP, X, Y, Z, C, IOPT, INFINI, ZERO)
Definition: os.f:7
Definition: bief.f:3