conso3d
C CONSO3D SOURCE FD218221 24/02/07 21:15:07 11834 subroutine conso3d(xxk,epsmk,epser,epsm6,epse_tild6,cc3, # vp33,CMp,CTp,CTv,CWp) c calcul des coeff de consolidation dans les direction de vp33 C cf. Alain Sellier, Stéphane Multon, Laurie Buffo-Lacarrière, Thierry Vidal, Xavier Bourbon, Guillaume Camps, C Concrete creep modelling for structural applications: non-linearity, multi-axiality, hydration, temperature and drying effects, C Cement and Concrete Research, Volume 79, 2016,Pages 301-315,ISSN 0008-8846, C https://doi.org/10.1016/j.cemconres.2015.10.001. implicit real*8 (a-h,o-z) implicit integer (i-n) real*8 epsmk,ccmin,gama,epser,dfmx real*8 CWp,CMp,CTp,CTv real*8 epsm6(6),epse6(6),cc3(3),epse_tild6(6) real*8 vp33(3,3) c deformation minimale prise en compte pour le calcul de potentiel c de fluage real*8 epse_min,xx1,xxk_min parameter (epse_min=1.0d-6,xxk_min=1.0d-6) real*8 epsm33(3,3),epsm3(3) real*8 epse16(6) integer i c deformation equivalente de Maxwell real*8 epsmeq6(6),epsmeq16(6) c passage du tenseur des deformations de fluage dans la base vp33 do i=1,6 epsmeq6(i)=epsm6(i) end do call chrep6(epsmeq6,vp33,.false.,epsmeq16) c passage des deformations elastiques dans la base vp33 call chrep6(epse_tild6,vp33,.false.,epse16) c calcul des coefficients de consolidation xxk=max((epsmk/epser)*CMp*CTp*CWp,xxk_min) c pas d activation thermique visqueuse sur k "*CTv" c car deja compté dans le temps caracteristique) c potentiel dans les directions principales du tenseur vp33 do i=1,3 c deformation elastique normale xx1=max(abs(epse16(i)),epse_min) xx2=xxk*xx1 c coeff de consolidation if(epse16(i)*epsmeq16(i).ge.0.d0) then c le fluage et la def elastique sont de meme sens cc3(i)=(exp(min(abs(epsmeq16(i))/xx2,25.d0)))/xxk else c le fluage et la def elastique sont de sens opposes cc3(i)=1.d0/xxk c print*,'dans conso cc(',i,')=',cc3(i),xx1,epser,xx2 c print*,'epse16(i),epsmeq16(i)',epse16(i),epsmeq16(i) c print*,'xxk',xxk cc3(i)=(exp(min(abs(epsmeq16(i))/xx2,25.d0)))/xxk end if C IF(CC3(I).GT.1.0E6) THEN C PRINT*,'DANS CONSO3D CC3 EST TRES GRAND' C WRITE(*,'(A5,I2,A2,E10.3,/,A5,I2,A2,E10.3,/,A5,E10.3,/, C # A4,I2,A2,E10.3)') C # 'EPSM(',I,')=',EPSMEQ16(I),'ESPE(',I,')=',EPSE16(I), C # 'KEFF=',XXK,'CC3(',I,')=',CC3(I) C READ* C END IF c print*,'epsmk,epser,CWp,CMp,CTd,CTv',epsmk,epser,CWp,CMp,CTd,CTv 201 FORMAT('cc(',I1,')=',4E10.3) c write(*,201) i,cc3(i),epse16(i),epsmeq16(i),xx2 end do c print*,'---------------------------------------------------------' c read* return end
© Cast3M 2003 - Tous droits réservés.
Mentions légales