C TUYKAR    SOURCE    CHAT      05/01/13    03:57:16     5004
      SUBROUTINE TUYKAR(CARAC,KERRE,ICAS,YOUNG)
C-----------------------------------------------------------------------
C  ROUTINE DE CALCUL DES CARACTERISTIQUES GEOMETRIQUES DE L ELEMENT DE
C  TUYAU DROIT OU COUDE
C
C  ENTREE
C          CARAC   TABLEAU DE CARACTERISTIQUES GEOMETRIQUES
C                  DONNEES PAR L UTILISATEUR
C          ICAS    ON CALCULE PLUS OU MOINS DE CARACTERISTIQUES
C                  SELON LES CAS :
C                  0 = VECTEUR LOCAL
C                  1 = 0 + SECTION + INERTIES NON MODIFIEES
C                  2 = 0 + SECTION + INERTIES MODIFIEES
C
C  SORTIE
C          CARAC   CARACTERISTIQUES DE LA POUTRE EQUIVALENTE AU TUYAU
C          KERRE   CODE D ERREUR  O SI PAS DE PB
C
C    JUIN 85  MILLARD
C    NOVEMBRE 89 EFFET DE PRESSION SUR COUDE M. PETIT
C-----------------------------------------------------------------------
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8(A-H,O-Z)
-INC CCREEL

-INC PPARAM
-INC CCOPTIO
*
      DIMENSION CARAC(*)
      KERRE=0
*
      IF(CARAC(3).GT.1.D-9.AND.ABS(CARAC(4)).LT.1.D-9.AND.
     1     ABS(CARAC(5)).LT.1.D-9.AND.ABS(CARAC(6)).LT.1.D-9) THEN
         MOTERR(1:4)='VECT'
         MOTERR(5:8)='CARA'
         KERRE=77
         RETURN
      ENDIF
      PRES=CARAC(7)
      CISA=CARAC(8)
C
C  VECTEUR LOCAL
C
      CARAC(7)=CARAC(4)
      CARAC(8)=CARAC(5)
      CARAC(9)=CARAC(6)
      IF(ICAS.EQ.0) RETURN
C
C  CALCUL DES SECTION ET INERTIES
C  AM 29/4/94  ON CALCULE LES SECTIONS REDUITES
C              ET ON LES MULTIPLIE PAR CISA
C
      EPAIS=CARAC(1)
      REXT=CARAC(2)
      RINT=REXT-EPAIS
      RACO=CARAC(3)
      XIN=XPI*(REXT**4-RINT**4)*0.25D00
      CARAC(4)=XPI*(REXT**2-RINT**2)
      CARAC(1)=2.D00*XIN
      CARAC(5)=CARAC(4)*0.5D0*CISA
      CARAC(6)=CARAC(5)
*
      IF(ICAS.EQ.2) GO TO 20
*
      CARAC(2)=XIN
      CARAC(3)=XIN
      RETURN
 20   CONTINUE
      XK=1.D00
      IF(RACO.EQ.0.D00) GO TO 10
      XLAM=EPAIS*RACO*4.D00/(REXT+RINT)**2
      IF(XLAM.EQ.0.D00) GO TO 999
      XK=1.65D00/XLAM
      IF(PRES.EQ.0.D00) GO TO 30
C
C     EFFET DE LA PRESSION SUR LE COEF DE FLEXIBILITE
C
      RMOY=REXT-EPAIS/2.D0
      XX=6.D0*(RMOY/EPAIS)**(4.D0/3.D0)*(RACO/RMOY)**(1.D0/3.D0)
      XCO=PRES*RMOY*XX/EPAIS/YOUNG
      XK=XK/(1.D0+XCO)
 30   CONTINUE
      IF(XK.LT.1.D00) XK=1.D00
 10   CONTINUE
      CARAC(2)=XIN/XK
      CARAC(3)=CARAC(2)
      RETURN
 999  KERRE=1
      RETURN
      END





