Télécharger conso3d.eso

Retour à la liste

Numérotation des lignes :

conso3d
  1. C CONSO3D SOURCE FD218221 24/02/07 21:15:07 11834
  2. subroutine conso3d(xxk,epsmk,epser,epsm6,epse_tild6,cc3,
  3. # vp33,CMp,CTp,CTv,CWp)
  4.  
  5. c calcul des coeff de consolidation dans les direction de vp33
  6. C cf. Alain Sellier, Stéphane Multon, Laurie Buffo-Lacarrière, Thierry Vidal, Xavier Bourbon, Guillaume Camps,
  7. C Concrete creep modelling for structural applications: non-linearity, multi-axiality, hydration, temperature and drying effects,
  8. C Cement and Concrete Research, Volume 79, 2016,Pages 301-315,ISSN 0008-8846,
  9. C https://doi.org/10.1016/j.cemconres.2015.10.001.
  10.  
  11. implicit real*8 (a-h,o-z)
  12. implicit integer (i-n)
  13.  
  14. real*8 epsmk,ccmin,gama,epser,dfmx
  15. real*8 CWp,CMp,CTp,CTv
  16. real*8 epsm6(6),epse6(6),cc3(3),epse_tild6(6)
  17. real*8 vp33(3,3)
  18.  
  19. c deformation minimale prise en compte pour le calcul de potentiel
  20. c de fluage
  21. real*8 epse_min,xx1,xxk_min
  22. parameter (epse_min=1.0d-6,xxk_min=1.0d-6)
  23. real*8 epsm33(3,3),epsm3(3)
  24. real*8 epse16(6)
  25. integer i
  26.  
  27. c deformation equivalente de Maxwell
  28. real*8 epsmeq6(6),epsmeq16(6)
  29.  
  30. c passage du tenseur des deformations de fluage dans la base vp33
  31. do i=1,6
  32. epsmeq6(i)=epsm6(i)
  33. end do
  34. call chrep6(epsmeq6,vp33,.false.,epsmeq16)
  35.  
  36. c passage des deformations elastiques dans la base vp33
  37. call chrep6(epse_tild6,vp33,.false.,epse16)
  38.  
  39. c calcul des coefficients de consolidation
  40. xxk=max((epsmk/epser)*CMp*CTp*CWp,xxk_min)
  41. c pas d activation thermique visqueuse sur k "*CTv"
  42. c car deja compté dans le temps caracteristique)
  43.  
  44. c potentiel dans les directions principales du tenseur vp33
  45. do i=1,3
  46. c deformation elastique normale
  47. xx1=max(abs(epse16(i)),epse_min)
  48. xx2=xxk*xx1
  49. c coeff de consolidation
  50. if(epse16(i)*epsmeq16(i).ge.0.d0) then
  51. c le fluage et la def elastique sont de meme sens
  52. cc3(i)=(exp(min(abs(epsmeq16(i))/xx2,25.d0)))/xxk
  53. else
  54. c le fluage et la def elastique sont de sens opposes
  55. cc3(i)=1.d0/xxk
  56. c print*,'dans conso cc(',i,')=',cc3(i),xx1,epser,xx2
  57. c print*,'epse16(i),epsmeq16(i)',epse16(i),epsmeq16(i)
  58. c print*,'xxk',xxk
  59. cc3(i)=(exp(min(abs(epsmeq16(i))/xx2,25.d0)))/xxk
  60. end if
  61. C IF(CC3(I).GT.1.0E6) THEN
  62. C PRINT*,'DANS CONSO3D CC3 EST TRES GRAND'
  63. C WRITE(*,'(A5,I2,A2,E10.3,/,A5,I2,A2,E10.3,/,A5,E10.3,/,
  64. C # A4,I2,A2,E10.3)')
  65. C # 'EPSM(',I,')=',EPSMEQ16(I),'ESPE(',I,')=',EPSE16(I),
  66. C # 'KEFF=',XXK,'CC3(',I,')=',CC3(I)
  67. C READ*
  68. C END IF
  69. c print*,'epsmk,epser,CWp,CMp,CTd,CTv',epsmk,epser,CWp,CMp,CTd,CTv
  70. 201 FORMAT('cc(',I1,')=',4E10.3)
  71. c write(*,201) i,cc3(i),epse16(i),epsmeq16(i),xx2
  72. end do
  73. c print*,'---------------------------------------------------------'
  74. c read*
  75. return
  76. end
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  

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