Hi All,

In order to better understand MD algorithms, I am writing an MD engine. An area that I am a bit stumped is how to zero the angular momentum of a collection of particles. I understand how to zero the linear momentum but not angular. I’ve looked at the lammps code but I’m still a bit confused. Is anyone able to give me the basic idea of zero’ing the angular momentum?

Thanks,

Sara

Hi All,

In order to better understand MD algorithms, I am writing an MD engine. An

area that I am a bit stumped is how to zero the angular momentum of a

collection of particles. I understand how to zero the linear momentum but

not angular. I've looked at the lammps code but I'm still a bit confused.

Is anyone able to give me the basic idea of zero'ing the angular momentum?

like i mentioned in a previous e-mail with a similar intent: this

mailing list is not a classroom. if you have a specific problem with

lammps or its implementation, feel free to ask a specific question.

"can somebody give me the basic idea?" is not it. that is something

you need to discuss with your adviser/teacher or pick up from suitable

text books.

why don't you just pick up a good text book about classical mechanics?

for your intents and purposes, a collection of particles is nothing

else than a rigid body. the rest should be straightforward and on the

level of high-school physics (well, at least that is how i remember

it. it has been a while since then).

axel.

In the Velocity class (velocity.cpp) there is a

zero_rotation() method which does it for a group of

atoms.

The basic idea is that you pick a center point,

typically the center-of-mass. Then compute the

current angular momentum around it and convert

to omega (angular velocity). Typically the net omega should

be tiny if the velocities of the atoms were created

randomly. Then you can subtract that omega off

of each atom, which is a component of its velocity

perpendicular to its vector to the center of mass point.

Steve