[gmx-users] Remove rotation around the center of mass

gmail wenjin.brooks.li at gmail.com
Wed Jun 4 01:02:05 CEST 2014


Dear gmx-users,

I have some questions on the way that gromacs remove the rotation around the center of mass when set "comm-mode = Angular”

I have checked the related code for removing the rotation and have a question on how gromacs estimate the inertia tensor I.

In gromacs, the inertia tensor is estimated as follows,

I=sum m_i*[x_i*x_i]-M*[x_c*x_c]

here, m_i is the mass of atom i;
          x_i is the Cartesian coordinate of atom i;
          x_c is the center of mass;
          M is the total mass of the system.
          [x*x] represents the outer product between x and x.

One can easily get that 

I=sum m_i*[y_i*y_i]  with y_i = x_i - x_c     ———(1)

However, from standard mechanics textbook, the inertia is given as

I=sum m_i*{(y_i.y_i)E - [y_i*y_i]}       ———— (2)

here,  y_i.y_i is the inner product between y_i and y_i;
          E is a 3*3 identity matrix.

I want to know the reason that gromacs use Eq. (1) instead of Eq. (2) to calculate the inertia tensor.

Since gromacs estimate the angular velocity (w) with 

w=I^-1*L
Here, I^-1 is the inverse of the inertia tensor I;
          L is the angular momentum.

The angular velocity will be different using Eq. (1) comparing to Eq. (2)

Does anyone know why gromacs use Eq. (1) not Eq. (2)?

Thanks,
Wenjin




More information about the gromacs.org_gmx-users mailing list