← Back to team overview

yade-users team mailing list archive

[Question #681480]: How to change the interparticle friction angle value from compaction process to another value during shearing process?

 

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

Hi all,

I'm currently using Yade to conduct a direct shear test simulation, and I have read many articles which mention that in order to generate a dense sample, the interparticle friction coefficient should be set to 0 during compaction process, and later set the interparticle friction coefficient to another intended value during shearing process.

Here I'm assuming that : friction coefficient = tan (friction angle)

My simulation flow is as follow:
1) simulate particles & boundaries of shear box + compaction process + save state
2)load previous saved state + shearing process

My question is , how do I change the interparticle friction angle for my spheres when I move from compaction phase to shearing phase?

Below is the simplified section of my script for generation of spheres and assigning material properties for compaction process.  I'm setting the inteparticle friction angle to 0 for generation of dense sample.  When I want to continue the shearing phase, I have to load the saved state from compaction process, then how can I change the interparticle friction angle to another value, e.g. 0.6 radians (before I start the shearing process)?

=================================================================================================

O=Omega()

# for particles
O.materials.append(CohFrictMat(young = 1E8, poisson = 0.25, frictionAngle = 0.0, density = 2650, shearCohesion=15E3, alphaKr=20.0))
# for side walls
O.materials.append(CohFrictMat(young = 1E8, poisson = 0.25, frictionAngle = 0.0, density = 2650))
# for top and bottom walls
O.materials.append(CohFrictMat(young = 1E8, poisson = 0.25, frictionAngle = 0.8, density = 2650))

L_x, L_y, L_z = 0.0634, 0.027/2, 0.0634


min_corner = Vector3(0.05*L_x,0,0.05*L_z)
max_corner = Vector3(0.95*L_x,L_y*5.8,0.95*L_z)

radius_D60 =  0.0028/2
radius_D30 =  0.00108/2
radius_D10 =  0.0004/2


num_D60 = 5500
num_D30 = 2500
num_D10 = 2000

sp=pack.SpherePack()

sp.makeCloud(minCorner=min_corner,maxCorner=max_corner,rMean=radius_D60,num=num_D60)
sp.makeCloud(minCorner=min_corner,maxCorner=max_corner,rMean=radius_D30,num=num_D30)
sp.makeCloud(minCorner=min_corner,maxCorner=max_corner,rMean=radius_D10,num=num_D10)
sp.toSimulation(material=O.materials[0])

====================================================================================================

I hope someone can give me some suggestion or advice regarding the matter above.



Thank you and Regards,
Nicholas Ng

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.