← Back to team overview

yade-users team mailing list archive

Re: [Question #269063]: Metallic plate tension

 

Question #269063 on Yade changed:
https://answers.launchpad.net/yade/+question/269063

Jan Stránský proposed the following answer:
Hello Alexander,

I’m new in Yade


welcome :-)

whenever you have a problem, send also a code reproducing your problem
(thanks for sending it without prior notification :-). However, try to send
it like MWE (minimal working example). It should be:
- minimal = short (it is difficult to find mistakes in long pieces of code
and it is usually much more annoying).
- working = before sending, test it to be sure it is working (it has no
syntax errors etc.).
together with above information, send also version of Yade you are using. I
tried your script, but it ended with segmentation fault. It could be
because I am using different version than you and if I knew your version, I
could try it using the correct one.

E.g. in the example you posted (next time) you could choose just one 'mode'
and shorten the saving (see below)

Also in one question, try to concentrate on one thing. Maybe (again next
time) I would ask one question on "what approach is the best for this
simulation" and another "I used this approach, why are the results so
strange?"

So it was some introduction into asking :-)


Now to your problem:
- when showing pictures with stress or strain, please be more specific on
what is plotted (some specific component? some invariant? something else?)
- note that 'young' and 'poisson' are not directly related to macroscopic
Young's modulus and Poisson's ratio. You can find some info in other
questions or documentation.
- could you please specify, what boundary conditions were used for the
pictures you sent?

One of the problem sources could be, that the simulation is run too shortly
and the state is far from quasi-static equilibrium and what you see is some
effect of inertial forces. It can be controlled using unbalancedForce()
function [4], something like (and deoending on the type of your simulation
control):

while unbalancedForce()>1e-2:
  O.run(100,True)



Some notes to the code (not crucial now):

when using interaction radius, it should be reset after the first step
[3]


spheres=[]
> for i in range(0, 16):
> for j in range(0, 16):
> for k in range(0, 2):
> # for spheres which position satisfies condition below set constraint
> material
> if (i == 4 or i == 5 or i == 10 or i == 11) and (j == 4 or j == 5 or j ==
> 10 or j == 11):
> id =
> O.bodies.append(sphere([i+0.5,j+0.5,k+0.5],material='mat_mod',radius=r))
> spheres.append(O.bodies[id])
> else:
> id =
> O.bodies.append(sphere([i+0.5,j+0.5,k+0.5],material='mat_mod',radius=r))
> spheres.append(O.bodies[id])


you can use predefined function for this [1]:

from yade import pack
spheres = pack.regularOrtho(pack.inAlignedBox((0,0,0),(16.1,16.1,2.1)),r,0)
O.bodies.append(spheres)


I didn't use VTKExporter() because at a later stage I'll need another file
> extension to save the result data.


Just FYI (even if you will not use it in the future), to save spheres into
vtk file, you can also use predefined function [2]:

from yade import export
vtk = export.VTKExporter('result')
vtk.exportSpheres(what=[('velocity','b.state.vel'),('displacement','b.state.displ()'),('young','b.mat.young')])
# similarly for stress and strain


good luck using Yade :-)
cheers
Jan

[1] https://yade-dem.org/doc/yade.pack.html#yade.pack.regularOrtho
[2] https://yade-dem.org/doc/yade.export.html#yade.export.VTKExporter
[3] https://yade-dem.org/doc/user.html#creating-interactions
[4] https://yade-dem.org/doc/yade.utils.html#yade._utils.unbalancedForce


2015-07-09 21:26 GMT+02:00 Jérôme Duriez <
question269063@xxxxxxxxxxxxxxxxxxxxx>:

> Question #269063 on Yade changed:
> https://answers.launchpad.net/yade/+question/269063
>
>     Status: Open => Answered
>
> Jérôme Duriez proposed the following answer:
> OK.
> However, as a side note, let me draw to your attention that within DEM
> local stresses, as probably TesselationWrapper strains (I am not familiar
> with it), depend on relative displacements between particles, rather than
> absolute displacements.
>
> So, maybe it is premature to conclude there is something wrong with the
> results shown in your comment #3.
>
> --
> 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@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~yade-users
> More help   : https://help.launchpad.net/ListHelp
>

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