Télécharger dfst3d.eso

Retour à la liste

Numérotation des lignes :

dfst3d
  1. C DFST3D SOURCE PV090527 23/01/27 21:15:25 11574
  2. subroutine dfst3d(NBRINC,NDIMG,FRAC,GCH,DFDST,AFFICHE)
  3. c calcul des direction d ecoulement pour la plasticite de traction
  4. c pour incl3d
  5.  
  6. implicit real*8 (a-h,o-z)
  7. implicit integer (i-n)
  8.  
  9. c nombre maxi d inclusion consideree pour les declarations locales
  10. integer NBRINC
  11. c indicateur de diffusion produits chimiques dans fissure
  12. real*8 GCH(0:NBRINC)
  13. c fractions volumiques des phases
  14. real*8 FRAC(0:NBRINC)
  15. c derivee des criteres par rapport aux contrainte effectives
  16. real*8 DFDST(NDIMG,NDIMG)
  17. logical AFFICHE
  18.  
  19. f=FRAC(1)
  20.  
  21. t1 = 0.1D1 - f
  22. t1 = 0.1D1 / t1
  23. t2 = Gch(0) ** 2
  24. t3 = f ** 2
  25. t4 = t1 ** 2
  26. t2 = f * (-t2 * t3 * t4 / 0.18D2 + 0.2D1 + t2 * f * t4 * (-0.4D1 /
  27. # 0.9D1 * f + 0.1D1 / 0.2D1))
  28. t4 = f * (-0.4D1 / 0.3D1 * Gch(1) - 0.2D1 / 0.3D1 * Gch(0) * f * t
  29. #1)
  30. t5 = Gch(0) * f * t1 * (-0.5D1 / 0.6D1 * f + 0.1D1 / 0.3D1)
  31. t6 = -0.2D1 * t5
  32. t7 = (0.2D1 / 0.3D1 * Gch(1) + Gch(0) * f * t1 / 0.3D1) * f
  33. t8 = Gch(0) * t3 * t1 / 0.6D1
  34. t1 = Gch(0) * t3 * t1 / 0.3D1
  35. t3 = 0.6D1 / 0.35D2 * f
  36. t9 = 0.12D2 / 0.35D2 * f
  37. t10 = 0.17D2 / 0.35D2 * f
  38. t11 = Gch(1) ** 2
  39. t11 = f * (0.2D1 * t11 + 0.16D2 / 0.7D1)
  40. t12 = -0.22D2 / 0.35D2 * f
  41. t13 = -0.34D2 / 0.7D1 * f + 0.2D1
  42. dfdst(1,1) = t2
  43. dfdst(1,4) = t8
  44. dfdst(1,5) = -t1
  45. dfdst(1,6) = -t1
  46. dfdst(1,7) = t7
  47. dfdst(1,8) = t4
  48. dfdst(1,9) = t4
  49. dfdst(1,10) = t5
  50. dfdst(1,11) = t6
  51. dfdst(1,12) = t6
  52. dfdst(2,2) = t2
  53. dfdst(2,4) = -t1
  54. dfdst(2,5) = t8
  55. dfdst(2,6) = -t1
  56. dfdst(2,7) = t4
  57. dfdst(2,8) = t7
  58. dfdst(2,9) = t4
  59. dfdst(2,10) = t6
  60. dfdst(2,11) = t5
  61. dfdst(2,12) = t6
  62. dfdst(3,3) = t2
  63. dfdst(3,4) = -t1
  64. dfdst(3,5) = -t1
  65. dfdst(3,6) = t8
  66. dfdst(3,7) = t4
  67. dfdst(3,8) = t4
  68. dfdst(3,9) = t7
  69. dfdst(3,10) = t6
  70. dfdst(3,11) = t6
  71. dfdst(3,12) = t5
  72. dfdst(4,1) = t8
  73. dfdst(4,2) = -t1
  74. dfdst(4,3) = -t1
  75. dfdst(4,4) = t3
  76. dfdst(4,7) = t9
  77. dfdst(4,10) = t10
  78. dfdst(5,1) = -t1
  79. dfdst(5,2) = t8
  80. dfdst(5,3) = -t1
  81. dfdst(5,5) = t3
  82. dfdst(5,8) = t9
  83. dfdst(5,11) = t10
  84. dfdst(6,1) = -t1
  85. dfdst(6,2) = -t1
  86. dfdst(6,3) = t8
  87. dfdst(6,6) = t3
  88. dfdst(6,9) = t9
  89. dfdst(6,12) = t10
  90. dfdst(7,1) = t7
  91. dfdst(7,2) = t4
  92. dfdst(7,3) = t4
  93. dfdst(7,4) = t9
  94. dfdst(7,7) = t11
  95. dfdst(7,10) = t12
  96. dfdst(8,1) = t4
  97. dfdst(8,2) = t7
  98. dfdst(8,3) = t4
  99. dfdst(8,5) = t9
  100. dfdst(8,8) = t11
  101. dfdst(8,11) = t12
  102. dfdst(9,1) = t4
  103. dfdst(9,2) = t4
  104. dfdst(9,3) = t7
  105. dfdst(9,6) = t9
  106. dfdst(9,9) = t11
  107. dfdst(9,12) = t12
  108. dfdst(10,1) = t5
  109. dfdst(10,2) = t6
  110. dfdst(10,3) = t6
  111. dfdst(10,4) = t10
  112. dfdst(10,7) = t12
  113. dfdst(10,10) = t13
  114. dfdst(11,1) = t6
  115. dfdst(11,2) = t5
  116. dfdst(11,3) = t6
  117. dfdst(11,5) = t10
  118. dfdst(11,8) = t12
  119. dfdst(11,11) = t13
  120. dfdst(12,1) = t6
  121. dfdst(12,2) = t6
  122. dfdst(12,3) = t5
  123. dfdst(12,6) = t10
  124. dfdst(12,9) = t12
  125. dfdst(12,12) = t13
  126.  
  127.  
  128.  
  129.  
  130.  
  131. if(affiche) then
  132. print*,'DFDST dans DFST3D'
  133. do i=1,18
  134. write(*,'(18(1X,E10.3))')
  135. # (dfdst(i,j),j=1,18)
  136. end do
  137. end if
  138.  
  139.  
  140.  
  141. return
  142. end
  143.  
  144.  
  145.  

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