Télécharger dohfis1.eso

Retour à la liste

Numérotation des lignes :

  1. C DOHFIS1 SOURCE CHAT 05/01/12 22:53:32 5004
  2. SUBROUTINE DOHFIS1(VALMAT,VALCAR,MATE,IFOU,LHOOK,DDHOOK,IRET)
  3. C
  4. C=======================================================================
  5. C
  6. C MATRICE DE HOOK DU TUYAU FISSURE
  7. C
  8. C ENTREES
  9. C VALMAT() = materiau dans un tableau de travail
  10. C VALCAR() = caracteristiques geom. dans un tableau de travail
  11. C MATE = Nom du materiau
  12. C IFOU = num{ro d'harmonique de fourier: IFOUR de CCOPTIO
  13. C LHOOK = taille de la matrice de hooke
  14. C
  15. C SORTIES
  16. C DDHOOK(LHOOK,LHOOK) = matrice de hooke
  17. C IRET = 1 si option existante 0 SINON
  18. C
  19. C Passage en nouveau CHAMELEM par I.Monnier le 4 05 90
  20. C=======================================================================
  21. C
  22. IMPLICIT INTEGER(I-N)
  23. IMPLICIT REAL*8(A-H,O-Z)
  24. C Include contenant quelques constantes dont XPI :
  25. -INC CCREEL
  26. PARAMETER(UNDEMI=.5D0)
  27. PARAMETER(UN=1.D0,DEUX=2.D0)
  28. PARAMETER(D6=1.D06)
  29. CHARACTER*8 MATE
  30. C
  31. DIMENSION VALMAT(*),VALCAR(*),DDHOOK(LHOOK,*)
  32. C
  33. IRET=1
  34. CALL ZERO(DDHOOK,LHOOK,LHOOK)
  35. C
  36. C MATERIAU ISOTROPE
  37. C
  38. IF(MATE.EQ.'ISOTROPE') THEN
  39. C
  40. C TRIDIMENSIONNEL
  41. C
  42. IF(IFOU.EQ.2) THEN
  43. YOU=VALMAT(1)
  44. XNU=VALMAT(2)
  45. CISA = YOU /(DEUX *(UN + XNU))
  46. RAYO=VALCAR(1)
  47. EPAI=VALCAR(2)
  48. TETA1=VALCAR(9)*UNDEMI
  49.  
  50. C CONVERSION DE TETA1 EN RADIAN
  51. TETA = (TETA1 * XPI)/180.D0
  52. TESPI = TETA/XPI
  53. C ON MET DANS 'RAYMO' LE RAYON MOYEN DU TUYAU.
  54. RAYMO =RAYO - (EPAI/DEUX)
  55. C CALCUL DE A COEFIICIENT ZAHOR
  56. RSURT=RAYMO / EPAI
  57. IF(RSURT.LE.10.D0.AND.RSURT.GE.4.9D0) THEN
  58. AXX = ( .125D0*RSURT - .25D0 ) **.25D0
  59. ELSE IF(RSURT.GT.10.D0.AND.RSURT.LE.35.D0) THEN
  60. AXX = ( .4D0*RSURT - 3.D0 ) **.25D0
  61. ELSE
  62. KERRE=3
  63. ENDIF
  64. C
  65. C INITIALISATION DES TERMES DE PENALISATION
  66. C
  67. PPFX = DEUX * XPI * EPAI * YOU * RAYMO * D6
  68. PPFY = DEUX * XPI * EPAI * CISA * RAYMO * D6
  69. PPFZ = PPFY
  70. PPMX = DEUX * XPI * EPAI * CISA * (RAYMO**2) * D6
  71. PPMY = YOU * XPI * EPAI * (RAYMO**2) * D6
  72. PPMZ = PPMY
  73. IF (TETA1.LE.(0.5D0)) THEN
  74. RR11 = PPFX
  75. RR16 = XZERO
  76. RR66 = PPMZ
  77. ELSE
  78. CALL TUFIFP(TESPI,AXX,FP,FM,FMP,FOP,FOM)
  79. DENOM = FP*FM - FMP*FMP
  80. COEF = (YOU * XPI * EPAI)/(DENOM * (TETA**2))
  81. RR11 = COEF * DEUX * FM
  82. RR16 = COEF * RAYMO * FMP
  83. RR66 = COEF * (RAYMO**2) * FP *UNDEMI
  84. ENDIF
  85. C
  86. DDHOOK(1,1)=RR11
  87. DDHOOK(1,6)=RR16
  88. DDHOOK(2,2)=PPFY
  89. DDHOOK(3,3)=PPFZ
  90. DDHOOK(4,4)=PPMX
  91. DDHOOK(5,5)=PPMY
  92. DDHOOK(6,1)=DDHOOK(1,6)
  93. DDHOOK(6,6)=RR66
  94. ELSE
  95. IRET=0
  96. ENDIF
  97. ELSE
  98. IRET=0
  99. ENDIF
  100. RETURN
  101. END
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales