this is for holding javascript data
Xavier Andrade edited geometry optimization.tex
over 9 years ago
Commit id: 3e9beb4a5d538f5d39612e0d5bc621989989e9fa
deletions | additions
diff --git a/geometry optimization.tex b/geometry optimization.tex
index 732a409..6a3477d 100644
--- a/geometry optimization.tex
+++ b/geometry optimization.tex
...
%When performing geometry optimization on real-space grids, the spacing should be one of the most important aspects to consider in order to get accurate results. However, one of the weaknesses in previous versions of Octopus was the prediction of low-energy structures, performing geometry optimizations, regardless of the spacing of the mesh. In low-dimensional systems, this is a significant issue, due the precise determination of the geometric arrangement of the atoms, is probably the first step in their description and understanding~\cite{Goedecker2005}.
With our approach, the forces tend to converge faster with the grid spacing than the energy. This means that to perform geometry optimizations it would be ideal to have a local minimization method that only relies on the forces, without needing to evaluate the energy as both values will not be entirely
consistant. consistent. Such method is the fast inertial relaxation engine (FIRE) algorithm, put forward by Bitzek {\it et al.}~\cite{Bitzek2006}. FIRE has shown a competitive performance compared with both the standard conjugate gradient method, and more sophisticated variations typically used in {\it ab initio} calculations. A recent article shows also the FIRE as one of the most convenient algorithm due to its speed and precision to reach the nearest local minimum starting from a given initial configuration~\cite{Asenjo2013}.
The FIRE algorithm is based on molecular dynamics with additional velocity modifications and
adaptative adaptive time steps which only requires first derivatives of the target function. In the FIRE algorithm, the system slides down the potential energy surface, gathering ``momentum'' until the direction of the gradient changes, at which point it stops, resets the
adaptative adaptive parameters, and resumes sliding. This gain of momentum is done through the modification of the time step $\Delta t$ as
adaptative adaptive parameter, and by introducing the following velocity modification
%
\begin{equation}
\label{eq:velocity_fire}
\mathrm{\vec{v}}(t) \rightarrow \mathrm{\vec{V}}(t) = (1-\alpha)\mathrm{\vec{v}}(t) + \alpha \left| \mathrm{\vec{v}}(t) \right| \hat{F}(t)\ ,
\end{equation}
%
where $\mathrm{\vec{v}}$ is the velocity of the atoms, $\alpha$ is an
adaptative adaptive parameter, and $\hat{F}$ is an unitary vector in the direction of the force $\vec{F}$. By doing this velocity modification, the acceleration of the atoms are given by
%
\begin{equation}
\label{eq:acceleration_fire}