Re: [Yade-users] [Question #656538]: Measuring Force, Trapdoor displacement and Surface displacement

2017-08-24 Thread Jan Stránský
Question #656538 on Yade changed:
https://answers.launchpad.net/yade/+question/656538

Status: Open => Answered

Jan Stránský proposed the following answer:
I meant complete code..

> Yade [1]: ERROR 
> /build/yade-iRsyM_/yade-2016.06a/pkg/common/InsertionSortCollider.cpp:240 
> action: verletDist is set to 0 because no spheres were found. It will result 
> in suboptimal performances, consider setting a positive verletDist in your 
> script.
import yade.plot; yade.plot.plot();

this is actually no error

The other IndexErrors: I think you should define plot.plots [1,2] before
plot.plot(), will check tomorrow with computer.

Jan

[1] https://yade-dem.org/doc/user.html#plotting-variables
[2] https://yade-dem.org/doc/yade.plot.html#yade.plot.plots

-- 
You received this question notification because your team yade-users 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 #656538]: Measuring Force, Trapdoor displacement and Surface displacement

2017-08-24 Thread wise dan
Question #656538 on Yade changed:
https://answers.launchpad.net/yade/+question/656538

Status: Needs information => Open

wise dan gave more information on the question:
This is the code please :

###
##
# INPUTS
##
gravity = 100

# box dimensions
widthl = .3
widthr = .3
widthc = .3
height = .3
thick = .1
deep = -.2

# size of grains
sizeMin = 40e-3
sizeMax = 60e-3

frictionAngle = .5
young = 1e8 # stiffness

dt = 1e-3 # time step

nGravityDeposition = 250 # how long to run initial gravity deposition
nCycles = 3 # how many jumps to run afterwards
nStepsBetweenCycles = 200 # number of time steps between jumps
dspl = 20e-3

# how much larger the initial make cloud box should be
fillBoxHFactor = 3
##
from yade import polyhedra_utils

width = widthl+widthc+widthr

# mat, engines, ...
mat = PolyhedraMat(young=young,poisson=10,frictionAngle=frictionAngle)
O.materials.append(mat)
O.engines=[
   ForceResetter(),
   InsertionSortCollider([Bo1_Polyhedra_Aabb(),Bo1_Facet_Aabb()]),
   InteractionLoop(
  [Ig2_Polyhedra_Polyhedra_PolyhedraGeom(), 
Ig2_Facet_Polyhedra_PolyhedraGeom()],
  [Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys()],
  [Law2_PolyhedraGeom_PolyhedraPhys_Volumetric()],
   ),
   NewtonIntegrator(damping=0.4,gravity=(0,0,-gravity)),
 PyRunner(iterPeriod=1,command='checker()'),
]
O.dt = dt
def checker():
 for i in range(nCycles):
  ii = nGravityDeposition+i*nStepsBetweenCycles
  if O.iter == ii:
   moveBottom()
  if O.iter == ii+1:
   stopBottom()
 if O.iter == nGravityDeposition+nCycles*nStepsBetweenCycles:
  O.pause()
def moveBottom():
 v = dspl / O.dt
 for b in movables:
  b.state.vel = (0,0,-v)
def stopBottom():
 for b in movables:
  b.state.vel = (0,0,0)

# box
p000 = Vector3(0,0,0)
p100 = Vector3(widthl,0,0)
p200 = Vector3(widthl+widthc,0,0)
p300 = Vector3(widthl+widthc+widthr,0,0)
pxs = (p000,p100,p200,p300)
p001,p101,p201,p301 = [p+Vector3(0,0,height) for p in pxs]
p010,p110,p210,p310 = [p+Vector3(0,thick,0) for p in pxs]
p011,p111,p211,p311 = [p+Vector3(0,thick,height) for p in pxs]
p00b,p10b,p20b,p30b = [p+Vector3(0,0,deep) for p in pxs]
p01b,p11b,p21b,p31b = [p+Vector3(0,thick,deep) for p in pxs]
def rect(vs,**kw):
 v1,v2,v3,v4 = vs
 return [
  facet((v1,v2,v3),**kw),
  facet((v1,v3,v4),**kw),
 ]
movables = rect((p100,p200,p210,p110)) # bottom center
rects = (
 (p000,p100,p110,p010), # bottom left
 (p200,p300,p310,p210), # bottom left
 (p000,p010,p011,p001), # left
 (p300,p310,p311,p301), # right
 (p000,p100,p101,p001), # front left
 (p100,p200,p201,p101), # front center
 (p200,p300,p301,p201), # front right
 (p010,p110,p111,p011), # back left
 (p110,p210,p211,p111), # back center
 (p210,p310,p311,p211), # back right
 (p100,p200,p20b,p10b), # front center below
 (p110,p210,p21b,p11b), # back center below
 (p100,p110,p11b,p10b), # left below
 (p200,p210,p21b,p20b), # right below
)
rects = movables + sum((rect(r) for r in rects),[])
O.bodies.append(rects)

# gravel
polyhedra_utils.fillBox((0,0,0),(width,thick,fillBoxHFactor*height),mat,sizemin=3*[sizeMin],sizemax=3*[sizeMax],seed=1)
###
#to record the values

#O.forces.f(id)
#sum((O.forces.f(id) for id in ids), Vector3.Zero)
#
#f = Vector3.Zero
#for i in ids:
#   f += O.forces.f(i)

middle = 0,1
lef= 2,3
right = 4,5

#trapdoor.state.displ()
O.bodies[1].state.displ()

##
for b in O.bodies:
   if not isinstance(b.shape,Polyhedra): continue
   pos = b.state.pos # center of polyhedron
   ori = b.state.ori
   vs = b.shape.v
   vs = [pos + ori*v for v in vs] # vertices of polyhedron in global coordinate 
system
##

-- 
You received this question notification because your team yade-users 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 #656538]: Measuring Force, Trapdoor displacement and Surface displacement

2017-08-24 Thread wise dan
Question #656538 on Yade changed:
https://answers.launchpad.net/yade/+question/656538

wise dan gave more information on the question:
And this is the error:

wise@wise-CM6330-CM6630-CM6730-CM6830-M11AA-8:~/wise$ yade nanawise.py 
Welcome to Yade 2016.06a 
TCP python prompt on localhost:9000, auth cookie `ssaduc'
XMLRPC info provider on http://localhost:21000
Running script nanawise.py
generated 136 polyhedrons
[[ ^L clears screen, ^U kills line. F12 controller, F11 3d view (use h-key for 
showing help), F10 both, F9 generator, F8 plot. ]]

Yade [1]: ERROR 
/build/yade-iRsyM_/yade-2016.06a/pkg/common/InsertionSortCollider.cpp:240 
action: verletDist is set to 0 because no spheres were found. It will result in 
suboptimal performances, consider setting a positive verletDist in your script.
import yade.plot; yade.plot.plot();
^[[19~^[[19~^[[19~^[[19~---
IndexErrorTraceback (most recent call last)
/usr/bin/yade in ()
> 1 import yade.plot; yade.plot.plot();

/usr/lib/x86_64-linux-gnu/yade/py/yade/plot.py in plot(noShow, subPlots)
593 global currLineRefs
594 figs=set([l.line.axes.get_figure() for l in currLineRefs])
--> 595 if not hasattr(list(figs)[0],'show') and not noShow:
596 import warnings
597 warnings.warn('plot.plot not showing figure (matplotlib 
using headless backend?)')

IndexError: list index out of range

Yade [2]: import yade.plot; yade.plot.plot();
---
IndexErrorTraceback (most recent call last)
/usr/bin/yade in ()
> 1 import yade.plot; yade.plot.plot();

/usr/lib/x86_64-linux-gnu/yade/py/yade/plot.py in plot(noShow, subPlots)
593 global currLineRefs
594 figs=set([l.line.axes.get_figure() for l in currLineRefs])
--> 595 if not hasattr(list(figs)[0],'show') and not noShow:
596 import warnings
597 warnings.warn('plot.plot not showing figure (matplotlib 
using headless backend?)')

IndexError: list index out of range

-- 
You received this question notification because your team yade-users 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 #656538]: Measuring Force, Trapdoor displacement and Surface displacement

2017-08-24 Thread Jan Stránský
Question #656538 on Yade changed:
https://answers.launchpad.net/yade/+question/656538

Status: Open => Needs information

Jan Stránský requested more information:
please post your code here and also the errors you get
thanks
Jan

-- 
You received this question notification because your team yade-users 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 #656538]: Measuring Force, Trapdoor displacement and Surface displacement

2017-08-24 Thread wise dan
Question #656538 on Yade changed:
https://answers.launchpad.net/yade/+question/656538

Status: Answered => Open

wise dan is still having a problem:

I tried to put all together but got a lot of errors. I am new to python and 
yade now still learning but have to complete this project for my these, I will 
be very grateful if you can help me identify and correct the errors, please. 
Thanks 

###
##
# INPUTS
##
gravity = 100

# box dimensions
widthl = .3
widthr = .3
widthc = .3
height = .3
thick = .1
deep = -.2

# size of grains
sizeMin = 40e-3
sizeMax = 60e-3

frictionAngle = .5
young = 1e8 # stiffness

dt = 1e-3 # time step

nGravityDeposition = 250 # how long to run initial gravity deposition
nCycles = 3 # how many jumps to run afterwards
nStepsBetweenCycles = 200 # number of time steps between jumps
dspl = 20e-3

# how much larger the initial make cloud box should be
fillBoxHFactor = 3
##
from yade import polyhedra_utils

width = widthl+widthc+widthr

# mat, engines, ...
mat = PolyhedraMat(young=young,poisson=10,frictionAngle=frictionAngle)
O.materials.append(mat)
O.engines=[
   ForceResetter(),
   InsertionSortCollider([Bo1_Polyhedra_Aabb(),Bo1_Facet_Aabb()]),
   InteractionLoop(
  [Ig2_Polyhedra_Polyhedra_PolyhedraGeom(), 
Ig2_Facet_Polyhedra_PolyhedraGeom()],
  [Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys()],
  [Law2_PolyhedraGeom_PolyhedraPhys_Volumetric()],
   ),
   NewtonIntegrator(damping=0.4,gravity=(0,0,-gravity)),
 PyRunner(iterPeriod=1,command='checker()'),
]
O.dt = dt
def checker():
 for i in range(nCycles):
  ii = nGravityDeposition+i*nStepsBetweenCycles
  if O.iter == ii:
   moveBottom()
  if O.iter == ii+1:
   stopBottom()
 if O.iter == nGravityDeposition+nCycles*nStepsBetweenCycles:
  O.pause()
def moveBottom():
 v = dspl / O.dt
 for b in movables:
  b.state.vel = (0,0,-v)
def stopBottom():
 for b in movables:
  b.state.vel = (0,0,0)

# box
p000 = Vector3(0,0,0)
p100 = Vector3(widthl,0,0)
p200 = Vector3(widthl+widthc,0,0)
p300 = Vector3(widthl+widthc+widthr,0,0)
pxs = (p000,p100,p200,p300)
p001,p101,p201,p301 = [p+Vector3(0,0,height) for p in pxs]
p010,p110,p210,p310 = [p+Vector3(0,thick,0) for p in pxs]
p011,p111,p211,p311 = [p+Vector3(0,thick,height) for p in pxs]
p00b,p10b,p20b,p30b = [p+Vector3(0,0,deep) for p in pxs]
p01b,p11b,p21b,p31b = [p+Vector3(0,thick,deep) for p in pxs]
def rect(vs,**kw):
 v1,v2,v3,v4 = vs
 return [
  facet((v1,v2,v3),**kw),
  facet((v1,v3,v4),**kw),
 ]
movables = rect((p100,p200,p210,p110)) # bottom center
rects = (
 (p000,p100,p110,p010), # bottom left
 (p200,p300,p310,p210), # bottom left
 (p000,p010,p011,p001), # left
 (p300,p310,p311,p301), # right
 (p000,p100,p101,p001), # front left
 (p100,p200,p201,p101), # front center
 (p200,p300,p301,p201), # front right
 (p010,p110,p111,p011), # back left
 (p110,p210,p211,p111), # back center
 (p210,p310,p311,p211), # back right
 (p100,p200,p20b,p10b), # front center below
 (p110,p210,p21b,p11b), # back center below
 (p100,p110,p11b,p10b), # left below
 (p200,p210,p21b,p20b), # right below
)
rects = movables + sum((rect(r) for r in rects),[])
O.bodies.append(rects)

# gravel
polyhedra_utils.fillBox((0,0,0),(width,thick,fillBoxHFactor*height),mat,sizemin=3*[sizeMin],sizemax=3*[sizeMax],seed=1)
###
#to record the values

O.forces.f(id)
sum((O.forces.f(id) for id in ids), Vector3.Zero)
#
#f = Vector3.Zero
#for i in ids:
#   f += O.forces.f(i)

middle= 0,1
left = 2,3
right =  4,5

trapdoor.state.displ()
#O.bodies[1].state.displ()

##
for b in O.bodies:
   if not isinstance(b.shape,Polyhedra): continue
   pos = b.state.pos # center of polyhedron
   ori = b.state.ori
   vs = b.shape.v
   vs = [pos + ori*v for v in vs] # vertices of polyhedron in global coordinate 
system
##

-- 
You received this question notification because your team yade-users 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 #656538]: Measuring Force, Trapdoor displacement and Surface displacement

2017-08-24 Thread wise dan
Question #656538 on Yade changed:
https://answers.launchpad.net/yade/+question/656538

wise dan posted a new comment:
thank you

-- 
You received this question notification because your team yade-users 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 #656214]: problem replacing TriaxialStressController with PeriTriaxController

2017-08-24 Thread Bruno Chareyre
Question #656214 on Yade changed:
https://answers.launchpad.net/yade/+question/656214

Bruno Chareyre posted a new comment:
>I had to increase the maxstrainrate to 1e10 and run 500,000 steps but
it compresses!

I'm sure there is a simple reason for that. Is the maxstrainrate value really 
reached? 
If not, I would first try to decrease "compressor.mass".

Also, I don't remember if O.dt=PWaveTimeStep() is accurate for clumps.
Is it a problem if O.dt is multiplied by 3 for instance?

Bruno

-- 
You received this question notification because your team yade-users 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 #655422]: On shearing loads

2017-08-24 Thread Launchpad Janitor
Question #655422 on Yade changed:
https://answers.launchpad.net/yade/+question/655422

Status: Open => Expired

Launchpad Janitor expired the question:
This question was expired because it remained in the 'Open' state
without activity for the last 15 days.

-- 
You received this question notification because your team yade-users 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