Plate's velocity in Triaxial test

Asked by Hien Nguyen

Hello all,
I'm currently modeling a dried triaxial test, I used the example's code (https://github.com/yade/trunk/tree/master/examples/triax-tutorial) and modified it into my need, here is the link to my code (I dont' want to paste a long code in this page)

http://pastebin.com/dqxiQiNZ (to make it shorter I currerntly delete the author's commenting)

As you can see in the highlight of the code (line 73 - 75)
        sigma1=300000,
        sigma2=100000,
        sigma3=100000,

I see that the method which was used is applying the stress on the specimen (box) on 6 faces, now I want to change it into something like this:

The 5 faces (4 faces around the box and one face at the bottom) of the box are fixed by value of stress and have the stress on them by default 100kPa (confinement stress).
The top face is going down slowly with a velocity like in reality (1mm/min or something else, I have study much on this value) (imposing displacement - french: déplacement imposé).
The final goal is to draw the chart ev-e11 et the chart deviatoric load-axial strain 11.

I think I should use the strainControl but I'm not sure.

Please tell me how can I do that.
Thanks in advance.

Question information

Language:
English Edit question
Status:
Solved
For:
Yade Edit question
Assignee:
No assignee Edit question
Solved by:
Bruno Chareyre
Solved:
Last query:
Last reply:
Revision history for this message
Bruno Chareyre (bruno-chareyre) said :
#1

>The 5 faces (4 faces around the box and one face at the bottom) of the box are fixed by value of stress and have the stress on them by default 100kPa (confinement stress). The top face is going down slowly

I would call this null loading!
If 100 kPa are imposed at the bottom and you move the top plate down, then the bottom plate will follow and go down at almost the same speed. Although it is possible to simulate this, it is probably not what you want since it will simulates a rigid-body translation...

You can use strain control for this purpose yes, but I would also strain-control the bottom plate.

Revision history for this message
Hien Nguyen (giahien) said :
#2

Thanks Mr Chareyre,

You're totally right, I didn't expect it before. Thanks a lot for pointing out my fault.
So now for my problem, I tend to keep the 4 faces around the box like before, fix the bottom plate and control the movement of the top plate. But I'm not clear about the code to do so, can you please enlighten me with code how to do so? Blocking the bottom plate and make the top plate move like I want to? I take a look in the YADE reference in the class ThreeDtriaxialEngine (https://www.yade-dem.org/doc/yade.wrapper.html?highlight=threedtriax#yade.wrapper.ThreeDTriaxialEngine) but I can not see the detail of what call strainControl. Any more help is appreciated.

Thank you very much, waiting for your answer.

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

It's actually explained in the tutorial script, line 183:

##If we want a triaxial loading at imposed strain rate, let's assign srain rate instead of stress
#triax.stressControl_2=0 #we are tired of typing "True" and "False", we use implicit conversion from integer to boolean
#triax.strainRate2=rate

The only difference is that this would move both top and bottom plates, while you want to move only the top one. The solution is also in the script (L.174):

## We turn all these flags true, else boundaries will be fixed
#triax.wall_bottom_activated=True
#triax.wall_top_activated=True
#triax.wall_left_activated=True
#triax.wall_right_activated=True
#triax.wall_back_activated=True
#triax.wall_front_activated=True

Now guess what to do to fix the bottom plate? ;)

Actually, I don't think it is a good thing to move only the top one as it increases the inertial effects. For the same strain rate, moving both plates will result in a smaller average velocity.

Revision history for this message
Hien Nguyen (giahien) said :
#4

Thanks Chareyre, that solved my question.