This is part of the colvar module |
Calculate a torsional angle.
This command can be used to compute the torsion between four atoms or alternatively to calculate the angle between two vectors projected on the plane orthogonal to an axis.
This input tells plumed to print the torsional angle between atoms 1, 2, 3 and 4 on file COLVAR.
t: TORSIONATOMS=1,2,3,4 # this is an alternative, equivalent, definition: # t: TORSION VECTOR1=2,1 AXIS=2,3 VECTOR2=3,4 PRINTthe four atoms involved in the torsional angleARG=tthe input for this action is the scalar output from one or more other actions.FILE=COLVARthe name of the file on which to output these quantities
If you are working with a protein you can specify the special named torsion angles \(\phi\), \(\psi\), \(\omega\) and \(\chi_1\) by using TORSION in combination with the MOLINFO command. This can be done by using the following syntax.
#SETTINGS MOLFILE=regtest/basic/rt32/helix.pdb MOLINFOMOLTYPE=proteincompulsory keyword ( default=protein ) what kind of molecule is contained in the pdb file - usually not needed since protein/RNA/DNA are compatibleSTRUCTURE=myprotein.pdb t1: TORSIONcompulsory keyword a file in pdb format containing a reference structure.ATOMS=@phi-3 t2: TORSIONthe four atoms involved in the torsional angleATOMS=@psi-4 PRINTthe four atoms involved in the torsional angleARG=t1,t2the input for this action is the scalar output from one or more other actions.FILE=colvarthe name of the file on which to output these quantitiesSTRIDE=10compulsory keyword ( default=1 ) the frequency with which the quantities of interest should be output
Here, @phi-3 tells plumed that you would like to calculate the \(\phi\) angle in the third residue of the protein. Similarly @psi-4 tells plumed that you want to calculate the \(\psi\) angle of the fourth residue of the protein.
Both of the previous examples specify that the torsion angle should be calculated based on the position of four atoms. For the first example in particular the assumption when the torsion is specified in this way is that there are chemical bonds between atoms 1 and 2, atoms 2 and 3 and atoms 3 and 4. In general, however, a torsional angle measures the angle between two planes, which have at least one vector in common. As shown below, there is thus an alternate, more general, way through which we can define a torsional angle:
t1: TORSIONVECTOR1=1,2could not find this keywordAXIS=3,4two atoms that define an axis.VECTOR2=5,6 PRINTcould not find this keywordARG=t1the input for this action is the scalar output from one or more other actions.FILE=colvarthe name of the file on which to output these quantitiesSTRIDE=20compulsory keyword ( default=1 ) the frequency with which the quantities of interest should be output
This input instructs PLUMED to calculate the angle between the plane containing the vector connecting atoms 1 and 2 and the vector connecting atoms 3 and 4 and the plane containing this second vector and the vector connecting atoms 5 and 6. We can even use PLUMED to calculate the torsional angle between two bond vectors around the z-axis as shown below:
a0: FIXEDATOMAT=0,0,0 az: FIXEDATOMcompulsory keyword coordinates of the virtual atomAT=0,0,1 t1: TORSIONcompulsory keyword coordinates of the virtual atomVECTOR1=1,2could not find this keywordAXIS=a0,aztwo atoms that define an axis.VECTOR2=5,6 PRINTcould not find this keywordARG=t1the input for this action is the scalar output from one or more other actions.FILE=colvarthe name of the file on which to output these quantitiesSTRIDE=20compulsory keyword ( default=1 ) the frequency with which the quantities of interest should be output
ATOMS | the four atoms involved in the torsional angle |
AXIS | two atoms that define an axis. You can use this to find the angle in the plane perpendicular to the axis between the vectors specified using the VECTOR1 and VECTOR2 keywords. |
VECTOR1 | two atoms that define a vector. You can use this in combination with VECTOR2 and AXIS |
VECTOR2 | two atoms that define a vector. You can use this in combination with VECTOR1 and AXIS |
NUMERICAL_DERIVATIVES | ( default=off ) calculate the derivatives for these quantities numerically |
NOPBC | ( default=off ) ignore the periodic boundary conditions when calculating distances |
COSINE | ( default=off ) calculate cosine instead of dihedral |