Re: [Yade-users] [Question #264142]: Law Functor

2015-03-25 Thread Felipe
Question #264142 on Yade changed:
https://answers.launchpad.net/yade/+question/264142

Status: Answered = Open

Felipe is still having a problem:
Hey Jan,

Thank you for answering my question.

I'm really appreciate that.

However, I would like to learn more specific about contact laws.

If you have examples about it, could you send me to learn and also
seeing how you construct in .py?

Cheers,

Felipe

-- 
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


Re: [Yade-users] [Question #264142]: Law Functor

2015-03-25 Thread Jérôme Duriez
Question #264142 on Yade changed:
https://answers.launchpad.net/yade/+question/264142

Status: Open = Answered

Jérôme Duriez proposed the following answer:
Hi,

.py stands for python which is one informatic language, and the one
used for the Yade terminal. Basically, it is a text file obeying to some
syntax (the python one, including all the Yade specific commands), like
any informatic language..

As Jan said, you may find several examples of such python script e.g. in
https://yade-dem.org/doc/tutorial-examples.html, and also inside the
doc (User's manual, etc).

Plus other examples you might find in different places (e.g. on the
internet here : https://github.com/yade/trunk/tree/master/examples, see
also subfolders) depending how you installed Yade.

Jerome

-- 
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp


[Yade-users] [Question #264174]: how is shear force related to poisson ratio?

2015-03-25 Thread Shenyang Cai
New question #264174 on Yade:
https://answers.launchpad.net/yade/+question/264174

Hi all!

I'm stilling studying parameters in CpmMat and FrictMat material types. In 
the posted scipt below,  a sphere labeled s1  is fixed at the origin. Another 
sphere, s2, approaches and overlaps s1, and then moves along the z axis.  
By doing this I want to know how the shear force varies over time between two 
spheres. 

However, I find that changing the poisson ratio from 1 to 20 has no effect on 
the forces along the z axis in these simulations for both the CpmMat and 
FrictMat.  It seems that they are merely the verticle components of normal 
stresses.  

Another question is that when poisson ratio equals zero,  s2 with FrictMat 
would immediately disappear when the simulation starts.  I wonder how this 
happens.




from yade import plot

concreteId = O.materials.append(CpmMat(
young = 1,
frictionAngle = 0,
poisson = 0, #defines poisson ratio
relDuctility = 0,
sigmaT = 0,
epsCrackOnset = 1e-5 #low strain limit,
))

frictId = O.materials.append(FrictMat(
young=1,
frictionAngle = 0,
poisson = 1,
))

s1 = utils.sphere(center = (0,0,0), radius = 0.5, material = concreteId) 
#assigns the material type
s2 = utils.sphere(center = (1,0,0), radius = 0.5, material = concreteId)

O.bodies.append([s1,s2])
s1.state.blockedDOFs = 'xyzXYZ' # holds s1 still

O.engines=[
ForceResetter(),
InsertionSortCollider([Bo1_Sphere_Aabb()], verletDist = 0),
InteractionLoop(
[Ig2_Sphere_Sphere_ScGeom()],
[Ip2_CpmMat_CpmMat_CpmPhys(), 
Ip2_FrictMat_FrictMat_FrictPhys()],
[Law2_ScGeom_CpmPhys_Cpm(), 
Law2_ScGeom_FrictPhys_CundallStrack()],
),
NewtonIntegrator(damping=0.3),
PyRunner(command = 'addPlotData()', iterPeriod = 50),
PyRunner(command = Pushing(), iterPeriod = 1, label = ctr),
]

O.dt=5e-7*utils.PWaveTimeStep()

def addPlotData():
plot.addData(i=O.iter,
 fz = O.forces.f(s2.id)[2], # z component of force
 pz = s2.state.pos[2],  # z coordinate
 fx = O.forces.f(s2.id)[0], # x component of force
 px = s2.state.pos[0],  # x coordinate
 )
 
def Pushing():
s2.state.vel = (-0.1,0,0) #lets s2 overlap s1
if s2.state.pos[0]  0.9:
ctr.command = Pushing2()

def Pushing2():
s2.state.vel = (0,0,0.1) #lets s2 move upward
ctr.command = Stop()

def Stop():
if s2.state.pos[2]  0.5:
O.pause()
plot.saveDataTxt('poisson=0.txt') 

plot.plots = {'px' : ('fx'), 'pz':('fz')}
plot.plot()


Thanks!

-- 
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.

___
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yade-users
More help   : https://help.launchpad.net/ListHelp