Facing problem with option in YADE that simulates grains similar to particle packing through Boundary contraction procedure in PFC 3D
Dear friends,
I am a beginner in YADE. I am trying to simulate CD triaxial test. As a initial step, I am trying to create particle packing. I found that their are different ways for doing this i.e., using makeCloud, pack.randomDens
I thick that pack.randomDens
#Code for simple triaxial test
#Specify the variables
sigmaIso = 1.5e5 #Confining pressure
rMean = 0.00027 #Mean radius of the particles
rRelFuzz = 0.3 #The relative fuzz of the distribution
mn,mx = Vector3(
initialFriction = 0.1 #Friction in radian
young=100e9 #Young's modulus of the particles
wallFriction=0 #Friction in the triaxial walls
num_spheres=
rate = 1
targetPorosity=0.35 #Targeted porosity
finalFriction = .25 #Friction angle during deviatoric loading phase
sphere_density = 2650 #Density of the spheres
wall_density = 4000 #Density of the wall
wall_thickness = 0 #thickness of the walls
#Importing the relevant modules from yade
from yade import pack, qt, plot
O.materials.
O.materials.
#Appending the walls before we form the packing
walls=aabbWalls
wallIds=
#Using predicate to generate the sphere packing inside the walls
pred=pack.
#Predicate and memorizeDb command saves it so that the packing can be used over and over again
sp=SpherePack()
sp=pack.
sp.toSimulation()
#Printing the mass of the spheres
print (utils.
#Triaxial stress Controller
triax = TriaxialStressC
#Now we will start the engine
O.engines=[
triax,
]
#Applying Confining Pressure
triax.goal1=
while 1:
print ('unbalanced force:',unb,'mean stress:
if unbalancedForce() < .01 and (abs(-sigmaIso-
print ("Particle Distribution is Stable")
import sys
#while triax.porosity>
# initialFriction
# setContactFrict
# print ("Friction:
# sys.stdout.flush()
# O.run(500,1)
print ("Time for the deviator loads")
setContactFrict
O.run(1000,True)
triax.internalC
setContactFrict
triax.stressmask=5
triax.goal2=-rate
triax.goal1=
triax.goal2=
O.engines = O.engines+
def addPlotData():
# Lets start by defining a function that adds the data to a text file
e11=
e22=
e33=
s11=
s22=
s33=
plot.
plot.
plot.plots=
plot.plot()
#Finally we run the simulation automatically
O.run()
Thanking you in advance,
Sarath
Question information
- Language:
- English Edit question
- Status:
- Solved
- For:
- Yade Edit question
- Assignee:
- No assignee Edit question
- Solved by:
- Sarath Chandra Reddy
- Solved:
- Last query:
- Last reply: