Re: [Yade-users] [Question #683934]: Bond broken and non movement of cohesive particles

2019-10-03 Thread Launchpad Janitor
Question #683934 on Yade changed:
https://answers.launchpad.net/yade/+question/683934

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


Re: [Yade-users] [Question #683934]: Bond broken and non movement of cohesive particles

2019-09-18 Thread Jan Stránský
Question #683934 on Yade changed:
https://answers.launchpad.net/yade/+question/683934

Jan Stránský posted a new comment:
Ok, maybe not 8+8, maybe 60+60..
A good approach could be to preserve the geometry and just use larger 
particles. Then even you can paste these a few lines of saved .txt files inside 
one question.
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 #683934]: Bond broken and non movement of cohesive particles

2019-09-17 Thread Akm
Question #683934 on Yade changed:
https://answers.launchpad.net/yade/+question/683934

Status: Needs information => Open

Akm gave more information on the question:
Hi Jan, Thanks for the call. But if I do not use the gts surface, then
the essence of the question will be lost.  I will try to upload an MWE
though.

-- 
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 #683934]: Bond broken and non movement of cohesive particles

2019-09-16 Thread Jan Stránský
Question #683934 on Yade changed:
https://answers.launchpad.net/yade/+question/683934

Status: Open => Needs information

Jan Stránský requested more information:
Hello,

> https://drive.google.com/drive/folders/1bCS_w917aP0Tr_Jfy6YfN20c9W0cdJYM?usp=sharing
> Note: Kindly download the particle file using the download link above to 
> impor the particles.

Note: Kindly make your question self-contained [1] (also see below)

Try to make a MWE [1], I think something like 8 + 8 predefined particles for 
lower and upper part should be enough to illustrate the problem.
Often you can find the problem yourself creating such MWE.

cheers
Jan

[1] https://www.yade-dem.org/wiki/Howtoask, section "Please, no external
links!"

-- 
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 #683934]: Bond broken and non movement of cohesive particles

2019-09-14 Thread Akm
Question #683934 on Yade changed:
https://answers.launchpad.net/yade/+question/683934

Description changed to:
Hi all,

Hope you all are doing well. I have a question with respect to the
CohFric model. I am trying to implement a shearing mechanism between two
body masses which are of different material properties. It is kind of
like a direct shear test. The setup consists of two boxes - top and
bottom. The material is contained in them.  I created the particles
through radial expansion, used a gts surface predicate to cut them
appropriately and then imported them in another file with different
material properties.

My yade version is Yade 2018.02b-142067caa7~xenial

Issue 1:

I tried to do the shearing through a translation engine after applying a
cohesive bond between the particles of the same material. But when I
apply a force on the upper box , the particles inside should move as
well with the box. But only the box moves and the cohesive network of
particles just stay there without any movement. Can anyone please tell
me where I went wrong with the code?

Issue 2:

The particles in the lower box tend to break their cohesive bond after a
particular iteration. I am unable to comprehend the reason why this is
happening.

I have attached the code below for your reference. Since I have created
the particles separately using a gts predicate, I have attached the
drive link for the particle import here as well.

https://drive.google.com/drive/folders/1bCS_w917aP0Tr_Jfy6YfN20c9W0cdJYM?usp=sharing

Note: Kindly download the particle file using the download link above to
impor the particles.


from yade import pack, qt, export, ymport, plot

#MATERIAL SPECIFICATION:
rock_material=CohFrictMat(
young=6e10 ,poisson=0.21 ,density=3400 ,frictionAngle=radians(45) 
,normalCohesion=1e20,shearCohesion=1e8 ,isCohesive=True, label='rock_mat')
mat1=O.materials.append(rock_material)

concrete_material=CohFrictMat(
young=1e10 ,poisson=0.25 ,density=1400 ,frictionAngle=radians(30) 
,normalCohesion=1e20,shearCohesion=1e6 ,isCohesive=True, label='concrete_mat')
mat2=O.materials.append(concrete_material)

O.materials.append(FrictMat(frictionAngle=0,density=0,label='walls'))

#UPPER PARTICLE IMPORT:
upbox_particles=ymport.text('Upperbox_particles-22.5.txt',material='rock_mat', 
color=(1,0,0)) #Arguement passed to utils.sphere
O.bodies.append(upbox_particles)

shiftlist=[]
for i in O.bodies:
if (i.shape, Sphere):
shiftlist.append(i.id)

shiftBodies(shiftlist, (0,0.005,0))

#LOWER PARTICLE IMPORT:
lowbox_particles=ymport.text('Lowerbox_particles-22.5.txt',material='concrete_mat',
 color=(0,1,0)) #Arguement passed to utils.sphere
O.bodies.append(lowbox_particles)


#GEOMETRY DESIGN:

#Creating the upper box
U_box=geom.facetBox((.13,.11,0.09),(.08,.02,.04),wallMask=51)
O.bodies.append(U_box)
#Creating the lower box
L_box=geom.facetBox((.13,.07,0.09),(.08,.02,.04),wallMask=55)
O.bodies.append(L_box)

#Creating the extension for sliding plane so particles don't fall out
#Give extra 1e-3 m in Y dir. so that the two facet walls... 
#...at the shear interface do not rub against each other
U_box_extension1=geom.facetBox((.01,.111,0.09),(.04,.02,.04),wallMask=4)   
O.bodies.append(U_box_extension1)
U_box_extension2=geom.facetBox((.25,.111,0.09),(.04,.02,.04),wallMask=4)
O.bodies.append(U_box_extension2)
L_box_extension1=geom.facetBox((.01,.11,0.09),(.04,.02,.04),wallMask=4)
O.bodies.append(L_box_extension1)
L_box_extension2=geom.facetBox((.25,.11,0.09),(.04,.02,.04),wallMask=4)
O.bodies.append(L_box_extension2)

intfactor = 1.2
T_Vel=10

#SIMULATION PROCESSES:
O.engines=[
ForceResetter(),

InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=intfactor,label='bo1s'),Bo1_Facet_Aabb(),Bo1_Wall_Aabb(),Bo1_Box_Aabb()]),
InteractionLoop(

[Ig2_Sphere_Sphere_ScGeom6D(interactionDetectionFactor=intfactor,label='ig2s'),Ig2_Facet_Sphere_ScGeom(),Ig2_Wall_Sphere_ScGeom(),Ig2_Box_Sphere_ScGeom6D()],
[Ip2_FrictMat_FrictMat_FrictPhys(), 
Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(setCohesionNow=True,label="cohesiveIp",

normalCohesion=MatchMaker(matches=((mat1,mat1,1e20),(mat2,mat2,1e20),(mat1,mat2,0))),
 

shearCohesion=MatchMaker(matches=((mat1,mat1,1e9),(mat2,mat2,1e9),(mat1,mat2,0],
[Law2_ScGeom_FrictPhys_CundallStrack(), 
Law2_ScGeom6D_CohFrictPhys_CohesionMoment()]
),
NewtonIntegrator(gravity=(0,0,0),damping=0.3),

GlobalStiffnessTimeStepper(active=True,timeStepUpdateInterval=1,timestepSafetyCoefficient=0.8),
 #using global timestep for faster simulation
#PyRunner(command='check()',iterPeriod=10,label='runner')
]


O.step()

#for i in O.interactions:
#i.phys.normalAdhesion = 1e9
#i.phys.shearAdhesion =  1e3


bo1s.aabbEnlargeFactor=1
ig2s.interactionDetectionFactor=1


#Setting default material values:
rock_material.normalCohesion=1e9
concrete_material.normalCohesion=1e9

O.engines=O.engines+[PyRunner(command='updatebond()',iterPeriod=1,la

[Yade-users] [Question #683934]: Bond broken and non movement of cohesive particles

2019-09-14 Thread Akm
New question #683934 on Yade:
https://answers.launchpad.net/yade/+question/683934

Hi all,

Hope you all are doing well. I have a question with respect to the CohFric 
model. I am trying to implement a shearing mechanism between two body masses 
which are of different material properties. It is kind of like a direct shear 
test. The setup consists of two boxes - top and bottom. The material is 
contained in them.  I created the particles through radial expansion, used a 
gts surface predicate to cut them appropriately and then imported them in 
another file with different material properties. 

My yade version is Yade 2018.02b-142067caa7~xenial

Issue 1:

I tried to do the shearing through a translation engine after applying a 
cohesive bond between the particles of the same material. But when I apply a 
force on the upper box , the particles inside should move as well with the box. 
But only the box moves and the cohesive network of particles just stay there 
without any movement. Can anyone please tell me where I went wrong with the 
code?

Issue 2:

The particles in the lower box tend to break their cohesive bond after a 
particular iteration. I am unable to comprehend the reason why this is 
happening. 

I have attached the code below for your reference. Since I have created the 
particles separately using a gts predicate, I have attached the drive link for 
the particle import here as well. 

https://drive.google.com/drive/folders/1bCS_w917aP0Tr_Jfy6YfN20c9W0cdJYM?usp=sharing

Note: Kindly download the particle file using the download link above to impor 
the particles.
from yade import pack, qt, export, ymport, plot

#MATERIAL SPECIFICATION:
rock_material=CohFrictMat(
young=6e10 ,poisson=0.21 ,density=3400 ,frictionAngle=radians(45) 
,normalCohesion=1e20,shearCohesion=1e8 ,isCohesive=True, label='rock_mat')
mat1=O.materials.append(rock_material)

concrete_material=CohFrictMat(
young=1e10 ,poisson=0.25 ,density=1400 ,frictionAngle=radians(30) 
,normalCohesion=1e20,shearCohesion=1e6 ,isCohesive=True, label='concrete_mat')
mat2=O.materials.append(concrete_material)

O.materials.append(FrictMat(frictionAngle=0,density=0,label='walls'))

#UPPER PARTICLE IMPORT:
upbox_particles=ymport.text('Upperbox_particles-22.5.txt',material='rock_mat', 
color=(1,0,0)) #Arguement passed to utils.sphere
O.bodies.append(upbox_particles)

shiftlist=[]
for i in O.bodies:
if (i.shape, Sphere):
shiftlist.append(i.id)

shiftBodies(shiftlist, (0,0.005,0))

#LOWER PARTICLE IMPORT:
lowbox_particles=ymport.text('Lowerbox_particles-22.5.txt',material='concrete_mat',
 color=(0,1,0)) #Arguement passed to utils.sphere
O.bodies.append(lowbox_particles)



#GEOMETRY DESIGN:

#Creating the upper box
U_box=geom.facetBox((.13,.11,0.09),(.08,.02,.04),wallMask=51)
O.bodies.append(U_box)
#Creating the lower box
L_box=geom.facetBox((.13,.07,0.09),(.08,.02,.04),wallMask=55)
O.bodies.append(L_box)

#Creating the extension for sliding plane so particles don't fall out
#Give extra 1e-3 m in Y dir. so that the two facet walls... 
#...at the shear interface do not rub against each other
U_box_extension1=geom.facetBox((.01,.111,0.09),(.04,.02,.04),wallMask=4)   
O.bodies.append(U_box_extension1)
U_box_extension2=geom.facetBox((.25,.111,0.09),(.04,.02,.04),wallMask=4)
O.bodies.append(U_box_extension2)
L_box_extension1=geom.facetBox((.01,.11,0.09),(.04,.02,.04),wallMask=4)
O.bodies.append(L_box_extension1)
L_box_extension2=geom.facetBox((.25,.11,0.09),(.04,.02,.04),wallMask=4)
O.bodies.append(L_box_extension2)

intfactor = 1.2
T_Vel=10

#SIMULATION PROCESSES:
O.engines=[
ForceResetter(),

InsertionSortCollider([Bo1_Sphere_Aabb(aabbEnlargeFactor=intfactor,label='bo1s'),Bo1_Facet_Aabb(),Bo1_Wall_Aabb(),Bo1_Box_Aabb()]),
InteractionLoop(

[Ig2_Sphere_Sphere_ScGeom6D(interactionDetectionFactor=intfactor,label='ig2s'),Ig2_Facet_Sphere_ScGeom(),Ig2_Wall_Sphere_ScGeom(),Ig2_Box_Sphere_ScGeom6D()],
[Ip2_FrictMat_FrictMat_FrictPhys(), 
Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(setCohesionNow=True,label="cohesiveIp",

normalCohesion=MatchMaker(matches=((mat1,mat1,1e20),(mat2,mat2,1e20),(mat1,mat2,0))),
 

shearCohesion=MatchMaker(matches=((mat1,mat1,1e9),(mat2,mat2,1e9),(mat1,mat2,0],
[Law2_ScGeom_FrictPhys_CundallStrack(), 
Law2_ScGeom6D_CohFrictPhys_CohesionMoment()]
),
NewtonIntegrator(gravity=(0,0,0),damping=0.3),

GlobalStiffnessTimeStepper(active=True,timeStepUpdateInterval=1,timestepSafetyCoefficient=0.8),
 #using global timestep for faster simulation
#PyRunner(command='check()',iterPeriod=10,label='runner')
]


O.step()

#for i in O.interactions:
#i.phys.normalAdhesion = 1e9
#i.phys.shearAdhesion =  1e3


bo1s.aabbEnlargeFactor=1
ig2s.interactionDetectionFactor=1


#Setting default material values:
rock_material.normalCohesion=1e9
concrete_material.normalCohesion=1e9

O.engines=O.engines+[PyRunner(command='updatebond()',iterPeriod=1,label='runne