Télécharger harts.eso

Retour à la liste

Numérotation des lignes :

harts
  1. C HARTS SOURCE CB215821 16/04/21 21:17:02 8920
  2. C
  3. C=======================================================================
  4. C= MODELE HYPERELASTIQUE HARTSMITH =
  5. C= EN GRANDES TRANSFORMATIONS =
  6. C= CONTRAINTES PLANES Modele INCOMPRESSIBLE (direction 3) =
  7. C= DEFORMATIONS PLANES Modele Quasi INCOMPRESSIBLE =
  8. C= TRIDIMENSIONNEL Modele Quasi INCOMPRESSIBLE =
  9. C= Contribution de Laurent Gornet - Ecole Centrale de Nantes (2009) =
  10. C=======================================================================
  11. C= =
  12. C= Exemple d'utilisation d'un modele UMAT en grandes transformations =
  13. C= =
  14. C= Pour plus d'informations, voir la presentation de L. Gornet lors =
  15. C= du Club Cast3m 2006, disponible sur le site Web de Cast3m. =
  16. C= =
  17. C= Note : Actuellement en grandes deformations dans PASAPAS, le modele =
  18. C= ne peut contenir que des modèles type UMAT. On ne peut pas =
  19. C= "melanger" les derivees objectives dans Cast3m. =
  20. C=======================================================================
  21. SUBROUTINE HARTS (STRESS, STATEV, DDSDDE, STRAN, DSTRAN,
  22. & TIME, DTIME, TEMP, DTEMP, PREDEF, DPRED,
  23. & NDI, NSHR, NTENS, NSTATV, PROPS, NPROPS,
  24. & DFGRD0, DFGRD1, KSTEP, KINC,SSE,spd,scd,rpl,
  25. & DDSDDT,DRPLDE,DRPLDT,cmname,coords,drot,PNEWDT,
  26. & celent,NOEL, NPT, LAYER, KSPT )
  27.  
  28. IMPLICIT INTEGER(I-N)
  29. IMPLICIT REAL*8(A-H,O-Z)
  30. CHARACTER*16 CMNAME
  31.  
  32. INTEGER NDI, NSHR, NTENS, NSTATV, NPROPS, KSTEP, KINC
  33. & NOEL, NPT, LAYER, KSPT
  34. REAL*8 STRESS(NTENS), STATEV(NSTATV),SSE, SPD, SCD, RPL,
  35. & DDSDDE(NTENS,NTENS), STRAN(NTENS), DSTRAN(NTENS),
  36. & DDSDDT(NTENS), DRPLDE(NTENS), DRPLDT,
  37. & TIME(2), DTIME, TEMP, DTEMP, PREDEF(*), DPRED(*),
  38. & PROPS(NPROPS), DFGRD0(3,3), DFGRD1(3,3),
  39. & COORDS(3),DROT(3,3),PNEWDT,CELENT
  40. REAL*8 CG11,CG22,CG12,CG33, CInv11,CInv22,CInv12, DLT,
  41. & I1,I2, dWdI1,dWdI2, phyd, Coe1,Coe2,Coe3
  42. & F11,F21,F12,F22, S11,S12,S21,S22
  43. & F13,F31,F23,F32,F33
  44. & CGg1,CGg2,CGg3,CGg4,CGg5,CGg6
  45. & C2Gg1,C2Gg2,C2Gg3,C2Gg4,C2Gg5,C2Gg6
  46. & dWisodI1bar,dWisodI2bar,eg1,eg2,Gam1,Gam2
  47. REAL*8 Cc11,Cc22,Cc12,Cc33
  48. REAL*8 I1B,I2B,cinv33,detF,mdetF,Jm2s3,Jm1s3
  49. REAL*8 S33,dwvdj,zz,C1,C2
  50. C===============================================
  51. C 1 DECLARER VOTRE MATERIAU HARTSMITH :
  52. REAL*8 G,K1,K2
  53. C
  54. REAL*8 zero,one,two,three,four,six
  55. Parameter(zero=0.d0,one=1.d0,two=2.d0,three=3.d0,
  56. & four=4.d0,six=6.d0)
  57. PARAMETER (cm5s3=-1.66666666666666666666666666666666666)
  58. PARAMETER (cm7s3=-2.33333333333333333333333333333333333)
  59. PARAMETER (cm2s3=-0.66666666666666666666666666666666666)
  60. PARAMETER (cm1s3=-0.33333333333333333333333333333333333)
  61. PARAMETER (cm4s3=-1.33333333333333333333333333333333333)
  62. c print*,'GORNET', ndi
  63. if(ndi.ne.-2) go to 100
  64. * formulation 2D contraintes planes
  65. C PARAMETRES MATERIAU DU MODELE HARTSMITH :
  66. C ===============================================
  67. C= Dans le cas du modele de GORNET DESMORAT,
  68. C= la densite d'energie de deformation est definie par :
  69. C= W = f(I1,I2) I3= 1
  70. C ===============================================
  71. C 3 PARAMETRES MATERIAU DU MODELE HARTSMITH :
  72. C ===============================================
  73. G = PROPS(3)
  74. K1 = PROPS(4)
  75. K2 = PROPS(5)
  76. C Deformation totale stockage perso dans var 4 5 6
  77. C ******************** GREEN LAGRANGE **************
  78. C
  79. F11 = dfgrd1(1,1)
  80. F21 = dfgrd1(2,1)
  81. F12 = dfgrd1(1,2)
  82. F22 = dfgrd1(2,2)
  83. C*******************
  84. C print*,F11
  85. C print*,F21
  86. C print*,F12
  87. C print*,F22
  88. C
  89. C ******************** CC = FT * F
  90. C
  91. cc11 = F11**2 + F21**2
  92. cc22 = F12**2 + F22**2
  93. cc12 = (F11*F12)+(F21*F22)
  94. C
  95. C print*,cc11
  96. C print*,cc22
  97. C print*,cc22
  98. C ******************** CC-1
  99. DLT = CC11*CC22 - CC12*CC12
  100. cinv11 = 1.0D0/DLT*CC22
  101. cinv22 = 1.0D0/DLT*CC11
  102. cinv12 = -1.0D0/DLT*CC12
  103. C
  104. C***********************************************************
  105. C det J =1 ==>c
  106. cc33=1.0D0/(cc11*cc22-cc12**2)
  107. C trace C
  108. i1= cc11+cc22+cc33
  109. i2= .50D0*(i1**2-cc11**2-cc22**2-cc33**2-2*cc12**2)
  110. C===============================================================
  111. C 2 INTEGRER VOTRE MATERIAU HARTSMITH : DWDI1 = ?, DWDI2 = ?
  112. C Constantes materielles
  113. C W = f(i1,i2)
  114. C
  115. dwdi1 = G *EXP(K1*(i1-3.0D0)*(i1-3.0D0))
  116. C dwdi2 = G*K2/i2
  117. IF (ABS(I2).ne.0.D0) then
  118. dwdi2 = G*K2/i2
  119. ELSE
  120. dwdi2=1.0D15
  121. END IF
  122. C===============================================================
  123. C p : pression hydrostatique obtenu ici a partir de S33 = 0.
  124. p=2.0D0*((dwdi1+i1*dwdi2)-dwdi2*cc33)*cc33
  125. C******************** CONTRAINTES PK2 ******************
  126. C
  127. S11= (2.0D0*((dwdi1+i1*dwdi2)-dwdi2*cc11)-p*cinv11)
  128. S22= (2.0D0*((dwdi1+i1*dwdi2)-dwdi2*cc22)-p*cinv22)
  129. S12= (2.0D0*(-dwdi2*cc12)-p*cinv12)
  130. C
  131. C
  132. C******************** CONTRAINTES Cauchy ******************
  133. C A FAIRE PK2 a transformer par cauchy = j-1 F S FT
  134. C ici incompressible j =1 a modifier par F et FT,
  135. C***************************************************************
  136. C234567
  137. stress(1)=(S11*F11**2)+(2.0D0*F11*F12*S12)+(F12**2*S22)
  138. stress(2)=(S11*F21**2)+(2.0D0*F21*F22*S12)+(F22**2*S22)
  139. stress(4)=(F21*F11*S11)+(F21*F12*S12)+(F22*F11*S12)
  140. . +(F22*F12*S22)
  141. RETURN
  142. 100 CONTINUE
  143. * formulation 3D massive
  144. if(ndi.ne.2) go to 200
  145. C PARAMETRES MATERIAU :
  146. C =======================
  147. C= Dans le cas du modele Mooney Rivlin compressible,
  148. C= l'energie de deformation est decomposee en deux termes decouples :
  149. C= - la partie isochorique ou incompressible Wiso, fonction des inva-
  150. C= riants du tenseur de Cauchy-Green modifie ;
  151. C= - la partie purement volumique Wvol, dependant de J=det(F).
  152. C= Pour le present modele, nous avons :
  153. C= - Wiso = Wiso(I1bar,I2bar) = Coe2 * (I1bar-3.) + Coe3 * (I2bar-3.)
  154. C= - Wvol = Wvol(J) = 1/Coe1 * (J-1)*(J-1)
  155. C= Coe2 et Coe3 : coefficients du materiau
  156. C= le module de cisaillement est egal a mu = 2*Coe2
  157. C= bbar : tenseur de Cauchy-Green gauche modifie
  158. C= Par definition, bbar = J**(-2/3)*(F.Ft) = J**(-2/3)*CGg
  159. C= I1bar : 1er invariant de bbar (= trace(bbar))
  160. C= Dans le cas de la quasi-incompressibilite, c.a.d. J proche de 1,
  161. C= Wvol peut etre interpretee comme une fonction de penalisation.
  162. C* Youn = PROPS(1)
  163. C* Pois = PROPS(2)
  164. c Coe1 = PROPS(5)
  165. c Coe2 = PROPS(3)
  166. c Coe3 = PROPS(4)
  167. C ===============================================
  168. C 2 PARAMETRES MATERIAU DU MODELE HARTSMITH :
  169. C ===============================================
  170. G = PROPS(3)
  171. K1 = PROPS(4)
  172. K2 = PROPS(5)
  173. Coe1 = PROPS(6)
  174. C GRADIENT DE LA TRANSFORMATION (FIN DU PAS) :
  175. C ==============================================
  176. F11 = DFGRD1(1,1)
  177. F12 = DFGRD1(1,2)
  178. F13 = DFGRD1(1,3)
  179. F21 = DFGRD1(2,1)
  180. F22 = DFGRD1(2,2)
  181. F23 = DFGRD1(2,3)
  182. F31 = DFGRD1(3,1)
  183. F32 = DFGRD1(3,2)
  184. F33 = DFGRD1(3,3)
  185.  
  186. C JACOBIEN DE LA TRANSFORMATION (FIN DU PAS) :
  187. C ==============================================
  188. detF = F11*F22*F33 - F12*F21*F33 + F12*F23*F31
  189. & + F13*F32*F21 - F13*F31*F22 - F23*F32*F11
  190.  
  191. C TENSEUR DES DEFORMATIONS DE CAUCHY-GREEN GAUCHE
  192. C =================================================
  193. C= Tenseur de Cauchy-Green gauche CGg = F.Ft
  194. C G11 G22 G33 G12 G13 G23
  195. CGg1 = F11*F11 + F12*F12 + F13*F13
  196. CGg2 = F21*F21 + F22*F22 + F23*F23
  197. CGg3 = F33*F33 + F31*F31 + F32*F32
  198. CGg4 = F11*F21 + F12*F22 + F13*F23
  199. CGg5 = F11*F31 + F12*F32 + F13*F33
  200. CGg6 = F21*F31 + F22*F32 + F23*F33
  201. C= Tenseur de Cauchy-Green gauche CGg2 = (F.Ft)*(F.Ft)
  202. C indices (1 a 6) =(11 22 33 12 13 23
  203. C2Gg1 = CGg1*CGg1 + CGg4*CGg4 + CGg5*CGg5
  204. C2Gg2 = CGg4*CGg4 + CGg2*CGg2 + CGg6*CGg6
  205. C2Gg3 = CGg5*CGg5 + CGg6*CGg6 + CGg3*CGg3
  206. C2Gg4 = CGg1*CGg4 + CGg4*CGg2 + CGg5*CGg6
  207. C2Gg5 = CGg1*CGg5 + CGg4*CGg6 + CGg5*CGg3
  208. C2Gg6 = CGg4*CGg5 + CGg2*CGg6 + CGg6*CGg3
  209. C INVARIANTS : I1B= J**-1/3 I1, I2B= J**-4/3 I2
  210. I1=(CGg1+CGg2+CGg3)
  211. i2= .5D0*(i1**2-C2Gg1-C2Gg2-C2Gg3-2.D0*(C2Gg4+C2Gg5+C2Gg6))
  212. I1B = (detF**cm2s3)*I1
  213. I2B = (detF**cm4s3)*I2
  214.  
  215. C
  216. I1B = (detF**cm2s3)*I1
  217. I2B = (detF**cm4s3)*I2
  218. C CONTRAINTES DE CAUCHY (FIN DU PAS) :
  219. C ======================================
  220. C= Les contraintes de Cauchy STRESS se decomposent en deux termes :
  221. C= - STRESS = SCvol + SCiso
  222. C= - SCvol = phyd.Iden = (dWvol(J)/dJ).Iden
  223. C= avec Iden = tenseur identite d'ordre 2,
  224. C= phyd = pression hydrostatique,
  225. C= avec Gam1 = (dWiso/dI1bar+I1bar.dWiso/dI2bar)
  226. C= Gam2 = (dWiso/dI2bar)
  227. C= - SCiso = 2. J**(-5/3)Gam1 CGg - 2. J**(-7/3) Gam2 C2Gg
  228. C
  229. C ENTRER LE MATERIAU ICI :
  230. C===============================================================
  231. C 2 INTEGRER VOTRE MATERIAU HARTSMITH : DWDI1 = ?, DWDI2 = ?
  232. C Constantes materielles
  233. C W = f(i1,i2)
  234. C
  235. dWisodI1bar = G *EXP(K1*(i1-3.0D0)*(i1-3.0D0))
  236. C dwdi2 = G*K2/i2
  237. IF (ABS(I2).ne.0.D0) then
  238. dWisodI2bar = G*K2/i2
  239. ELSE
  240. dWisodI2bar=1.0D15
  241. END IF
  242. c dWisodI1bar = Coe2
  243. c dWisodI2bar = Coe3
  244.  
  245. Gam1 = (dWisodI1bar+I1B*dWisodI2bar)
  246. Gam2 = (dWisodI2bar)
  247.  
  248. phyd = 2.0D0 * (detF-1.0D0) / Coe1
  249.  
  250. eg1 = 2.0D0 * (detF**cm5s3) * Gam1
  251. eg2 = 2.0D0 * (detF**cm7s3) * Gam2
  252.  
  253.  
  254. STRESS(1) = eg1 * CGg1 - eg2 * C2Gg1 + phyd
  255. STRESS(2) = eg1 * CGg2 - eg2 * C2Gg2 + phyd
  256. STRESS(3) = eg1 * CGg3 - eg2 * C2Gg3 + phyd
  257. STRESS(4) = eg1 * CGg4 - eg2 * C2Gg4
  258. STRESS(5) = eg1 * CGg5 - eg2 * C2Gg5
  259. STRESS(6) = eg1 * CGg6 - eg2 * C2Gg6
  260. return
  261. 200 if(ndi.ne.-1) go to 300
  262. C Deformations Planes
  263. C
  264. G = PROPS(3)
  265. K1 = PROPS(4)
  266. K2 = PROPS(5)
  267. Coe1 = PROPS(6)
  268. C Deformation totale stockage perso dans var 4 5 6
  269. C ******************** GREEN LAGRANGE **************
  270. C
  271. F11 = dfgrd1(1,1)
  272. F21 = dfgrd1(2,1)
  273. F12 = dfgrd1(1,2)
  274. F22 = dfgrd1(2,2)
  275. F33 = dfgrd1(3,3)
  276. detF =F11*F22-F12*F21
  277. C ******************** CC = FT * F
  278. C
  279. cc11 = F11**2 + F21**2
  280. cc22 = F12**2 + F22**2
  281. cc12 = (F11*F12)+(F21*F22)
  282. C ******************** CC-1
  283. DLT = CC11*CC22 - CC12*CC12
  284. cinv11 = 1.0D0/DLT*CC22
  285. cinv22 = 1.0D0/DLT*CC11
  286. cinv12 = -1.0D0/DLT*CC12
  287. cinv33 = 1.0D0/DLT
  288. C
  289. C***********************************************************
  290. C det J =1 ==>c
  291. cc33=1.0D0
  292. C trace C et CB
  293. i1= cc11+cc22+cc33
  294. i2= .50D0*(i1**2-cc11**2-cc22**2-cc33**2-2*cc12**2)
  295. C
  296. I1B = (detF**cm2s3)*I1
  297. I2B = (detF**cm4s3)*I2
  298. C===============================================================
  299. C 2 INTEGRER VOTRE MATERIAU : DWDI1B = ?, DWDI2B = ?
  300. C attention nom !!! dwdi1 = DWDI1B et dwdi2 = DWDI2B
  301. C Wiso = f(i1b,i2b)
  302. C
  303. C===============================================================
  304. C 2 INTEGRER VOTRE MATERIAU HARTSMITH : DWDI1 = ?, DWDI2 = ?
  305. C Constantes materielles
  306. C W = f(i1,i2)
  307. C
  308. dwdi1 = G *EXP(K1*(i1-3.0D0)*(i1-3.0D0))
  309. C dwdi2 = G*K2/i2
  310. IF (ABS(I2).ne.0.D0) then
  311. dwdi2 = G*K2/i2
  312. ELSE
  313. dwdi2=1.0D15
  314. END IF
  315. C===============================================================
  316. dwvdj= 2.0D0 * (detF-1.0D0) / Coe1
  317. C===============================================================
  318. Jm2s3=detF**cm2s3
  319. Jm1s3=detF**cm1s3
  320. phyd = Jm1s3*dwvdj
  321. C
  322. C******************** CONTRAINTES PK2 ******************
  323. C
  324. C Epaisseur a ajouter dans les formules!!!
  325. C234567
  326. S11=2.0D0*Jm2s3*((dwdi1+i1b*dwdi2)-dwdi2*cc11)+phyd*cinv11
  327. S22=2.0D0*Jm2s3*((dwdi1+i1b*dwdi2)-dwdi2*cc22)+phyd*cinv22
  328. S12= 2.0D0*Jm2s3*(-dwdi2*cc12)+phyd*cinv12
  329. S33=2.0D0*Jm2s3*((dwdi1+i1b*dwdi2)-dwdi2*cc33)+phyd*cinv33
  330. C
  331. C
  332. C******************** CONTRAINTES Cauchy ******************
  333. C A FAIRE PK2 a transformer par cauchy = j-1 F S FT
  334. C ici incompressible j =1 a modifier par F et FT,
  335. C***************************************************************
  336. mdetF = 1.0D0/detF
  337. C
  338. stress(1)=mdetF*((S11*F11**2)+(2.0D0*F11*F12*S12)+(F12**2*S22))
  339. stress(2)=mdetF*((S11*F21**2)+(2.0D0*F21*F22*S12)+(F22**2*S22))
  340. stress(4)=mdetF*((F21*F11*S11)+(F21*F12*S12)+(F22*F11*S12)
  341. . +(F22*F12*S22))
  342. stress(3)= mdetF*S33
  343. return
  344. 300 kinc=-2
  345. return
  346. END
  347.  
  348.  
  349.  
  350.  
  351.  

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