Re: [Yade-users] [Question #293445]: Polyhedra Elements, Infinite Loop.
Question #293445 on Yade changed: https://answers.launchpad.net/yade/+question/293445 Status: Open => Answered Jan Stránský proposed the following answer: Hi Mike, according to PolyhedraVolumetricLaw (which was renamed to Law2_PolyhedraGeom_PolyhedraPhys_Volumetric), it seems you have an older version of Yade. Since then, there were some changes in polyhedra code. Is it possible for you to try the script with some newer version? cheers Jan 2016-05-08 8:57 GMT+02:00 MikeZhao : > New question #293445 on Yade: > https://answers.launchpad.net/yade/+question/293445 > > I have been working on building finite-discrete element model to simulate > fracture generation, and polyhedra elements in yade are used for DEM. > > After several steps, it seems that an infinite loop occurs when > yade.O.step() is called. I want to trace back to the source of this bug, > but it seems O.step() has called several functions in boost library, and it > is hard for me to understand what codes in Yade are involved for O.step(). > > Could you please give me some advice on locating this bug? It will be very > helpful if someone can tell my what codes in Yade are called for O.step(). > > By the way, the engine I used is as following: > O.engines = [ > ForceResetter(), > InsertionSortCollider([Bo1_Polyhedra_Aabb()]), > InteractionLoop( > [Ig2_Polyhedra_Polyhedra_PolyhedraGeom()], > [Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys()], > [PolyhedraVolumetricLaw()] > ), > NewtonIntegrator(damping=0), > ] > > -- > 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 > -- 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 #293445]: Polyhedra Elements, Infinite Loop.
Question #293445 on Yade changed: https://answers.launchpad.net/yade/+question/293445 Anton Gladky proposed the following answer: You can try yadedaily which is updating permanently now for most supported Debian-based distributions. Best regards Anton -- 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 #293295]: Want to connect all the particles in an aggregate using cohesive bond
Question #293295 on Yade changed: https://answers.launchpad.net/yade/+question/293295 Status: Open => Answered Jan Stránský proposed the following answer: Hi Varun, I see the main problem in how to correctly create cohesive interactions between particles with CohFrictMat. Unfortunately, I am not familiar with this model. You have to wait for somebody experienced with the model :-) or you can search CohFrictMat in previous questions [1].. cheers Jan [1] https://answers.launchpad.net/yade 2016-05-04 23:42 GMT+02:00 VG : > New question #293295 on Yade: > https://answers.launchpad.net/yade/+question/293295 > > Hello everyone, > > Here is a description of the problem I am trying to solve: > > -- I have a granular sample with spherical particles of diameters D1, D2, > D3 etc. All of such big particles (lets call them agglomerates) are > composed of smaller particles of diameter 'd', since d is the smallest > particle size of interest. > > -- Initially, within each big spherical particle, all the smaller > particles should be densely packed and connected with cohesive bonds > (CohFrictMat). As the loading is applied, the initially defined cohesive > bonds within each big sphere will break progressively leading to smaller > fragments. > > Now, the problem I am facing: Initially, within a single big sphere > itself, sometimes there are particles which are shown not to have any > cohesive interaction, leaving the small individual particle free to fly. > How can I alleviate this problem ? > > This is a follow-up question to > https://answers.launchpad.net/yade/+question/292846 > > Here is the script: > > > from yade import pack > > > # > # Set up run > > # > run_name="PeriodicCohesive_MWE" > data_root_dir="." > > > > > # > # Materials > > # > plate_material=FrictMat( > young=200e9 > ,poisson=0.3 > ,density=8000. > ,frictionAngle=radians(30) > ,label='plate_mat') > > O.materials.append(plate_material) > > > sample_material=CohFrictMat( > young=4e9 > ,poisson=0.25 > ,density=1400 > ,frictionAngle=radians(30) > ,normalCohesion=1e8*1.2 > ,shearCohesion=.4e8*1.2 > ,momentRotationLaw=True > ,label='sample_mat') > O.materials.append(sample_material) > > > > > # > # Component dimensions and operating condition > > # > # Granular material dimension > sample_diameter=2e-4 > #sample_diameter=126e-6 > sample_radius=sample_diameter/2.0 > # Sub-particle dimension > particle_diameter=74e-6 > particle_radius=particle_diameter/2. > > > # > # grinding plate dimension > > # > > rotvel=2./3.*pi*(1.5+0.5)*.254 > > > # > # Periodic Geometry > > # > > > # Set up periodic boundary conditions > O.periodic=True > xExt=4*sample_diameter > yExt=3.*sample_diameter*2 #to block the periodicity in y direction > zExt=xExt > xLim=xExt > yLim=yExt/4 > zLim=zExt > O.cell.hSize=Matrix3( > xExt, 0, 0, > 0, yExt, 0, > 0, 0, zExt) > > > length=xExt > height=yExt > width=zExt > > # Top and bottom plate thickness > thickness=0.1*height > > > > > > bottomBoxes = [] > for ix in (0,1,2): > for iz in (0,1,2): > bottomBoxes.append(box( # create 3x3 boxes with 1/3 cell > size > center=(xExt/6.*(1+2*ix),yLim - > thickness/2.0,zExt/6.*(1+2*iz)) > ,extents=(xExt/6.,thickness/2.0,zExt/6.) > ,wire=False > ,material='plate_mat' > )) > > bottom_id,bottom_ids = O.bodies.appendClumped(bottomBoxes) # bottom_id is > the clump id, > > > O.bodies[bottom_id].state.blockedDOFs='xyzXYZ' > > > > > # > # Particle Packing > > # > > min_corner= (0,yLim,0) > max_corner= (xLim, yExt-yLim, zLim) > > sp=pack.SpherePack() > sp.makeCloud( min_corner,max_corner, rMean=sample_radius, periodic=False, > seed=1) > > print "Generated ",len(sp)," aggregates" > > ### > # Sample > ### > for s in sp: > sphere=pack.inSphere((s[0][0],s[0][1],s[0][2]),s
Re: [Yade-users] [Question #291326]: Packing and predicate dimension
Question #291326 on Yade changed: https://answers.launchpad.net/yade/+question/291326 Status: Answered => Solved Luis Barbosa confirmed that the question is solved: Thanks Jérôme Duriez, that solved my question. -- 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 #293295]: Want to connect all the particles in an aggregate using cohesive bond
Question #293295 on Yade changed: https://answers.launchpad.net/yade/+question/293295 Status: Answered => Solved VG confirmed that the question is solved: Thanks Jan! Thanks to Bruno, I actually found part of the solution here: https://answers.launchpad.net/yade/+question/256364 However, there is something additional described below which I am trying to find an answer for. There are two things which I am doing now in addition to the above script: 1. Using a value of 1.1 for aabbEnlargeFactor and interactionDetectionFactor for collision and interaction respectively. 2. Using very high normal and shear cohesion values in the first iteration: ~1e20 and then resetting these values to the original values. This results in the correct number of cohesive interactions in each aggregate. However, with the application of the load, these cohesive bonds don't seem to break anymore. I am using the commands in the following sequence: -- In the initial definition of material properties for sample material, set very high values of cohesion ~1e20 -- Run one iteration by O.step() -- Reset the value of cohesion parameters by: sample_material.normalCohesion = 1e8*1.2 sample_material.shearCohesion = 0.4*1e8*1.2 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 #293295]: Want to connect all the particles in an aggregate using cohesive bond
Question #293295 on Yade changed: https://answers.launchpad.net/yade/+question/293295 Status: Solved => Open VG is still having a problem: Thanks Jan! Thanks to Bruno, I actually found part of the solution here: https://answers.launchpad.net/yade/+question/256364 However, there is something additional described below which I am trying to find an answer for. There are two things which I am doing now in addition to the above script: 1. Using a value of 1.1 for aabbEnlargeFactor and interactionDetectionFactor for collision and interaction respectively. 2. Using very high normal and shear cohesion values in the first iteration: ~1e20 and then resetting these values to the original values. This results in the correct number of cohesive interactions in each aggregate. However, with the application of the load, these cohesive bonds don't seem to break anymore. I am using the commands in the following sequence: -- In the initial definition of material properties for sample material, set very high values of cohesion ~1e20 -- Run one iteration using O.step() -- Reset the value of cohesion parameters by: sample_material.normalCohesion = 1e8*1.2 sample_material.shearCohesion = 0.4*1e8*1.2 -- O.run() I also checked the value of sample_material.normalCohesion from command line interface, and it shows the correct value. Is there a problem in the sequence of commands ? I think I am pretty close to finding a solution but not there yet. May be when I am setting very high values of normal and shear cohesion initially, some parameters are calculated internally and those need to be reset as well after the first iteration ? 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 #293468]: Force controller
Question #293468 on Yade changed: https://answers.launchpad.net/yade/+question/293468 Description changed to: hi every YADE users, My name is Thang, a PhD student in Monash Uni. I have tried to model a cantiliver beam support to a load P=1kN Normally, I use Displacement controller by applying velocity on one particle or addtional facets, but I dont know how to use force controller by applying additional load on this beam. Could anyone help me to solve the problem? Thank you so much for your kind help! -- 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 #293468]: Force controller
New question #293468 on Yade: https://answers.launchpad.net/yade/+question/293468 hi every YADE users, My name is Thang, a PhD student in Monash Uni. I have tried to model a cantiliver beam support to a load P=1Mpa Normally, I use Displacement controller by applying velocity on one particle or addtional facets, but I dont know how to use force controller by applying additional load on this beam. Could anyone help me to solve the problem? Thank you so much for your kind help! -- 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 #293295]: Want to connect all the particles in an aggregate using cohesive bond
Question #293295 on Yade changed: https://answers.launchpad.net/yade/+question/293295 Status: Open => Answered whr proposed the following answer: Hi varun, I did not go through your script. But from your description in #3, this may be due to the value of cohesion. The value of shearCohesion/normalCohesion within the existing interactions will not change if you just change the value. You need another setCohesionNow to reset it. Since the very high cohesion value result in the correct number of cohesive interactions, you may want to find a proper value that make the initial interaction number correct and these bonds could be broken in the following process. Cheers, Huanran -- 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 #293471]: Circular RandomDensePack with CpmMat
New question #293471 on Yade: https://answers.launchpad.net/yade/+question/293471 In the name of god Hello all I want to simulate a gravity deposition. The particles are generated in a circular predicate. If FrictMat is used, there is no problem and the particles flow freely on the horizontal wall; But in the case of CpmMat, it seems that the bonds between particles is made. With regarding to this point that i have setted intRadius = 1 and there is no initial overlap, why bonds between particles are made? from yade import pack mat=CpmMat(young=1e9,neverDamage=True,epsCrackOnset=1e-2) O.materials.append(mat) ###generating circular predicate and filling with spheres pred=pack.inCylinder(centerBottom=(0.5,0.5,0),centerTop=(0.5,0.5,1),radius=.25) spheres=pack.randomDensePack(pred,spheresInCell=500,radius=.55e-1) O.bodies.append(spheres) O.bodies.append(wall(-0.1,axis=2)) intRadius = 1 O.engines = [ ForceResetter(), InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=intRadius,label='is2aabb'),Bo1_Wall_Aabb()]), InteractionLoop( [Ig2_Sphere_Sphere_ScGeom(interactionDetectionFactor=intRadius,label='ss2d3dg'),Ig2_Wall_Sphere_ScGeom()], [Ip2_CpmMat_CpmMat_CpmPhys()], [Law2_ScGeom_CpmPhys_Cpm()] ), NewtonIntegrator(gravity=(0,0,-10),damping=0.5) ] O.dt = 0 O.step() is2aabb.aabbEnlargeFactor = 1. ss2d3dg.interactionDetectionFactor = 1. O.dt=.5*PWaveTimeStep() -- 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 #293445]: Polyhedra Elements, Infinite Loop.
Question #293445 on Yade changed: https://answers.launchpad.net/yade/+question/293445 Status: Answered => Open MikeZhao is still having a problem: I have updated yade, using trunk-master. However, this problem still exists: The speed of my calculation is about 5 steps per second, however when it comes to a certain step, it will hold there while the usage of CPU remains 100%. I am pretty sure that this program encountered an infinite loop when yade.O.step() is called.. -- 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 #293445]: Polyhedra Elements, Infinite Loop.
Question #293445 on Yade changed: https://answers.launchpad.net/yade/+question/293445 MikeZhao gave more information on the question: The new engine is as following: O.engines = [ ForceResetter(), InsertionSortCollider([Bo1_Polyhedra_Aabb()]), InteractionLoop( [Ig2_Polyhedra_Polyhedra_PolyhedraGeom()], [Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys()], [Law2_PolyhedraGeom_PolyhedraPhys_Volumetric()] ), NewtonIntegrator(damping=0), ] According to my test, this bug happens during Yade.O.step(). I have added several cout codes at the begining and the end of several places. It turns out that this bug doesn't locate in Ig2_Polyhedra_Polyhedra_PolyhedraGeom::go, Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys::go or Law2_PolyhedraGeom_PolyhedraPhys_Volumetric::go. Could anybody tell me where this bug possibly locate? Thanks a lot. -- 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 #293445]: Polyhedra Elements, Infinite Loop.
Question #293445 on Yade changed: https://answers.launchpad.net/yade/+question/293445 Status: Open => Answered Jan Stránský proposed the following answer: Hi Mike, could you please provide a complete script which does this problem? Thanks Jan 2016-05-09 7:52 GMT+02:00 MikeZhao : > Question #293445 on Yade changed: > https://answers.launchpad.net/yade/+question/293445 > > MikeZhao gave more information on the question: > The new engine is as following: > O.engines = [ > ForceResetter(), > InsertionSortCollider([Bo1_Polyhedra_Aabb()]), > InteractionLoop( > [Ig2_Polyhedra_Polyhedra_PolyhedraGeom()], > [Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys()], > [Law2_PolyhedraGeom_PolyhedraPhys_Volumetric()] > ), > NewtonIntegrator(damping=0), > ] > > According to my test, this bug happens during Yade.O.step(). > > I have added several cout codes at the begining and the end of several > places. It turns out that this bug doesn't locate in > Ig2_Polyhedra_Polyhedra_PolyhedraGeom::go, > Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys::go or > Law2_PolyhedraGeom_PolyhedraPhys_Volumetric::go. > > Could anybody tell me where this bug possibly locate? Thanks a lot. > > -- > 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 > -- 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 #293445]: Polyhedra Elements, Infinite Loop.
Question #293445 on Yade changed: https://answers.launchpad.net/yade/+question/293445 Status: Answered => Open MikeZhao is still having a problem: Eh, it is hard for me to provide an example, since I was building a FE- DE model, another FEM software OOFEM is included in my calculation. But this bug did occur within Yade, as I have added several cout codes to locate this bug. This bug did occur when yade.O.step() is called. I want to trace back to the source of this bug, but it seems O.step() has used several function in boost library, so it's hard for me to understand what actions O.step() actually contain within yade. So I hope maybe you could tell me what codes are called for O.step(), and I could better locate this bug. -- 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 #293445]: Polyhedra Elements, Infinite Loop.
Question #293445 on Yade changed: https://answers.launchpad.net/yade/+question/293445 MikeZhao gave more information on the question: I will try if I could provide an example. -- 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