Question #688994 on Yade changed: https://answers.launchpad.net/yade/+question/688994
Chareyre proposed the following answer: Hello, pore pressure refers to the pressure of a pore fluid. You are not simulating a pore fluid, and therefore the notion is irrelevant. Effective stress is nothing but total stress. And there is no «consolidation» in the sense of Terzaghi (reason why I was confused when you used that name for isotropic confinment). Bruno Le mer. 26 févr. 2020 09:14, yangsiyuan < [email protected]> a écrit : > New question #688994 on Yade: > https://answers.launchpad.net/yade/+question/688994 > > Hello everyone: > > In the numerical simulation of the periodic triaxial undrained test, the > effective stress remains unchanged after cyclic shear stress is applied > again. I want to know why the effective stress does not decrease and how > the pore pressure is considered in the periodic triaxial test. Here's my > code, hoping to get some advice. > > ############################################ > ### generate particles in the packing ### > ############################################ > from yade import plot > from yade import pack,qt > > O.periodic=True > O.cell.setBox(.016,.016,.016) > radius=0.4e-3 > > O.materials.append(FrictMat(young=70e9,poisson=0.3,frictionAngle=0.13,density=2650*1e4,label='spheres')) > sp=pack.SpherePack() > > sp.makeCloud(minCorner=(0,0,0),maxCorner=(.016,.016,.016),psdSizes=[0.00045,0.000525,0.0006,0.000675,0.00075,0.000825,0.0009],psdCumm=[0,0.167,.333,.5,.667,0.833,1],num=10000,distributeMass=True,periodic=True) > O.bodies.append([utils.sphere(s[0],s[1]) for s in sp]) > V_sphere=utils.getSpheresVolume() > V_cell=O.cell.hSize[0,0] * O.cell.hSize[1,1] * O.cell.hSize[2,2] > print 'void ratio:',(V_cell-V_sphere)/V_sphere,'dt:',utils.PWaveTimeStep() > O.save('gen-ball.xml') > qt.View() > > > ############################################ > ### consolidate the packing to reach the required confining pressure ### > ############################################ > from yade import plot,qt > from yade.pack import * > O=Omega() > O.load('gen-ball.xml') > radius=0.4e-3 > for b in O.bodies: > b.mat.frictionAngle=0.119 > > V_sphere=utils.getSpheresVolume() > O.engines=[ > ForceResetter(), > InsertionSortCollider([Bo1_Sphere_Aabb()],verletDist=.05*radius), > InteractionLoop( > [Ig2_Sphere_Sphere_ScGeom()], > [Ip2_FrictMat_FrictMat_MindlinPhys()], > [Law2_ScGeom_MindlinPhys_Mindlin(includeMoment=False)] > ), > > PeriTriaxController(dynCell=True,maxUnbalanced=2e-3,relStressTol=2e-5,goal=[-1e5,-1e5,-1e5],stressMask=7,globUpdate=5,maxStrainRate=[0.1,0.1,0.1],doneHook='triaxDone()',label='triax'), > NewtonIntegrator(damping=.2), > ] > > def triaxDone(): > print 'Here we are: > stress',triax.stress,'strain',triax.strain,'stiffness',triax.stiff > O.pause() > > O.dt=0.4*utils.PWaveTimeStep() > O.run() > O.wait() > O.save('Phase1.xml.bz2') > > ####################################### > ### cyclic shear ###" > ####################################### > from yade.pack import * > O=Omega() > O.load('Phase1.xml.bz2') > cycle=0 > g0=O.cell.hSize[0,2]*100.0/O.cell.hSize[2,2] > > O.dt=utils.PWaveTimeStep() > O.cell.velGrad=Matrix3(0,0,-0.01,0,0,0,0,0,0) > time=0 > count=0 > count1=0 > zero=1 > stop=0 > count2=0 > while 1: > O.run(100,True) > count=count+1 > count1=count1+1 > gamma=O.cell.hSize[0,1]*100/O.cell.hSize[1,1]-g0 > if count==32: > count=0 > > stress=utils.getStress() > sigmazx=stress[0,2]/-1000 > sigmazz=stress[2,2]/1000.0 > if sigmazx>25: > count=0 > count1=0 > count2=count2+1 > O.cell.velGrad=Matrix3(0,0,0.01,0,0,0,0,0,0) > if sigmazx<-25: > count=0 > count1=0 > count2=count2+1 > O.cell.velGrad=Matrix3(0,0,-0.01,0,0,0,0,0,0) > > print > 'Speed:',O.cell.velGrad[0,2],'time:',O.realtime,'cycle:',cycle,'szx:',sigmazx,'stop:',stop > if count2==2: > cycle=cycle+1 > count2=0 > if count1==4: > defData(cycle) > count1=0 > if gamma>2: > O.save('gamma3.xml.bz2') > break > > > Thank you very much! > > > -- > You received this question notification because your team yade-users is > an answer contact for Yade. > > _______________________________________________ > Mailing list: https://launchpad.net/~yade-users > Post to : [email protected] > Unsubscribe : https://launchpad.net/~yade-users > More help : https://help.launchpad.net/ListHelp > > > -- You received this question notification because your team yade-users is an answer contact for Yade. _______________________________________________ Mailing list: https://launchpad.net/~yade-users Post to : [email protected] Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp

