[lammps-users] Fix angles during relaxation

Dear Lammps users,

I wonder if anyone could point me in the right direction in case LAMMPS provides the ability to fix the rotational degree of freedom during a relaxation, i.e. I would like to decouple the translational effect from the local rotational effect in a twisted bilayer graphene system for instance. Basically, keep the angles between atoms fixed, only let them increase and decrease their respective bond lengths.

Not sure I am making sense here.

I briefly thought of using fix bond/create/angle, but I don’t think this allows me to do what I have in mind.



what you are asking for is rather complex. I am not aware of any existing feature in LAMMPS that can do what you are looking for. Also it is not as simple as you might think.
For a simple example, say a water molecule, you could project the individual atom velocities on the H-O-H angle, and O-H bonds and keep only the components you want. but for more complex object, this is getting more complex because you may not be able to freely change things even if only limited to bonds. in the water molecule example, lets assume there is also a bond between the two hydrogen atoms. now the, no angle changed requirement is much more restrictive, since a different change on the O-H bonds and a fixed H-O-H angle does not protect the H-H-O angles from being changed.
If I am not mistaken, the issue is ultimately similar (just with the opposite purpose) to why fix shake is limited to constraining only small clusters.


Thank you Axel.
I will give it some more thought to see how I can extract the information I want (quantify the effect of the rotational degree of freedom vs the translational one).