Relax

Element: relax

The element relax activates the optimization of atomic positions at fixed lattice parameters.

Type: no content
XPath: /input/relax

This element allows for specification of the following attributes: addtohistory, endbfgs, epsforce, history, historyformat, maxbfgs, maxsteps, method, outputlevel, printtorque, taubfgs, taunewton

Attribute: addtohistory

If history is "true", this switch allows newly computed optimization steps to be appended to a previously generated history file.

Type: boolean
Default: "false"
Use: optional
XPath: /input/relax/@addtohistory


Attribute: endbfgs

When using the "bfgs" method, specifies the method employed for the relaxation if the "bfgs" scheme fails to converge.

  • "newton" - Simple (Newton-like) method, see also method.
  • "harmonic" - Method based on the combination of the "newton" method and the harmonic approximation, see also method.
  • "stop" - Stops the "bfgs" optimization procedure at the last accepted configuration.
Type: string
Default: "harmonic"
Use: optional
XPath: /input/relax/@endbfgs


Attribute: epsforce

The optimization stops when the maximum amplitude of the force acting on the atoms is lower then the value specified by epsforce. Notice that, in particular for the "bfgs" method, high accuracy in the calculated forces requires high accuracy in the calculated total energy (see the attribute epsengy of the groundstate element).

Type: fortrandouble
Default: "2.0d-4"
Use: optional
XPath: /input/relax/@epsforce


Attribute: history

If "true" the atomic configuration at each relaxation step is written in a history file which is generated in one of the formats specified in historyformat.

Type: boolean
Default: "false"
Use: optional
XPath: /input/relax/@history


Attribute: historyformat

If history is "true", the history file, containig atomic configurations at each optimization step, is generated in one of the following formats:

  • "xyz" molecular format. The first line of this file the total number of atoms. The second line is a comment line with total energy in eV. Finally, starting from line three, one finds atomic species, cartesian coordinates in Angstrom, and forces in eV/Angstrom. This format is repeated for each optimization step.
  • "gulp" format, which is useful to visualize crystal structure changes using the GDIS program.
Type: string
Default: "xyz"
Use: optional
XPath: /input/relax/@historyformat


Attribute: maxbfgs

Maximum number of atomic configurations that can be investigated in a single "bfgs" optimization step.

Type: integer
Default: "5"
Use: optional
XPath: /input/relax/@maxbfgs


Attribute: maxsteps

Maximum number of optimization steps.

Type: integer
Default: "200"
Use: optional
XPath: /input/relax/@maxsteps


Attribute: method

Specify the method used for atomic relaxation:

  • "newton" - Simple (Newton-like) method. At each step $m$ of a structural optimization run, the atom $\alpha$ is displaced according to
(1)
\begin{align} {\bf r}_{\alpha}^{(m+1)}={\bf r}_{\alpha}^{(m)}+\tau_{\alpha}^{(m)} \left({ \bf F}_{\alpha}^{(m)}+{ \bf F}_{\alpha}^{(m-1)}\right), \end{align}

i.e., the magnitude of the displacement at the step $m$ is proportional to $\tau_{\alpha}^{(m)}$. For the initial step, $\tau_{\alpha}^{(0)}$ is set to taunewton. If the forces of two subsequent optimization steps have the same sign, $\tau_{\alpha}^{(m)}$ is increased by $\tau_{\alpha}^{(0)}$. Otherwise, $\tau_{\alpha}^{(m)}$ is reset to $\tau_{\alpha}^{(0)}$.

  • "harmonic" - Method based on the combination of the "newton" method and the harmonic approximation. Contrary to "newton", all cartesian components of the position vector of each atom are treated independently. At the optimization step $m$, each cartesian component of the position vector of each atom is updated using the same algorithm as in "newton" (newton step") unless the harmonic condition", either
(2)
\begin{align} \beta\equiv\frac{{ \bf F}_{\alpha}^{(m-1)}}{{ \bf F}_{\alpha}^{(m)}} \in\; ]-\infty,0] \end{align}

or

(3)
\begin{align} \beta \in [3,\infty[\:, \end{align}

is fulfilled. In this case (``harmonic step"), atomic positions are updated according to

(4)
\begin{align} {\bf r}_{\alpha}^{(m+1)}=\frac{ {\bf r}_{\alpha}^{(m-1)}-\beta\,{\bf r}_{\alpha}^{(m)} } { 1-\beta }\:. \end{align}

The "harmonic" method is of general validity and it is particularly efficient when the atomic configuration is close to the optimized one and the internal degrees of freedom are weakly coupled.

  • "bfgs" - Limited memory algorithm for bound constrained optimization, see Byrd, et al., SIAM J. Scientific Computing 16, 1190 (1995). This method requires high accuracy for the determination of the total energy in dependence of the maximum allowed for the residual atomic force. For this reason, the default value of the attribute epsengy is decreased in order to be at least equal to the value of the attribute epsforce of the relax element multiplied by a factor 0.02.
Type: string
Default: "bfgs"
Use: optional
XPath: /input/relax/@method


Attribute: outputlevel

Specify the amount of information which is printed to output files:

  • "low" - Minimal output is produced. For each optimization steps, the main output file "INFO.OUT" contains information on the number of SCF cicles performed, the value of the maximum force acting on the atoms, and the calculated total energy.
  • "normal" - (default) Standard information. In addition to the output level "low", the atomic configuration (in lattice coordinates) and the total forces (in cartesian coordinates) acting on the atoms are also given. If a constrained optimization is performed, the constrained (unconstrained) cartesian components of each atom are labeled by "T" ("F").
  • "high" - Detailed output. In addition to the output level "normal", partial charges and the different force contributions are also specified.
Type: choose from:
low
normal
high
Default: "normal"
Use: optional
XPath: /input/relax/@outputlevel


Attribute: printtorque

If "true" the total torque with respect to cartesian axes with origin in the center of mass is written on the output file INFO.OUT. This option is useful when dealing with isolated molecules when checking if the molecule is rotating as a whole during the optimization. If printtorque is set to "true" the cartesian coordinates of the center of mass are also written. Notice that the definition of a center of mass is unique only for isolated molecules.

Type: boolean
Default: "false"
Use: optional
XPath: /input/relax/@printtorque


Attribute: taubfgs

Maximum atomic displacement for atomic relaxation when using the "bfgs" method. At each optimization step, the optimized value of each cartesian coordinate of each atom is searched in a range of size $2\tau_{\tt BFGS}$ centered at the actual value of the coordinate.

Type: fortrandouble
Default: "0.3d0"
Use: optional
XPath: /input/relax/@taubfgs


Attribute: taunewton

Parameter determining the initial amplitude of atomic displacement for the "newton" method of atomic relaxation.

Type: fortrandouble
Default: "0.2d0"
Use: optional
XPath: /input/relax/@taunewton

Reused Elements

The following elements can occur more than once in the input file. There for they are listed separately.

Data Types

The Input definition uses derived data types. These are described here.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License