Télécharger gdgd.eso

Retour à la liste

Numérotation des lignes :

gdgd
  1. C GDGD SOURCE CB215821 16/04/21 21:17:00 8920
  2. C
  3. C=======================================================================
  4. C= MODELE HYPERELASTIQUE GORNET-DESMORAT =
  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 GDGD (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 GORNET DESMORAT :
  52. REAL*8 H1,H2,H3
  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 GORNET DESMORAT:
  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 GORNET DESMORAT :
  72. C ===============================================
  73. H1 = PROPS(3)
  74. H2 = PROPS(4)
  75. H3 = 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 GORNET DESMORAT : DWDI1 = ?, DWDI2 = ?
  112. C Constantes materielles
  113. C W = f(i1,i2)
  114. C
  115. dwdi1 = H1 *EXP(H3*(i1-3.0D0)*(i1-3.0D0))
  116. IF (ABS(I2).ne.0.D0) then
  117. dwdi2 = 3.0D0*H2/SQRT(i2)
  118. ELSE
  119. PRINT*, 'ERRE'
  120. END IF
  121. C===============================================================
  122. C p : pression hydrostatique obtenu ici a partir de S33 = 0.
  123. p=2.0D0*((dwdi1+i1*dwdi2)-dwdi2*cc33)*cc33
  124. C******************** CONTRAINTES PK2 ******************
  125. C
  126. S11= (2.0D0*((dwdi1+i1*dwdi2)-dwdi2*cc11)-p*cinv11)
  127. S22= (2.0D0*((dwdi1+i1*dwdi2)-dwdi2*cc22)-p*cinv22)
  128. S12= (2.0D0*(-dwdi2*cc12)-p*cinv12)
  129. C
  130. C
  131. C******************** CONTRAINTES Cauchy ******************
  132. C A FAIRE PK2 a transformer par cauchy = j-1 F S FT
  133. C ici incompressible j =1 a modifier par F et FT,
  134. C***************************************************************
  135. C234567
  136. stress(1)=(S11*F11**2)+(2.0D0*F11*F12*S12)+(F12**2*S22)
  137. stress(2)=(S11*F21**2)+(2.0D0*F21*F22*S12)+(F22**2*S22)
  138. stress(4)=(F21*F11*S11)+(F21*F12*S12)+(F22*F11*S12)
  139. . +(F22*F12*S22)
  140. RETURN
  141. 100 CONTINUE
  142. * formulation 3D massive
  143. if(ndi.ne.2) go to 200
  144. C PARAMETRES MATERIAU :
  145. C =======================
  146. C= Dans le cas du modele Mooney Rivlin compressible,
  147. C= l'energie de deformation est decomposee en deux termes decouples :
  148. C= - la partie isochorique ou incompressible Wiso, fonction des inva-
  149. C= riants du tenseur de Cauchy-Green modifie ;
  150. C= - la partie purement volumique Wvol, dependant de J=det(F).
  151. C= Pour le present modele, nous avons :
  152. C= - Wiso = Wiso(I1bar,I2bar) = Coe2 * (I1bar-3.) + Coe3 * (I2bar-3.)
  153. C= - Wvol = Wvol(J) = 1/Coe1 * (J-1)*(J-1)
  154. C= Coe2 et Coe3 : coefficients du materiau
  155. C= le module de cisaillement est egal a mu = 2*Coe2
  156. C= bbar : tenseur de Cauchy-Green gauche modifie
  157. C= Par definition, bbar = J**(-2/3)*(F.Ft) = J**(-2/3)*CGg
  158. C= I1bar : 1er invariant de bbar (= trace(bbar))
  159. C= Dans le cas de la quasi-incompressibilite, c.a.d. J proche de 1,
  160. C= Wvol peut etre interpretee comme une fonction de penalisation.
  161. C* Youn = PROPS(1)
  162. C* Pois = PROPS(2)
  163. c Coe1 = PROPS(5)
  164. c Coe2 = PROPS(3)
  165. c Coe3 = PROPS(4)
  166. C ===============================================
  167. C 2 PARAMETRES MATERIAU DU MODELE GORNET DESMORAT :
  168. C ===============================================
  169. H1 = PROPS(3)
  170. H2 = PROPS(4)
  171. H3 = PROPS(5)
  172. Coe1 = PROPS(6)
  173. C GRADIENT DE LA TRANSFORMATION (FIN DU PAS) :
  174. C ==============================================
  175. F11 = DFGRD1(1,1)
  176. F12 = DFGRD1(1,2)
  177. F13 = DFGRD1(1,3)
  178. F21 = DFGRD1(2,1)
  179. F22 = DFGRD1(2,2)
  180. F23 = DFGRD1(2,3)
  181. F31 = DFGRD1(3,1)
  182. F32 = DFGRD1(3,2)
  183. F33 = DFGRD1(3,3)
  184.  
  185. C JACOBIEN DE LA TRANSFORMATION (FIN DU PAS) :
  186. C ==============================================
  187. detF = F11*F22*F33 - F12*F21*F33 + F12*F23*F31
  188. & + F13*F32*F21 - F13*F31*F22 - F23*F32*F11
  189.  
  190. C TENSEUR DES DEFORMATIONS DE CAUCHY-GREEN GAUCHE
  191. C =================================================
  192. C= Tenseur de Cauchy-Green gauche CGg = F.Ft
  193. C G11 G22 G33 G12 G13 G23
  194. CGg1 = F11*F11 + F12*F12 + F13*F13
  195. CGg2 = F21*F21 + F22*F22 + F23*F23
  196. CGg3 = F33*F33 + F31*F31 + F32*F32
  197. CGg4 = F11*F21 + F12*F22 + F13*F23
  198. CGg5 = F11*F31 + F12*F32 + F13*F33
  199. CGg6 = F21*F31 + F22*F32 + F23*F33
  200. C= Tenseur de Cauchy-Green gauche CGg2 = (F.Ft)*(F.Ft)
  201. C indices (1 a 6) =(11 22 33 12 13 23
  202. C2Gg1 = CGg1*CGg1 + CGg4*CGg4 + CGg5*CGg5
  203. C2Gg2 = CGg4*CGg4 + CGg2*CGg2 + CGg6*CGg6
  204. C2Gg3 = CGg5*CGg5 + CGg6*CGg6 + CGg3*CGg3
  205. C2Gg4 = CGg1*CGg4 + CGg4*CGg2 + CGg5*CGg6
  206. C2Gg5 = CGg1*CGg5 + CGg4*CGg6 + CGg5*CGg3
  207. C2Gg6 = CGg4*CGg5 + CGg2*CGg6 + CGg6*CGg3
  208. C INVARIANTS : I1B= J**-1/3 I1, I2B= J**-4/3 I2
  209. I1=(CGg1+CGg2+CGg3)
  210. i2= .5D0*(i1**2-C2Gg1-C2Gg2-C2Gg3-2.D0*(C2Gg4+C2Gg5+C2Gg6))
  211. I1B = (detF**cm2s3)*I1
  212. I2B = (detF**cm4s3)*I2
  213.  
  214. C
  215. I1B = (detF**cm2s3)*I1
  216. I2B = (detF**cm4s3)*I2
  217. C CONTRAINTES DE CAUCHY (FIN DU PAS) :
  218. C ======================================
  219. C= Les contraintes de Cauchy STRESS se decomposent en deux termes :
  220. C= - STRESS = SCvol + SCiso
  221. C= - SCvol = phyd.Iden = (dWvol(J)/dJ).Iden
  222. C= avec Iden = tenseur identite d'ordre 2,
  223. C= phyd = pression hydrostatique,
  224. C= avec Gam1 = (dWiso/dI1bar+I1bar.dWiso/dI2bar)
  225. C= Gam2 = (dWiso/dI2bar)
  226. C= - SCiso = 2. J**(-5/3)Gam1 CGg - 2. J**(-7/3) Gam2 C2Gg
  227. C
  228. C ENTRER LE MATERIAU ICI :
  229. C===============================================================
  230. C 2 INTEGRER VOTRE MATERIAU GORNET DESMORAT : DWDI1 = ?, DWDI2 = ?
  231. C Constantes materielles
  232. C W = f(i1,i2)
  233. C
  234. dWisodI1bar = H1 *EXP(H3*(i1b-3.0D0)*(i1b-3.0D0))
  235. IF (ABS(I2).ne.0.D0) then
  236. dWisodI2bar = 3.0D0*H2/SQRT(i2b)
  237. ELSE
  238. PRINT*, 'ERRE'
  239. END IF
  240. c dWisodI1bar = Coe2
  241. c dWisodI2bar = Coe3
  242.  
  243. Gam1 = (dWisodI1bar+I1B*dWisodI2bar)
  244. Gam2 = (dWisodI2bar)
  245.  
  246. phyd = 2.0D0 * (detF-1.0D0) / Coe1
  247.  
  248. eg1 = 2.0D0 * (detF**cm5s3) * Gam1
  249. eg2 = 2.0D0 * (detF**cm7s3) * Gam2
  250.  
  251.  
  252. STRESS(1) = eg1 * CGg1 - eg2 * C2Gg1 + phyd
  253. STRESS(2) = eg1 * CGg2 - eg2 * C2Gg2 + phyd
  254. STRESS(3) = eg1 * CGg3 - eg2 * C2Gg3 + phyd
  255. STRESS(4) = eg1 * CGg4 - eg2 * C2Gg4
  256. STRESS(5) = eg1 * CGg5 - eg2 * C2Gg5
  257. STRESS(6) = eg1 * CGg6 - eg2 * C2Gg6
  258. return
  259. 200 if(ndi.ne.-1) go to 300
  260. C Deformations Planes
  261. C
  262. H1 = PROPS(3)
  263. H2 = PROPS(4)
  264. H3 = PROPS(5)
  265. Coe1 = PROPS(6)
  266. C Deformation totale stockage perso dans var 4 5 6
  267. C ******************** GREEN LAGRANGE **************
  268. C
  269. F11 = dfgrd1(1,1)
  270. F21 = dfgrd1(2,1)
  271. F12 = dfgrd1(1,2)
  272. F22 = dfgrd1(2,2)
  273. F33 = dfgrd1(3,3)
  274. detF =F11*F22-F12*F21
  275. C ******************** CC = FT * F
  276. C
  277. cc11 = F11**2 + F21**2
  278. cc22 = F12**2 + F22**2
  279. cc12 = (F11*F12)+(F21*F22)
  280. C ******************** CC-1
  281. DLT = CC11*CC22 - CC12*CC12
  282. cinv11 = 1.0D0/DLT*CC22
  283. cinv22 = 1.0D0/DLT*CC11
  284. cinv12 = -1.0D0/DLT*CC12
  285. cinv33 = 1.0D0/DLT
  286. C
  287. C***********************************************************
  288. C det J =1 ==>c
  289. cc33=1.0D0
  290. C trace C et CB
  291. i1= cc11+cc22+cc33
  292. i2= .50D0*(i1**2-cc11**2-cc22**2-cc33**2-2*cc12**2)
  293. C
  294. I1B = (detF**cm2s3)*I1
  295. I2B = (detF**cm4s3)*I2
  296. C===============================================================
  297. C 2 INTEGRER VOTRE MATERIAU : DWDI1B = ?, DWDI2B = ?
  298. C attention nom !!! dwdi1 = DWDI1B et dwdi2 = DWDI2B
  299. C Wiso = f(i1b,i2b)
  300. C
  301. C===============================================================
  302. C 2 INTEGRER VOTRE MATERIAU GORNET DESMORAT : DWDI1 = ?, DWDI2 = ?
  303. C Constantes materielles
  304. C W = f(i1,i2)
  305. C
  306. dwdi1 = H1 *EXP(H3*(i1-3.0D0)*(i1-3.0D0))
  307. IF (ABS(I2).ne.0.D0) then
  308. dwdi2 = 3.0D0*H2/SQRT(i2)
  309. ELSE
  310. PRINT*, 'ERRE'
  311. END IF
  312. C===============================================================
  313. dwvdj= 2.0D0 * (detF-1.0D0) / Coe1
  314. C===============================================================
  315. Jm2s3=detF**cm2s3
  316. Jm1s3=detF**cm1s3
  317. phyd = Jm1s3*dwvdj
  318. C
  319. C******************** CONTRAINTES PK2 ******************
  320. C
  321. C Epaisseur a ajouter dans les formules!!!
  322. C234567
  323. S11=2.0D0*Jm2s3*((dwdi1+i1b*dwdi2)-dwdi2*cc11)+phyd*cinv11
  324. S22=2.0D0*Jm2s3*((dwdi1+i1b*dwdi2)-dwdi2*cc22)+phyd*cinv22
  325. S12= 2.0D0*Jm2s3*(-dwdi2*cc12)+phyd*cinv12
  326. S33=2.0D0*Jm2s3*((dwdi1+i1b*dwdi2)-dwdi2*cc33)+phyd*cinv33
  327. C
  328. C
  329. C******************** CONTRAINTES Cauchy ******************
  330. C A FAIRE PK2 a transformer par cauchy = j-1 F S FT
  331. C ici incompressible j =1 a modifier par F et FT,
  332. C***************************************************************
  333. mdetF = 1.0D0/detF
  334. C
  335. stress(1)=mdetF*((S11*F11**2)+(2.0D0*F11*F12*S12)+(F12**2*S22))
  336. stress(2)=mdetF*((S11*F21**2)+(2.0D0*F21*F22*S12)+(F22**2*S22))
  337. stress(4)=mdetF*((F21*F11*S11)+(F21*F12*S12)+(F22*F11*S12)
  338. . +(F22*F12*S22))
  339. stress(3)= mdetF*S33
  340. return
  341. 300 kinc=-2
  342. return
  343. END
  344.  
  345.  
  346.  
  347.  
  348.  

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