Shear loading
I made a simple model to understand what’s going on. I have two spheres:
sphere(
sphere(
The following is the boundary condition:
O.bodies[
O.bodies[
O.bodies[
I am applying a velocity in the x direction on sphere #1 which should cause a shear reaction force to occur. The following are my questions:
1. When I track the forces on sphere #1, I notice that there is a force in the x-direction (which is expected) and a force in the z-direction (uniaxial). Where is the uniaxial force coming from if I only applied a shear boundary condition? The contrary example to this would be to apply a uniaxial loading condition which would result in only a uniaxial force.
2. I have read [1] and [2] thoroughly. I understand that the tangential plane rotates as the spheres shear and that the shear force is calculated incrementally. Is deltaUs in [2] the change in tangential displacement with respect to time or is it from the initial configuration?
3. I tried to do a simple DEM model on MATLAB where I had two 2D spheres and I applied the same loading condition as my YADE model while calculating the uniaxial and shear forces on sphere#1. I could not get the same results as YADE predicts. Is there a document that explains clearly the steps. I read [1], but I want something with more detail.
4. My code is running well, so I assume that the my code is correct.
[1] https:/
[2] A DEM model for soft and hard rocks: Role of grain interlocking on strength
Thank you soo much for your time.
MY CODE:
# MATERIAL PROPERTIES
intR=20 # allows near neighbour interaction (can be adjusted for every packing)
DENS=2500 # Density
YOUNG=1800
FRICT=7
ALPHA=0.1
TENS=100
COH=100
iterMax = 100
O.materials.
# PARTICLES
O.bodies.append([
# 0
sphere(
# 1
sphere(
])
nbSpheres = 2;
# BOUNDARY CONDITION
O.bodies[
O.bodies[
O.bodies[
# FUNCTIONAL COMPONENTS
# 1
def addPlotData1():
# 2
def addPlotData2():
plot.saveDataT
#PRINTING
from yade import plot
from pprint import pprint
# SIMULATION LOOP
O.engines=[
PyRunner(
PyRunner(
ForceReset
InsertionS
InteractionLoop(
[Ig2_
[Ip2_
[Law2_
),
GlobalStif
NewtonIntegrat
]
#TIME STEP
O.dt=0.
#PLOTTING
plot.plots=
plot.plot()
# SAVE SIMULATION
Question information
- Language:
- English Edit question
- Status:
- Solved
- For:
- Yade Edit question
- Assignee:
- No assignee Edit question
- Solved by:
- Najm
- Solved:
- Last query:
- Last reply: