yade-users team mailing list archive
-
yade-users team
-
Mailing list archive
-
Message #09699
[Question #249669]: material damping
New question #249669 on Yade:
https://answers.launchpad.net/yade/+question/249669
Hello all,
I am trying to investigate the damping effect using restitution coefficients among the different materials.
When I examined the resitution coefficient between the wall and the sphere, it behaved as I expected.
However, when I created five spheres in a column on the bottom of wall and generate the kinetic enegy using a free fall sphere, the force on each sphere is a little bit strange for me.
I thought the force on each sphere should be decreased from the top to bottom by the damping parameter but one of the spheres was out of trend.
Also, I expected the force on each sphere should be dissipated 1/2 from the previous force because I set up the resttitution coefficient between soil and soil equal to 0.5. In case of kinetic energy, it should be decreased 1/4.
However, it does not follow that way.
Can somone please let me know what it is going on?
Thank you for your help.
here is the scirpt that I am using:
from yade import pack, plot, geom, export, ymport,qt
import math, numpy
r = 0.001 #particle radius, meter
#define material properties#
rainId=O.materials.append(FrictMat(young=1e6,poisson=0.4,frictionAngle=radians(30),density=2650.0,label='water'))
soilId=O.materials.append(FrictMat(young=1e6,poisson=0.4,frictionAngle=radians(30),density=2650.0,label='soil'))
#create spheres#
O.bodies.append([
utils.sphere(center=(0,0,r),radius=r,fixed=False,material='soil'),
utils.sphere(center=(0,0,3*r),radius=r,fixed=False,material='soil'),
utils.sphere(center=(0,0,5*r),radius=r,fixed=False,material='soil'),
utils.sphere(center=(0,0,7*r),radius=r,fixed=False,material='soil'),
utils.sphere(center=(0,0,9*r),radius=r,fixed=False,material='soil'),
])
bid=O.bodies.append(utils.sphere(center=(0,0,13*r),radius=r,fixed=False,material='water')) #set the raindrop properties
O.bodies[bid].state.vel=(0,0,-4.5) #terminal velocity
O.bodies[bid].shape.color=(0,0,1)
w
wallId=O.materials.append(FrictMat(young=1e6,poisson=0.4,frictionAngle=radians(30),density=2650.0,label='wall')) #set the wall properties
mn,mx = utils.aabbExtrema()
Xmin = mn[0]
Ymin = mn[1]
Zmin = mn[2]
Xmax = mx[0]
Ymax = mx[1]
Zmax = mx[2]
O.bodies.append(utils.wall((0,0,0),axis=2,sense=1,material='wall')) #create the bottom of wall
newton=NewtonIntegrator(damping=0.0,gravity=(0,0,-9.81)) #set zero damping to investigate the effect of en and es
O.engines=[
ForceResetter(),
InsertionSortCollider([Bo1_Sphere_Aabb(),Bo1_Box_Aabb(),Bo1_Facet_Aabb(),Bo1_Wall_Aabb()]),
InteractionLoop(
[Ig2_Sphere_Sphere_ScGeom(),Ig2_Box_Sphere_ScGeom(),Ig2_Wall_Sphere_ScGeom(),Ig2_Facet_Sphere_ScGeom()],
[Ip2_FrictMat_FrictMat_MindlinPhys(
en=MatchMaker(matches=((rainId,rainId,0.01),(rainId,soilId,0.3),(rainId,wallId,0.01),(soilId,soilId,0.5),(soilId,wallId,0.01),(wallId,wallId,0.01))),
es=MatchMaker(matches=((rainId,rainId,0.01),(rainId,soilId,0.3),(rainId,wallId,0.01),(soilId,soilId,0.5),(soilId,wallId,0.01),(wallId,wallId,0.01))))],
[Law2_ScGeom_MindlinPhys_Mindlin()]
),
PyRunner(iterPeriod=100,command='addPlotData()'),
PyRunner(command='checkKEnergy()',iterPeriod=100),
newton
]
O.dt=5.e-5*utils.PWaveTimeStep()
O.trackEnergy = True
def checkKEnergy():
global f0,f1,f2,f3,f4,f5
ke = kineticEnergy()
f0 = O.forces.f(0)
f1 = O.forces.f(1)
f2 = O.forces.f(2)
f3 = O.forces.f(3)
f4 = O.forces.f(4)
f5 = O.forces.f(5)
def addPlotData():
f0 = O.forces.f(0)
f1 = O.forces.f(1)
f2 = O.forces.f(2)
f3 = O.forces.f(3)
f4 = O.forces.f(4)
f5 = O.forces.f(5)
plot.addData(i=O.iter,f0forces=f0[2],f1forces=f1[2],f2forces=f2[2],f3forces=f3[2],f4forces=f4[2],f5forces=f5[2])
plot.saveDataTxt(O.tags['id']+'.txt')
#display the force on the sphere
plot.plots={'i':('f0forces','f1forces','f2forces','f3forces','f4forces','f5forces',)}
plot.plot()
plot.live=True
plot.autozoom=True
qt.View()
O.run()
--
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.