wall friction
Hi,
I have set the friction angle of the left, right and top walls to 0, but why are the left and right walls still subjected to vertical force and the top wall still subjected to horizontal force in the second script.
I have two scripts and they should run in sequence.
The first script:
#######
### Defining parameters and variables ###
#######
#Material constants
Density = 3000
FrictionAngle = 50
PoissonRatio = 0.5
Young = 300e6
Damp = 0.5
AvgRadius = 0.00006
N_particles = 10000
#Wall constants
WDensity = 0
WFrictionAngle = 0.0
WPoissonRatio = 0.5
WYoung = 50e9
#Packing variables
mn = Vector3(0,0,0)
mx = Vector3(
#Confining variables
ConfPress1 = -1e5 #pre-compression
ConfPress = -1.0e5
#time calculation
startT = O.time
endT = O.time
timeSpent = endT - startT
#######
#import necessary packages
from yade import pack,plot,os,timing
import matplotlib; matplotlib.
import pylab
#######
### Sample Preparing ###################
#######
#Create materials for spheres and plates
SphereMat = O.materials.
WallMat = O.materials.
#Create walls for packing
wallIds = O.bodies.
#Use SpherePack object to generate a random loose particles packing
#O.periodic = True
#O.cell.
sp = pack.SpherePack()
#psdSizes,
sp.makeCloud(
sp.toSimulation
O.usesTimeStepp
O.trackEnerty=True
#######
#####Defining triaxil engines####
#######
###first step: compression#######
triax1=
wall_
wall_
thickness = 0.000001,
maxMultipli
finalMaxMul
#maxMultiplier = 1.002,
internalCom
#max_vel = 1.5,
stressMask = 7,
computeStre
goal1 = ConfPress1,
goal2 = ConfPress1,
#goal3 = ConfPress,
)
newton=
###engine
O.engines=[
ForceResett
InsertionSo
Interaction
[Ig2_
[Ip2_
[Law2_
),
GlobalStiff
triax1,
newton,
PyRunner(
]
# Simulation stop conditions defination
def checkUnbalanced():
unb=
mStress = (triax1.
s1 = triax1.
s2 = triax1.
print(
if unb<0.01 and abs(ConfPress1-
O.pause()
The second script:
#Wall constants
WDensity = 0
WFrictionAngle = 0.0
WPoissonRatio = 0.5
WYoung = 50e9
Mat = O.materials.
FrictionAngle = 35
Damp = 0.25
#Confining variables
force = -10
#time calculation
startT = O.time
endT = O.time
timeSpent = endT - startT
#restart
O.load(
#######
#import necessary packages
from yade import pack,plot,os,timing
bodylist = []
for i in range(0,165):
bodylist.
bottomwallclump = O.bodies.
for b in range(6):
O.bodies.
id_box1 = O.bodies.
id_box2 = O.bodies.
id_box3 = O.bodies.
#id_box4 = O.bodies.
print('
print('
print('
print('
topwall = O.bodies[id_box3]
topwall.
O.bodies[
for b in O.bodies:
if isinstance(
for i in range(-164,-1):
O.bodies[
O.forces.
O.engines=[
ForceResett
InsertionSo
Interaction
[Ig2_
[Ip2_
[Law2_
),
GlobalStiff
NewtonInteg
PyRunner(
# PyRunner(
]
# Simulation stop conditions defination
def endCheck():
unb=
topstress = (10-O.forces.
print(
if unb<0.001 and (abs(topstress)
if O.iter<60000:
return
else:
Question information
- Language:
- English Edit question
- Status:
- Solved
- For:
- Yade Edit question
- Assignee:
- No assignee Edit question
- Solved by:
- Jan Stránský
- Solved:
- Last query:
- Last reply: