calcul_tang_w2.f

Go to the documentation of this file.
00001 C:\opentelemac\v7p0\sources\telemac2d\calcul_tang_w2.f
00002 !
00047                         SUBROUTINE CALCUL_TANG_W2
00048 !                       *************************
00049 !
00050      &(IP,NKFROT,CHESTR,H,PENTE,KARMAN,UTAN)
00051 !
00052 !***********************************************************************
00053 ! TELEMAC2D   V6P3                                   10/07/2013
00054 !***********************************************************************
00055 !
00056 !
00057 !+
00058 !
00059 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00060 !| CHESTR         |-->| FRICTION COEFFICIENT
00061 !| H              |-->| WATER DEPTH ON THE WEIR
00062 !| IP             |-->| INDEX OF THE NODE
00063 !| KARMAN         |-->| VON KARMAN CONSTANT.
00064 !| NKFROT         |-->| FRICTION LAW, PER POINT
00065 !| PENTE          |-->| LATERAL SLOPE OF WATER ON THE WEIR
00066 !| UTAN           |<--| TANGENTIAL VELOCITY
00067 !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
00068 !
00069       USE BIEF
00070 !
00071       IMPLICIT NONE
00072       INTEGER LNG,LU
00073       COMMON/INFO/LNG,LU
00074 !
00075       INTEGER, INTENT(IN)           :: IP
00076       INTEGER, INTENT(IN)           :: NKFROT(*)
00077       DOUBLE PRECISION, INTENT(IN)  :: H,PENTE,KARMAN
00078       DOUBLE PRECISION, INTENT(IN)  :: CHESTR(*)
00079       DOUBLE PRECISION, INTENT(OUT) :: UTAN
00080 !
00081       DOUBLE PRECISION CZ,HH
00082 !
00083 !-----------------------------------------------------------------------
00084 !
00085       IF(NKFROT(IP).EQ.2) THEN
00086         UTAN = CHESTR(IP)*SQRT(H*ABS(PENTE))*SIGN(1.D0,PENTE)
00087       ELSEIF(NKFROT(IP).EQ.3) THEN
00088         UTAN = CHESTR(IP)*H**(2.D0/3.D0)*SQRT(ABS(PENTE))
00089      &          *SIGN(1.D0,PENTE)
00090       ELSEIF(NKFROT(IP).EQ.4) THEN
00091         UTAN = H**(2.D0/3.D0)*SQRT(ABS(PENTE))
00092      &          *SIGN(1.D0,PENTE)/CHESTR(IP)
00093       ELSEIF(NKFROT(IP).EQ.5) THEN
00094         HH    = MAX(H,1.D-9)
00095         CZ    = MAX(1.D-9,LOG(11.D0*HH/MAX(CHESTR(IP),1.D-9))
00096      &          /KARMAN)
00097         UTAN = CZ*SQRT(HH*ABS(PENTE))*SIGN(1.D0,PENTE)
00098       ELSE
00099         IF (LNG.EQ.1) THEN
00100            WRITE(LU,*)'CALCUL_TANG_W2 : OPTION INCONNUE :',NKFROT(IP)
00101            WRITE(LU,*)'                 POUR LA LOI DE FROTTEMENT'
00102         ELSEIF(LNG.EQ.2) THEN
00103            WRITE(LU,*)'CALCUL_TANG_W2 : UNKNOWN OPTION:',NKFROT(IP)
00104            WRITE(LU,*)'                 FOR THE FRICTION LAW'
00105         ENDIF
00106         CALL PLANTE(1)
00107         STOP
00108       ENDIF
00109 !
00110       RETURN
00111       END

Generated on Fri Aug 31 2013 18:12:58 by S.E.Bourban (HRW) using doxygen 1.7.0