Local Rigid Body Framework

From Docswiki
Jump to navigation Jump to search

Introduction

In this framework you can group arbitrary sets of atoms into rigid bodies. It currently works only in GMIN, but I will soon implement this in OPTIM too. You can use CHARMM, AMBER force fields or you can define your own sets of potentials. If you have many but identical rigid bodies, Dwaipayan's implementation of rigid bodies would be simpler to use.

The rigid body rotational degrees of freedom are implemented using angle-axis, see D. Chakrabarti and D. J. Wales, PCCP 11, 1970-1976 (2009). For small angles, Taylor expansions are done up to linear order.

Requirements

You would need to provide the following files:

  • 1. coordsinirigid under the following format
 x1 y1 z1
 x2 y2 z2
 ...
 ...
 xn yn zn

You should provide the coordinates of all the atoms whether they are part of rigid bodies or not. During initialization, GMIN will select appropriate coordinates and throw away irrelevant ones.

  • 2. rbodyconfig under the following format
 GROUP NoAtomsInGroup
 Atom no.1
 Atom no.2
 ...
 ...
 Atom no.n

so for example

 GROUP 4
 5
 8
 10 
 15

means you have a rigid body with 4 members. The members are atoms 5, 8, 10 and 15. GMIN will then look up the coordinates of atoms 5, 8, 10 and 15 under coordsinirigid and then use them as the definition of the rigid body.

See also Automatic rigid body grouping.

Take Step Moves

In principle, you can use all take step moves available in GMIN. However, you want to be careful if your take step moves have the potential to ruin your rigid body definitions. When this happens, GMIN will recover in the following way. It computes the center of mass and orientation of your rigid body after the take step moves. It then computes what the coordinates of the atoms in the rigid bodies should be given the aforementioned center of mass and orientation.

Speed-up

From benchmarking using trypzip and chignolin, we got a speed-up by a factor of 3-4. Obviously it depends on what you group as rigid bodies and how big your system is.

Appropriate keywords to use in GMIN data file

1. RIGIDINIT

This will turn on local rigid framework.

2. RELAXFINALQUENCH

This means final quench is done in atom coordinates. Useful if you want to compare final energies.

3. OPTIMISEROTATION x y z

This option means you will try to avoid \theta close to zero in angle axis framework. Whenever this happens it will be rotated by (x, y, z) in angle-axis notation. During coordinates transformation from atom to rigid coordinates, it will shift the value of \theta to be between 2\pi and 4\pi. You want to use this option if you are doing large molecules and your rigid bodies move very little from their original definitions.

4. NRELAXRIGID MinR MinA

Minimizations will use rigid coords for MinR steps and then atom coords for MinA steps.

Examples

You can find examples in my directory in sinister/clust/mek-quake:

/home/hk286/LOCALRIGIDEXAMPLES

At the moment, there are examples for using local rigid body with AMBER and CHARMM. In the near future, I will add a wiki page on how to add coarse-grained potentials and use them in local rigid body framework.


--Hk286 13:45, 25 January 2012 (UTC)