LIGGGHTS® - Developer Forum

Topics related to developing with LIGGGHTS® can be discussed here: discussion about implementation details, C++, MPI and debugging tools

making a new fix wall/gran subtype

dbreton's picture
Submitted by dbreton on Wed, 12/21/2011 - 22:03

I have put together a sort-of-working sintering pair interaction, and now I would like to make a wall/gran/sinter fix to contain and compact my sintering particles. My pair/gran/sinter pair style is based on pair/gran/hooke/history/stiffness and so I have tried to simply re-create/re-name the wall/gran/hooke/history/stiffness to be compatible with my particles (since wall and particle interaction must be the same).

Fix breakparticle/force

Submitted by tkulju on Thu, 12/01/2011 - 09:39

Hi Christoph!
Thanks for the new release! I noticed something in fix breakparticle/force-code, which is buzzing me. In the fix_breakparticle_force.cpp:362 v_ins is defined, but it is never used (?). Instead v_insert is used in set_x_v_omega(...) (fix_breakparticle_force.cpp:371), which is (0,0,0), if it is not given in start-up script. Correct me if I'm wrong, but shouldn't the created particles have a momentum conserved velocity, instead of zero velocity what they now have?

Thanks,
Timo

Compiler Flags

Philippe's picture
Submitted by Philippe on Wed, 11/23/2011 - 09:44

Dear all,

yesterday I played around with several compiler flags to see their effect on execution speed of LIGGGHTS. I measured the execution time of the example movingMeshGran in LIGGGHTS 1.4.6 on my desktop machine (Intel Core i7-2600 with 8GB RAM, gcc 4.4.3) with the command

time liggghts < in.movingMeshGran > /dev/null

Results:
no optimization: 1m27.898s
-O : 0m55.417s
-O2 : 0m47.635s
-O2 -ffast-math -march=native -funroll-loops : 0m44.454s
-O2 -ffast-math -march=native -funroll-loops -finline-functions: real 0m44.415s
-O3 : 0m47.273s

Questions about mesh implementation

Submitted by Lamers Jon on Thu, 11/10/2011 - 18:55

Hi,

I have several questions, and would be grateful if someone could answer them.

1) I was wondering if anyone could point me to where in the code, the variable "c_history" (tangential displacement between a particle and the mesh) is saved IF a particle slides to another element. i.e. so that tangential displacement will not suddenly adopt the value zero if a particle slides along a flat plane.

storage of initial particle radii for sintering

dbreton's picture
Submitted by dbreton on Tue, 11/08/2011 - 19:02

I apologize in advance for not knowing how to do this -- I would imagine this is pretty simple for someone who knows what they are doing (this excludes me, apparently):

I am trying to develop a sintering interaction (pair_gran_sinter.cpp) for LIGGGHTS 1.4.6, and I need to ensure that it is conserving particle volume as the particles sinter together (see movie below for example). To do this, I need to store an array of initial particle sizes (radii) such that it is available to pair_gran_sinter.cpp for subsequent volume and updated radius calculations.

Taxonomy upgrade extras:

Fix for particle creation from previous ones

Submitted by tkulju on Tue, 11/08/2011 - 15:24

Hi!
Now I'm trying to write the fix, which would create a new particle as particles are near to each other, i.e. A+B->C type of reaction. So would the best strategy be to take from fix_bond_create_gran.cpp the list building and implement it on the fix_insert_pack.cpp ? As I understood the atom positions are gone through in
void FixBondCreateGran::post_integrate()
and the insertion of the particles in
void FixInsertPack::x_v_omega
Am I correct? Or is there some more complicated things, which I should consider?

- Timo

contact normal force and stress

Submitted by prasantud on Tue, 10/18/2011 - 13:46

pair/gran/local does not save normal force

Hi everybody,
I have two questions
1. How to get the normal force at the contact, as the pair/gran/local only accounts for the shear force as mentioned by Jean in
node/212

2.The value of contact stress
conact stress sigma(alpha,beta)

sigma(alpha,beta)=1/V*[sum(i) sum(i neq j)*[rij(alpha)*fij(beta)/2]]

fij(beta)=fij(beta)_tangential+fij(beta)_normal

If normal force is neglected, will it give valid result for contact stress.

regards,
Samantaray

Coupling Liggghts with a LBM code written in Fortran.

Submitted by paulbrumby on Tue, 10/04/2011 - 10:03

In case anyone finds it useful here is some information about a method I use to couple Liggghts with a separate Lattice Boltzmann code written in Fortran.

The Fortran code is the driver, so it starts first calculates the fluid flow, writes the particle information to a file and then calls an external subroutine to run Liggghts automatically from the command line for one time step. See the following link.c file:

#include
#include
int dem_(int i)
{
printf ("Checking if processor is available...");
if (system(NULL)) puts ("Ok");
else exit (1);

Taxonomy upgrade extras:

Pages

Subscribe to RSS - LIGGGHTS® - Developer Forum