The TELEMAC-MASCARET system  trunk
bedload_engel_cc_gaia.f
Go to the documentation of this file.
1 ! ********************************
2  SUBROUTINE bedload_engel_cc_gaia
3 ! ********************************
4 !
5  &(tetap,cf,npoin,grav,dcla,dens,teta,qsc,xmvs)
6 !
7 !***********************************************************************
8 ! GAIA
9 !***********************************************************************
10 !
12 !
14 !
15 !
16 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
26 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
27 !
28  USE interface_gaia,ex_bedload_engel_cc => bedload_engel_cc_gaia
29  USE bief
30 !
32  IMPLICIT NONE
33 !
34 !!-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
35 !
36  TYPE(bief_obj), INTENT(IN) :: TETAP,CF
37  INTEGER, INTENT(IN) :: NPOIN
38  DOUBLE PRECISION, INTENT(IN) :: GRAV, DCLA, DENS,XMVS
39  TYPE(bief_obj), INTENT(INOUT) :: TETA! WORK ARRAY T1
40  TYPE(bief_obj), INTENT(INOUT) :: QSC
41 !
42 !!-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
43 !
44  INTEGER :: I
45  DOUBLE PRECISION :: CENGEL
46 !
47  INTRINSIC sqrt
48 !
49 !======================================================================!
50 !======================================================================!
51 ! PROGRAM !
52 !======================================================================!
53 !======================================================================!
54 !
55 ! ADIMENSIONAL SKIN STRESS: TETAP
56 !
57 ! ADIMENSIONAL TOTAL STRESS
58 !
59  DO i = 1, npoin
60  IF(tetap%R(i) <= 0.06d0) THEN
61  teta%R(i) = 0.d0
62  ELSEIF(tetap%R(i) < 0.384d0) THEN
63  teta%R(i) = sqrt( 2.5d0 * (tetap%R(i) - 0.06d0))
64  ELSEIF(tetap%R(i) < 1.080d0) THEN
65  teta%R(i) = 1.066d0 * tetap%R(i)**0.176d0
66  ELSE
67  teta%R(i) = tetap%R(i)
68  ENDIF
69  ENDDO
70 !
71 ! BEDLOAD TRANSPORT
72 !
73  cengel = 0.05d0*sqrt(dens*grav*dcla**3)
74  DO i=1,npoin
75  qsc%R(i)=cengel*sqrt(teta%R(i)**5)/max(cf%R(i),1.d-6)
76  ENDDO
77 !
78 ! SOLID DISCHARGE IS TRANSFORMED IN [kg/(m*s)]
79 !
80  CALL os('X=CX ', x=qsc, c=xmvs)
81 !-----------------------------------------------------------------------
82 !
83  RETURN
84  END
subroutine bedload_engel_cc_gaia(TETAP, CF, NPOIN, GRAV, DCLA, DENS, TETA, QSC, XMVS)
subroutine os(OP, X, Y, Z, C, IOPT, INFINI, ZERO)
Definition: os.f:7
Definition: bief.f:3