Skip to content

Commit

Permalink
Add MD plot and make small updates
Browse files Browse the repository at this point in the history
  • Loading branch information
davidbowler committed Jan 24, 2020
1 parent e55672e commit 699095b
Show file tree
Hide file tree
Showing 5 changed files with 23 additions and 22 deletions.
Binary file added docs/CONQUEST-manual/MDPlot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 2 additions & 4 deletions docs/CONQUEST-manual/basissets.rst
Original file line number Diff line number Diff line change
Expand Up @@ -178,8 +178,8 @@ Some form of self-consistency between the MSSF and the charge density
is required (as the MSSF will determine the Hamiltonian and hence the
output charge density). At present, this is performed as a complete
SCF cycle for each set of MSSF coefficients (though this is likely to
be updated soon for improved efficiency). This is selected by setting
the parameter ``Multisite.LFD.Minimise T``.
be updated soon for improved efficiency). This is selected by default
(but can be turned off by setting the parameter ``Multisite.LFD.NonSCF T``).

This iterative process is not variational, but is terminated when the
absolute energy change between iterations is less than
Expand All @@ -192,7 +192,6 @@ An example input block for this process would be as follows:
::

Multisite.LFD T
Multisite.LFD.Minimise T
Multisite.LFD.Min.ThreshE 1.0e-6
Multisite.LFD.Min.ThreshD 1.0e-6

Expand Down Expand Up @@ -230,7 +229,6 @@ and the coefficients will then be optimised.

Basis.MultisiteSF T
Multisite.LFD T
Multisite.LFD.Minimise T
minE.VaryBasis T

If good initial coefficient values have been found in a previous
Expand Down
4 changes: 3 additions & 1 deletion docs/CONQUEST-manual/examples.rst
Original file line number Diff line number Diff line change
Expand Up @@ -262,7 +262,9 @@ this simulation, the conserved quantity is the total energy (the sum
of ionic kinetic energy and potential energy of the system) which is
maintained to better than 0.1mHa in this instance. More importantly,
the variation in this quantity is much smaller than the variation in
the potential energy.
the potential energy. This can be seen in the plot below.

.. image:: MDPlot.png

Go to :ref:`top <examples>`.

Expand Down
30 changes: 16 additions & 14 deletions docs/CONQUEST-manual/moldyn.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,20 +20,22 @@ Go to :ref:`top <moldyn>`.
Self-consistency tolerance and XL-BOMD
--------------------------------------

Self-consistency tolerance is a critical parameter, because it can be
responsible for "drift" in the conserved quantity of the dynamics if it is not
tight enough. Although the molecular dynamics integrators used in CONQUEST are
time reversible, *the SCF procedure is not*. Therefore a tight SCF tolerance
(``minE.SCTolerance`` for diagonalisation, ``minE.LTolerance`` for linear
scaling) is necessary. In the case of diagonalisation, a value of ``1E-7`` is
The convergence of the electronic structure is important in MD, as
insufficient convergence can be responsible for "drift" in the
conserved quantity of the dynamics. Although the molecular dynamics
integrators used in CONQUEST are time reversible, *the SCF procedure
is not*. Therefore tight convergence (``minE.SCTolerance`` for
diagonalisation, ``minE.LTolerance`` for linear scaling) is
necessary. In the case of diagonalisation, SCF tolerance of ``1E-6`` is
typically enough to negate the drift. However, extended-Lagrangian
Born-Oppenheimer MD (XL-BOMD) :cite:`md-Niklasson2008`, currently only implemented for O(N),
essentially makes the SCF component of the MD time-reversible by adding the
electronic degrees of freedom to the Lagrangian, relaxing the constraint on
``minE.LTolerance`` --- although it is still somewhat dependent on the ensemble.
In the NVE and NVT ensembles, a L-tolerance of ``1E-5`` has been found to be
sufficient to give good energy conservations, decreasing to ``1E-6`` in the NPT
ensemble. The following flags are required for XL-BOMD:
Born-Oppenheimer MD (XL-BOMD) :cite:`md-Niklasson2008`, currently only
implemented for O(N), essentially makes the SCF component of the MD
time-reversible by adding the electronic degrees of freedom to the
Lagrangian, relaxing the constraint on ``minE.LTolerance`` ---
although it is still somewhat dependent on the ensemble. In the NVE
and NVT ensembles, a L-tolerance of ``1E-5`` has been found to be
sufficient to give good energy conservations, decreasing to ``1E-6``
in the NPT ensemble. The following flags are required for XL-BOMD:

::

Expand All @@ -55,7 +57,7 @@ setting,
AtomMove.RestartRun T

This will do several things: it will read the atomic coordinates from
``md.positions`` and read the ``md.checkpoint`` file, which contains the
``md.position`` and read the ``md.checkpoint`` file, which contains the
velocities and extended system (Nose-Hoover chain and cell) variables. Depending
on the value of ``DM.SolutionMethod``, it will read the K-matrix files
(``diagon``) or the L-matrix files (``ordern``), and if XL-BOMD is being used,
Expand Down
5 changes: 2 additions & 3 deletions docs/CONQUEST-manual/strucrelax.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ conjugate gradients at present, though L-BFGS will be implemented.
Setting ``AtomMove.WriteXSF T`` for all flavours of optimisation will dump the
trajectory to the file ``trajectory.xsf``, which can be visualised using `VMD
<https://www.ks.uiuc.edu/Research/vmd/>`_. Setting ``AtomMove.AppendCoords T``
will the structure at each step to ``UpdatedAtoms.dat`` in the format of a
will append the structure at each step to ``UpdatedAtoms.dat`` in the format of a
CONQUEST structure input.

For the L-BFGS and conjugate gradients relaxations, the progress of the calculation can be
Expand Down Expand Up @@ -157,8 +157,7 @@ may cause the calculation to crash, particlularly in the case of combined
optimisation. In such cases, it may help to try ``AtomMove.OptCellMethod 2``,
which uses a simple but robust double-loop minimisation: a full ionic conjugate
gradients relaxation for the inner loop and a single cell steepest descent
relaxation for the outer loop. This is considerable less efficient, and is not
guaranteed to converge to the same minimum as ``AtomMove.OptCellMethod 3``, but
relaxation for the outer loop. This is considerably less efficient, but
may help in particularly problematic cases.

Go to :ref:`top <strucrelax>`.
Expand Down

0 comments on commit 699095b

Please sign in to comment.