Does anyone have a Ligghts code for the Triaxial compression test?

Submitted by wangxiukai on Thu, 05/06/2021 - 14:50

I want to servo the wall with a target confining pressure in LIGGGHTS. But, there are only "target force" that can be choosn in LIGGGHTS. So, we need to obtain the area of the wall and update the area timely. It confuses me a lot.

In addition, can we define functions, use "if" statement and "for" statement like python and other high level programming languages?

I look forward to your answers very much, if you have the relevant code, I would not be very grateful.

Thank you!

Wang Xiukai

mschramm | Thu, 05/06/2021 - 19:20

LIGGGHTS has if statements and for loops can be done via labels and jumping
Below is an example of using both in one of my flexible fiber examples (

# Run until we get the kinetic energy below our set tolerance
run ${set_step} # Run once to set/update all geometries and fixes
label begin_set_loop # Start of the loop
variable old_height equal ${max_h}
run ${set_step} pre no post no # Run so many steps until we check the KE again
variable res equal abs(${old_height}-${max_h})
if "${my_ke}<${ke_tol} && ${res}<${res_tol}" then &
"jump in.read_restart end_set_loop" &
else &
"jump in.read_restart begin_set_loop"
label end_set_loop # End of the loop

wangxiukai | Fri, 05/07/2021 - 14:26

Thank you very much!
Do you work on trixial compression test?

Thank you again.
Wish you have a nice day.

wangxiukai | Fri, 05/07/2021 - 14:42

Dear mschramm,

I want to consult another question.

I am a new user of liggghts. I want to use the liggghts to study trixial compression tests, and then coupled with openfoam.
I learn it by reading the document. But there is too much content.
Do I need to read the document from section 1 to section 11?
How can I get started quickly?
Thank you.