on sample preparation of real granula materials

Asked by wangxiaoliang

In real triaxial compression of granular sand, relative density is usually a key parameter to control the initial state of the sample.

I want to simulate the triaxial compression using yade. topic here is all about the sample generation.

I use radius-expansion method with different inter-particle friction angle to generate loose or dense sample, friction angle 0 results the densest sample, and friction of maxmimum equals to that used later in deviatoric loading results loosest one as proposed by Chareyre etc. I want to relate the relative density with friction angle, finally I do that. I calibrate parameters using a contact model considering rolling resistance, but if fails for the rolling resistance.

So I guess that the problem is wrong, how to relate my numerical sample with real granular soil using the radius-expansion method?

and anybody has advanced method to generate numerical sample to model real granular sand?

thanks

Question information

Language:
English Edit question
Status:
Answered
For:
Yade Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Luc Scholtès (luc) said :
#1

Hello Wangxiaoliang,

If I understand well, you are able to generate your samples at different porosities but you have some troubles when it comes to calibrate your model, right? I guess you had a look to this paper: http://www.springerlink.com/content/16688jw766197204/ which explains how the different microparameters affect the macroscopic response. If not, please have a look. If yes, could you be more precise when you state that "it fails for the rolling resistance". Is it that it does not correspond to what is described in the paper?

Luc

Revision history for this message
Christian Jakob (jakob-ifgt) said :
#2

> and anybody has advanced method to generate numerical sample to model real granular sand?

Hi wangxiaoliang,

I also want to simulate a sand with DEM. So our interests are nearly the same.
To generate a sand sample there are (as far as I know) 3 methods:

1. generate with given PSD -> hard overlaps -> calm-function needed
2. radius expansion method -> also calm function needed
3. generation of sample in a higher model -> let particles fall down by gravity (settlement)

Every method has advantages and disadvantages. 2. and 3. can be done with makeCloud().
I tried all methods and found, that for my purpose (model of a loose sand) method 3 is the best one.

In method 1 very hard overlaps occur after generating the sample and one has to calm particles movements (by setting velocities to zero) for the first steps. I found out, that it can lead to instabilities and unexpected behavoir. So I tried method 2, but I also detected numerical instabilities arising from this method. Also it is very tricky to increase radii from clumped particles (as I have in my model).

So now I use settlement method (method 3) and I do not have instabilities any more. But the disadvantage of this method is, that the number of particles (that were generated) are random. Also one can not specify a porosity. One will get loosest packing, when settlement is finished. (But you can use ThreeDTriaxialEngine to get your porosity/packing after the settlement procedure!)

For the problem with rolling resistance I use clumped particles and a high friction to get the given repose angle from a pour cone test. So I replace one sphere by hardly overlapping two spheres with same radius to get a "non-spherical" particle (clump). I know thats not the real particle shape, but it is more realistic than pure spherical particles.

Regards,

Christian.

Revision history for this message
wangxiaoliang (wangxiaoliang) said :
#3

thanks, luc. I have read the paper many times. I am simulating a sand of relative density of 64%, a bit dense sample. I have calibrated like Plassiard with my dense sample,however, at the last step ,I calibrate for rolling stiffness, in the response, the macroscopic friction angle doesn't change.

I generate my sample using a bit small friction angle, say 3.3 degree, which corresponding relative density 64% of my experiment. I guess calibration fails duo to this.

In your paper "on capillary stress tensor in wet granular materials", you even used a smaller friction angle, say 0.2. In my experience, that will result a very large dilatancy angle, usually larger than 20, but in experiment it is usually about 10.

Actually, I am talking about the sample controlling parameters, somebody use porosity, somebody use relative density, to be equal to that in the real experiment. Which one is more appropriate?

Revision history for this message
wangxiaoliang (wangxiaoliang) said :
#4

thanks Christian, I never used clump particles, I just want to use a resistance model to model the complex shape of particles.

1), what do you mean by instabilities?

2), I the consolidation process, which friction do you use?

Revision history for this message
wangxiaoliang (wangxiaoliang) said :
#5

In plassiard's paper, he used radius-expansion method. there is one sentence in his paper
"With it, the desired porosity which corresponds to the porosity of the real specimen n = 0.40 was reached"

I never understand this, n in the real specimen is 0.40, but what is n in his numerical specimen?

Revision history for this message
Christian Jakob (jakob-ifgt) said :
#6

> 1), what do you mean by instabilities?
> 2), I the consolidation process, which friction do you use?

1.) model explodes sometimes (I have high shear modulus of 3.2e10)
2.) friction coefficient is 10 (not friction angle!)

Revision history for this message
Anton Gladky (gladky-anton) said :
#7

Hi,

esys-particle team [1] has a tool for generating relatively dense,
non-stress packings of spheres "python-demgengeo" [2].
The result of this program can be imported in yade [3].

Not sure, it is relevant in your case, but can give you some ideas.

Anton

[1] https://launchpad.net/esys-particle
[2] http://packages.qa.debian.org/p/python-demgengeo.html
[3] https://github.com/yade/trunk/blob/master/examples/packs/packs.py#L81

Revision history for this message
Chiara Modenese (chiara-modenese) said :
#8

On 11 Oct 2012, at 08:56, wangxiaoliang wrote:

> Actually, I am talking about the sample controlling parameters, somebody
> use porosity, somebody use relative density, to be equal to that in the
> real experiment. Which one is more appropriate?

Good question. In fact, it would be better to use the relative density as a reference parameter. However, this is not straightforward to define with spherical particles although some papers offer an equivalent definition for the numerical model (like in the paper you are reading) but it is questionable I think as in some cases calibration is more difficult depending on the contact model adopted.

One could match the real porosity of the experiments if the same particle shape and PSD are used in the numerical model.

Chiara

Revision history for this message
Luc Scholtès (luc) said :
#9

""With it, the desired porosity which corresponds to the porosity of the real specimen n = 0.40 was reached"
I never understand this, n in the real specimen is 0.40, but what is n in his numerical specimen?"

-> it says that the porosity of his numerical assembly IS EQUAL TO the one of the real specimen. You have to note that 0.40 is the porosity after the radius expansion method. The triaxial compression is thus performed on a sample with initial porosity equal to 0.40.

"In your paper "on capillary stress tensor in wet granular materials", you even used a smaller friction angle, say 0.2. In my experience, that will result a very large dilatancy angle, usually larger than 20, but in experiment it is usually about 10."

-> You have to be careful here. For instance, in my case, I generated samples (radius expansion) with an interparticle friction angle equal to 0.1 deg, right, this was done so that the sample is as dense as possible at the end of the compaction phase, BUT, I CHANGED the frictional angle after the generation phase so that the triaxial compression is performed on a sample where the interparticle friction angle is equal to 30 deg (see the difference between compactionFrictionDeg and sphereFrictionDeg in the trixial test)

"at the last step ,I calibrate for rolling stiffness, in the response, the macroscopic friction angle doesn't change"

-> I guess this should be the title of your question? I also guess that you are using Law2_ScGeom6D_CohFrictPhys_CohesionMoment. Am I right?

Luc

Revision history for this message
Bruno Chareyre (bruno-chareyre) said :
#10

I agree with Luc: the topic should be "What am I doing wrong with moment law?". The rest is useless at this point.
The recently added triax-cohesive.py includes rolling friction correctly. It did not help?

On Christian's 1/2/3, two remarks:
- In 2, there is no need to "calm". If it goes very dynamic it's because the parameters of the growth are not well choosen, else it's almost quasistatic during all the growth.
- Clumps were making 2 more complicated, but it should be better now, using "growParticles" (commited 2 weeks ago).
https://www.yade-dem.org/doc/yade.utils.html?highlight=pwave#yade._utils.growParticles

Revision history for this message
Chiara Modenese (chiara-modenese) said :
#11

On 11 Oct 2012, at 11:46, Chareyre wrote:

> - In 2, there is no need to "calm". If it goes very dynamic it's because the parameters of the growth are not well choosen, else it's almost quasistatic during all the growth.

@Christian: If you use very _high_ stiffness with the non-linear model you need to be careful to choose the right parameters for the expansion method as Bruno suggests. In these regards, remember that the _loading rate_ you apply has to be sufficiently small if you want the process to be quasi-static and if you want to avoid the use of a calming function like you do.

