Télécharger tufien.eso

Retour à la liste

Numérotation des lignes :

tufien
  1. C TUFIEN SOURCE CHAT 05/01/13 03:55:36 5004
  2. SUBROUTINE TUFIEN(XM,XP,DELTAM,DELTAP,THETA,XJP,PRECIS,THETA0,
  3. & XM0,XP0,XJ1C,T,RAYOM,EPAI,YOUN)
  4. IMPLICIT INTEGER(I-N)
  5. IMPLICIT REAL*8 (A-H,O-Z)
  6. C=======================================================================
  7. C CE SOUS PROGRAMME SERT A CALCULER LE NOUVEL ANGLE DE LA
  8. C FISSURE DANS LE CAS D UN INCREMENT DE CHARGE POUR
  9. C LEQUEL IL Y A PROPAGATION EN ELASTICITE
  10. C SI ON PLASTIFIE ON RENVOIT LA PARTIE DE L INCREMENT
  11. C QU IL VA FALLOIR ECOULER
  12. C IL EST APPELE PAR TUFPLA
  13. C
  14. C ENTREES:XM VALEUR DU MOMENT AU DEBUT DU PAS
  15. C XP VALEUR DE L EFFORT NORMAL AU DEBUT DU PAS
  16. C DELTAM INCREMENT DE MOMENT
  17. C DELTAP INCREMENT D EFFORT NORMAL
  18. C THETA ANGLE DE LA FISSURE AU DEBUT DU PAS
  19. C XJP VALEUR DE LA PARTIE PLASTIQUE DE J
  20. C
  21. C SORTIES:XM VALEUR DU MOMENT A LA FIN DU PAS
  22. C XP VALEUR DE L EFFORT NORMAL A LA FIN DU PAS
  23. C DELTAM PARTIE DE L INCREMENT DE MOMENT RESTANT
  24. C A ECOULER EN PLASTICITE
  25. C DELTAP PARTIE DE L INCREMENT D EFFORT NORMAL
  26. C RESTANT A ECOULER EN PLASTICITE
  27. C THETA ANGLE DE LA FISSURE A LA FIN DU PAS
  28. C=======================================================================
  29. -INC CCREEL
  30.  
  31. -INC PPARAM
  32. -INC CCOPTIO
  33. DIMENSION XX(2,2),YY(2,2)
  34. XM1=XM+DELTAM
  35. XP1=XP+DELTAP
  36. C
  37. C ON CALCULE LE NOUVEL ANGLE DE LA FISSURE PAR LA METHODE
  38. C DE NEWTON EN APPROXIMANT LA DERIVEE
  39. C
  40. X0=THETA
  41. X1=THETA+XPI/180.D0
  42. NBIT=0
  43. 1 CONTINUE
  44. F0=CRIT2(XM1,XP1,X0,XJP,XJ1C,T,RAYOM,THETA0,EPAI,YOUN)
  45. F1=CRIT2(XM1,XP1,X1,XJP,XJ1C,T,RAYOM,THETA0,EPAI,YOUN)
  46. FP=(F1-F0)/(X1-X0)
  47. X2=X1-F1/FP
  48. IF(X2.LT.THETA0) THEN
  49. IF(IIMPI.EQ.999)THEN
  50. WRITE(IOIMP,111)
  51. 111 FORMAT(1X,'L ANGLE EST INFERIEUR A L ANGLE INITIAL')
  52. ENDIF
  53. DELTAM=0.D0
  54. DELTAP=0.D0
  55. RETURN
  56. ENDIF
  57. IF(X2.GT.360.D0) THEN
  58. IF(IIMPI.EQ.999)THEN
  59. WRITE(IOIMP,222)
  60. 222 FORMAT(1X,'PAS DE SOLUTION REALISTE')
  61. ENDIF
  62. DELTAM=0.D0
  63. DELTAP=0.D0
  64. RETURN
  65. ENDIF
  66. NBIT=NBIT+1
  67. CRI=ABS((X2-X1)/X1)
  68. F2=CRIT2(XM1,XP1,X2,XJP,XJ1C,T,RAYOM,THETA0,EPAI,YOUN)
  69. CRU=ABS(F2)
  70. IF(CRI.GE.PRECIS.OR.CRU.GE.PRECIS) THEN
  71. X0=X1
  72. X1=X2
  73. GOTO 1
  74. ELSE
  75. THETA=X2
  76. IF(IIMPI.EQ.999)THEN
  77. WRITE(IOIMP,*)THETA
  78. WRITE(IOIMP,*)'NBRE ITERATIONS',NBIT
  79. VER=CRIT2(XM1,XP1,THETA,XJP,XJ1C,T,RAYOM,THETA0,EPAI,YOUN)
  80. WRITE(IOIMP,900)VER
  81. 900 FORMAT(1X,'VERIF RESOLUTION',1X,F12.5)
  82. ENDIF
  83. C
  84. C THETA EST LE NOUVEL ANGLE DE LA FISSURE
  85. C
  86. ENDIF
  87. C
  88. C ON TESTE POUR SAVOIR SI ON EST TOUJOURS ELASTIQUE
  89. C
  90. CALL TUFIC1(XM1,XP1,THETA,IRETOU,PRECIS,XM0,XP0)
  91. C
  92. C SI OUI ON A TOUT ECOULE ET ON MET DELTAM ET DELTAP
  93. C A ZERO
  94. C
  95. IF(IRETOU.EQ.0) THEN
  96. XM=XM+DELTAM
  97. XP=XP+DELTAP
  98. DELTAM=0.D0
  99. DELTAP=0.D0
  100. RETURN
  101. C
  102. C SINON ON CHERCHE L ANGLE QUI CORRESPOND A LA FRONTIERE
  103. C DU DOMAINE D ELASTICITE
  104. C ON RESOUD UN SYSTEME DU TYPE F(A,B)=G(A,B)=0 D UNE
  105. C MANIERE ANALOGUE A LA METHODE DE NEWTON
  106. C
  107. ELSE
  108. IF(IIMPI.EQ.999)THEN
  109. WRITE(IOIMP,901)
  110. 901 FORMAT(1X,'MAIS ON PLASTIFIE')
  111. ENDIF
  112. NBIT=0
  113. A1=0.D0
  114. B1=1.D0
  115. XM1=XM+A1*DELTAM
  116. XP1=XP+A1*DELTAP
  117. THETA1=B1*THETA
  118. A2=1.D0
  119. B2=0.9D0
  120. XM2=XM+A2*DELTAM
  121. XP2=XP+A2*DELTAP
  122. THETA2=B2*THETA
  123. 2 CONTINUE
  124. F11=CRIT1(XM1,XP1,THETA1,XM0,XP0)
  125. F21=CRIT1(XM2,XP2,THETA1,XM0,XP0)
  126. XX(1,1)=(F21-F11)/(A2-A1)
  127. F12=CRIT1(XM1,XP1,THETA2,XM0,XP0)
  128. XX(1,2)=(F12-F11)/(B2-B1)
  129. F22=CRIT1(XM2,XP2,THETA2,XM0,XP0)
  130. G11=CRIT2(XM1,XP1,THETA1,XJP,XJ1C,T,RAYOM,THETA0,EPAI,
  131. & YOUN)
  132. G21=CRIT2(XM2,XP2,THETA1,XJP,XJ1C,T,RAYOM,THETA0,EPAI,
  133. & YOUN)
  134. XX(2,1)=(G21-G11)/(A2-A1)
  135. G12=CRIT2(XM1,XP1,THETA2,XJP,XJ1C,T,RAYOM,THETA0,EPAI,
  136. & YOUN)
  137. XX(2,2)=(G12-G11)/(B2-B1)
  138. G22=CRIT2(XM2,XP2,THETA2,XJP,XJ1C,T,RAYOM,THETA0,EPAI,
  139. & YOUN)
  140. DET=XX(1,1)*XX(2,2)-XX(1,2)*XX(2,1)
  141. YY(1,1)=XX(2,2)/DET
  142. YY(1,2)=-XX(1,2)/DET
  143. YY(2,1)=-XX(2,1)/DET
  144. YY(2,2)=XX(1,1)/DET
  145. A3=A2-YY(1,1)*F22-YY(1,2)*G22
  146. B3=B2-YY(2,1)*F22-YY(2,2)*G22
  147. XM3=XM+A3*DELTAM
  148. XP3=XP+A3*DELTAP
  149. THETA3=B3*THETA
  150. NBIT=NBIT+1
  151. CRA=ABS((A3-A2)/A2)
  152. CRO=ABS((B3-B2)/B2)
  153. CRU=CRA+CRO
  154. F3=CRIT1(XM3,XP3,THETA3,XM0,XP0)
  155. G3=CRIT2(XM3,XP3,THETA3,XJP,XJ1C,T,RAYOM,THETA0,EPAI,
  156. & YOUN)
  157. CRI=(F3**2+G3**2)**0.5D0
  158. IF(CRI.GE.PRECIS.OR.CRU.GE.PRECIS) THEN
  159. A1=A2
  160. B1=B2
  161. A2=A3
  162. B2=B3
  163. XM1=XM2
  164. XP1=XP2
  165. THETA1=THETA2
  166. XM2=XM3
  167. XP2=XP3
  168. THETA2=THETA3
  169. GOTO 2
  170. ELSE
  171. C
  172. C ON A ENFIN TROUVE A ET B QUI CONVIENNENT
  173. C
  174. A=A3
  175. B=B3
  176. ENDIF
  177. XM=XM+A*DELTAM
  178. XP=XP+A*DELTAP
  179. DELTAM=(1.D0-A)*DELTAM
  180. DELTAP=(1.D0-A)*DELTAP
  181. VER1=CRIT1(XM,XP,THETA,XM0,XP0)
  182. VER2=CRIT2(XM,XP,THETA,XJP,XJ1C,T,RAYOM,THETA0,EPAI,
  183. & YOUN)
  184. IF(IIMPI.EQ.999)THEN
  185. WRITE(IOIMP,903)VER1,VER2
  186. 903 FORMAT(1X,'REVERIF RESO',1X,2F12.5)
  187. WRITE(IOIMP,*)'NBRE ITERATIONS',NBIT
  188. ENDIF
  189. RETURN
  190. ENDIF
  191. END
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  

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