Télécharger intimp.eso

Retour à la liste

Numérotation des lignes :

  1. C INTIMP SOURCE CB215821 16/04/21 21:17:13 8920
  2. C sub intimpfib
  3. C====&===1=========2=========3=========4=========5=========6=========7==
  4. C Commentaires : Subroutine permettant de mettre en oeuvre les
  5. C modeles RICINT et OUGLOVA pour une formulation fibre
  6. C avec interface imparfaite
  7. C Auteurs : B. Richard (doctorant)
  8. C Date : Février 2008
  9. C====&===1=========2=========3=========4=========5=========6=========7==
  10. SUBROUTINE INTIMP(XMAT,DEPST,SIG0,VAR0,SIGF,VARF)
  11. C
  12. C-----DECLARATION GENERALE
  13. C
  14. IMPLICIT INTEGER(I-N)
  15. IMPLICIT REAL*8(A-H,O-Z)
  16. -INC CCREEL
  17. C
  18. C-----DECLARATION DES VARIABLES
  19. C
  20. REAL*8 XMAT(18),VAR0(25),VARF(25)
  21. REAL*8 EPTO,GCOEFF,ES,LCCOEF,SIGMAES
  22. REAL*8 XRESIDU,XSECT,DEPST(3),SIG0(3),SIGI,SIGA,XRAYON
  23. REAL*8 FORCEACIER,FORCEINTER,XCRITERE,XLAMBDA,EPT1
  24. REAL*8 SIGF(3),DEFP,XDLAMBDA,DEPST0
  25. INTEGER INDITER,ITERMAX,I
  26. C
  27. C-----NOMENCLATURE DES PARAMETRES MATERIAUX (XMAT) ET
  28. C INTERNES (VAR0, VARF)
  29. C
  30.  
  31. C ---------------------------
  32. C | ACIER CORRODE |
  33. C ---------------------------
  34. C XMAT( 1) ES
  35. C XMAT( 2) NUS
  36. C XMAT( 3)
  37. C XMAT( 4)
  38. C XMAT( 5) XSECT
  39. C XMAT( 6) DCS
  40. C XMAT( 7) SIGMAES
  41. C XMAT( 8) TCS
  42. C XMAT( 9) MS
  43. C XMAT(10) KS
  44. C
  45. C ---------------------------
  46. C | INTERFACE A/B CORRODEE |
  47. C ---------------------------
  48. C XMAT(11) GCOEFF
  49. C XMAT(12) AD
  50. C XMAT(13) ACOEFF
  51. C XMAT(14) GAMCOE
  52. C XMAT(15) LCCOEF
  53. C XMAT(16) EPS0CO
  54. C XMAT(17) TCI
  55. C XMAT(18) CALA
  56. C
  57. C ---------------------------
  58. C | ACIER CORRODE |
  59. C ---------------------------
  60. C VAR0( 1) VARF( 1) ENDS
  61. C VAR0( 2) VARF( 2) PVAR
  62. C VAR0( 3) VARF( 3) DEPP
  63. C VAR0( 4) VARF( 4) RVAR
  64. C VAR0( 5) VARF( 5) SIGS
  65. C VAR0( 6) VARF( 6) EPSP
  66. C VAR0( 7) VARF( 7)
  67. C VAR0( 8) VARF( 8)
  68. C VAR0( 9) VARF( 9)
  69. C VAR0(10) VARF(10)
  70. C
  71. C ---------------------------
  72. C | INTERFACE A/B CORRODEE |
  73. C ---------------------------
  74. C VAR0(11) VARF(11) ENDI
  75. C VAR0(12) VARF(12) ALPH
  76. C VAR0(13) VARF(13) EPSF
  77. C VAR0(14) VARF(14) XVAR
  78. C VAR0(15) VARF(15) ZVAR
  79. C VAR0(16) VARF(16) EINT
  80. C VAR0(17) VARF(17) SIGF
  81. C VAR0(18) VARF(18)
  82. C VAR0(19) VARF(19)
  83. C VAR0(20) VARF(20)
  84. C
  85. C ---------------------------
  86. C | AUTRES |
  87. C ---------------------------
  88. C VAR0(21) VARF(21) XLAM
  89. C VAR0(22) VARF(22) EPTO
  90. C VAR0(23) VARF(23) INDITER
  91. C VAR0(24) VARF(24) FORCEINTER
  92. C VAR0(25) VARF(25) FORCEACIER
  93. C
  94. C ---------------------------
  95. C | CONTRAINTES |
  96. C ---------------------------
  97. C SIGF
  98. C
  99. C ---------------------------
  100. C | DEFORMATION PLASTIQUES |
  101. C ---------------------------
  102. C DEFP
  103. C
  104. C ---------------------------
  105. C | INCREMENT DE DEFORMATION |
  106. C ---------------------------
  107. C DEPST
  108. c
  109. C
  110. C-----ON RECUPERE LE NUMERO DE L ITERATION COURRANTE
  111. C
  112. DEFP = 0.0D0
  113. XSECT = XMAT(5 )
  114. INDITER = nint(VAR0(23)) + 1
  115. DEPST0 = DEPST(1)
  116. C
  117. C-----ON RECUPERE LA DEFORMATION TOTALE ET LE LAMBDA PRECEDENT
  118. C
  119. EPTO = VAR0(22)
  120. EPT1 = VAR0(22) + DEPST(1)
  121. XLAMBDA=VAR0(21)
  122. IF (INDITER.LT.2.0D0) THEN
  123. XLAMBDA = 0.5D0
  124. VAR0(21) = 0.5D0
  125. END IF
  126. C
  127. C-----ON RECUPERE LES MODULES ELASTIQUES
  128. C
  129. GCOEFF = XMAT( 9)
  130. ES = XMAT( 1)
  131. LCCOEF = XMAT(15)
  132. SIGMAES = XMAT( 7)
  133. C
  134. C---------------------------------
  135. C DEBUT DU PROCESSUS DE PARTITION
  136. C---------------------------------
  137. C
  138. C-----INITIALISATION
  139. C
  140. XRESIDU = 1.0D6
  141. ITERMAX = 500000000
  142. C
  143. C-----BOUCLE SUR LES ITERATIONS INTERNES
  144. C
  145. 101 CONTINUE
  146. C
  147. C-----CALCUL DES CONTRAINTES DANS L ACIER
  148. C
  149. CALL OUGLFL(XMAT,XSECT,DEPST0,SIG0,VAR0,SIGA,VARF)
  150. C
  151. C-----CALCUL DES CONTRAINTES DANS L INTERFACE
  152. C
  153. CALL INTFIB(XMAT,XSECT,DEPST0,SIG0,VAR0,SIGI,VARF)
  154. C
  155. C-----CALCUL DES FORCES DANS L ACIER
  156. C
  157. XRAYON = SQRT(XSECT/XPI)
  158. FORCEACIER = XPI*XRAYON*XRAYON*SIGA
  159. C
  160. C-----CALCUL DES FORCES DANS L INTERFACE
  161. C
  162. FORCEINTER = 2.0D0*XPI*XRAYON*LCCOEF*SIGI
  163. C
  164. C-----CALCUL DU RESIDU
  165. C
  166. XRESIDU = -FORCEINTER + FORCEACIER
  167. C
  168. C-----CRITERE DE CONVERGENCE
  169. C
  170. XCRITERE = ABS(XRESIDU/(XPI*XRAYON*XRAYON*SIGMAES))
  171.  
  172. IF (XCRITERE.LE.1.0D-6) THEN
  173. GOTO 10
  174. END IF
  175. C
  176. C-----CALCUL DU XLAMBDA POUR EFFECTUER LES CORRECTIONS
  177. C
  178. XDLAMBDA = -XRESIDU/(XPI*XRAYON*LCCOEF*2.0D0*GCOEFF+
  179. & XPI*XRAYON*XRAYON*ES)*
  180. & (ABS(EPT1))/(EPT1)
  181. XLAMBDA = XLAMBDA + XDLAMBDA
  182.  
  183. C IF (XLAMBDA.GT.1.0D0.OR.XLAMBDA.LT.0.0D0) THEN
  184. C XLAMBDA = 0.0D0
  185. C END IF
  186.  
  187. VAR0(21) = XLAMBDA
  188.  
  189. GOTO 101
  190. C
  191. C-----BALISE DE SORTIE APRES CONVERGENCE
  192. C
  193. 10 CONTINUE
  194.  
  195. VARF(21) = XLAMBDA
  196. VARF(22) = EPTO + DEPST0
  197. VARF(23) = INDITER
  198.  
  199. VARF(24) = FORCEINTER
  200. VARF(25) = FORCEACIER
  201. C
  202. C-------------------------------
  203. C FIN DU PROCESSUS DE PARTITION
  204. C-------------------------------
  205. C
  206.  
  207. C
  208. C-----LES CONTRAINTES EN SORTIE
  209. C
  210.  
  211. SIGF(1) = SIGA
  212. SIGF(2) = SIG0(2) +
  213. & (XMAT(1)/(2.0D0*(1.0D0+XMAT(2))))*DEPST(2)*XLAMBDA
  214. SIGF(3) = SIG0(3) +
  215. & (XMAT(1)/(2.0D0*(1.0D0+XMAT(2))))*DEPST(3)*XLAMBDA
  216.  
  217. RETURN
  218. END
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  

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