diff --git a/src/fix_latte.txt b/src/fix_latte.txt new file mode 100644 index 0000000000..4c9d0f9f95 --- /dev/null +++ b/src/fix_latte.txt @@ -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).