Problem in consolidation

Asked by Xu Mengqian on 2020-02-24

Hi,all
I am trying to fix the orientation of clumps during the consolidation recently.But there are some problem in this procedure.
The periodic cell would be a rectangle after complete the consolidation, which is not a square.
This is my code. Thanks for your time.
########particle generation########
from yade import pack
import random
sp = pack.SpherePack()
size = .38
sp.makeCloud(minCorner=(0,0,.05),maxCorner=(size,size,.05),rMean=.005,rRelFuzz=.4,num=1000,periodic=True,seed=1)
sp.toSimulation()
fout = file('packing_thirty.lst','w')
for b in O.bodies:
   pos = b.state.pos
   diameter = b.shape.radius * 2
   eq_rad = diameter / 3.
   ori = 1. / 6. * pi
   x1 = pos[0] - (b.shape.radius - eq_rad) * cos(ori)
   x2 = pos[0] + (b.shape.radius - eq_rad) * cos(ori)
   y1 = pos[1] - (b.shape.radius - eq_rad) * sin(ori)
   y2 = pos[1] + (b.shape.radius - eq_rad) * sin(ori)
   fout.write(str(x1)+' '+str(y1)+' '+str(x2)+' '+str(y2)+' '+str(eq_rad)+'\n')
fout.close()

#########consolidation###########from yade import export
from math import *

mat_id = O.materials.append(FrictMat(young=8.e8,poisson=.8,frictionAngle=.0,density=10000))
mat = O.materials[mat_id]

fin = open('packing_thirty.lst','r')
clumpDataBase = fin.readlines()
fin.close()

z = 0.05
clump_id = []
coef = sqrt(3)/2+4./3*pi
print coef
area = 0.0
for i in xrange(len(clumpDataBase)):
   x1 = float(clumpDataBase[i].split()[0])
   y1 = float(clumpDataBase[i].split()[1])
   x2 = float(clumpDataBase[i].split()[2])
   y2 = float(clumpDataBase[i].split()[3])
   radius = float(clumpDataBase[i].split()[4])
   mass = 2650 * (2*z) * (coef*radius**2)
   area += coef*radius**2
   inertia = mass * radius**2
   cpos = [(x1+x2)/2.,(y1+y2)/2.,z]
   color = numpy.random.rand(3)
   ID = O.bodies.appendClumped([sphere([x1,y1,z],material=mat,radius=radius,color=color.tolist()), sphere([x2,y2,z],material=mat,radius=radius,color=color.tolist())])
   clump_id.append(ID[0])
   O.bodies[ID[0]].state.pos = cpos
   O.bodies[ID[0]].state.mass = mass
   O.bodies[ID[0]].state.inertia = [1.e10,1.e10,inertia]
   O.bodies[ID[0]].state.blockedDOFs = 'zXYZ'
   O.bodies[ID[0]-1].state.blockedDOFs = 'zXYZ'
   O.bodies[ID[0]-2].state.blockedDOFs = 'zXYZ'

print area
mn,mx = utils.aabbExtrema()
print mn,mx
O.periodic = True
O.cell.setBox(0.38,0.38,z*2)
print len(clump_id)

O.dt = 3.e-5
print O.dt

def shear():
   print O.cell.hSize
   O.pause()

O.engines = [
   ForceResetter(),
   InsertionSortCollider([Bo1_Sphere_Aabb()]),
   InteractionLoop(
      [Ig2_Sphere_Sphere_ScGeom()],
      [Ip2_FrictMat_FrictMat_FrictPhys()],
      [Law2_ScGeom_FrictPhys_CundallStrack()]
   ),
   PeriTriaxController(
      dynCell=True,
      goal=(-1.e5,-1.e5,0),
      stressMask=3,
      relStressTol=.001,
      maxUnbalanced=.001,
      maxStrainRate=(.25,.25,0.),
      doneHook='shear()',
      label='biax'
   ),
   NewtonIntegrator(damping=0.2)
]
O.run()

Question information

Language:
English Edit question
Status:
Answered
For:
Yade Edit question
Assignee:
No assignee Edit question
Last query:
2020-02-24
Last reply:
2020-02-27

