yade-users team mailing list archive
-
yade-users team
-
Mailing list archive
-
Message #10430
Re: [Question #256746]: Question about UniaxialStrainer
Question #256746 on Yade changed:
https://answers.launchpad.net/yade/+question/256746
Description changed to:
Hi all YADE users,
I tried to do an uniaxial compression test and plot the stress and strain curve. But I have encountered some problems when using UniaxialStrainer. I used CoFrictMat as the mateial in my simulation. I ran the program for one step and used plot.data to check the values and it showed that the stress was at the order of 1e9 (I expected it to be much more smaller initially since the strain rate I set was very low). And after I started running the program. The stress just kept decreasing. So no increasing of stress at all.
I attached my script. Could anyone tell me where I went wrong?
from yade import pack,plot,pack
idParticulate=O.materials.append(CohFrictMat(young=30e9,poisson=0.2,alphaKr=3,alphaKtw=3,density=2700,frictionAngle=radians(30),
isCohesive=True,momentRotationLaw=True,normalCohesion=-3.5e6,shearCohesion=-10e6,etaRoll=-3,etaTwist=-3))
pred=pack.inCylinder((0,0,0),(0,0,0.2),0.05)
TST=SpherePack()
TS=pack.randomDensePack(pred,radius=0.008,returnSpherePack=True)
TS.toSimulation(material=idParticulate)
bb=uniaxialTestFeatures()
negIds,posIds,axis,crossSectionArea=bb['negIds'],bb['posIds'],bb['axis'],bb['area']
O.dt=1e-5*PWaveTimeStep()
O.engines=[
ForceResetter(),
InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=1.5,label='bo1s')]),
InteractionLoop(
[Ig2_Sphere_Sphere_ScGeom6D(interactionDetectionFactor=1.5,label='ig2ss')],
[Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(setCohesionNow=True,setCohesionOnNewContacts=False)],
[Law2_ScGeom6D_CohFrictPhys_CohesionMoment()]
),
NewtonIntegrator(),
UniaxialStrainer(strainRate=-0.00005,axis=axis,asymmetry=0,posIds=posIds,negIds=negIds,crossSectionArea=pi*0.05*0.05,
blockDisplacements=False,blockRotations=False,setSpeeds=False,label='strainer'),
PyRunner(iterPeriod=50,command='addPlotData()',label='plotDataCollector',initRun=True)
]
def addPlotData():
yade.plot.addData(t=O.time,i=O.iter,Strain=-strainer.strain,AverageStress=-strainer.avgStress)
plot.plots={'Strain':('AverageStress',)}
plot.plot()
O.step()
bo1s.aabbEnlargeFactor=1.0
ig2ss.interactionDetectionFactor=1.0
--
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.