[lammps-users] fix rigid with Granular type

Doesn't sound right - why don't you print out forces on the atoms,
which should all be external and see if they change.


2009/12/10 Diego Peinado Martín <[email protected]>:

I've done it. If I do not exclude the interaction between particles,
then a great force appears between them as expected to occur. The only
thing is that probably when computing the forces and moments that acts
in the clump, the resultant of the internal forces should be zero. I
suspect that thats not the case, and then, the interior forces prevails
over the exterior forces giving an odd behaviour. I've done a very small
video showing the impact with the floor (output.mpg).
When excluding the interaction, then only external forces appears, much
more smaller in magnitude, and then the 'expected' behaviour can be seen

To see if this is due to small round off errors (big internal forces to
be cancelled against smaller external forces), I've changed the distance
between the particles, and finally the kt between particles. In this
case the internal forces are of the same order than the gravity, and
although they modify the behaviour, it is not so evident (output3.mpg)

So the internal forces acts as it were external forces producing an
artificial stabilizing moment.

By the way, I think there is a small typo in line 486 of fix_rigid.cpp
It reads:
else if (atom->omega_flag) eflags[i] != OMEGA;
and probably should read:
else if (atom->omega_flag) eflags[i] |= OMEGA;

Thanks in advance, best regards,




Well, granular forces are huge if particles are highly overalapped,
as they might be if you create a rigid body. So it's not surprising
that they overwhelm the wall force (lose precision) and dynamics is bad. So you
are saying that turning off internal forces gives the correct dynamics
for the rigid body hitting the wall, i.e. torque on the body is


2009/12/11 Diego Peinado Martín <[email protected]>: