From Jacobson Lab Wiki
 Direct Minimization
minim atom/residue selection & rmsg[radient] real & mxitn integer & iter[ations] integer & niterup integer & nbup yes/no & gbup yes/no
 Selecting which atoms to minimize
The mandatory arguments of the minimization command specify which atoms to minimize. The idea is that you specify a set of residues, and also which atoms in those residues should be minimized. For example, you may want to only minimize side chains and not the backbone of a loop in a protein (e.g., residues 100-109 of chain B); the command would be:
minim side B:100 B:109
where "side[chain]" specifies that only side chain atoms are minimized, followed by the residue range. Any of the options under Specifying Residues can be used to specify which residues should be included. Other options for specifying which atoms to include are
- res[idues]: all atoms in specified residues
- hyd[rogens]: only hydrogens in specified residues
So, to specify minimization of the whole loops, including the backbone,
minimize residues B:100 B:109
and for minimization of the whole system, although it looks awkward, you can use
minim res all res
If you need to do something more complicated, you can concatenate together multiple atom selections. For example, to minimize the loop plus some side chains that contact it (for concreteness, we'll call them residues 75, 80, and 125 of chain B), you can use:
minimize & residues B:100 B:109 & sidechain single B:75 & sidechain single B:80 & sidechain single B:125
Finally, if you need to minimize a collection of atoms that cannot be specified using the atom-selection options described above, you can also specify one atom at a time (obviously not convenient, but helpful in a pinch), using
See Specifying Atoms for the syntax for identifying single atoms.
- The termination criterion for the minimization is determined by the residual root-mean-squared gradient operating on the atom that are being minimized. The default value is 0.001 kcal/mol/Å, but this can be changed with the parameter "rmsg[radient]".
- You can also specify the maximum number of Truncated Newton steps that can be taken (this is the number of "outer" loop iterations), using "mxitn".
- There are also a few options related to updating of the nonbonded list during the minimization. It should be kept in mind that, every time you updated the nonbonded list, the minimizer then is trying to find the minimum of a new potential. Normally, it will only be slightly different, so updating the nonbonded list should not cause too many problems, but it is worth keeping this point in mind. The parameter to turn nonbonded updating on or off is "nbup" (by default it is on).
- The frequency with which the nonbonded terms are updated is controlled by "niterup".
The default minimizer is a version of Truncated Newton, based on the TNPACK implementation of Schlick and co-workers. There are also conjugate gradient and quasi-Newton minimizers built in, but they are basically always slower, so I don’t see any need to access them at this point.