#### Previous topic

Monte Carlo Minimization/Annealing (MCMA)

#### Next topic

Miscellaneous Commands

# Energy Manipulations: Minimization and Dynamics¶

One can minimize the energy by adjusting the coordinates of all the atoms in order to reduce its value. Several minimization algorithms are provided. They include:

• Steepest Descent (SD)
• Newton-Raphson (NRAP)
• Powell (POWE)
• Truncated Newton Method (TNPACK)

## Syntax for Energy Manipulation Commands¶

```MINI     { SD     steepd-spec  } [ nonbond-spec ] [ hbond-spec ] -
{ CONJ   conj-spec    } [   INBFrq 0   ] [  IHBFrq 0  ] [NOUPdate]
{ ABNR   abnr-spec    }
{ NRAP   nrap-spec    }
{ POWEll powell_spec  }
{ TN     tnpack-spec  }

[ frequency-spec ] [ tolerance-spec ] [ io-spec ] }

[ CHEQ [CGMD int] [CGIN] [CGFC] [PBEQ] [QPOL [IPOL int] ] ]

hbond-spec::=     *Note Hbonds:(chmdoc/hbonds.doc).
nonbond-spec::=   *Note Nbonds:(chmdoc/nbonds.doc).

frequency-spec::= [NSTEP int] [IHBFrq int] [INBFrq int] [NPRInt int]

tolerance-spec::= [TOLENR real] [TOLGRD real] [TOLITR int] [TOLSTP real]

io-spec::= [DEBUG] [IUNCrd int [NSAVC int] ] [IUNXyz [NSAVX int] [MXYZ int] ]

conj-spec::= [NCGCyc int] [PCUT real] [PRTMin int]
[LATTice] [NOCOordinates]

powell-spec::=    [LATTice] [NOCOordinates]

steepd-spce::=  [NOENergy ] [LATTice] [NOCOordinates]

abnr-spec::= [EIGRng real] [MINDim int] [STPLim real] -
[STRIct real] [ MASS ] [PSTRct real]
[LATTice] [NOCOordinates] [FMEM real]

nrap-spec::=  [TFREq real]

tnpack-spec::= [NCGCyc int]
[PREC or NOPR] [USER or OURH]  [REST or QUAT]  [NOSC or SCHE]
[DEFS or SEAR] [LOWP or HIGP]  [IORD or NOOR] [PERM or NOPM]```

## Options common to minimization and dynamics¶

The following table describes the keywords which apply to all minimization methods.

 Keyword Default Purpose NSTEP 100 The number of steps to be taken. This is the number of cycles of minimization, not the number of energy evaluations. INBFRQ 50 The frequency of regenerating the non-bonded list. The list is regenerated if the current step number modulo INBFRQ is zero and if INBFRQ is non-zero. Specifying zero prevents the non-bonded list from being regenerated at all. IHBFRQ 50 The frequency of regenerating the hydrogen bond list. Analogous to INBFRQ non-bond-spec The specifications for generating the non-bonded list. See doc:nbonds. hbond-spec The specifications for generating the hydrogen bond list. See doc:hbonds NPRINT 1 The frequency with which energies are printed during the course of dynamics or minimization. GRADient Minimize the magnitude of the gradient of the energy instead of the energy. NUMErical Forces will be determined by finite differences IUNCrd -1 Unit to write out a “trajectory” file for the minimization NSAVC 1 Frequency for writing out frames (only with IUNCrd) DEBUg Extra print for debug purposes

In the table which follows, keywords enclosed in square brackets means that one can choose one in the set. Such enclosed keywords do not expect a value after them. All other keywords are used for specifying values, see Syntax for Energy Manipulation Commands. The method column shows which method the keyword affects.

Note that the following commands are equivalent:

• ANAL = USER
• FDIF = OURH
• SCOF = NOSC
• SCON = SCHE
• SRON = DEFS
• SROF = SEAR

## Discussion of the various minimization methods¶

There are several different algorithms for minimizing the energy of the system. They all involve calculating the derivative of the potential energy, and possibly the second derivative, and using that information to adjust the coordinates in order to find a lower energy. In the descriptions of the algorithms below, a capitalized keyword at the beginning of each paragraph is the key word used to invoke that method. After the descriptions is a listing of all keywords associated with minimization.

The simplest minimization algorithm is steepest descent (SD). In each step of this iterative procedure, we adjust the coordinates in the negative direction of the gradient. It has one adjustable parameter, the step size, which determines how far to shift the coordinates at each step. The step size is adjusted depending on whether a step results in a lower energy. I.e., if the energy drops, we increase the step size by 20% to accelerate the convergence. If the energy rises, we overshot a minimum, so the step size is halved. Steepest descent does not converge in general, but it will rapidly improve a very poor conformation.

A second method is the conjugate gradient technique (CONJ) which has better convergence characteristics (R. Fletcher & C.M. Reeves, The Computer Journal 7:149 (1964)). The method is iterative and makes use of the previous history of minimization steps as well as the current gradient to determine the next step. It can be shown that the method converges to the minimum energy in N steps for a quadratic energy surface where N is the number of degrees of freedom in the energy. Since several terms in the potential are quadratic, it requires less evaluations of the energy and gradient to achieve the same reduction in energy in comparison to steepest descent. Its main drawback is that with very poor conformations, it is more likely to generate numerical overflows than steepest descent. The algorithm used in CHARMM has a slightly better interpolation scheme and automatic step size selection.

A third method is the conjugate gradient powell method minimizer (POWE) (A. Brunger). Its efficiency is much improved over the Fletcher and Reeves method. The use of the POWELL minimizer is encouraged whenever ABNR is not possible. The POWELL minimizer has no INBFRQ or IHBFRQ feature. The use of CHARMM loops to mimic this important feature is encouraged. The CHARMM loop facilities allow harmonic constrained minimizations with periodic updates. In case of bad contacts or unlikely conformations the SHAKE method might give an error when the displacements become to large. Using a harmonic constraint setup with periodic updates solves this problem.