Télécharger ottva1.eso

Retour à la liste

Numérotation des lignes :

ottva1
  1. C OTTVA1 SOURCE FD218221 21/06/10 21:15:43 11030
  2. SUBROUTINE OTTVA1 (NMAT,XMAT,NVINT,VINT0,NTEN,SIG0,DEPST,
  3. & VINTF, SIGF, KERRE)
  4. IMPLICIT INTEGER(I-N)
  5. IMPLICIT REAL*8(A-H,O-Z)
  6.  
  7. -INC CCREEL
  8.  
  9. C-----------------------------------------------------------------------
  10. C
  11. C Point d'entrée de l'intégration du modèle OttoVari
  12. C
  13. C
  14. C Arguments d'entrée
  15. C ------------------
  16. C
  17. C NMAT : Nombre de paramètres matériau
  18. C XMAT(NMAT) : Valeurs des paramètres matériau
  19. C XMAT(1) : YOUN Module de Young
  20. C XMAT(2) : NU Coefficient de Poisson
  21. C XMAT(3) : LRT Limite en traction
  22. C XMAT(4) : GFTR Energie de fissuration
  23. C XMAT(5) : BETA Facteur pour refermeture de fissure
  24. C XMAT(6) : LCS Limite en compression
  25. C XMAT(7) : RHO Masse volumique
  26. C XMAT(8) : ALPH Coefficient dilatation thermique linéaire
  27. C XMAT(9) : VISQ Coefficient de viscosité
  28. C XMAT(10 a 15) : Lij sortie de TAILLE
  29. C XMAT(16 a 21) : Pij sortie de TAILLE
  30. C XMAT(22) : TREF Température de référence
  31. C XMAT(23) : TALP Température de référence coef. dilatation
  32. C
  33. C NVINT : Nombre de variables internes
  34. C VINT0(NVINT) : Variables internes au début du pas de temps
  35. C VINT0( 1) : W1
  36. C VINT0( 2) : W1MA
  37. C VINT0( 3) : VF1X
  38. C VINT0( 4) : VF1Y
  39. C VINT0( 5) : VF1Z
  40. C VINT0( 6) : W2
  41. C VINT0( 7) : W2MA
  42. C VINT0( 8) : VF2X
  43. C VINT0( 9) : VF2Y
  44. C VINT0(10) : VF2Z
  45. C VINT0(11) : W3
  46. C VINT0(12) : W3MA
  47. C VINT0(13) : VF3X
  48. C VINT0(14) : VF3Y
  49. C VINT0(15) : VF3Z
  50. C VINT0(16) : LBCD
  51. C VINT0(17) : IVL1
  52. C VINT0(18) : IVL2
  53. C VINT0(19) : IVL3
  54. C
  55. C NTEN : Nombre de composantes des tenseurs de
  56. C déformation et contrainte
  57. C SIG0(NTEN) : Contraintes au début du pas de temps
  58. C SIG0(1) : SMXX
  59. C SIG0(2) : SMYY
  60. C SIG0(3) : SMZZ
  61. C SIG0(4) : SMXY
  62. C SIG0(5) : SMXZ
  63. C SIG0(6) : SMYZ
  64. C
  65. C DEPST(NTEN) : Incrément du tenseur de déformation totale
  66. C DEPST(1) : EPXX
  67. C DEPST(2) : EPYY
  68. C DEPST(3) : EPZZ
  69. C DEPST(4) : GAXY
  70. C DEPST(5) : GAXZ
  71. C DEPST(6) : GAYZ
  72. C
  73. C
  74. C Arguments de sortie
  75. C -------------------
  76. C
  77. C VINTF(NVINT) : Variables internes à la fin du pas de temps
  78. C --> composantes identiques à VINT0
  79. C SIGF(NTEN) : Contraintes à la fin du pas de temps
  80. C --> composantes identiques à SIG0
  81. C KERRE : Indicateur d'erreur
  82. C
  83. C-----------------------------------------------------------------------
  84. C
  85. REAL*8 XMAT(NMAT),VINT0(NVINT),VINTF(NVINT),
  86. & SIG0(NTEN),SIGF(NTEN),DEPST(NTEN),
  87. & VAR0(7),VARF(7),VAUX0(15),VAUXF(15),YMAT(18)
  88. KERRE=0
  89. NVAR=7
  90. NVAUX=15
  91. MMAT=18
  92. C
  93. C YMAT ne contient que les parmètres matériaux utiles de XMAT
  94. YMAT(1 )=XMAT(1)
  95. YMAT(2 )=XMAT(2)
  96. YMAT(3 )=XMAT(3)
  97. YMAT(4 )=XMAT(4)
  98. YMAT(5 )=XMAT(5)
  99. YMAT(6 )=XMAT(6)
  100. YMAT(7 )=XMAT(10)
  101. YMAT(8 )=XMAT(11)
  102. YMAT(9 )=XMAT(12)
  103. YMAT(10)=XMAT(13)
  104. YMAT(11)=XMAT(14)
  105. YMAT(12)=XMAT(15)
  106. YMAT(13)=XMAT(16)
  107. YMAT(14)=XMAT(17)
  108. YMAT(15)=XMAT(18)
  109. YMAT(16)=XMAT(19)
  110. YMAT(17)=XMAT(20)
  111. YMAT(18)=XMAT(21)
  112. C
  113. C Séparation des variables internes en 2 catégories VAR et VAUX
  114. C VAR0 VAUX0 : valeur au debut du pas
  115. C VARF VAUXF : valeur a la fin du pas (seront calculees par OTTVA2)
  116. VAR0(1)=VINT0(1)
  117. VAR0(2)=VINT0(2)
  118. VAUX0(1)=VINT0(3)
  119. VAUX0(2)=VINT0(4)
  120. VAUX0(3)=VINT0(5)
  121. VAUX0(4)=SQRT(VAUX0(1)*VAUX0(1)+VAUX0(2)*VAUX0(2)
  122. & +VAUX0(3)*VAUX0(3))
  123. IF(VAUX0(4).LT.XSZPRE) THEN
  124. VAUX0(4)=0.
  125. ELSEIF (ABS(VAUX0(4)-1.).LT.XSZPRE) THEN
  126. VAUX0(4)=1.
  127. ELSE
  128. KERRE=1
  129. GOTO 999
  130. ENDIF
  131. VAR0(3)=VINT0(6)
  132. VAR0(4)=VINT0(7)
  133. VAUX0(5)=VINT0(8)
  134. VAUX0(6)=VINT0(9)
  135. VAUX0(7)=VINT0(10)
  136. VAUX0(8)=SQRT(VAUX0(5)*VAUX0(5)+VAUX0(6)*VAUX0(6)
  137. & +VAUX0(7)*VAUX0(7))
  138. IF(VAUX0(8).LT.XSZPRE) THEN
  139. VAUX0(8)=0.
  140. ELSEIF (ABS(VAUX0(8)-1.).LT.XSZPRE) THEN
  141. VAUX0(8)=1.
  142. ELSE
  143. KERRE=1
  144. GOTO 999
  145. ENDIF
  146. VAR0(5)=VINT0(11)
  147. VAR0(6)=VINT0(12)
  148. VAUX0( 9)=VINT0(13)
  149. VAUX0(10)=VINT0(14)
  150. VAUX0(11)=VINT0(15)
  151. VAUX0(12)=SQRT(VAUX0(9)*VAUX0(9)+VAUX0(10)*VAUX0(10)
  152. & +VAUX0(11)*VAUX0(11))
  153. IF(VAUX0(12).LT.XSZPRE) THEN
  154. VAUX0(12)=0.
  155. ELSE IF (ABS(VAUX0(12)-1.).LT.XSZPRE) THEN
  156. VAUX0(12)=1.
  157. ELSE
  158. KERRE=1
  159. GOTO 999
  160. ENDIF
  161. VAR0(7)=VINT0(16)
  162. VAUX0(13)=VINT0(17)
  163. VAUX0(14)=VINT0(18)
  164. VAUX0(15)=VINT0(19)
  165. C
  166. C Appel a ottva2
  167. CALL OTTVA2(DEPST,NTEN,SIG0,VAR0,NVAR,SIGF,VARF,VAUX0,VAUXF,NVAUX,
  168. & YMAT,MMAT,KERRE)
  169. IF(KERRE.NE.0) GOTO 999
  170. C
  171. C Regroupement des variables internes
  172. VINTF( 1)=VARF(1)
  173. VINTF( 2)=VARF(2)
  174. VINTF( 3)=VAUXF(1)
  175. VINTF( 4)=VAUXF(2)
  176. VINTF( 5)=VAUXF(3)
  177. VINTF( 6)=VARF(3)
  178. VINTF( 7)=VARF(4)
  179. VINTF( 8)=VAUXF(5)
  180. VINTF( 9)=VAUXF(6)
  181. VINTF(10)=VAUXF(7)
  182. VINTF(11)=VARF(5)
  183. VINTF(12)=VARF(6)
  184. VINTF(13)=VAUXF(9)
  185. VINTF(14)=VAUXF(10)
  186. VINTF(15)=VAUXF(11)
  187. VINTF(16)=VARF(7)
  188. VINTF(17)=VAUXF(13)
  189. VINTF(18)=VAUXF(14)
  190. VINTF(19)=VAUXF(15)
  191. C
  192. C Sortie
  193. 999 RETURN
  194. END
  195.  
  196.  
  197.  

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