.. _subs_buildtasks_psfgen_mods_crotations:

crotations
----------

A ``crotations`` directive is used to specify rotations about rotatable dihedral bonds to reposition parts of the protein. There are 8 types of ``crotations``

1. ``PHI``: Rotation of a protein subchain about the &phi; angle of a particular residue.  The syntax for specifying a ``PHI`` crotation is ``PHI,<chain>,<resi1>,<resi2>,<angle>``.  ``<chain>`` is the chain ID, ``<resi1>`` is the sequence number of the residue that owns the &phi; angle, ``<resi2>`` is the sequence number of the furthest residue along the chain (in either the N or C direction) containing ``<resi1>`` that defines the block of atoms that will undergo rotation, and ``<angle>`` is the angle of rotation in degrees.  For example, ``PHI,A,12,15,180`` would rotate residues 12 through 15 in chain A by 180 degrees about the &phi; angle of residue 12. If ``<resi1>`` is in the C direction relative to ``<resi2>``, this is interpreted as a rotation of all atoms N terminal to ``<resi1>`` up to ``<resi2>``. 
2. ``PSI``: Rotation of a protein subchain about the &psi; angle of a particular residue.  The syntax for specifying a ``PSI`` crotation is ``PSI,<chain>,<resi1>,<resi2>,<angle>``.
3. ``OMEGA``: Rotation of a protein subchain about the &omega; angle of a particular residue.  The syntax for specifying a ``OMEGA`` crotation is ``OMEGA,<chain>,<resi1>,<resi2>,<angle>``.
4. ``CHI1``: Rotation of the sidechain &chi;<sub>1</sub> angle of a particular residue.  The syntax for specifying a ``CHI1`` crotation is ``CHI1,<chain>,<resi>,<angle>``.  ``<chain>`` is the chain ID, ``<resi>`` is the sequence number of the residue that owns the &chi;1 angle, and ``<angle>`` is the angle of rotation in degrees.  For example, ``CHI1,A,12,180`` would rotate the &chi;<sub>1</sub> angle of residue 12 in chain A by 180 degrees.
5. ``CHI2``: Rotation of the sidechain &chi;<sub>2</sub> angle of a particular residue.  The syntax for specifying a ``CHI2`` crotation is ``CHI2,<chain>,<resi>,<angle>``.
6. ``ANGLEIJK``: Rotation of an entire protein segment around the axis defined by the cross product normal to the angle made by three identied atoms; the atom identified as ``i`` can be in its own segment, but ``j`` and ``k`` must be in the same segment (all three can be in the same segment as well).  The two vectors considered are those that point from atom ``i`` to atom ``j`` and from atom ``j`` to atom ``k``.  All atoms in atom ``j``'s and ``k``'s segment will rotate about the cross product of these two vectors. The syntax for specifying an ``ANGLEIJK`` crotation is ``ANGLEIJK,<segname_i>,<resi_i>,<atom_i>,<segname_jk>,<resi_j>,<atom_j>,<resi_k>,<atom_k>,<angle>``.  ``<segname_i>`` is the segment ID of the first atom, ``<resi_i>`` is the sequence number of the first atom, ``<atom_i>`` is the name of the first atom, ``<segname_jk>`` is the segment ID of the second and third atoms, ``<resi_j>`` is the sequence number of the second atom, ``<atom_j>`` is the name of the second atom, ``<resi_k>`` is the sequence number of the third atom, ``<atom_k>`` is the name of the third atom, and ``<angle>`` is the angle of rotation in degrees.  For example, ``ANGLEIJK,A,12,N,B,15,C,18,O,180`` would rotate all atoms in segment B by 180 degrees about the angle defined by atoms N (in residue 12 of segment A), C (in residue 15 of segment B), and O (in residue 18 of segment B).
7. ``ALPHA``: Fold specified subchain into an &alpha; helix.  The syntax for specifying an ``ALPHA`` crotation is ``ALPHA,<chain>,<resi1>,<resi2>,<resi3>``. ``<chain>`` is the chain ID, ``<resi1>`` is the sequence number of the first residue in the helix, ``<resi2>`` is the sequence number of the last residue in the helix, and ``<resi3>`` is the last residue in the collection of residues whose positions are allowed to move due to the folding.  ``<resi3>`` can be omitted; if so, only positions of atoms between ``<resi1>`` and ``<resi2>`` inclusive are repositioned.  For example, ``ALPHA,A,12,15,18`` would fold residues 12 through 15 in chain A into an &alpha; helix, and atoms up to and including residue 18 are repositioned as a result.
8. ``GLYCAN_PENDANT``: Rotation of a glycan pendant about the bond between two specified atoms. The syntax for specifying a ``GLYCAN_PENDANT`` crotation is ``GLYCAN_PENDANT,<chain>,<resi_i>,<resi_j>,<atom_i>,<atom_j>,<angle>``. ``<chain>`` is the chain ID, ``<resi_i>`` is the resid (sequence number plus optional insertion code) of the first atom, ``<resi_j>`` is the resid of the second atom, ``<atom_i>`` is the name of the first atom, ``<atom_j>`` is the name of the second atom, and ``<angle>`` is the angle of rotation in degrees. For example, ``GLYCAN_PENDANT,A,12,15,C1,O4,90`` would rotate the glycan pendant connected between atoms C1 (in residue 12 of chain A) and O4 (in residue 15 of chain A) by 90 degrees.  Atoms i and j must be bonded by a rotatable bond, otherwise no rotation will occur.  The bond between i and j must define a pendant group; that is, atom j and all atoms connected to it (except for atom i) will be rotated about the bond between i and j.