Chiara

Revision history for this message
Christian Jakob (jakob-ifgt) said :
#12

> @Christian: If you use very _high_ stiffness with the non-linear model you need to be careful to choose the right parameters > for the expansion method as Bruno suggests. In these regards, remember that the _loading rate_ you apply has to be
> sufficiently small if you want the process to be quasi-static and if you want to avoid the use of a calming function like you do.

I know, but then it takes too long to get specified porosity. So I am much faster with method 3 ...

Revision history for this message
Chiara Modenese (chiara-modenese) said :
#13

On 11 Oct 2012, at 14:11, Christian Jakob wrote:

> Question #210907 on Yade changed:
> https://answers.launchpad.net/yade/+question/210907
>
> Christian Jakob posted a new comment:
>> @Christian: If you use very _high_ stiffness with the non-linear model you need to be careful to choose the right parameters > for the expansion method as Bruno suggests. In these regards, remember that the _loading rate_ you apply has to be
>> sufficiently small if you want the process to be quasi-static and if you want to avoid the use of a calming function like you do.
>
> I know, but then it takes too long to get specified porosity. So I am
> much faster with method 3 ...
Yes, I understand and agree. Actually I do not use the expansion method but I generate the particles in a very loose state and then I apply compression to achieve my target. I found this method much easier and not too slow even when using high stiffness parameters.

>
> --
> You received this question notification because you are a member of
> yade-users, which 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

Revision history for this message
Bruno Chareyre (bruno-chareyre) said :
#14

>I generate the particles in a very loose state and then I apply compression

Then the microstructure is heterogeneous, with a gradient of porosity and fabric from the contour to the center of the sample (periodic BCs fix that).

Revision history for this message
wangxiaoliang (wangxiaoliang) said :
#15

>@ luc #9: I guess this should be the title of your question? I also guess that you are using Law2_ScGeom6D_CohFrictPhys_CohesionMoment. Am I right?
Yes you are right. I know comFricDegree and finalFricDegree.

>The triaxial compression is thus performed on a sample with initial porosity equal to 0.40.
actually, in real consolidated drained compression, I prepare my sample with the "initial porosity"
I want, then add isotropic pressure, say 50kPa. In DEM simulation, many authors also mentioned
"initial porosity" like with the radius-expansion method, so I think 0.40 here should be the porosity
after consolidated compared to the real CD compression, am I right? But in real experiment, we say
initial porosity, that should be before consolidation

Revision history for this message
Luc Scholtès (luc) said :
#16

OK, so the problem is more general that just "rolling moment related" as I supposed it was...

Maybe you should open questions for each problem because it is difficult to see where exactly is your point. Moreover, each of them is susceptible to interest YADE users ;-)

I see 2 distinct problems from your previous questions:

1 - Do we consider initial porosity as the one obtained without confinement or the one corresponding to the isotropic state pre-compression? Good question I would say... I would also say that it is difficult to generate an homogeneous sample using DEM without confinement, and I think (guys, tell me if I am wrong) that in most cases, when DEM users talk about initial porosity, it is the one obtained under isotropic confinement (the lowest confinement if you plan to run a series a triaxial compressions). BTW, is there a big change in the porosity of your real specimen when you go from 0 to 50kPa confinement?

2 - Is there any problem with rolling moment law? Why rolling stiffness does not impact my macroscopic result? If this one is actually of concern, maybe have a look to triax-cohesive.py as suggested by Bruno.

Hope it helps...

Revision history for this message
Chiara Modenese (chiara-modenese) said :
#17

On 11 Oct 2012, at 15:11, Chareyre wrote:

> Question #210907 on Yade changed:
> https://answers.launchpad.net/yade/+question/210907
>
> Chareyre posted a new comment:
>> I generate the particles in a very loose state and then I apply
> compression
>
> Then the microstructure is heterogeneous, with a gradient of porosity
> and fabric from the contour to the center of the sample (periodic BCs
> fix that).
Yes, that is right as I forgot to say I make use of PBCs.
>
> --
> You received this question notification because you are a member of
> yade-users, which 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

Can you help with this problem?

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

To post a message you must log in.