added fix_latte.txt

This commit is contained in:
Christian Negre 2017-09-15 17:40:34 -06:00
parent 60faca2896
commit 39daf3c6f6
1 changed files with 171 additions and 0 deletions

171
src/fix_latte.txt Normal file
View File

@ -0,0 +1,171 @@
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Section_commands.html#comm)
:line
fix latte command :h3
[Syntax:]
fix ID group-ID latte peID :pre
ID, group-ID are documented in "fix"_fix.html command
latte = style name of this fix command
peID = NULL or ID of compute used to calculate per-atom energy :ul
[Examples:]
fix dftb all latte NULL :pre
[Description:]
This fix style is a wrapper on the self-consistent charge transfer density functional
based tight binding (DFTB) code LATTE. If you download and build LATTE, it can be called
as a library by LAMMPS via this fix to run dynamics or perform energy
minimization using DFTB forces and energies computed by LATTE.
LATTE is principally developed and supported by M.J. Cawkwell
and co-workers at Los Alamos National Laboratories (LANL).
See the full list of contributors in the /LATTE/README.md file.
The LATTE program needs to be compiled as a library and linked with LAMMPS.
LATTE can be downloaded at
"https://github.com/lanl/LATTE"_https://github.com/lanl/LATTE.
and instructions on how to build LATTE on your system and be found
in the lib/latte/README file.
Once LAMMPS is build with the LATTE package, you can run the example input
scripts for molecular dynamics or geometry optimization that are found in examples/latte.
NOTE: LATTE is a code for performing self-consistent charge transfer
tight-binding (SC-TB) calculations of total energies and the forces acting
on atoms in molecules and solids. This tight-binding method is becoming more
and more popular and widely used in chemistry, biochemistry, material science,
etc. The SC-TB formalism is derived from an expansion of the Kohn-Sham
density functional to second order in charge fluctuations about a reference charge of
overlapping atom-centered densities and bond integrals are parameterized using
a Slater-Koster tight-binding approach. This procedure, which usually is referred
to as the DFTB method has been described in detail by ("Elstner"_#Elstner) and ("Finnis"_#Finnis)
and coworkers. Our work follows
that of Elstner closely with respect to the physical model. However, the development of
LATTE is geared principally toward large-scale, long duration, microcanonical quantum-based
Born-Oppenheimer molecular dynamics (QMD) simulations.
One of the main bottlenecks of an electronic structure calculation is the solution
of the generalized eigenvalue problem which scales with the cube of the
system size O(N^3). The Theoretical and Computer sciences divisions at
Los Alamos National Laboratory have accumulated a large experience
addressing this issue by calculating the density matrix directly instead
of using diagonalization. We typically use a recursive sparse Fermi-operator expansion
using second-order spectral projection functions (SP2-algorithm), which was introduced
by Niklasson in 2002 ("Niklasson2002"_#Niklasson2002), ("Rubensson"_#Rubensson),
("Mniszewski"_#Mniszewski).
When the matrices involved in the recursive expansion are
sufficiently sparse, the calculation of the density matrix scales linearly as a function of the
system size O(N). Another important feature is the extended Lagrangian framework
for Born-Oppenheimer molecular dynamics (XL-BOMD) ("Niklasson2008"_#Niklasson2008)
("Niklasson2014"_#Niklasson2014), ("Niklasson2017"_#Niklasson2017)
that allows for a drastic reduction or even a complete removal of the
iterative self-consistent field optimization. Often only a single density matrix
calculation per molecular dynamics time step is required, yet total energy stability is well maintained.
The SP2 and XL-BOMD techniques enables stable linear scaling MD simulations with a very
small computational overhead. This opens a number of opportunities in many different
areas of chemistry and materials science, as we now can simulate larger system
sizes and longer time scales ("Cawkwell2012"_#Cawkwell2012), ("Negre2016"_#Negre2016).
The {peID} argument is not yet supported by fix latte, so it must be
specified as NULL. Eventually it will be used to enable LAMMPS to
calculate a Coulomb potential as an alternative to LATTE performing
the calculation.
A step-by-step tutorial can be follwed at: "LAMMPS-LATTE tutorial"_https://github.com/lanl/LATTE/wiki/Using-LATTE-through-LAMMPS
:line
[Restart, fix_modify, output, run start/stop, minimize info:]
No information about this fix is written to "binary restart
files"_restart.html.
The "fix_modify"_fix_modify.html {energy} option is supported by this
fix to add the potential energy computed by LATTE to the system's
potential energy as part of "thermodynamic output"_thermo_style.html.
This fix computes a global scalar which can be accessed by various
"output commands"_Section_howto.html#howto_15. The scalar is the
potential energy discussed above. The scalar value calculated by this
fix is "extensive".
No parameter of this fix can be used with the {start/stop} keywords of
the "run"_run.html command.
The DFTB forces computed by LATTE via this fix are imposed during an
energy minimization, invoked by the "minimize"_minimize.html command.
NOTE: If you want the potential energy associated with the DFTB
forces to be included in the total potential energy of the system (the
quantity being minimized), you MUST enable the
"fix_modify"_fix_modify.html {energy} option for this fix.
[Restrictions:]
This fix is part of the LATTE package. It is only enabled if LAMMPS
was built with that package. See the "Making
LAMMPS"_Section_start.html#start_3 section for more info.
Currently, LAMMPS must be run in serial or as a single MPI task, to use
this fix. This is typically not a bottleneck, since LATTE will be
doing 99% or more of the work to compute quantum-accurate forces.
NOTE: NEB calculations can be done using this fix. To do this LATTE will
still be compiled serial but LAMMPS will be compiled with mpi.
You must use metal units, as set by the "units"_units command to use
this fix.
[Related commands:] none
[Default:] none
:line
:link(Elstner)
[(Elstner)] M. Elstner, D. Poresag, G. Jungnickel, J. Elsner, M. Haugk, T. Frauenheim,
S. Suhai, and G. Seifert, Phys. Rev. B, 58, 7260 (1998).
:link(Elstner1)
[(Elstner)] M. Elstner, D. Poresag, G. Jungnickel, J. Elsner, M. Haugk, T. Frauenheim,
S. Suhai, and G. Seifert, Phys. Rev. B, 58, 7260 (1998).
:link(Finnis)
[(Finnis)] M. W. Finnis, A. T. Paxton, M. Methfessel, and M. van Schilfgarde,
Phys. Rev. Lett., 81, 5149 (1998).
:link(Mniszewski)
[(Mniszewski)] S. M. Mniszewski, M. J. Cawkwell, M. E. Wall, J. Mohd-Yusof, N. Bock, T. C.
Germann, and A. M. N. Niklasson, J. Chem. Theory Comput., 11, 4644 (2015).
:link(Niklasson2002)
[(Niklasson2002)] A. M. N. Niklasson, Phys. Rev. B, 66, 155115 (2002).
:link(Rubensson)
[(Rubensson)] E. H. Rubensson, A. M. N. Niklasson, SIAM J. Sci. Comput. 36 (2), 147-170, (2014).
:link(Niklasson2008)
[(Niklasson2008)] A. M. N. Niklasson, Phys. Rev. Lett., 100, 123004 (2008).
:link(Niklasson2014)
[(Niklasson2014)] A. M. N. Niklasson and M. Cawkwell, J. Chem. Phys., 141, 164123, (2014).
:link(Niklasson2014)
[(Niklasson2017)] A. M. N. Niklasson, J. Chem. Phys., 147, 054103 (2017).
:link(Niklasson2012)
[(Niklasson2017)] A. M. N. Niklasson, M. J. Cawkwell, Phys. Rev. B, 86 (17), 174308 (2012).
:link(Negre2016)
[(Negre2016)] C. F. A. Negre, S. M. Mniszewski, M. J. Cawkwell, N. Bock, M. E. Wall,
and A. M. N. Niklasson, J. Chem. Theory Comp., 12, 3063 (2016).