Download tuycag.eso

Back to the list

   1 : C TUYCAG    SOURCE    CHAT      05/01/13    03:57:06     5004           
   2 :       SUBROUTINE TUYCAG(CARAC,KERRE,ICAS)
   3 : C-----------------------------------------------------------------------
   4 : C  ROUTINE DE CALCUL DES CARACTERISTIQUES GEOMETRIQUES DE L ELEMENT DE
   5 : C  TUYAU DROIT OU COUDE - D'APRES TUYCAR (APPELE PAR GYRO2)
   6 : C     
   7 : C  ENTREE
   8 : C          CARAC   TABLEAU DE CARACTERISTIQUES GEOMETRIQUES
   9 : C                  DONNEES PAR L UTILISATEUR
  10 : C          ICAS    ON CALCULE PLUS OU MOINS DE CARACTERISTIQUES
  11 : C                  SELON LES CAS :
  12 : C                  0 = VECTEUR LOCAL
  13 : C                  1 = 0 + SECTION + INERTIES NON MODIFIEES
  14 : C                  2 = 0 + SECTION + INERTIES MODIFIEES
  15 : C     
  16 : C  SORTIE
  17 : C          CARAC   CARACTERISTIQUES DE LA POUTRE EQUIVALENTE AU TUYAU
  18 : C          KERRE   CODE D ERREUR  O SI PAS DE PB
  19 : C     
  20 : C    COMBESCURE Didier Mars 2003
  21 : C-----------------------------------------------------------------------
  22 :       IMPLICIT INTEGER(I-N)
  23 :       IMPLICIT REAL*8(A-H,O-Z)
  24 : -INC CCREEL
  25 : -INC CCOPTIO
  26 : *     
  27 :       DIMENSION CARAC(*)
  28 :       KERRE=0
  29 : C     
  30 : C  SI 'RACO' EST PRESENT, IL FAUT UN VECTEUR
  31 : C     
  32 :       IF(CARAC(3).GT.1.D-9.AND.ABS(CARAC(4)).LT.1.D-9.AND.
  33 :      1     ABS(CARAC(5)).LT.1.D-9.AND.ABS(CARAC(6)).LT.1.D-9) THEN
  34 :          MOTERR(1:4)='VECT'
  35 :          MOTERR(5:8)='CARA'
  36 :          KERRE=77
  37 :          RETURN
  38 :       ENDIF
  39 : C     
  40 : C  VECTEUR LOCAL
  41 : C     
  42 :       CARAC(8)=CARAC(5)
  43 :       CARAC(9)=CARAC(6)
  44 :       CARAC(10)=CARAC(7)
  45 : C     
  46 : C  VITESSE DE ROTATION
  47 : C 
  48 :       CARAC(7)=CARAC(4)
  49 :       IF(ICAS.EQ.0) RETURN
  50 : C     
  51 : C  CALCUL DES SECTION ET INERTIES
  52 : C  ON MET LES SECTIONS REDUITES A 0.D0
  53 : C     
  54 :       CARAC(5)=0.D00
  55 :       CARAC(6)=0.D00
  56 :       EPAIS=CARAC(1)
  57 :       REXT=CARAC(2)
  58 :       RINT=REXT-EPAIS
  59 :       RACO=CARAC(3)
  60 :       XIN=XPI*(REXT**4-RINT**4)*0.25D00
  61 :       CARAC(4)=XPI*(REXT**2-RINT**2)
  62 :       CARAC(1)=2.D00*XIN
  63 :       IF(ICAS.EQ.2) GO TO 20
  64 :       CARAC(2)=XIN
  65 :       CARAC(3)=XIN
  66 :       RETURN
  67 :  20   CONTINUE
  68 :       XK=1.D00
  69 :       IF(RACO.EQ.0.D00) GO TO 10
  70 :       XLAM=EPAIS*RACO*4.D00/(REXT+RINT)**2
  71 :       IF(XLAM.EQ.0.D00) GO TO 999
  72 :       XK=1.65D00/XLAM
  73 :       IF(XK.LT.1.D00) XK=1.D00
  74 :  10   CONTINUE
  75 :       CARAC(2)=XIN/XK
  76 :       CARAC(3)=CARAC(2)
  77 :       RETURN
  78 :  999  KERRE=1
  79 :       RETURN
  80 :       END
  81 : 
  82 : 
  83 :  
  84 :  
  85 :  
  86 :  

© Cast3M 2003 - All rights reserved.
Disclaimer