C TUYCAG SOURCE CHAT 05/01/13 03:57:06 5004 SUBROUTINE TUYCAG(CARAC,KERRE,ICAS) C----------------------------------------------------------------------- C ROUTINE DE CALCUL DES CARACTERISTIQUES GEOMETRIQUES DE L ELEMENT DE C TUYAU DROIT OU COUDE - D'APRES TUYCAR (APPELE PAR GYRO2) 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 COMBESCURE Didier Mars 2003 C----------------------------------------------------------------------- IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) -INC CCREEL -INC PPARAM -INC CCOPTIO * DIMENSION CARAC(*) KERRE=0 C C SI 'RACO' EST PRESENT, IL FAUT UN VECTEUR C 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 C C VECTEUR LOCAL C CARAC(8)=CARAC(5) CARAC(9)=CARAC(6) CARAC(10)=CARAC(7) C C VITESSE DE ROTATION C CARAC(7)=CARAC(4) IF(ICAS.EQ.0) RETURN C C CALCUL DES SECTION ET INERTIES C ON MET LES SECTIONS REDUITES A 0.D0 C CARAC(5)=0.D00 CARAC(6)=0.D00 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 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(XK.LT.1.D00) XK=1.D00 10 CONTINUE CARAC(2)=XIN/XK CARAC(3)=CARAC(2) RETURN 999 KERRE=1 RETURN END