Re: [Yade-users] [Question #695851]: VTKRecorder: Aborted (core dumped) due to "intr" in VTKRecorder
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
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
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
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
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
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