Rotate specified dihedral(s) in given COORDS set by specific interval or to random values

permutedihedrals crdset <COORDS set> resrange <range> [{interval | random}] [outtraj <filename> [<outfmt>]] [crdout <output COORDS>] [<dihedral types>]
Options for ’random’:
[rseed <rseed>] [out <# problems file> [<set name>]]
[ check [cutoff <cutoff>] [rescutoff <rescutoff>] [checkallresidues]
[backtrack <backtrack>] [increment <increment>] [maxfactor <max_factor>] ]
Options for ’interval’:
<interval deg>
<dihedral types> = alpha beta gamma delta epsilon zeta nu1 nu2 h1p c2p chin phi psi chip omega

crdset <COORDS set> COORDS data set to operate on.
resrange <range> Residue range to search for dihedrals.
interval Rotate found dihedrals by <interval>. This is done in an ordered fashion so that every combination of dihedral rotations is sampled at least once.
random Rotate each found dihedral randomly.
[outtraj <filename>] Trajectory file to write coordinates to.
[<outfmt>] Trajectory file format.
[crdout <output COORDS>] COORDS data set to write coordinates to.
<dihedral type> One or more dihedral types to search for.

Options for ’interval:
<interval deg> Amount to rotate dihedral by each step.

Options for ’random’:
[rseed <rseed>] Random number seed.
[out <# problems file>] File to write number of problems (clashes) each frame to.
[<set name>] Number of problems data set name.
[check] Check randomly rotated structure for clashes.
[cutoff <cutoff>] Atom cutoff for checking for clashes (default 0.8 Å).
[rescutoff <cutoff>] Residue cutoff for checking for clashes (defualt 10.0 Å).
[checkallresidues] If specified all residues checked for clashes, otherwise only residues up to the currently rotated dihedral check.
[backtrack <backtrack>] If a clash is encountered at dihedral N and cannot be resolved, go to dihedral N-<backtrack> to try and resolve the clash (default 4).
[increment <increment>] If a clash is encountered, first attempt to rotate dihedral by increment to resolve it; if it cannot be resolved by a full
rotation the calculation will backtrack (default 1).
[maxfactor <max_factor>] The maximum number of total attempted rotations will be <max_factor> * <total # of dihedrals> (default 2).

Create a trajectory by rotating specified dihedrals in a structure by regular intervals (interval), or create 1 structure by randomly rotating specified dihedrals (random). When randomly rotating dihedrals steric clashes will be checked if check is specified; in such cases the algorithm will attempt to resolve the clash as best it can. If clashes are not being resolved you can increase the number of rotation attempts cpptraj will make by increasing maxfactor.

For example, to rotate all backbone dihedrals in a protein with coordinates in a file named tz2.rst7 in -120 degree intervals and write the resulting trajectory in Amber format to rotations.mdcrd:

reference tz2.rst7 [TZ2]
permutedihedrals crdset [TZ2] interval -120 outtraj rotations.mdcrd phi psi

To randomly rotate backbone dihedrals for the same structure and write to file random.mol2 in MOL2 format:

reference tz2.rst7 [TZ2]
permutedihedrals crdset [TZ2] random rseed 1 check maxfactor 10 phi psi \
outtraj random.mol2 multi