Hi Xu,
Please elaborate a question. It is clear that a rectangle is not always a square, but... what is that all about?
Bruno

Xu Mengqian (yrainy.) said : #2

Hi Bruno,
What you means is that the cell is not always a square after consolidation? But this is isotropic consolidation, why it would be a rectangle? When I didn’t control the orientation of clumps,the cell is a square after isotropic consolidation.
Xu

Chareyre (bruno-chareyre-9) said : #3

«isotropic» was not mentioned in the question, while the consolidation
script shiped in yade examples is uniaxial... it was hard to guess!
Bruno

Le lun. 24 févr. 2020 19:47, Xu Mengqian <
<email address hidden>> a écrit :

> Question #688968 on Yade changed:
> https://answers.launchpad.net/yade/+question/688968
>
> Xu Mengqian gave more information on the question:
> Hi Bruno,
> What you means is that the cell is not always a square after
> consolidation? But this is isotropic consolidation, why it would be a
> rectangle? When I didn’t control the orientation of clumps,the cell is a
> square after isotropic consolidation.
> Xu
>
> --
> 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 : <email address hidden>
> Unsubscribe : https://launchpad.net/~yade-users
> More help : https://help.launchpad.net/ListHelp
>

Jan Stránský (honzik) said : #4

> But this is isotropic consolidation, why it would be a rectangle?

"how much" rectangle it is?
Your stress should be isotropic (can you check if it si true during the simulation?).
Which does not necessarily imply isotropic strain, if your packing (or its overall mechanical response) is not isotropic..

cheers
Jan

Xu Mengqian (yrainy.) said : #5

Hi bruno,
The consolidation script is biaxial isotropic consolidation. I was trying the 2D simulation.

Xu Mengqian (yrainy.) said : #6

Hi Jan,
I don’t know how to tell if it’s isotropic, but my stress is isotropic.
So it is strange that the cell becomes a rectangle after consolidation.

cheers
Xu

Jan Stránský (honzik) said : #7

Hello,

instant replay:
> "how much" rectangle it is?
1:2? 1:1.01?

> So it is strange that the cell becomes a rectangle after consolidation.

there is no strong reason not to be rectangular. The only case it remains square is the case that the packing is isotropic. It seems not to be the case with your clumps.

cheers
Jan

Xu Mengqian (yrainy.) said : #8

Hello,

> "how much" rectangle it is?
The rectangle is about 1:1.1.

>It seems not to be the case with your clumps.
If I control the orientation of clump, the packing is not isotropic? But I tried the SudoDEM (base on the YADE). the packing is isotropic and the cell remains square.

Chareyre (bruno-chareyre-9) said : #9

I guess you have to report in more details and to provide test scripts for
both softwares if you want to discuss a difference in results.
Else it is meaningless.

Ultimately, though, the question is to be asked to sudoDEM. It should give
the same as yade but it doesn't, then why? Yade cannot answer that.

Bruno

Le jeu. 27 févr. 2020 07:14, Xu Mengqian <
<email address hidden>> a écrit :

> Question #688968 on Yade changed:
> https://answers.launchpad.net/yade/+question/688968
>
> Xu Mengqian posted a new comment:
> Hello,
>
> > "how much" rectangle it is?
> The rectangle is about 1:1.1.
>
> >It seems not to be the case with your clumps.
> If I control the orientation of clump, the packing is not isotropic? But I
> tried the SudoDEM (base on the YADE). the packing is isotropic and the cell
> remains square.
>
> --
> 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 : <email address hidden>
> Unsubscribe : https://launchpad.net/~yade-users
> More help : https://help.launchpad.net/ListHelp
>
>
>

Jan Stránský (honzik) said : #10

> If I control the orientation of clump, the packing is not isotropic?

yes, of course. I would be surprised if such "aligned fibres" would give isotropic response.

> But I tried the SudoDEM (base on the YADE). the packing is isotropic and the cell remains square.

There might be several reasons. Is it e.g. possible that in SudoDEM there is prescribed strain instead of stress? What are the final stresses?

cheers
Jan

Can you help with this problem?

Provide an answer of your own, or ask Xu Mengqian for more information if necessary.

To post a message you must log in.