Re: [Yade-users] [Question #695851]: VTKRecorder: Aborted (core dumped) due to "intr" in VTKRecorder

2021-03-03 Thread Janek Kozicki
Question #695851 on Yade changed:
https://answers.launchpad.net/yade/+question/695851

Status: Open => Answered

Janek Kozicki proposed the following answer:
Assertion `numElements > 0' failed.

Looks like you have zero intr, so can't save them :) Make sure that you
have more than zero of them.

-- 
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 #695833]: movment along z axis whiles blockedDOFs= zXY

2021-03-03 Thread Karol Brzezinski
Question #695833 on Yade changed:
https://answers.launchpad.net/yade/+question/695833

Status: Open => Answered

Karol Brzezinski proposed the following answer:
Hi,

I guess that when bodies are clumped you have to constrain the clump,
not the individual bodies. Your condition required material to be
Dolomite, however, only individual bodies has this property.

Try to change your loop starting in line 80 to:

for b in O.bodies:
if b.isClump:
b.state.blockedDOFs='zXY'
b.state.angMom[2]=0
b.state.angVel[2]=0
b.state.vel[2]=0

Cheers,
Karol

-- 
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


[Yade-users] [Question #695851]: VTKRecorder: Aborted (core dumped) due to "intr" in VTKRecorder

2021-03-03 Thread Chien-Cheng Hung
New question #695851 on Yade:
https://answers.launchpad.net/yade/+question/695851

Hi all,

I found that the terminal shows me "python3.5: 
/build/vtk6-YpT4yb/vtk6-6.2.0+dfsg1/IO/XML/vtkXMLOffsetsManager.h:142: void 
OffsetsManagerGroup::Allocate(int, int): Assertion `numElements > 0' failed. 
Aborted (core dumped)" when I put the base recorder "intr" in my VTKRecorder 
engine. The VTKRecorder works fine when there is no "intr" in my recorders. I 
can't figure out why. I've checked the previous question [1], but I don't think 
it's the same issue.

Cheers,
Chien-Cheng

[1] https://answers.launchpad.net/yade/+question/690820
 
My yade version and MWE are provided below. 

Yade version   :  2020-06-23.git-f03a37c
Linux version: Ubuntu 16.04.6 LTS

| library   | cmake| C++ |
| - |  | --- |
| boost | 105800   | 1.58.0  |
| cgal  |  | 4.7 |
| clp   | 1.15.10  | 1.15.10 |
| cmake | 3.5.1| |
| coinutils | 2.9.15   | 2.9.15  |
| compiler  | /usr/bin/c++ 5.4.0   | gcc 5.4.0   |
| eigen | 3.2.92   | 3.2.92  |
| freeglut  | 2.8.1| |
| gl|  | 20171010|
| ipython   | 2.4.1| |
| metis |  | 5.1.0   |
| mpi   |  | ompi:1.10.2 |
| mpi4py| 1.3.1| |
| openblas  |  |  OpenBLAS 0.2.18|
| python| 3.5.2| 3.5.2   |
| qglviewer |  | 2.6.3   |
| qt|  | 5.5.1   |
| sphinx| 1.3.6-final-0| |
| sqlite|  | 3.11.0  |
| suitesparse   | 4.4.6| 4.4.6   |
| vtk   | 6.2.0| 6.2.0   |

### MWE

readParamsFromTable(
a=5,
b=5,
c=5,
SN=5.e6,
coeff=0.1,
RATE_NS1=0.1,
RATE_NS2=100,   #original 0.1
RATE_shear=1,
TSSC=0.8,
shearStrain=0.5,
Ystep=10,
OUT='frictionlessWall_Hertz_uniform_test'
)

from yade.params.table import *
from yade import pack,plot,export
import numpy as np
import math

sp1=pack.SpherePack()
sp2=pack.SpherePack()
sp3=pack.SpherePack()

O.periodic=True

# dimensions of sample (fixed by particle size such as L/D~15)
RADIUS1=0.25# determine packing size 
RADIUS2=0.125   # determine particle size

length=a*(2*RADIUS1)
height=b*(2*RADIUS1)
width=c*(2*RADIUS1)
thickness=RADIUS1

### Guassian distribution
psdSizes1=[.000456,.000500,.000544]
psdSizes2=[.000228,.000250,.000272]
psdCumm=[0,0.5,1]

### PSD2.6
#psdSizes=[.625,.6251,.000125,.00012501,.00025,.00025001,.0005,.00050001]
#psdCumm=[0,.835770529,.835770529,.973753281,.973753281,.996250469,.996250469,1]

# friction angles 
wallFRIC=0
boundaryFRIC=0.5 # during compaction (controls porosity)
spFRIC=0.5

# boundary conditions
PI=1.e5
SN=SN # normal stress
RATE_NS1=RATE_NS1 # velocity of top plate during compaction
RATE_NS2=RATE_NS2 # velocity of top plate during shear
RATE_shear=RATE_shear # shear velocity
roll_stiff=0
roll_fric=0

# simulation control
DAMPSHEAR=0.
ITER=2e5
OUT=OUT

# microproperties

O.cell.hSize=Matrix3(length,0,0,0,3*height,0,0,0,width)

O.materials.append(FrictMat(density=2500,young=5.5e10,poisson=0.25,frictionAngle=wallFRIC,label='boxMat'))
O.materials.append(FrictMat(density=2500,young=5.5e10,poisson=0.25,frictionAngle=boundaryFRIC,label='boundaryMat'))
O.materials.append(FrictMat(density=2500,young=5.5e10,poisson=0.25,frictionAngle=spFRIC,label='sphereMat'))

upBox = 
utils.box(center=(length/2,2*height+thickness,1.5*width),orientation=Quaternion(1,0,0,0),extents=(2*length,thickness/2,width),fixed=1,wire=False,color=(1,0,0),material='boxMat')
lowBox = 
utils.box(center=(length/2,height-thickness,1.5*width),orientation=Quaternion(1,0,0,0),extents=(2*length,thickness/2,width),fixed=1,wire=False,color=(1,0,0),material='boxMat')

O.bodies.append([upBox,lowBox])

sp1.makeCloud((0,height+1*RADIUS1,width),(length,2*height-1*RADIUS1,2*width), 
rMean=RADIUS2, periodic=True, seed =1)
sp2.makeCloud((0,height+0.1*thickness,width),(length,height+0.1*thickness-1e-10,2*width),
 rMean=RADIUS2, periodic=True, seed =1)
sp3.makeCloud((0,2*height-0.1*RADIUS1,width),(length,2*height-0.1*RADIUS1-1e-10,2*width),
 rMean=RADIUS2, periodic=True, seed =1)

sphere_id = 
O.bodies.append([utils.sphere(s[0],s[1],color=(0,0,1),material='sphereMat') for 
s in sp1])

bottomLayer_id = 
O.bodies.append([utils.sphere(s[0],s[1],color=(1,0,1),material='boundaryMat') 
for s in sp2])

topLayer_id = 
O.bodies.append([u

Re: [Yade-users] [Question #695833]: movment along z axis whiles blockedDOFs= zXY

2021-03-03 Thread Bruno Chareyre

Hi,

> O.engines= 
O.engines+[PyRunner(virtPeriod=0.02,command='ZSpeed()',label="ZSpeed")]


After this line there is a function named "ZSpeed" as well as an engine 
called "ZSpeed". It sounds a bit dangerous, though I'm not sure it is 
the issue.


Bruno


___
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 #695833]: movment along z axis whiles blockedDOFs= zXY

2021-03-03 Thread Mahdeyeh
Question #695833 on Yade changed:
https://answers.launchpad.net/yade/+question/695833

Description changed to:
Dear All,
I have a problem in simulating clumps spherical particles' gravity deposition 
in 2D. I use:
b.state.blockedDOFs='zXY'
b.state.angMom[2]=0
b.state.angVel[2]=0
b.state.vel[2]=0

to fix all the particles in Z plane. But I found that, particle moves
along Z axis and when check it in  simulation inspection window (in
Bodies), I see blockedDOFs is without any value and linear velocity for
Z has value.

ubuntu : 18.04
yade 2018.02b

this is minimum of my code:


from yade import export,polyhedra_utils
import os
from yade import plot
import math
from yade import utils
import pylab
import matplotlib; matplotlib.rc('axes',grid=True)
from matplotlib import pyplot
from yade import qt
import numpy as np
from numpy import *
from yade import export as expt


Dolomite = FrictMat()
Dolomite.density = 2870 #kg/m^3 
Dolomite.young = 24.36e9 #Pa 
Dolomite.poisson = 0.2
Dolomite.frictionAngle = radians(55.12) #rad

Bound = FrictMat()
Bound.density = 2870 #kg/m^3 
Bound.young = 60e10 #Pa 
Bound.poisson = 0.2
Bound.frictionAngle = radians(55.12) #rad



v1=((-6.4993,-0.01,2),(-2,-0.01,2),(-6.4993,-0.01,-2))
v2=((-2,-0.01,2),(-2,-0.01,-2),(-6.4993,-0.01,-2))
v3=((-1.99,-0.01,2),(-1.99,-0.01,-2),(-1,-0.01,2))
v4=((-1,-0.01,2),(-1,-0.01,-2),(-1.99,-0.01,-2))
v5=((-0.99,-0.01,2),(-0.99,-0.01,-2),(1,-0.01,2))
v6=((1,-0.01,2),(1,-0.01,-2),(-0.99,-0.01,-2))
v7=((1.01,-0.01,2),(1.01,-0.01,-2),(2,-0.01,2))
v8=((2,-0.01,2),(2,-0.01,-2),(1.01,-0.01,-2))
v9=((2.01,-0.01,2),(2.01,-0.01,-2),(3,-0.01,2))
v10=((3,-0.01,2),(3,-0.01,-2),(2.01,-0.01,-2))
v11=((3.01,-0.01,2),(3.01,-0.01,-2),(4.58,-0.01,2))
v12=((4.58,-0.01,2),(4.58,-0.01,-2),(3.01,-0.01,-2))
v13=((4.7,0.0059,2),(5.3,0.93,2),(4.7,0.0059,-2))
v14=((5.3,0.93,2),(5.3,0.93,-2),(4.7,0.0059,-2))
v15=((5.3,0.94,2),(5.3,0.94,-2),(6.47,2.57,2))
v16=((6.47,2.57,2),(6.47,2.57,-2),(5.3,0.94,-2))
v17=((6.47,2.58,2),(6.47,2.58,-2),(6.85,3.01,2))
v18=((6.85,3.01,2),(6.85,3.01,-2),(6.47,2.58,-2))


O.bodies.append(utils.facet(v1,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v2,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v3,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v4,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v5,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v6,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v7,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v8,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v9,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v10,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v11,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v12,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v13,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v14,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v15,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v16,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v17,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v18,color=(1,0,1), material=Bound))


rad = 0.2
O.materials.append(FrictMat(young=24.36e9,density=2870))


IDs=O.bodies.append([
  utils.sphere(center=(rad,2,3.5*rad),radius=rad, material=Dolomite),
  utils.sphere(center=(rad,10.75*rad,3.5*rad),radius=rad, material=Dolomite),
  utils.sphere(center=(1.75*rad,2,3.5*rad),radius=rad, material=Dolomite),
  utils.sphere(center=(1.75*rad,10.75*rad,3.5*rad),radius=rad, 
material=Dolomite),
  utils.sphere(center=(rad,2,3*rad),radius=rad, material=Dolomite),
  utils.sphere(center=(rad,10.75*rad,3*rad),radius=rad, material=Dolomite),
  utils.sphere(center=(1.75*rad,2,3*rad),radius=rad, material=Dolomite),
  utils.sphere(center=(1.75*rad,10.75*rad,3*rad),radius=rad, material=Dolomite),
  ])

O.bodies.clump(IDs)


# block z translation and block x, y rotations
for b in O.bodies:
if b.material is Dolomite:
b.state.blockedDOFs='zXY'
b.state.angMom[2]=0
b.state.angVel[2]=0
b.state.vel[2]=0


def checkUnbalanced():   
print "iter %d , unbalanced forces %f"%(O.iter, utils.unbalancedForce())  # 
%[(keyname)][flags][width][.precision]typecode : String Formatting  
iter00=O.iter
Unbalanced=open("Unbalanced iter Unbalanced forces.txt","a")
Unbalanced.write(repr(iter00)+' '+repr(utils.unbalancedForce())+'   
'+"\n")
Unbalanced.close()

def angVel():
for c in O.bodies:
if c.state.angVel!=(0,0,0) or c.state.angMom!=(0,0,0):
s1=c.id
s2=O.iter
s3=O.realtime
s4=c.state.angVel
s5=c.state.angMom
angVel=open("particle iter realtime angVel angMom.txt","a")
angVel.write(repr(s1)+' '+repr(s2)+''+repr(s3)+'
'+repr(s4)+''+repr(s5)+''+"\n")
angVel.close(

[Yade-users] [Question #695833]: movment along z axis whiles blockedDOFs= zXY

2021-03-03 Thread Mahdeyeh
New question #695833 on Yade:
https://answers.launchpad.net/yade/+question/695833

Dear All,
I have a problem in simulating clumps spherical particles' gravity deposition 
in 2D. I use:
b.state.blockedDOFs='zXY'
b.state.angMom[2]=0
b.state.angVel[2]=0
b.state.vel[2]=0

to fix all the particles in Z plane. But I found that, particle moves along Z 
axis and when check it in  simulation inspection window (in Bodies), I see 
blockedDOFs is without any value and linear velocity for Z has value.

this is minimum of my code:


from yade import export,polyhedra_utils
import os
from yade import plot
import math
from yade import utils
import pylab
import matplotlib; matplotlib.rc('axes',grid=True)
from matplotlib import pyplot
from yade import qt
import numpy as np
from numpy import *
from yade import export as expt


Dolomite = FrictMat()
Dolomite.density = 2870 #kg/m^3 
Dolomite.young = 24.36e9 #Pa 
Dolomite.poisson = 0.2
Dolomite.frictionAngle = radians(55.12) #rad

Bound = FrictMat()
Bound.density = 2870 #kg/m^3 
Bound.young = 60e10 #Pa 
Bound.poisson = 0.2
Bound.frictionAngle = radians(55.12) #rad




v1=((-6.4993,-0.01,2),(-2,-0.01,2),(-6.4993,-0.01,-2))
v2=((-2,-0.01,2),(-2,-0.01,-2),(-6.4993,-0.01,-2))
v3=((-1.99,-0.01,2),(-1.99,-0.01,-2),(-1,-0.01,2))
v4=((-1,-0.01,2),(-1,-0.01,-2),(-1.99,-0.01,-2))
v5=((-0.99,-0.01,2),(-0.99,-0.01,-2),(1,-0.01,2))
v6=((1,-0.01,2),(1,-0.01,-2),(-0.99,-0.01,-2))
v7=((1.01,-0.01,2),(1.01,-0.01,-2),(2,-0.01,2))
v8=((2,-0.01,2),(2,-0.01,-2),(1.01,-0.01,-2))
v9=((2.01,-0.01,2),(2.01,-0.01,-2),(3,-0.01,2))
v10=((3,-0.01,2),(3,-0.01,-2),(2.01,-0.01,-2))
v11=((3.01,-0.01,2),(3.01,-0.01,-2),(4.58,-0.01,2))
v12=((4.58,-0.01,2),(4.58,-0.01,-2),(3.01,-0.01,-2))
v13=((4.7,0.0059,2),(5.3,0.93,2),(4.7,0.0059,-2))
v14=((5.3,0.93,2),(5.3,0.93,-2),(4.7,0.0059,-2))
v15=((5.3,0.94,2),(5.3,0.94,-2),(6.47,2.57,2))
v16=((6.47,2.57,2),(6.47,2.57,-2),(5.3,0.94,-2))
v17=((6.47,2.58,2),(6.47,2.58,-2),(6.85,3.01,2))
v18=((6.85,3.01,2),(6.85,3.01,-2),(6.47,2.58,-2))



O.bodies.append(utils.facet(v1,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v2,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v3,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v4,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v5,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v6,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v7,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v8,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v9,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v10,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v11,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v12,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v13,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v14,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v15,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v16,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v17,color=(1,0,1), material=Bound))
O.bodies.append(utils.facet(v18,color=(1,0,1), material=Bound))



rad = 0.2
O.materials.append(FrictMat(young=24.36e9,density=2870))


IDs=O.bodies.append([
  utils.sphere(center=(rad,2,3.5*rad),radius=rad, material=Dolomite),
  utils.sphere(center=(rad,10.75*rad,3.5*rad),radius=rad, material=Dolomite),
  utils.sphere(center=(1.75*rad,2,3.5*rad),radius=rad, material=Dolomite),
  utils.sphere(center=(1.75*rad,10.75*rad,3.5*rad),radius=rad, 
material=Dolomite),
  utils.sphere(center=(rad,2,3*rad),radius=rad, material=Dolomite),
  utils.sphere(center=(rad,10.75*rad,3*rad),radius=rad, material=Dolomite),
  utils.sphere(center=(1.75*rad,2,3*rad),radius=rad, material=Dolomite),
  utils.sphere(center=(1.75*rad,10.75*rad,3*rad),radius=rad, material=Dolomite),
  ])

O.bodies.clump(IDs)


# block z translation and block x, y rotations
for b in O.bodies:
if b.material is Dolomite:
b.state.blockedDOFs='zXY'
b.state.angMom[2]=0
b.state.angVel[2]=0
b.state.vel[2]=0


def checkUnbalanced():   
print "iter %d , unbalanced forces %f"%(O.iter, utils.unbalancedForce())  # 
%[(keyname)][flags][width][.precision]typecode : String Formatting  
iter00=O.iter
Unbalanced=open("Unbalanced iter Unbalanced forces.txt","a")
Unbalanced.write(repr(iter00)+' '+repr(utils.unbalancedForce())+'   
'+"\n")
Unbalanced.close()

def angVel():
for c in O.bodies:
if c.state.angVel!=(0,0,0) or c.state.angMom!=(0,0,0):
s1=c.id
s2=O.iter
s3=O.realtime
s4=c.state.angVel
s5=c.state.angMom
angVel=open("particle iter realtime angVel angMom.txt","a")
angVel.write(repr(s1)+' '+repr(s2)+''+repr(s3)+'
'+repr(s4)+''+repr(s5)+''+"\n")
angVel.close() 

# Engines:  

O.engines=[
   ForceRes