← Back to team overview

yade-users team mailing list archive

[Question #256746]: Question about UniaxialStrainer

 

New question #256746 on Yade:
https://answers.launchpad.net/yade/+question/256746

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,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,label='bo1s')]),
InteractionLoop(
[Ig2_Sphere_Sphere_ScGeom6D(interactionDetectionFactor=1,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.