Télécharger endo3f.eso

Retour à la liste

Numérotation des lignes :

endo3f
  1. C ENDO3F SOURCE PV090527 23/01/27 21:15:30 11574
  2. subroutine endo3f(wplx3,gft_app,young,
  3. # xmt,dtiso,dt3,epict,rteff_app,longr)
  4.  
  5. c calcul de l endommagement
  6.  
  7. implicit real*8 (a-h,o-z)
  8. implicit integer (i-n)
  9.  
  10.  
  11.  
  12. real*8 reft,rteff_app
  13. real*8 wplx3
  14. real*8 gft_app
  15.  
  16. real*8 young,nu
  17. real*8 xmt
  18. logical dtiso
  19. integer i,j,k,l
  20.  
  21. real*8 dt3
  22. real*8 gf1,gf2,gfrmin,gfreff
  23.  
  24. c endo maxi et precision
  25. real*8 dmaxi,drgimaxi,xngf,precision1
  26. parameter (precision1=0.d0)
  27. parameter (dmaxi=1.d0-precision1,drgimaxi=1.0d0-precision1)
  28. parameter (xngf=6.d0)
  29.  
  30. c declaration complementaires juillet 2015
  31. real*8 wkt
  32. c endommagement isotrope au pic de traction
  33. real*8 dtisopic
  34. c longueur de l element dans chaque direction
  35. real*8 longr
  36. c energie de fissuration recuperee dans la decharge elastique
  37. real*8 gfmin,gfpp,errgf,errgf1,errgf0,gfap
  38. c deformation au pic de traction
  39. real*8 epict
  40.  
  41.  
  42.  
  43. c***********************************************************************
  44. c prise en compte de l endommagement de traction
  45. c***********************************************************************
  46. c endo iso max au pic de traction
  47. if(dtiso) then
  48. c l endommagement isotrope conduit a utiliser rteff_app=rt_app/(1-dtpic)>rt_app
  49. dtisopic=1.d0-exp(-1.d0/xmt)
  50. else
  51. dtisopic=0.d0
  52. end if
  53. c passage de Gf dans la base principale des ouvertures maxi enlevé le seul truc peut etre a ajouter ?
  54.  
  55. c energie elastique consommee au pic dans cette direction
  56. c longr peut etre pris directement dans fibre
  57. c gf mini pour controler l ecrouissage negatif post pic
  58.  
  59. gfmin=longr*((rteff_app*(1.d0-dtisopic))**2)/young*
  60. # (4.d0/xngf+1.d0/(1.d0-dtisopic) )/2.d0
  61. c gf pre pic
  62. gfap= longr*(rteff_app*(1.d0-dtisopic))*epict/2.d0
  63. if(gfmin.lt.gft_app) then
  64. c le controle de l energie de fissuration sans snap back local est possible
  65. gfpp=gft_app-gfap
  66. else
  67. c un snap back local est necessaire on calcule l erreur comise
  68. c en preservant une decroissance post pic correspondant à gft_app/10
  69. gfpp=gfmin-gfap
  70.  
  71. end if
  72. c ouverture caracteristique ds cette direction
  73. wkt=gfpp/(rteff_app*(1.d0-dtisopic))
  74. c endo localise
  75. dt3=wplx3*(wplx3+2.d0*wkt)/(wkt+wplx3)**2
  76. c borne de dt a dmaxi
  77. dt3=min(dmaxi,dt3)
  78.  
  79.  
  80. c print*,"endo3d wkt",wkt,gfpp,rteff_app,gfap
  81. c print*,"endofibre",gfmin,gft_app,gfap,gfpp,rteff_app
  82.  
  83.  
  84. 1000 return
  85. end
  86.  
  87.  

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