diff --git a/doc/src/Section_intro.txt b/doc/src/Section_intro.txt index 33c3cf395..0c438c6ce 100644 --- a/doc/src/Section_intro.txt +++ b/doc/src/Section_intro.txt @@ -1,540 +1,540 @@ "Previous Section"_Manual.html - "LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc - "Next Section"_Section_start.html :c :link(lws,http://lammps.sandia.gov) :link(ld,Manual.html) :link(lc,Section_commands.html#comm) :line 1. Introduction :h3 This section provides an overview of what LAMMPS can and can't do, describes what it means for LAMMPS to be an open-source code, and acknowledges the funding and people who have contributed to LAMMPS over the years. 1.1 "What is LAMMPS"_#intro_1 1.2 "LAMMPS features"_#intro_2 1.3 "LAMMPS non-features"_#intro_3 1.4 "Open source distribution"_#intro_4 1.5 "Acknowledgments and citations"_#intro_5 :all(b) :line :line 1.1 What is LAMMPS :link(intro_1),h4 LAMMPS is a classical molecular dynamics code that models an ensemble of particles in a liquid, solid, or gaseous state. It can model atomic, polymeric, biological, metallic, granular, and coarse-grained systems using a variety of force fields and boundary conditions. For examples of LAMMPS simulations, see the Publications page of the "LAMMPS WWW Site"_lws. LAMMPS runs efficiently on single-processor desktop or laptop machines, but is designed for parallel computers. It will run on any parallel machine that compiles C++ and supports the "MPI"_mpi message-passing library. This includes distributed- or shared-memory parallel machines and Beowulf-style clusters. :link(mpi,http://www-unix.mcs.anl.gov/mpi) LAMMPS can model systems with only a few particles up to millions or billions. See "Section 8"_Section_perf.html for information on LAMMPS performance and scalability, or the Benchmarks section of the "LAMMPS WWW Site"_lws. LAMMPS is a freely-available open-source code, distributed under the terms of the "GNU Public License"_gnu, which means you can use or modify the code however you wish. See "this section"_#intro_4 for a brief discussion of the open-source philosophy. :link(gnu,http://www.gnu.org/copyleft/gpl.html) LAMMPS is designed to be easy to modify or extend with new capabilities, such as new force fields, atom types, boundary conditions, or diagnostics. See "Section 10"_Section_modify.html for more details. The current version of LAMMPS is written in C++. Earlier versions were written in F77 and F90. See "Section 13"_Section_history.html for more information on different versions. All versions can be downloaded from the "LAMMPS WWW Site"_lws. LAMMPS was originally developed under a US Department of Energy CRADA (Cooperative Research and Development Agreement) between two DOE labs and 3 companies. It is distributed by "Sandia National Labs"_snl. See "this section"_#intro_5 for more information on LAMMPS funding and individuals who have contributed to LAMMPS. :link(snl,http://www.sandia.gov) In the most general sense, LAMMPS integrates Newton's equations of motion for collections of atoms, molecules, or macroscopic particles that interact via short- or long-range forces with a variety of initial and/or boundary conditions. For computational efficiency LAMMPS uses neighbor lists to keep track of nearby particles. The lists are optimized for systems with particles that are repulsive at short distances, so that the local density of particles never becomes too large. On parallel machines, LAMMPS uses spatial-decomposition techniques to partition the simulation domain into small 3d sub-domains, one of which is assigned to each processor. Processors communicate and store "ghost" atom information for atoms that border their sub-domain. LAMMPS is most efficient (in a parallel sense) for systems whose particles fill a 3d rectangular box with roughly uniform density. Papers with technical details of the algorithms used in LAMMPS are listed in "this section"_#intro_5. :line 1.2 LAMMPS features :link(intro_2),h4 This section highlights LAMMPS features, with pointers to specific commands which give more details. If LAMMPS doesn't have your favorite interatomic potential, boundary condition, or atom type, see "Section 10"_Section_modify.html, which describes how you can add it to LAMMPS. General features :h5 runs on a single processor or in parallel distributed-memory message-passing parallelism (MPI) spatial-decomposition of simulation domain for parallelism open-source distribution highly portable C++ optional libraries used: MPI and single-processor FFT GPU (CUDA and OpenCL), Intel(R) Xeon Phi(TM) coprocessors, and OpenMP support for many code features easy to extend with new features and functionality runs from an input script syntax for defining and using variables and formulas syntax for looping over runs and breaking out of loops run one or multiple simulations simultaneously (in parallel) from one script build as library, invoke LAMMPS thru library interface or provided Python wrapper couple with other codes: LAMMPS calls other code, other code calls LAMMPS, umbrella code calls both :ul Particle and model types :h5 ("atom style"_atom_style.html command) atoms coarse-grained particles (e.g. bead-spring polymers) united-atom polymers or organic molecules all-atom polymers, organic molecules, proteins, DNA metals granular materials coarse-grained mesoscale models finite-size spherical and ellipsoidal particles finite-size line segment (2d) and triangle (3d) particles point dipole particles rigid collections of particles hybrid combinations of these :ul Force fields :h5 ("pair style"_pair_style.html, "bond style"_bond_style.html, "angle style"_angle_style.html, "dihedral style"_dihedral_style.html, "improper style"_improper_style.html, "kspace style"_kspace_style.html commands) pairwise potentials: Lennard-Jones, Buckingham, Morse, Born-Mayer-Huggins, \ Yukawa, soft, class 2 (COMPASS), hydrogen bond, tabulated charged pairwise potentials: Coulombic, point-dipole manybody potentials: EAM, Finnis/Sinclair EAM, modified EAM (MEAM), \ embedded ion method (EIM), EDIP, ADP, Stillinger-Weber, Tersoff, \ REBO, AIREBO, ReaxFF, COMB, SNAP, Streitz-Mintmire, 3-body polymorphic long-range interactions for charge, point-dipoles, and LJ dispersion: \ Ewald, Wolf, PPPM (similar to particle-mesh Ewald) polarization models: "QEq"_fix_qeq.html, \ "core/shell model"_Section_howto.html#howto_26, \ "Drude dipole model"_Section_howto.html#howto_27 charge equilibration (QEq via dynamic, point, shielded, Slater methods) coarse-grained potentials: DPD, GayBerne, REsquared, colloidal, DLVO mesoscopic potentials: granular, Peridynamics, SPH electron force field (eFF, AWPMD) bond potentials: harmonic, FENE, Morse, nonlinear, class 2, \ quartic (breakable) angle potentials: harmonic, CHARMM, cosine, cosine/squared, cosine/periodic, \ class 2 (COMPASS) dihedral potentials: harmonic, CHARMM, multi-harmonic, helix, \ class 2 (COMPASS), OPLS improper potentials: harmonic, cvff, umbrella, class 2 (COMPASS) polymer potentials: all-atom, united-atom, bead-spring, breakable water potentials: TIP3P, TIP4P, SPC implicit solvent potentials: hydrodynamic lubrication, Debye force-field compatibility with common CHARMM, AMBER, DREIDING, \ OPLS, GROMACS, COMPASS options access to "KIM archive"_http://openkim.org of potentials via \ "pair kim"_pair_kim.html hybrid potentials: multiple pair, bond, angle, dihedral, improper \ potentials can be used in one simulation overlaid potentials: superposition of multiple pair potentials :ul Atom creation :h5 ("read_data"_read_data.html, "lattice"_lattice.html, "create_atoms"_create_atoms.html, "delete_atoms"_delete_atoms.html, "displace_atoms"_displace_atoms.html, "replicate"_replicate.html commands) read in atom coords from files create atoms on one or more lattices (e.g. grain boundaries) delete geometric or logical groups of atoms (e.g. voids) replicate existing atoms multiple times displace atoms :ul Ensembles, constraints, and boundary conditions :h5 ("fix"_fix.html command) 2d or 3d systems orthogonal or non-orthogonal (triclinic symmetry) simulation domains constant NVE, NVT, NPT, NPH, Parinello/Rahman integrators thermostatting options for groups and geometric regions of atoms pressure control via Nose/Hoover or Berendsen barostatting in 1 to 3 dimensions simulation box deformation (tensile and shear) harmonic (umbrella) constraint forces rigid body constraints SHAKE bond and angle constraints Monte Carlo bond breaking, formation, swapping atom/molecule insertion and deletion walls of various kinds non-equilibrium molecular dynamics (NEMD) variety of additional boundary conditions and constraints :ul Integrators :h5 ("run"_run.html, "run_style"_run_style.html, "minimize"_minimize.html commands) velocity-Verlet integrator Brownian dynamics rigid body integration energy minimization via conjugate gradient or steepest descent relaxation rRESPA hierarchical timestepping rerun command for post-processing of dump files :ul Diagnostics :h5 see the various flavors of the "fix"_fix.html and "compute"_compute.html commands :ul Output :h5 ("dump"_dump.html, "restart"_restart.html commands) log file of thermodynamic info text dump files of atom coords, velocities, other per-atom quantities binary restart files parallel I/O of dump and restart files per-atom quantities (energy, stress, centro-symmetry parameter, CNA, etc) user-defined system-wide (log file) or per-atom (dump file) calculations spatial and time averaging of per-atom quantities time averaging of system-wide quantities atom snapshots in native, XYZ, XTC, DCD, CFG formats :ul Multi-replica models :h5 "nudged elastic band"_neb.html "parallel replica dynamics"_prd.html "temperature accelerated dynamics"_tad.html "parallel tempering"_temper.html Pre- and post-processing :h5 Various pre- and post-processing serial tools are packaged with LAMMPS; see these "doc pages"_Section_tools.html. :ulb,l Our group has also written and released a separate toolkit called "Pizza.py"_pizza which provides tools for doing setup, analysis, plotting, and visualization for LAMMPS simulations. Pizza.py is written in "Python"_python and is available for download from "the Pizza.py WWW site"_pizza. :l :ule :link(pizza,http://www.sandia.gov/~sjplimp/pizza.html) :link(python,http://www.python.org) Specialized features :h5 These are LAMMPS capabilities which you may not think of as typical molecular dynamics options: "static"_balance.html and "dynamic load-balancing"_fix_balance.html "generalized aspherical particles"_body.html "stochastic rotation dynamics (SRD)"_fix_srd.html "real-time visualization and interactive MD"_fix_imd.html calculate "virtual diffraction patterns"_compute_xrd.html "atom-to-continuum coupling"_fix_atc.html with finite elements coupled rigid body integration via the "POEMS"_fix_poems.html library "QM/MM coupling"_fix_qmmm.html "path-integral molecular dynamics (PIMD)"_fix_ipi.html and "this as well"_fix_pimd.html Monte Carlo via "GCMC"_fix_gcmc.html and "tfMC"_fix_tfmc.html "atom swapping"_fix_atom_swap.html and "bond swapping"_fix_bond_swap.html "Direct Simulation Monte Carlo"_pair_dsmc.html for low-density fluids "Peridynamics mesoscale modeling"_pair_peri.html "Lattice Boltzmann fluid"_fix_lb_fluid.html "targeted"_fix_tmd.html and "steered"_fix_smd.html molecular dynamics "two-temperature electron model"_fix_ttm.html :ul :line 1.3 LAMMPS non-features :link(intro_3),h4 LAMMPS is designed to efficiently compute Newton's equations of motion for a system of interacting particles. Many of the tools needed to pre- and post-process the data for such simulations are not included in the LAMMPS kernel for several reasons: the desire to keep LAMMPS simple they are not parallel operations other codes already do them limited development resources :ul Specifically, LAMMPS itself does not: run thru a GUI build molecular systems assign force-field coefficients automagically perform sophisticated analyses of your MD simulation visualize your MD simulation plot your output data :ul A few tools for pre- and post-processing tasks are provided as part of the LAMMPS package; they are described in "this section"_Section_tools.html. However, many people use other codes or write their own tools for these tasks. As noted above, our group has also written and released a separate toolkit called "Pizza.py"_pizza which addresses some of the listed bullets. It provides tools for doing setup, analysis, plotting, and visualization for LAMMPS simulations. Pizza.py is written in "Python"_python and is available for download from "the Pizza.py WWW site"_pizza. LAMMPS requires as input a list of initial atom coordinates and types, molecular topology information, and force-field coefficients assigned to all atoms and bonds. LAMMPS will not build molecular systems and assign force-field parameters for you. For atomic systems LAMMPS provides a "create_atoms"_create_atoms.html command which places atoms on solid-state lattices (fcc, bcc, user-defined, etc). Assigning small numbers of force field coefficients can be done via the "pair coeff"_pair_coeff.html, "bond coeff"_bond_coeff.html, "angle coeff"_angle_coeff.html, etc commands. For molecular systems or more complicated simulation geometries, users typically use another code as a builder and convert its output to LAMMPS input format, or write their own code to generate atom coordinate and molecular topology for LAMMPS to read in. For complicated molecular systems (e.g. a protein), a multitude of topology information and hundreds of force-field coefficients must typically be specified. We suggest you use a program like "CHARMM"_charmm or "AMBER"_amber or other molecular builders to setup such problems and dump its information to a file. You can then reformat the file as LAMMPS input. Some of the tools in "this section"_Section_tools.html can assist in this process. Similarly, LAMMPS creates output files in a simple format. Most users post-process these files with their own analysis tools or re-format them for input into other programs, including visualization packages. If you are convinced you need to compute something on-the-fly as LAMMPS runs, see "Section 10"_Section_modify.html for a discussion of how you can use the "dump"_dump.html and "compute"_compute.html and "fix"_fix.html commands to print out data of your choosing. Keep in mind that complicated computations can slow down the molecular dynamics timestepping, particularly if the computations are not parallel, so it is often better to leave such analysis to post-processing codes. For high-quality visualization we recommend the following packages: "VMD"_http://www.ks.uiuc.edu/Research/vmd "AtomEye"_http://mt.seas.upenn.edu/Archive/Graphics/A "OVITO"_http://www.ovito.org/ "ParaView"_http://www.paraview.org/ "PyMol"_http://www.pymol.org "Raster3d"_http://www.bmsc.washington.edu/raster3d/raster3d.html "RasMol"_http://www.openrasmol.org :ul Other features that LAMMPS does not yet (and may never) support are discussed in "Section 13"_Section_history.html. Finally, these are freely-available molecular dynamics codes, most of them parallel, which may be well-suited to the problems you want to model. They can also be used in conjunction with LAMMPS to perform complementary modeling tasks. "CHARMM"_charmm "AMBER"_amber "NAMD"_namd "NWCHEM"_nwchem "DL_POLY"_dlpoly "Tinker"_tinker :ul :link(charmm,http://www.charmm.org) :link(amber,http://ambermd.org) :link(namd,http://www.ks.uiuc.edu/Research/namd/) :link(nwchem,http://www.emsl.pnl.gov/docs/nwchem/nwchem.html) :link(dlpoly,http://www.ccp5.ac.uk/DL_POLY_CLASSIC) :link(tinker,http://dasher.wustl.edu/tinker) CHARMM, AMBER, NAMD, NWCHEM, and Tinker are designed primarily for modeling biological molecules. CHARMM and AMBER use atom-decomposition (replicated-data) strategies for parallelism; NAMD and NWCHEM use spatial-decomposition approaches, similar to LAMMPS. Tinker is a serial code. DL_POLY includes potentials for a variety of biological and non-biological materials; both a replicated-data and spatial-decomposition version exist. :line 1.4 Open source distribution :link(intro_4),h4 LAMMPS comes with no warranty of any kind. As each source file states in its header, it is a copyrighted code that is distributed free-of- charge, under the terms of the "GNU Public License"_gnu (GPL). This is often referred to as open-source distribution - see "www.gnu.org"_gnuorg or "www.opensource.org"_opensource for more details. The legal text of the GPL is in the LICENSE file that is included in the LAMMPS distribution. :link(gnuorg,http://www.gnu.org) :link(opensource,http://www.opensource.org) Here is a summary of what the GPL means for LAMMPS users: (1) Anyone is free to use, modify, or extend LAMMPS in any way they choose, including for commercial purposes. (2) If you distribute a modified version of LAMMPS, it must remain open-source, meaning you distribute it under the terms of the GPL. You should clearly annotate such a code as a derivative version of LAMMPS. (3) If you release any code that includes LAMMPS source code, then it must also be open-sourced, meaning you distribute it under the terms of the GPL. (4) If you give LAMMPS files to someone else, the GPL LICENSE file and source file headers (including the copyright and GPL notices) should remain part of the code. In the spirit of an open-source code, these are various ways you can contribute to making LAMMPS better. You can send email to the "developers"_http://lammps.sandia.gov/authors.html on any of these items. Point prospective users to the "LAMMPS WWW Site"_lws. Mention it in talks or link to it from your WWW site. :ulb,l If you find an error or omission in this manual or on the "LAMMPS WWW Site"_lws, or have a suggestion for something to clarify or include, send an email to the "developers"_http://lammps.sandia.gov/authors.html. :l If you find a bug, "Section 12.2"_Section_errors.html#err_2 describes how to report it. :l If you publish a paper using LAMMPS results, send the citation (and any cool pictures or movies if you like) to add to the Publications, Pictures, and Movies pages of the "LAMMPS WWW Site"_lws, with links and attributions back to you. :l Create a new Makefile.machine that can be added to the src/MAKE directory. :l The tools sub-directory of the LAMMPS distribution has various stand-alone codes for pre- and post-processing of LAMMPS data. More details are given in "Section 9"_Section_tools.html. If you write a new tool that users will find useful, it can be added to the LAMMPS distribution. :l LAMMPS is designed to be easy to extend with new code for features like potentials, boundary conditions, diagnostic computations, etc. "This section"_Section_modify.html gives details. If you add a feature of general interest, it can be added to the LAMMPS distribution. :l The Benchmark page of the "LAMMPS WWW Site"_lws lists LAMMPS performance on various platforms. The files needed to run the benchmarks are part of the LAMMPS distribution. If your machine is sufficiently different from those listed, your timing data can be added to the page. :l You can send feedback for the User Comments page of the "LAMMPS WWW Site"_lws. It might be added to the page. No promises. :l Cash. Small denominations, unmarked bills preferred. Paper sack OK. Leave on desk. VISA also accepted. Chocolate chip cookies encouraged. :l :ule :line 1.5 Acknowledgments and citations :h4,link(intro_5) LAMMPS development has been funded by the "US Department of Energy"_doe (DOE), through its CRADA, LDRD, ASCI, and Genomes-to-Life programs and its "OASCR"_oascr and "OBER"_ober offices. Specifically, work on the latest version was funded in part by the US Department of Energy's Genomics:GTL program ("www.doegenomestolife.org"_gtl) under the "project"_ourgtl, "Carbon Sequestration in Synechococcus Sp.: From Molecular Machines to Hierarchical Modeling". :link(doe,http://www.doe.gov) :link(gtl,http://www.doegenomestolife.org) :link(ourgtl,http://www.genomes2life.org) :link(oascr,http://www.sc.doe.gov/ascr/home.html) :link(ober,http://www.er.doe.gov/production/ober/ober_top.html) The following paper describe the basic parallel algorithms used in LAMMPS. If you use LAMMPS results in your published work, please cite this paper and include a pointer to the "LAMMPS WWW Site"_lws (http://lammps.sandia.gov): S. Plimpton, [Fast Parallel Algorithms for Short-Range Molecular Dynamics], J Comp Phys, 117, 1-19 (1995). Other papers describing specific algorithms used in LAMMPS are listed under the "Citing LAMMPS link"_http://lammps.sandia.gov/cite.html of the LAMMPS WWW page. The "Publications link"_http://lammps.sandia.gov/papers.html on the LAMMPS WWW page lists papers that have cited LAMMPS. If your paper is not listed there for some reason, feel free to send us the info. If the simulations in your paper produced cool pictures or animations, we'll be pleased to add them to the "Pictures"_http://lammps.sandia.gov/pictures.html or "Movies"_http://lammps.sandia.gov/movies.html pages of the LAMMPS WWW site. The core group of LAMMPS developers is at Sandia National Labs: Steve Plimpton, sjplimp at sandia.gov Aidan Thompson, athomps at sandia.gov Paul Crozier, pscrozi at sandia.gov :ul The following folks are responsible for significant contributions to the code, or other aspects of the LAMMPS development effort. Many of the packages they have written are somewhat unique to LAMMPS and the code would not be as general-purpose as it is without their expertise and efforts. -Axel Kohlmeyer (Temple U), akohlmey at gmail.com, SVN and Git repositories, indefatigable mail list responder, USER-CG-CMM and USER-OMP packages +Axel Kohlmeyer (Temple U), akohlmey at gmail.com, SVN and Git repositories, indefatigable mail list responder, USER-CGSDK and USER-OMP packages Roy Pollock (LLNL), Ewald and PPPM solvers Mike Brown (ORNL), brownw at ornl.gov, GPU package Greg Wagner (Sandia), gjwagne at sandia.gov, MEAM package for MEAM potential Mike Parks (Sandia), mlparks at sandia.gov, PERI package for Peridynamics Rudra Mukherjee (JPL), Rudranarayan.M.Mukherjee at jpl.nasa.gov, POEMS package for articulated rigid body motion Reese Jones (Sandia) and collaborators, rjones at sandia.gov, USER-ATC package for atom/continuum coupling Ilya Valuev (JIHT), valuev at physik.hu-berlin.de, USER-AWPMD package for wave-packet MD Christian Trott (U Tech Ilmenau), christian.trott at tu-ilmenau.de, USER-CUDA package Andres Jaramillo-Botero (Caltech), ajaramil at wag.caltech.edu, USER-EFF package for electron force field Christoph Kloss (JKU), Christoph.Kloss at jku.at, USER-LIGGGHTS package for granular models and granular/fluid coupling Metin Aktulga (LBL), hmaktulga at lbl.gov, USER-REAXC package for C version of ReaxFF Georg Gunzenmuller (EMI), georg.ganzenmueller at emi.fhg.de, USER-SPH package :ul As discussed in "Section 13"_Section_history.html, LAMMPS originated as a cooperative project between DOE labs and industrial partners. Folks involved in the design and testing of the original version of LAMMPS were the following: John Carpenter (Mayo Clinic, formerly at Cray Research) Terry Stouch (Lexicon Pharmaceuticals, formerly at Bristol Myers Squibb) Steve Lustig (Dupont) Jim Belak (LLNL) :ul diff --git a/doc/src/Section_packages.txt b/doc/src/Section_packages.txt index b327b7b1c..bd81361fa 100644 --- a/doc/src/Section_packages.txt +++ b/doc/src/Section_packages.txt @@ -1,1904 +1,1906 @@ "Previous Section"_Section_commands.html - "LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc - "Next Section"_Section_accelerate.html :c :link(lws,http://lammps.sandia.gov) :link(ld,Manual.html) :link(lc,Section_commands.html#comm) :line 4. Packages :h3 This section gives an overview of the add-on optional packages that extend LAMMPS functionality. Packages are groups of files that enable a specific set of features. For example, force fields for molecular systems or granular systems are in packages. You can see the list of all packages by typing "make package" from within the src directory of the LAMMPS distribution. Here are links for two tables below, which list standard and user packages. 4.1 "Standard packages"_#pkg_1 4.2 "User packages"_#pkg_2 :all(b) "Section 2.3"_Section_start.html#start_3 of the manual describes the difference between standard packages and user packages. It also has general details on how to include/exclude specific packages as part of the LAMMPS build process, and on how to build auxiliary libraries or modify a machine Makefile if a package requires it. Following the two tables below, is a sub-section for each package. It has a summary of what the package contains. It has specific instructions on how to install it, build or obtain any auxiliary library it requires, and any Makefile.machine changes it requires. It also lists pointers to examples of its use or documentation provided in the LAMMPS distribution. If you want to know the complete list of commands that a package adds to LAMMPS, simply list the files in its directory, e.g. "ls src/GRANULAR". Source files with names that start with compute, fix, pair, bond, etc correspond to command styles with the same names. NOTE: The USER package sub-sections below are still being filled in, as of March 2016. Unless otherwise noted below, every package is independent of all the others. I.e. any package can be included or excluded in a LAMMPS build, independent of all other packages. However, note that some packages include commands derived from commands in other packages. If the other package is not installed, the derived command from the new package will also not be installed when you include the new one. E.g. the pair lj/cut/coul/long/omp command from the USER-OMP package will not be installed as part of the USER-OMP package if the KSPACE package is not also installed, since it contains the pair lj/cut/coul/long command. If you later install the KSPACE package and the USER-OMP package is already installed, both the pair lj/cut/coul/long and lj/cut/coul/long/omp commands will be installed. :line 4.1 Standard packages :h4,link(pkg_1) The current list of standard packages is as follows. Each package name links to a sub-section below with more details. Package, Description, Author(s), Doc page, Example, Library "ASPHERE"_#ASPHERE, aspherical particles, -, "Section 6.6.14"_Section_howto.html#howto_14, ellipse, - "BODY"_#BODY, body-style particles, -, "body"_body.html, body, - "CLASS2"_#CLASS2, class 2 force fields, -, "pair_style lj/class2"_pair_class2.html, -, - "COLLOID"_#COLLOID, colloidal particles, Kumar (1), "atom_style colloid"_atom_style.html, colloid, - "COMPRESS"_#COMPRESS, I/O compression, Axel Kohlmeyer (Temple U), "dump */gz"_dump.html, -, - "CORESHELL"_#CORESHELL, adiabatic core/shell model, Hendrik Heenen (Technical U of Munich), "Section 6.6.25"_Section_howto.html#howto_25, coreshell, - "DIPOLE"_#DIPOLE, point dipole particles, -, "pair_style dipole/cut"_pair_dipole.html, dipole, - "GPU"_#GPU, GPU-enabled styles, Mike Brown (ORNL), "Section 5.3.1"_accelerate_gpu.html, gpu, lib/gpu "GRANULAR"_#GRANULAR, granular systems, -, "Section 6.6.6"_Section_howto.html#howto_6, pour, - "KIM"_#KIM, openKIM potentials, Smirichinski & Elliot & Tadmor (3), "pair_style kim"_pair_kim.html, kim, KIM "KOKKOS"_#KOKKOS, Kokkos-enabled styles, Trott & Moore (4), "Section 5.3.3"_accelerate_kokkos.html, kokkos, lib/kokkos "KSPACE"_#KSPACE, long-range Coulombic solvers, -, "kspace_style"_kspace_style.html, peptide, - "MANYBODY"_#MANYBODY, many-body potentials, -, "pair_style tersoff"_pair_tersoff.html, shear, - "MEAM"_#MEAM, modified EAM potential, Greg Wagner (Sandia), "pair_style meam"_pair_meam.html, meam, lib/meam "MC"_#MC, Monte Carlo options, -, "fix gcmc"_fix_gcmc.html, -, - "MOLECULE"_#MOLECULE, molecular system force fields, -, "Section 6.6.3"_Section_howto.html#howto_3, peptide, - "OPT"_#OPT, optimized pair styles, Fischer & Richie & Natoli (2), "Section 5.3.5"_accelerate_opt.html, -, - "PERI"_#PERI, Peridynamics models, Mike Parks (Sandia), "pair_style peri"_pair_peri.html, peri, - "POEMS"_#POEMS, coupled rigid body motion, Rudra Mukherjee (JPL), "fix poems"_fix_poems.html, rigid, lib/poems "PYTHON"_#PYTHON, embed Python code in an input script, -, "python"_python.html, python, lib/python "REAX"_#REAX, ReaxFF potential, Aidan Thompson (Sandia), "pair_style reax"_pair_reax.html, reax, lib/reax "REPLICA"_#REPLICA, multi-replica methods, -, "Section 6.6.5"_Section_howto.html#howto_5, tad, - "RIGID"_#RIGID, rigid bodies, -, "fix rigid"_fix_rigid.html, rigid, - "SHOCK"_#SHOCK, shock loading methods, -, "fix msst"_fix_msst.html, -, - "SNAP"_#SNAP, quantum-fit potential, Aidan Thompson (Sandia), "pair snap"_pair_snap.html, snap, - "SRD"_#SRD, stochastic rotation dynamics, -, "fix srd"_fix_srd.html, srd, - "VORONOI"_#VORONOI, Voronoi tesselations, Daniel Schwen (LANL), "compute voronoi/atom"_compute_voronoi_atom.html, -, Voro++ :tb(ea=c) The "Authors" column lists a name(s) if a specific person is responsible for creating and maintaining the package. (1) The COLLOID package includes Fast Lubrication Dynamics pair styles which were created by Amit Kumar and Michael Bybee from Jonathan Higdon's group at UIUC. (2) The OPT package was created by James Fischer (High Performance Technologies), David Richie, and Vincent Natoli (Stone Ridge Technolgy). (3) The KIM package was created by Valeriu Smirichinski, Ryan Elliott, and Ellad Tadmor (U Minn). (4) The KOKKOS package was created primarily by Christian Trott and Stan Moore (Sandia). It uses the Kokkos library which was developed by Carter Edwards, Christian Trott, and others at Sandia. The "Doc page" column links to either a sub-section of the "Section 6"_Section_howto.html of the manual, or an input script command implemented as part of the package, or to additional documentation provided within the package. The "Example" column is a sub-directory in the examples directory of the distribution which has an input script that uses the package. E.g. "peptide" refers to the examples/peptide directory. The "Library" column lists an external library which must be built first and which LAMMPS links to when it is built. If it is listed as lib/package, then the code for the library is under the lib directory of the LAMMPS distribution. See the lib/package/README file for info on how to build the library. If it is not listed as lib/package, then it is a third-party library not included in the LAMMPS distribution. See details on all of this below for individual packages. :line ASPHERE package :link(ASPHERE),h5 Contents: Several computes, time-integration fixes, and pair styles for aspherical particle models: ellipsoids, 2d lines, 3d triangles. To install via make or Make.py: make yes-asphere make machine :pre Make.py -p asphere -a machine :pre To un-install via make or Make.py: make no-asphere make machine :pre Make.py -p ^asphere -a machine :pre Supporting info: "Section 6.14"_Section_howto.html#howto_14, "pair_style gayberne"_pair_gayberne.html, "pair_style resquared"_pair_resquared.html, "doc/PDF/pair_gayberne_extra.pdf"_PDF/pair_gayberne_extra.pdf, "doc/PDF/pair_resquared_extra.pdf"_PDF/pair_resquared_extra.pdf, examples/ASPHERE, examples/ellipse :line BODY package :link(BODY),h5 Contents: Support for body-style particles. Computes, time-integration fixes, pair styles, as well as the body styles themselves. See the "body"_body.html doc page for an overview. To install via make or Make.py: make yes-body make machine :pre Make.py -p body -a machine :pre To un-install via make or Make.py: make no-body make machine :pre Make.py -p ^body -a machine :pre Supporting info: "atom_style body"_atom_style.html, "body"_body.html, "pair_style body"_pair_body.html, examples/body :line CLASS2 package :link(CLASS2),h5 Contents: Bond, angle, dihedral, improper, and pair styles for the COMPASS CLASS2 molecular force field. To install via make or Make.py: make yes-class2 make machine :pre Make.py -p class2 -a machine :pre To un-install via make or Make.py: make no-class2 make machine :pre Make.py -p ^class2 -a machine :pre Supporting info: "bond_style class2"_bond_class2.html, "angle_style class2"_angle_class2.html, "dihedral_style class2"_dihedral_class2.html, "improper_style class2"_improper_class2.html, "pair_style lj/class2"_pair_class2.html :line COLLOID package :link(COLLOID),h5 Contents: Support for coarse-grained colloidal particles. Wall fix and pair styles that implement colloidal interaction models for finite-size particles. This includes the Fast Lubrication Dynamics method for hydrodynamic interactions, which is a simplified approximation to Stokesian dynamics. To install via make or Make.py: make yes-colloid make machine :pre Make.py -p colloid -a machine :pre To un-install via make or Make.py: make no-colloid make machine :pre Make.py -p ^colloid -a machine :pre Supporting info: "fix wall/colloid"_fix_wall.html, "pair_style colloid"_pair_colloid.html, "pair_style yukawa/colloid"_pair_yukawa_colloid.html, "pair_style brownian"_pair_brownian.html, "pair_style lubricate"_pair_lubricate.html, "pair_style lubricateU"_pair_lubricateU.html, examples/colloid, examples/srd :line COMPRESS package :link(COMPRESS),h5 Contents: Support for compressed output of dump files via the zlib compression library, using dump styles with a "gz" in their style name. Building with the COMPRESS package assumes you have the zlib compression library available on your system. The build uses the lib/compress/Makefile.lammps file in the compile/link process. You should only need to edit this file if the LAMMPS build cannot find the zlib info it specifies. To install via make or Make.py: make yes-compress make machine :pre Make.py -p compress -a machine :pre To un-install via make or Make.py: make no-compress make machine :pre Make.py -p ^compress -a machine :pre Supporting info: src/COMPRESS/README, lib/compress/README, "dump atom/gz"_dump.html, "dump cfg/gz"_dump.html, "dump custom/gz"_dump.html, "dump xyz/gz"_dump.html :line CORESHELL package :link(CORESHELL),h5 Contents: Compute and pair styles that implement the adiabatic core/shell model for polarizability. The compute temp/cs command measures the temperature of a system with core/shell particles. The pair styles augment Born, Buckingham, and Lennard-Jones styles with core/shell capabilities. See "Section 6.26"_Section_howto.html#howto_26 for an overview of how to use the package. To install via make or Make.py: make yes-coreshell make machine :pre Make.py -p coreshell -a machine :pre To un-install via make or Make.py: make no-coreshell make machine :pre Make.py -p ^coreshell -a machine :pre Supporting info: "Section 6.26"_Section_howto.html#howto_26, "compute temp/cs"_compute_temp_cs.html, "pair_style born/coul/long/cs"_pair_cs.html, "pair_style buck/coul/long/cs"_pair_cs.html, pair_style lj/cut/coul/long/cs"_pair_lj.html, examples/coreshell :line DIPOLE package :link(DIPOLE),h5 Contents: An atom style and several pair styles to support point dipole models with short-range or long-range interactions. To install via make or Make.py: make yes-dipole make machine :pre Make.py -p dipole -a machine :pre To un-install via make or Make.py: make no-dipole make machine :pre Make.py -p ^dipole -a machine :pre Supporting info: "atom_style dipole"_atom_style.html, "pair_style lj/cut/dipole/cut"_pair_dipole.html, "pair_style lj/cut/dipole/long"_pair_dipole.html, "pair_style lj/long/dipole/long"_pair_dipole.html, examples/dipole :line GPU package :link(GPU),h5 Contents: Dozens of pair styles and a version of the PPPM long-range Coulombic solver for NVIDIA GPUs. All of them have a "gpu" in their style name. "Section 5.3.1"_accelerate_gpu.html gives details of what hardware and Cuda software is required on your system, and how to build and use this package. See the KOKKOS package, which also has GPU-enabled styles. Building LAMMPS with the GPU package requires first building the GPU library itself, which is a set of C and Cuda files in lib/gpu. Details of how to do this are in lib/gpu/README. As illustrated below, perform a "make" using one of the Makefile.machine files in lib/gpu which should create a lib/reax/libgpu.a file. Makefile.linux.* and Makefile.xk7 are examples for different platforms. There are 3 important settings in the Makefile.machine you use: CUDA_HOME = where NVIDIA Cuda software is installed on your system CUDA_ARCH = appropriate to your GPU hardware CUDA_PREC = precision (double, mixed, single) you desire :ul See example Makefile.machine files in lib/gpu for the syntax of these settings. See lib/gpu/Makefile.linux.double for ARCH settings for various NVIDIA GPUs. The "make" also creates a lib/gpu/Makefile.lammps file. This file has settings that enable LAMMPS to link with Cuda libraries. If the settings in Makefile.lammps for your machine are not correct, the LAMMPS link will fail. Note that the Make.py script has a "-gpu" option to allow the GPU library (with several of its options) and LAMMPS to be built in one step, with Type "python src/Make.py -h -gpu" to see the details. To install via make or Make.py: cd ~/lammps/lib/gpu make -f Makefile.linux.mixed # for example cd ~/lammps/src make yes-gpu make machine :pre Make.py -p gpu -gpu mode=mixed arch=35 -a machine :pre To un-install via make or Make.py: make no-gpu make machine :pre Make.py -p ^gpu -a machine :pre Supporting info: src/GPU/README, lib/gpu/README, "Section 5.3"_Section_accelerate.html#acc_3, "Section 5.3.1"_accelerate_gpu.html, Pair Styles section of "Section 3.5"_Section_commands.html#cmd_5 for any pair style listed with a (g), "kspace_style"_kspace_style.html, "package gpu"_package.html, examples/accelerate, bench/FERMI, bench/KEPLER :line GRANULAR package :link(GRANULAR),h5 Contents: Fixes and pair styles that support models of finite-size granular particles, which interact with each other and boundaries via frictional and dissipative potentials. To install via make or Make.py: make yes-granular make machine :pre Make.py -p granular -a machine :pre To un-install via make or Make.py: make no-granular make machine :pre Make.py -p ^granular -a machine :pre Supporting info: "Section 6.6"_Section_howto.html#howto_6, "fix pour"_fix_pour.html, "fix wall/gran"_fix_wall_gran.html, "pair_style gran/hooke"_pair_gran.html, "pair_style gran/hertz/history"_pair_gran.html, examples/pour, bench/in.chute :line KIM package :link(KIM),h5 Contents: A pair style that interfaces to the Knowledge Base for Interatomic Models (KIM) repository of interatomic potentials, so that KIM potentials can be used in a LAMMPS simulation. To build LAMMPS with the KIM package you must have previously installed the KIM API (library) on your system. The lib/kim/README file explains how to download and install KIM. Building with the KIM package also uses the lib/kim/Makefile.lammps file in the compile/link process. You should not need to edit this file. To install via make or Make.py: make yes-kim make machine :pre Make.py -p kim -a machine :pre To un-install via make or Make.py: make no-kim make machine :pre Make.py -p ^kim -a machine :pre Supporting info: src/KIM/README, lib/kim/README, "pair_style kim"_pair_kim.html, examples/kim :line KOKKOS package :link(KOKKOS),h5 Contents: Dozens of atom, pair, bond, angle, dihedral, improper styles which run with the Kokkos library to provide optimization for multicore CPUs (via OpenMP), NVIDIA GPUs, or the Intel Xeon Phi (in native mode). All of them have a "kk" in their style name. "Section 5.3.3"_accelerate_kokkos.html gives details of what hardware and software is required on your system, and how to build and use this package. See the GPU, OPT, USER-INTEL, USER-OMP packages, which also provide optimizations for the same range of hardware. Building with the KOKKOS package requires choosing which of 3 hardware options you are optimizing for: CPU acceleration via OpenMP, GPU acceleration, or Intel Xeon Phi. (You can build multiple times to create LAMMPS executables for different hardware.) It also requires a C++11 compatible compiler. For GPUs, the NVIDIA "nvcc" compiler is used, and an appropriate KOKKOS_ARCH setting should be made in your Makefile.machine for your GPU hardware and NVIDIA software. The simplest way to do this is to use Makefile.kokkos_cuda or Makefile.kokkos_omp or Makefile.kokkos_phi in src/MAKE/OPTIONS, via "make kokkos_cuda" or "make kokkos_omp" or "make kokkos_phi". (Check the KOKKOS_ARCH setting in Makefile.kokkos_cuda), Or, as illustrated below, you can use the Make.py script with its "-kokkos" option to choose which hardware to build for. Type "python src/Make.py -h -kokkos" to see the details. If these methods do not work on your system, you will need to read the "Section 5.3.3"_accelerate_kokkos.html doc page for details of what Makefile.machine settings are needed. To install via make or Make.py for each of 3 hardware options: make yes-kokkos make kokkos_omp # for CPUs with OpenMP make kokkos_cuda # for GPUs, check the KOKKOS_ARCH setting in Makefile.kokkos_cuda make kokkos_phi # for Xeon Phis :pre Make.py -p kokkos -kokkos omp -a machine # for CPUs with OpenMP Make.py -p kokkos -kokkos cuda arch=35 -a machine # for GPUs of style arch Make.py -p kokkos -kokkos phi -a machine # for Xeon Phis To un-install via make or Make.py: make no-kokkos make machine :pre Make.py -p ^kokkos -a machine :pre Supporting info: src/KOKKOS/README, lib/kokkos/README, "Section 5.3"_Section_accelerate.html#acc_3, "Section 5.3.3"_accelerate_kokkos.html, Pair Styles section of "Section 3.5"_Section_commands.html#cmd_5 for any pair style listed with a (k), "package kokkos"_package.html, examples/accelerate, bench/FERMI, bench/KEPLER :line KSPACE package :link(KSPACE),h5 Contents: A variety of long-range Coulombic solvers, and pair styles which compute the corresponding short-range portion of the pairwise Coulombic interactions. These include Ewald, particle-particle particle-mesh (PPPM), and multilevel summation method (MSM) solvers. Building with the KSPACE package requires a 1d FFT library be present on your system for use by the PPPM solvers. This can be the KISS FFT library provided with LAMMPS, or 3rd party libraries like FFTW or a vendor-supplied FFT library. See step 6 of "Section 2.2.2"_Section_start.html#start_2_2 of the manual for details of how to select different FFT options in your machine Makefile. The Make.py tool has an "-fft" option which can insert these settings into your machine Makefile automatically. Type "python src/Make.py -h -fft" to see the details. To install via make or Make.py: make yes-kspace make machine :pre Make.py -p kspace -a machine :pre To un-install via make or Make.py: make no-kspace make machine :pre Make.py -p ^kspace -a machine :pre Supporting info: "kspace_style"_kspace_style.html, "doc/PDF/kspace.pdf"_PDF/kspace.pdf, "Section 6.7"_Section_howto.html#howto_7, "Section 6.8"_Section_howto.html#howto_8, "Section 6.9"_Section_howto.html#howto_9, "pair_style coul"_pair_coul.html, other pair style command doc pages which have "long" or "msm" in their style name, examples/peptide, bench/in.rhodo :line MANYBODY package :link(MANYBODY),h5 Contents: A variety of many-body and bond-order potentials. These include (AI)REBO, EAM, EIM, BOP, Stillinger-Weber, and Tersoff potentials. Do a directory listing, "ls src/MANYBODY", to see the full list. To install via make or Make.py: make yes-manybody make machine :pre Make.py -p manybody -a machine :pre To un-install via make or Make.py: make no-manybody make machine :pre Make.py -p ^manybody -a machine :pre Supporting info: Examples: Pair Styles section of "Section 3.5"_Section_commands.html#cmd_5, examples/comb, examples/eim, examples/nb3d, examples/vashishta :line MC package :link(MC),h5 Contents: Several fixes and a pair style that have Monte Carlo (MC) or MC-like attributes. These include fixes for creating, breaking, and swapping bonds, and for performing atomic swaps and grand-canonical MC in conjuction with dynamics. To install via make or Make.py: make yes-mc make machine :pre Make.py -p mc -a machine :pre To un-install via make or Make.py: make no-mc make machine :pre Make.py -p ^mc -a machine :pre Supporting info: "fix atom/swap"_fix_atom_swap.html, "fix bond/break"_fix_bond_break.html, "fix bond/create"_fix_bond_create.html, "fix bond/swap"_fix_bond_swap.html, "fix gcmc"_fix_gcmc.html, "pair_style dsmc"_pair_dsmc.html :line MEAM package :link(MEAM),h5 Contents: A pair style for the modified embedded atom (MEAM) potential. Building LAMMPS with the MEAM package requires first building the MEAM library itself, which is a set of Fortran 95 files in lib/meam. Details of how to do this are in lib/meam/README. As illustrated below, perform a "make" using one of the Makefile.machine files in lib/meam which should create a lib/meam/libmeam.a file. Makefile.gfortran and Makefile.ifort are examples for the GNU Fortran and Intel Fortran compilers. The "make" also copies a lib/meam/Makefile.lammps.machine file to lib/meam/Makefile.lammps. This file has settings that enable the C++ compiler used to build LAMMPS to link with a Fortran library (typically the 2 compilers to be consistent e.g. both Intel compilers, or both GNU compilers). If the settings in Makefile.lammps for your compilers and machine are not correct, the LAMMPS link will fail. Note that the Make.py script has a "-meam" option to allow the MEAM library and LAMMPS to be built in one step. Type "python src/Make.py -h -meam" to see the details. NOTE: The MEAM potential can run dramatically faster if built with the Intel Fortran compiler, rather than the GNU Fortran compiler. To install via make or Make.py: cd ~/lammps/lib/meam make -f Makefile.gfortran # for example cd ~/lammps/src make yes-meam make machine :pre Make.py -p meam -meam make=gfortran -a machine :pre To un-install via make or Make.py: make no-meam make machine :pre Make.py -p ^meam -a machine :pre Supporting info: lib/meam/README, "pair_style meam"_pair_meam.html, examples/meam :line MISC package :link(MISC),h5 Contents: A variety of computes, fixes, and pair styles that are not commonly used, but don't align with other packages. Do a directory listing, "ls src/MISC", to see the list of commands. To install via make or Make.py: make yes-misc make machine :pre Make.py -p misc -a machine :pre To un-install via make or Make.py: make no-misc make machine :pre Make.py -p ^misc -a machine :pre Supporting info: "compute ti"_compute_ti.html, "fix evaporate"_fix_evaporate.html, "fix tmm"_fix_ttm.html, "fix viscosity"_fix_viscosity.html, examples/misc :line MOLECULE package :link(MOLECULE),h5 Contents: A large number of atom, pair, bond, angle, dihedral, improper styles that are used to model molecular systems with fixed covalent bonds. The pair styles include terms for the Dreiding (hydrogen-bonding) and CHARMM force fields, and TIP4P water model. To install via make or Make.py: make yes-molecule make machine :pre Make.py -p molecule -a machine :pre To un-install via make or Make.py: make no-molecule make machine :pre Make.py -p ^molecule -a machine :pre Supporting info:"atom_style"_atom_style.html, "bond_style"_bond_style.html, "angle_style"_angle_style.html, "dihedral_style"_dihedral_style.html, "improper_style"_improper_style.html, "pair_style hbond/dreiding/lj"_pair_hbond_dreiding.html, "pair_style lj/charmm/coul/charmm"_pair_charmm.html, "Section 6.3"_Section_howto.html#howto_3, examples/micelle, examples/peptide, bench/in.chain, bench/in.rhodo :line MPIIO package :link(MPIIO),h5 Contents: Support for parallel output/input of dump and restart files via the MPIIO library, which is part of the standard message-passing interface (MPI) library. It adds "dump styles"_dump.html with a "mpiio" in their style name. Restart files with an ".mpiio" suffix are also written and read in parallel. To install via make or Make.py: make yes-mpiio make machine :pre Make.py -p mpiio -a machine :pre To un-install via make or Make.py: make no-mpiio make machine :pre Make.py -p ^mpiio -a machine :pre Supporting info: "dump"_dump.html, "restart"_restart.html, "write_restart"_write_restart.html, "read_restart"_read_restart.html :line OPT package :link(OPT),h5 Contents: A handful of pair styles with an "opt" in their style name which are optimized for improved CPU performance on single or multiple cores. These include EAM, LJ, CHARMM, and Morse potentials. "Section 5.3.5"_accelerate_opt.html gives details of how to build and use this package. See the KOKKOS, USER-INTEL, and USER-OMP packages, which also have styles optimized for CPU performance. Some C++ compilers, like the Intel compiler, require the compile flag "-restrict" to build LAMMPS with the OPT package. It should be added to the CCFLAGS line of your Makefile.machine. Or use Makefile.opt in src/MAKE/OPTIONS, via "make opt". For compilers that use the flag, the Make.py command adds it automatically to the Makefile.auto file it creates and uses. To install via make or Make.py: make yes-opt make machine :pre Make.py -p opt -a machine :pre To un-install via make or Make.py: make no-opt make machine :pre Make.py -p ^opt -a machine :pre Supporting info: "Section 5.3"_Section_accelerate.html#acc_3, "Section 5.3.5"_accelerate_opt.html, Pair Styles section of "Section 3.5"_Section_commands.html#cmd_5 for any pair style listed with an (t), examples/accelerate, bench/KEPLER :line PERI package :link(PERI),h5 Contents: Support for the Peridynamics method, a particle-based meshless continuum model. The package includes an atom style, several computes which calculate diagnostics, and several Peridynamic pair styles which implement different materials models. To install via make or Make.py: make yes-peri make machine :pre Make.py -p peri -a machine :pre To un-install via make or Make.py: make no-peri make machine :pre Make.py -p ^peri -a machine :pre Supporting info: "doc/PDF/PDLammps_overview.pdf"_PDF/PDLammps_overview.pdf, "doc/PDF/PDLammps_EPS.pdf"_PDF/PDLammps_EPS.pdf, "doc/PDF/PDLammps_VES.pdf"_PDF/PDLammps_VES.pdf, "atom_style peri"_atom_style.html, "compute damage/atom"_compute_damage_atom.html, "pair_style peri/pmb"_pair_peri.html, examples/peri :line POEMS package :link(POEMS),h5 Contents: A fix that wraps the Parallelizable Open source Efficient Multibody Software (POEMS) librar, which is able to simulate the dynamics of articulated body systems. These are systems with multiple rigid bodies (collections of atoms or particles) whose motion is coupled by connections at hinge points. Building LAMMPS with the POEMS package requires first building the POEMS library itself, which is a set of C++ files in lib/poems. Details of how to do this are in lib/poems/README. As illustrated below, perform a "make" using one of the Makefile.machine files in lib/poems which should create a lib/meam/libpoems.a file. Makefile.g++ and Makefile.icc are examples for the GNU and Intel C++ compilers. The "make" also creates a lib/poems/Makefile.lammps file which you should not need to change. Note the Make.py script has a "-poems" option to allow the POEMS library and LAMMPS to be built in one step. Type "python src/Make.py -h -poems" to see the details. To install via make or Make.py: cd ~/lammps/lib/poems make -f Makefile.g++ # for example cd ~/lammps/src make yes-poems make machine :pre Make.py -p poems -poems make=g++ -a machine :pre To un-install via make or Make.py: make no-meam make machine :pre Make.py -p ^meam -a machine :pre Supporting info: src/POEMS/README, lib/poems/README, "fix poems"_fix_poems.html, examples/rigid :line PYTHON package :link(PYTHON),h5 Contents: A "python"_python.html command which allow you to execute Python code from a LAMMPS input script. The code can be in a separate file or embedded in the input script itself. See "Section 11.2"_Section_python.html#py_2 for an overview of using Python from LAMMPS and for other ways to use LAMMPS and Python together. Building with the PYTHON package assumes you have a Python shared library available on your system, which needs to be a Python 2 version, 2.6 or later. Python 3 is not yet supported. The build uses the contents of the lib/python/Makefile.lammps file to find all the Python files required in the build/link process. See the lib/python/README file if the settings in that file do not work on your system. Note that the Make.py script has a "-python" option to allow an alternate lib/python/Makefile.lammps file to be specified and LAMMPS to be built in one step. Type "python src/Make.py -h -python" to see the details. To install via make or Make.py: make yes-python make machine :pre Make.py -p python -a machine :pre To un-install via make or Make.py: make no-python make machine :pre Make.py -p ^python -a machine :pre Supporting info: examples/python :line QEQ package :link(QEQ),h5 Contents: Several fixes for performing charge equilibration (QEq) via severeal different algorithms. These can be used with pair styles that use QEq as part of their formulation. To install via make or Make.py: make yes-qeq make machine :pre Make.py -p qeq -a machine :pre To un-install via make or Make.py: make no-qeq make machine :pre Make.py -p ^qeq -a machine :pre Supporting info: "fix qeq/*"_fix_qeq.html, examples/qeq :line REAX package :link(REAX),h5 Contents: A pair style for the ReaxFF potential, a universal reactive force field, as well as a "fix reax/bonds"_fix_reax_bonds.html command for monitoring molecules as bonds are created and destroyed. Building LAMMPS with the REAX package requires first building the REAX library itself, which is a set of Fortran 95 files in lib/reax. Details of how to do this are in lib/reax/README. As illustrated below, perform a "make" using one of the Makefile.machine files in lib/reax which should create a lib/reax/libreax.a file. Makefile.gfortran and Makefile.ifort are examples for the GNU Fortran and Intel Fortran compilers. The "make" also copies a lib/reax/Makefile.lammps.machine file to lib/reax/Makefile.lammps. This file has settings that enable the C++ compiler used to build LAMMPS to link with a Fortran library (typically the 2 compilers to be consistent e.g. both Intel compilers, or both GNU compilers). If the settings in Makefile.lammps for your compilers and machine are not correct, the LAMMPS link will fail. Note that the Make.py script has a "-reax" option to allow the REAX library and LAMMPS to be built in one step. Type "python src/Make.py -h -reax" to see the details. To install via make or Make.py: cd ~/lammps/lib/reax make -f Makefile.gfortran # for example cd ~/lammps/src make yes-reax make machine :pre Make.py -p reax -reax make=gfortran -a machine :pre To un-install via make or Make.py: make no-reax make machine :pre Make.py -p ^reax -a machine :pre Supporting info: lib/reax/README, "pair_style reax"_pair_reax.html, "fix reax/bonds"_fix_reax_bonds.html, examples/reax :line REPLICA package :link(REPLICA),h5 Contents: A collection of multi-replica methods that are used by invoking multiple instances (replicas) of LAMMPS simulations. Communication between individual replicas is performed in different ways by the different methods. See "Section 6.5"_Section_howto.html#howto_5 for an overview of how to run multi-replica simulations in LAMMPS. Multi-replica methods included in the package are nudged elastic band (NEB), parallel replica dynamics (PRD), temperature accelerated dynamics (TAD), parallel tempering, and a verlet/split algorithm for performing long-range Coulombics on one set of processors, and the remainder of the force field calculation on another set. To install via make or Make.py: make yes-replica make machine :pre Make.py -p replica -a machine :pre To un-install via make or Make.py: make no-replica make machine :pre Make.py -p ^replica -a machine :pre Supporting info: "Section 6.5"_Section_howto.html#howto_5, "neb"_neb.html, "prd"_prd.html, "tad"_tad.html, "temper"_temper.html, "run_style verlet/split"_run_style.html, examples/neb, examples/prd, examples/tad :line RIGID package :link(RIGID),h5 Contents: A collection of computes and fixes which enforce rigid constraints on collections of atoms or particles. This includes SHAKE and RATTLE, as well as variants of rigid-body time integrators for a few large bodies or many small bodies. To install via make or Make.py: make yes-rigid make machine :pre Make.py -p rigid -a machine :pre To un-install via make or Make.py: make no-rigid make machine :pre Make.py -p ^rigid -a machine :pre Supporting info: "compute erotate/rigid"_compute_erotate_rigid.html, "fix shake"_fix_shake.html, "fix rattle"_fix_shake.html, "fix rigid/*"_fix_rigid.html, examples/ASPHERE, examples/rigid :line SHOCK package :link(SHOCK),h5 Contents: A small number of fixes useful for running impact simulations where a shock-wave passes through a material. To install via make or Make.py: make yes-shock make machine :pre Make.py -p shock -a machine :pre To un-install via make or Make.py: make no-shock make machine :pre Make.py -p ^shock -a machine :pre Supporting info: "fix append/atoms"_fix_append_atoms.html, "fix msst"_fix_msst.html, "fix nphug"_fix_nphug.html, "fix wall/piston"_fix_wall_piston.html, examples/hugoniostat, examples/msst :line SNAP package :link(SNAP),h5 Contents: A pair style for the spectral neighbor analysis potential (SNAP), which is an empirical potential which can be quantum accurate when fit to an archive of DFT data. Computes useful for analyzing properties of the potential are also included. To install via make or Make.py: make yes-snap make machine :pre Make.py -p snap -a machine :pre To un-install via make or Make.py: make no-snap make machine :pre Make.py -p ^snap -a machine :pre Supporting info: "pair snap"_pair_snap.html, "compute sna/atom"_compute_sna_atom.html, "compute snad/atom"_compute_sna_atom.html, "compute snav/atom"_compute_sna_atom.html, examples/snap :line SRD package :link(SRD),h5 Contents: Two fixes which implement the Stochastic Rotation Dynamics (SRD) method for coarse-graining of a solvent, typically around large colloidal-scale particles. To install via make or Make.py: make yes-srd make machine :pre Make.py -p srd -a machine :pre To un-install via make or Make.py: make no-srd make machine :pre Make.py -p ^srd -a machine :pre Supporting info: "fix srd"_fix_srd.html, "fix wall/srd"_fix_wall_srd.html, examples/srd, examples/ASPHERE :line VORONOI package :link(VORONOI),h5 Contents: A "compute voronoi/atom"_compute_voronoi_atom.html command which computes the Voronoi tesselation of a collection of atoms or particles by wrapping the Voro++ lib To build LAMMPS with the KIM package you must have previously installed the KIM API (library) on your system. The lib/kim/README file explains how to download and install KIM. Building with the KIM package also uses the lib/kim/Makefile.lammps file in the compile/link process. You should not need to edit this file. To build LAMMPS with the VORONOI package you must have previously installed the Voro++ library on your system. The lib/voronoi/README file explains how to download and install Voro++. There is a lib/voronoi/install.py script which automates the process. Type "python install.py" to see instructions. The final step is to create soft links in the lib/voronoi directory for "includelink" and "liblink" which point to installed Voro++ directories. Building with the VORONOI package uses the contents of the lib/voronoi/Makefile.lammps file in the compile/link process. You should not need to edit this file. Note that the Make.py script has a "-voronoi" option to allow the Voro++ library to be downloaded and/or installed and LAMMPS to be built in one step. Type "python src/Make.py -h -voronoi" to see the details. To install via make or Make.py: cd ~/lammps/lib/voronoi python install.py -g -b -l # download Voro++, build in lib/voronoi, create links cd ~/lammps/src make yes-voronoi make machine :pre Make.py -p voronoi -voronoi install="-g -b -l" -a machine :pre To un-install via make or Make.py: make no-voronoi make machine :pre Make.py -p ^voronoi -a machine :pre Supporting info: src/VORONOI/README, lib/voronoi/README, "compute voronoi/atom"_compute_voronoi_atom.html, examples/voronoi :line 4.2 User packages :h4,link(pkg_2) The current list of user-contributed packages is as follows: Package, Description, Author(s), Doc page, Example, Pic/movie, Library "USER-ATC"_#USER-ATC, atom-to-continuum coupling, Jones & Templeton & Zimmerman (1), "fix atc"_fix_atc.html, USER/atc, "atc"_atc, lib/atc "USER-AWPMD"_#USER-AWPMD, wave-packet MD, Ilya Valuev (JIHT), "pair_style awpmd/cut"_pair_awpmd.html, USER/awpmd, -, lib/awpmd -"USER-CG-CMM"_#USER-CG-CMM, coarse-graining model, Axel Kohlmeyer (Temple U), "pair_style lj/sdk"_pair_sdk.html, USER/cg-cmm, "cg"_cg, - "USER-CGDNA"_#USER-CGDNA, coarse-grained DNA force fields, Oliver Henrich (U Strathclyde Glasgow), src/USER-CGDNA/README, USER/cgdna, -, - +"USER-CGSDK"_#USER-CGSDK, SDK coarse-graining model, Axel Kohlmeyer (Temple U), "pair_style lj/sdk"_pair_sdk.html, USER/cgsdk, "cgsdk"_cgsdk, - "USER-COLVARS"_#USER-COLVARS, collective variables, Fiorin & Henin & Kohlmeyer (2), "fix colvars"_fix_colvars.html, USER/colvars, "colvars"_colvars, lib/colvars "USER-DIFFRACTION"_#USER-DIFFRACTION, virutal x-ray and electron diffraction, Shawn Coleman (ARL),"compute xrd"_compute_xrd.html, USER/diffraction, -, - "USER-DPD"_#USER-DPD, reactive dissipative particle dynamics (DPD), Larentzos & Mattox & Brennan (5), src/USER-DPD/README, USER/dpd, -, - "USER-DRUDE"_#USER-DRUDE, Drude oscillators, Dequidt & Devemy & Padua (3), "tutorial"_tutorial_drude.html, USER/drude, -, - "USER-EFF"_#USER-EFF, electron force field, Andres Jaramillo-Botero (Caltech), "pair_style eff/cut"_pair_eff.html, USER/eff, "eff"_eff, - "USER-FEP"_#USER-FEP, free energy perturbation, Agilio Padua (U Blaise Pascal Clermont-Ferrand), "compute fep"_compute_fep.html, USER/fep, -, - "USER-H5MD"_#USER-H5MD, dump output via HDF5, Pierre de Buyl (KU Leuven), "dump h5md"_dump_h5md.html, -, -, lib/h5md "USER-INTEL"_#USER-INTEL, Vectorized CPU and Intel(R) coprocessor styles, W. Michael Brown (Intel), "Section 5.3.2"_accelerate_intel.html, examples/intel, -, - "USER-LB"_#USER-LB, Lattice Boltzmann fluid, Colin Denniston (U Western Ontario), "fix lb/fluid"_fix_lb_fluid.html, USER/lb, -, - "USER-MGPT"_#USER-MGPT, fast MGPT multi-ion potentials, Tomas Oppelstrup & John Moriarty (LLNL), "pair_style mgpt"_pair_mgpt.html, USER/mgpt, -, - "USER-MISC"_#USER-MISC, single-file contributions, USER-MISC/README, USER-MISC/README, -, -, - "USER-MANIFOLD"_#USER-MANIFOLD, motion on 2d surface, Stefan Paquay (Eindhoven U of Technology), "fix manifoldforce"_fix_manifoldforce.html, USER/manifold, "manifold"_manifold, - "USER-MOLFILE"_#USER-MOLFILE, "VMD"_VMD molfile plug-ins, Axel Kohlmeyer (Temple U), "dump molfile"_dump_molfile.html, -, -, VMD-MOLFILE "USER-NC-DUMP"_#USER-NC-DUMP, dump output via NetCDF, Lars Pastewka (Karlsruhe Institute of Technology, KIT), "dump nc / dump nc/mpiio"_dump_nc.html, -, -, lib/netcdf "USER-OMP"_#USER-OMP, OpenMP threaded styles, Axel Kohlmeyer (Temple U), "Section 5.3.4"_accelerate_omp.html, -, -, - "USER-PHONON"_#USER-PHONON, phonon dynamical matrix, Ling-Ti Kong (Shanghai Jiao Tong U), "fix phonon"_fix_phonon.html, USER/phonon, -, - "USER-QMMM"_#USER-QMMM, QM/MM coupling, Axel Kohlmeyer (Temple U), "fix qmmm"_fix_qmmm.html, USER/qmmm, -, lib/qmmm "USER-QTB"_#USER-QTB, quantum nuclear effects, Yuan Shen (Stanford), "fix qtb"_fix_qtb.html "fix qbmsst"_fix_qbmsst.html, qtb, -, - "USER-QUIP"_#USER-QUIP, QUIP/libatoms interface, Albert Bartok-Partay (U Cambridge), "pair_style quip"_pair_quip.html, USER/quip, -, lib/quip "USER-REAXC"_#USER-REAXC, C version of ReaxFF, Metin Aktulga (LBNL), "pair_style reaxc"_pair_reax_c.html, reax, -, - "USER-SMD"_#USER-SMD, smoothed Mach dynamics, Georg Ganzenmuller (EMI), "SMD User Guide"_PDF/SMD_LAMMPS_userguide.pdf, USER/smd, -, - "USER-SMTBQ"_#USER-SMTBQ, Second Moment Tight Binding - QEq potential, Salles & Maras & Politano & Tetot (4), "pair_style smtbq"_pair_smtbq.html, USER/smtbq, -, - "USER-SPH"_#USER-SPH, smoothed particle hydrodynamics, Georg Ganzenmuller (EMI), "SPH User Guide"_PDF/SPH_LAMMPS_userguide.pdf, USER/sph, "sph"_sph, - "USER-TALLY"_#USER-TALLY, Pairwise tallied computes, Axel Kohlmeyer (Temple U), "compute XXX/tally"_compute_tally.html, USER/tally, -, - "USER-VTK"_#USER-VTK, VTK-style dumps, Berger and Queteschiner (6), "compute custom/vtk"_dump_custom_vtk.html, -, -, lib/vtk :tb(ea=c) :link(atc,http://lammps.sandia.gov/pictures.html#atc) -:link(cg,http://lammps.sandia.gov/pictures.html#cg) +:link(cgsdk,http://lammps.sandia.gov/pictures.html#cg) :link(eff,http://lammps.sandia.gov/movies.html#eff) :link(manifold,http://lammps.sandia.gov/movies.html#manifold) :link(sph,http://lammps.sandia.gov/movies.html#sph) :link(VMD,http://www.ks.uiuc.edu/Research/vmd) The "Authors" column lists a name(s) if a specific person is responsible for creating and maintaining the package. (1) The ATC package was created by Reese Jones, Jeremy Templeton, and Jon Zimmerman (Sandia). (2) The COLVARS package was created by Axel Kohlmeyer (Temple U) using the colvars module library written by Giacomo Fiorin (Temple U) and Jerome Henin (LISM, Marseille, France). (3) The DRUDE package was created by Alain Dequidt (U Blaise Pascal Clermont-Ferrand) and co-authors Julien Devemy (CNRS) and Agilio Padua (U Blaise Pascal). (4) The SMTBQ package was created by Nicolas Salles, Emile Maras, Olivier Politano, and Robert Tetot (LAAS-CNRS, France). (5) The USER-DPD package was created by James Larentzos (ARL), Timothy Mattox (Engility), and John Brennan (ARL). (6) The USER-VTK package was created by Richard Berger (JKU) and Daniel Queteschiner (DCS Computing). The "Doc page" column links to either a sub-section of the "Section 6"_Section_howto.html of the manual, or an input script command implemented as part of the package, or to additional documentation provided within the package. The "Example" column is a sub-directory in the examples directory of the distribution which has an input script that uses the package. E.g. "peptide" refers to the examples/peptide directory. The "Library" column lists an external library which must be built first and which LAMMPS links to when it is built. If it is listed as lib/package, then the code for the library is under the lib directory of the LAMMPS distribution. See the lib/package/README file for info on how to build the library. If it is not listed as lib/package, then it is a third-party library not included in the LAMMPS distribution. See details on all of this below for individual packages. :line USER-ATC package :link(USER-ATC),h5 Contents: ATC stands for atoms-to-continuum. This package implements a "fix atc"_fix_atc.html command to either couple MD with continuum finite element equations or perform on-the-fly post-processing of atomic information to continuum fields. See src/USER-ATC/README for more details. To build LAMMPS with this package ... To install via make or Make.py: make yes-user-atc make machine :pre Make.py -p atc -a machine :pre To un-install via make or Make.py: make no-user-atc make machine :pre Make.py -p ^atc -a machine :pre Supporting info:src/USER-ATC/README, "fix atc"_fix_atc.html, examples/USER/atc Authors: Reese Jones (rjones at sandia.gov), Jeremy Templeton (jatempl at sandia.gov) and Jon Zimmerman (jzimmer at sandia.gov) at Sandia. Contact them directly if you have questions. :line USER-AWPMD package :link(USER-AWPMD),h5 Contents: AWPMD stands for Antisymmetrized Wave Packet Molecular Dynamics. This package implements an atom, pair, and fix style which allows electrons to be treated as explicit particles in an MD calculation. See src/USER-AWPMD/README for more details. To build LAMMPS with this package ... Supporting info: src/USER-AWPMD/README, "fix awpmd/cut"_pair_awpmd.html, examples/USER/awpmd Author: Ilya Valuev at the JIHT in Russia (valuev at physik.hu-berlin.de). Contact him directly if you have questions. :line -USER-CG-CMM package :link(USER-CG-CMM),h5 +USER-CGSDK package :link(USER-CGSDK),h5 -Contents: CG-CMM stands for coarse-grained ??. This package -implements several pair styles and an angle style using the coarse -grained parametrization of Shinoda, DeVane, Klein, Mol Sim, 33, 27 -(2007) (SDK), with extensions to simulate ionic liquids, electrolytes, -lipids and charged amino acids. See src/USER-CG-CMM/README for more -details. +Contents: CGSDK stands for Shinoda-DeVane-Klein (SDK) coarse-grained +molecular dynamics force field. This package implements several pair +styles and an angle style using the coarse grained parametrization of +Shinoda, DeVane, Klein, Mol Sim, 33, 27 (2007) (SDK), with extensions +to simulate ionic liquids, electrolytes, lipids and charged amino acids. +See src/USER-CGSDK/README for more details. -Supporting info: src/USER-CG-CMM/README, "pair lj/sdk"_pair_sdk.html, +Supporting info: src/USER-CGSDK/README, "pair lj/sdk"_pair_sdk.html, "pair lj/sdk/coul/long"_pair_sdk.html, "angle sdk"_angle_sdk.html, -examples/USER/cg-cmm +examples/USER/cgsdk Author: Axel Kohlmeyer at Temple U (akohlmey at gmail.com). Contact him directly if you have questions. :line USER-CGDNA package :link(USER-CGDNA),h5 Contents: The CGDNA package implements coarse-grained force fields for single- and double-stranded DNA. These are at the moment mainly the oxDNA and oxDNA2 models, developed by Doye, Louis and Ouldridge at the University of Oxford. The package also contains Langevin-type rigid-body integrators with improved stability. See these doc pages to get started: "bond_style oxdna/fene"_bond_oxdna.html "bond_style oxdna2/fene"_bond_oxdna.html "pair_style oxdna/..."_pair_oxdna.html "pair_style oxdna2/..."_pair_oxdna2.html "fix nve/dotc/langevin"_fix_nve_dotc_langevin.html :ul Supporting info: /src/USER-CGDNA/README, "bond_style oxdna/fene"_bond_oxdna.html, "bond_style oxdna2/fene"_bond_oxdna.html, "pair_style oxdna/..."_pair_oxdna.html, "pair_style oxdna2/..."_pair_oxdna2.html, "fix nve/dotc/langevin"_fix_nve_dotc_langevin.html Author: Oliver Henrich at the University of Strathclyde, Glasgow (oliver.henrich at strath.ac.uk, also ohenrich at ph.ed.ac.uk). Contact him directly if you have any questions. :line USER-COLVARS package :link(USER-COLVARS),h5 Contents: COLVARS stands for collective variables which can be used to implement Adaptive Biasing Force, Metadynamics, Steered MD, Umbrella Sampling and Restraints. This package implements a "fix colvars"_fix_colvars.html command which wraps a COLVARS library which can perform those kinds of simulations. See src/USER-COLVARS/README for more details. Supporting info: "doc/PDF/colvars-refman-lammps.pdf"_PDF/colvars-refman-lammps.pdf, src/USER-COLVARS/README, lib/colvars/README, "fix colvars"_fix_colvars.html, examples/USER/colvars Authors: Axel Kohlmeyer at Temple U (akohlmey at gmail.com) wrote the -fix. The COLVARS library itself is written and maintained by Giacomo -Fiorin (ICMS, Temple University, Philadelphia, PA, USA) and Jerome -Henin (LISM, CNRS, Marseille, France). Contact them directly if you -have questions. +interface that integrates colvars into LAMMPS. The COLVARS library +itself is written and maintained by Giacomo Fiorin (ICMS, Temple +University, Philadelphia, PA, USA) and Jerome Henin (LISM, CNRS, +Marseille, France). For more info, and to communicate with the COLVARS +developers, please go to COLVARS home page at +"http://colvars.github.io"_http://colvars.github.io/. :line USER-DIFFRACTION package :link(USER-DIFFRACTION),h5 Contents: This packages implements two computes and a fix for calculating x-ray and electron diffraction intensities based on kinematic diffraction theory. See src/USER-DIFFRACTION/README for more details. Supporting info: "compute saed"_compute_saed.html, "compute xrd"_compute_xrd.html, "fix saed/vtk"_fix_saed_vtk.html, examples/USER/diffraction Author: Shawn P. Coleman (shawn.p.coleman8.ctr at mail.mil) while at the University of Arkansas. Contact him directly if you have questions. :line USER-DPD package :link(USER-DPD),h5 Contents: DPD stands for dissipative particle dynamics, This package implements DPD for isothermal, isoenergetic, isobaric and isenthalpic conditions. It also has extensions for performing reactive DPD, where each particle has internal state for multiple species and a coupled set of chemical reaction ODEs are integrated each timestep. The DPD equations of motion are integrated efficiently through the Shardlow splitting algorithm. See src/USER-DPD/README for more details. Supporting info: /src/USER-DPD/README, "compute dpd"_compute_dpd.html "compute dpd/atom"_compute_dpd_atom.html "fix eos/cv"_fix_eos_table.html "fix eos/table"_fix_eos_table.html "fix eos/table/rx"_fix_eos_table_rx.html "fix shardlow"_fix_shardlow.html "fix rx"_fix_rx.html "pair table/rx"_pair_table_rx.html "pair dpd/fdt"_pair_dpd_fdt.html "pair dpd/fdt/energy"_pair_dpd_fdt.html "pair exp6/rx"_pair_exp6_rx.html "pair multi/lucy"_pair_multi_lucy.html "pair multi/lucy/rx"_pair_multi_lucy_rx.html, examples/USER/dpd Authors: James Larentzos (ARL) (james.p.larentzos.civ at mail.mil), Timothy Mattox (Engility Corp) (Timothy.Mattox at engilitycorp.com) and John Brennan (ARL) (john.k.brennan.civ at mail.mil). Contact them directly if you have questions. :line USER-DRUDE package :link(USER-DRUDE),h5 Contents: This package contains methods for simulating polarizable systems using thermalized Drude oscillators. It has computes, fixes, and pair styles for this purpose. See "Section 6.27"_Section_howto.html#howto_27 for an overview of how to use the package. See src/USER-DRUDE/README for additional details. There are auxiliary tools for using this package in tools/drude. Supporting info: "Section 6.27"_Section_howto.html#howto_27, src/USER-DRUDE/README, "fix drude"_fix_drude.html, "fix drude/transform/*"_fix_drude_transform.html, "compute temp/drude"_compute_temp_drude.html, "pair thole"_pair_thole.html, "pair lj/cut/thole/long"_pair_thole.html, examples/USER/drude, tools/drude Authors: Alain Dequidt at Universite Blaise Pascal Clermont-Ferrand (alain.dequidt at univ-bpclermont.fr); co-authors: Julien Devemy, Agilio Padua. Contact them directly if you have questions. :line USER-EFF package :link(USER-EFF),h5 Contents: EFF stands for electron force field. This package contains atom, pair, fix and compute styles which implement the eFF as described in A. Jaramillo-Botero, J. Su, Q. An, and W.A. Goddard III, JCC, 2010. The eFF potential was first introduced by Su and Goddard, in 2007. See src/USER-EFF/README for more details. There are auxiliary tools for using this package in tools/eff; see its README file. Supporting info: Author: Andres Jaramillo-Botero at CalTech (ajaramil at wag.caltech.edu). Contact him directly if you have questions. :line USER-FEP package :link(USER-FEP),h5 Contents: FEP stands for free energy perturbation. This package provides methods for performing FEP simulations by using a "fix adapt/fep"_fix_adapt_fep.html command with soft-core pair potentials, which have a "soft" in their style name. See src/USER-FEP/README for more details. There are auxiliary tools for using this package in tools/fep; see its README file. Supporting info: src/USER-FEP/README, "fix adapt/fep"_fix_adapt_fep.html, "compute fep"_compute_fep.html, "pair_style */soft"_pair_lj_soft.html, examples/USER/fep Author: Agilio Padua at Universite Blaise Pascal Clermont-Ferrand (agilio.padua at univ-bpclermont.fr). Contact him directly if you have questions. :line USER-H5MD package :link(USER-H5MD),h5 Contents: H5MD stands for HDF5 for MD. "HDF5"_HDF5 is a binary, portable, self-describing file format, used by many scientific simulations. H5MD is a format for molecular simulations, built on top of HDF5. This package implements a "dump h5md"_dump_h5md.html command to output LAMMPS snapshots in this format. See src/USER-H5MD/README for more details. :link(HDF5,http://www.hdfgroup.org/HDF5/) Supporting info: src/USER-H5MD/README, lib/h5md/README, "dump h5md"_dump_h5md.html Author: Pierre de Buyl at KU Leuven (see http://pdebuyl.be) created this package as well as the H5MD format and library. Contact him directly if you have questions. :line USER-INTEL package :link(USER-INTEL),h5 Contents: Dozens of pair, bond, angle, dihedral, and improper styles that are optimized for Intel CPUs and the Intel Xeon Phi (in offload mode). All of them have an "intel" in their style name. "Section 5.3.2"_accelerate_intel.html gives details of what hardware and compilers are required on your system, and how to build and use this package. Also see src/USER-INTEL/README for more details. See the KOKKOS, OPT, and USER-OMP packages, which also have CPU and Phi-enabled styles. Supporting info: examples/accelerate, src/USER-INTEL/TEST "Section 5.3"_Section_accelerate.html#acc_3 Author: Mike Brown at Intel (michael.w.brown at intel.com). Contact him directly if you have questions. For the USER-INTEL package, you have 2 choices when building. You can build with CPU or Phi support. The latter uses Xeon Phi chips in "offload" mode. Each of these modes requires additional settings in your Makefile.machine for CCFLAGS and LINKFLAGS. For CPU mode (if using an Intel compiler): CCFLAGS: add -fopenmp, -DLAMMPS_MEMALIGN=64, -restrict, -xHost, -fno-alias, -ansi-alias, -override-limits LINKFLAGS: add -fopenmp :ul For Phi mode add the following in addition to the CPU mode flags: CCFLAGS: add -DLMP_INTEL_OFFLOAD and LINKFLAGS: add -offload :ul And also add this to CCFLAGS: -offload-option,mic,compiler,"-fp-model fast=2 -mGLOB_default_function_attrs=\"gather_scatter_loop_unroll=4\"" :pre Examples: :line USER-LB package :link(USER-LB),h5 Supporting info: This package contains a LAMMPS implementation of a background Lattice-Boltzmann fluid, which can be used to model MD particles influenced by hydrodynamic forces. See this doc page and its related commands to get started: "fix lb/fluid"_fix_lb_fluid.html The people who created this package are Frances Mackay (fmackay at uwo.ca) and Colin (cdennist at uwo.ca) Denniston, University of Western Ontario. Contact them directly if you have questions. Examples: examples/USER/lb :line USER-MGPT package :link(USER-MGPT),h5 Supporting info: This package contains a fast implementation for LAMMPS of quantum-based MGPT multi-ion potentials. The MGPT or model GPT method derives from first-principles DFT-based generalized pseudopotential theory (GPT) through a series of systematic approximations valid for mid-period transition metals with nearly half-filled d bands. The MGPT method was originally developed by John Moriarty at Lawrence Livermore National Lab (LLNL). In the general matrix representation of MGPT, which can also be applied to f-band actinide metals, the multi-ion potentials are evaluated on the fly during a simulation through d- or f-state matrix multiplication, and the forces that move the ions are determined analytically. The {mgpt} pair style in this package calculates forces and energies using an optimized matrix-MGPT algorithm due to Tomas Oppelstrup at LLNL. See this doc page to get started: "pair_style mgpt"_pair_mgpt.html The persons who created the USER-MGPT package are Tomas Oppelstrup (oppelstrup2@llnl.gov) and John Moriarty (moriarty2@llnl.gov) Contact them directly if you have any questions. Examples: examples/USER/mgpt :line USER-MISC package :link(USER-MISC),h5 Supporting info: The files in this package are a potpourri of (mostly) unrelated features contributed to LAMMPS by users. Each feature is a single pair of files (*.cpp and *.h). More information about each feature can be found by reading its doc page in the LAMMPS doc directory. The doc page which lists all LAMMPS input script commands is as follows: "Section 3.5"_Section_commands.html#cmd_5 User-contributed features are listed at the bottom of the fix, compute, pair, etc sections. The list of features and author of each is given in the src/USER-MISC/README file. You should contact the author directly if you have specific questions about the feature or its coding. Examples: examples/USER/misc :line USER-MANIFOLD package :link(USER-MANIFOLD),h5 Supporting info: This package contains a dump molfile command which uses molfile plugins that are bundled with the "VMD"_http://www.ks.uiuc.edu/Research/vmd molecular visualization and analysis program, to enable LAMMPS to dump its information in formats compatible with various molecular simulation tools. This package allows LAMMPS to perform MD simulations of particles constrained on a manifold (i.e., a 2D subspace of the 3D simulation box). It achieves this using the RATTLE constraint algorithm applied to single-particle constraint functions g(xi,yi,zi) = 0 and their derivative (i.e. the normal of the manifold) n = grad(g). See this doc page to get started: "fix manifoldforce"_fix_manifoldforce.html The person who created this package is Stefan Paquay, at the Eindhoven University of Technology (TU/e), The Netherlands (s.paquay at tue.nl). Contact him directly if you have questions. :line USER-MOLFILE package :link(USER-MOLFILE),h5 Supporting info: This package contains a dump molfile command which uses molfile plugins that are bundled with the "VMD"_http://www.ks.uiuc.edu/Research/vmd molecular visualization and analysis program, to enable LAMMPS to dump its information in formats compatible with various molecular simulation tools. The package only provides the interface code, not the plugins. These can be obtained from a VMD installation which has to match the platform that you are using to compile LAMMPS for. By adding plugins to VMD, support for new file formats can be added to LAMMPS (or VMD or other programs that use them) without having to recompile the application itself. See this doc page to get started: "dump molfile"_dump_molfile.html The person who created this package is Axel Kohlmeyer at Temple U (akohlmey at gmail.com). Contact him directly if you have questions. :line USER-NC-DUMP package :link(USER-NC-DUMP),h5 Contents: Dump styles for writing NetCDF format files. NetCDF is a binary, portable, self-describing file format on top of HDF5. The file format contents follow the AMBER NetCDF trajectory conventions (http://ambermd.org/netcdf/nctraj.xhtml), but include extensions to this convention. This package implements a "dump nc"_dump_nc.html command and a "dump nc/mpiio"_dump_nc.html command to output LAMMPS snapshots in this format. See src/USER-NC-DUMP/README for more details. NetCDF files can be directly visualized with the following tools: Ovito (http://www.ovito.org/). Ovito supports the AMBER convention and all of the above extensions. :ulb,l VMD (http://www.ks.uiuc.edu/Research/vmd/) :l AtomEye (http://www.libatoms.org/). The libAtoms version of AtomEye contains a NetCDF reader that is not present in the standard distribution of AtomEye :l,ule The person who created these files is Lars Pastewka at Karlsruhe Institute of Technology (lars.pastewka at kit.edu). Contact him directly if you have questions. :line USER-OMP package :link(USER-OMP),h5 Supporting info: This package provides OpenMP multi-threading support and other optimizations of various LAMMPS pair styles, dihedral styles, and fix styles. See this section of the manual to get started: "Section 5.3"_Section_accelerate.html#acc_3 The person who created this package is Axel Kohlmeyer at Temple U (akohlmey at gmail.com). Contact him directly if you have questions. For the USER-OMP package, your Makefile.machine needs additional settings for CCFLAGS and LINKFLAGS. CCFLAGS: add -fopenmp and -restrict LINKFLAGS: add -fopenmp :ul Examples: examples/accelerate, bench/KEPLER :line USER-PHONON package :link(USER-PHONON),h5 This package contains a fix phonon command that calculates dynamical matrices, which can then be used to compute phonon dispersion relations, directly from molecular dynamics simulations. See this doc page to get started: "fix phonon"_fix_phonon.html The person who created this package is Ling-Ti Kong (konglt at sjtu.edu.cn) at Shanghai Jiao Tong University. Contact him directly if you have questions. Examples: examples/USER/phonon :line USER-QMMM package :link(USER-QMMM),h5 Supporting info: This package provides a fix qmmm command which allows LAMMPS to be used in a QM/MM simulation, currently only in combination with pw.x code from the "Quantum ESPRESSO"_espresso package. :link(espresso,http://www.quantum-espresso.org) The current implementation only supports an ONIOM style mechanical coupling to the Quantum ESPRESSO plane wave DFT package. Electrostatic coupling is in preparation and the interface has been written in a manner that coupling to other QM codes should be possible without changes to LAMMPS itself. See this doc page to get started: "fix qmmm"_fix_qmmm.html as well as the lib/qmmm/README file. The person who created this package is Axel Kohlmeyer at Temple U (akohlmey at gmail.com). Contact him directly if you have questions. :line USER-QTB package :link(USER-QTB),h5 Supporting info: This package provides a self-consistent quantum treatment of the vibrational modes in a classical molecular dynamics simulation. By coupling the MD simulation to a colored thermostat, it introduces zero point energy into the system, alter the energy power spectrum and the heat capacity towards their quantum nature. This package could be of interest if one wants to model systems at temperatures lower than their classical limits or when temperatures ramp up across the classical limits in the simulation. See these two doc pages to get started: "fix qtb"_fix_qtb.html provides quantum nulcear correction through a colored thermostat and can be used with other time integration schemes like "fix nve"_fix_nve.html or "fix nph"_fix_nh.html. "fix qbmsst"_fix_qbmsst.html enables quantum nuclear correction of a multi-scale shock technique simulation by coupling the quantum thermal bath with the shocked system. The person who created this package is Yuan Shen (sy0302 at stanford.edu) at Stanford University. Contact him directly if you have questions. Examples: examples/USER/qtb :line USER-QUIP package :link(USER-QUIP),h5 Supporting info: Examples: examples/USER/quip :line USER-REAXC package :link(USER-REAXC),h5 Supporting info: This package contains a implementation for LAMMPS of the ReaxFF force field. ReaxFF uses distance-dependent bond-order functions to represent the contributions of chemical bonding to the potential energy. It was originally developed by Adri van Duin and the Goddard group at CalTech. The USER-REAXC version of ReaxFF (pair_style reax/c), implemented in C, should give identical or very similar results to pair_style reax, which is a ReaxFF implementation on top of a Fortran library, a version of which library was originally authored by Adri van Duin. The reax/c version should be somewhat faster and more scalable, particularly with respect to the charge equilibration calculation. It should also be easier to build and use since there are no complicating issues with Fortran memory allocation or linking to a Fortran library. For technical details about this implementation of ReaxFF, see this paper: Parallel and Scalable Reactive Molecular Dynamics: Numerical Methods and Algorithmic Techniques, H. M. Aktulga, J. C. Fogarty, S. A. Pandit, A. Y. Grama, Parallel Computing, in press (2011). See the doc page for the pair_style reax/c command for details of how to use it in LAMMPS. The person who created this package is Hasan Metin Aktulga (hmaktulga at lbl.gov), while at Purdue University. Contact him directly, or Aidan Thompson at Sandia (athomps at sandia.gov), if you have questions. Examples: examples/reax :line USER-SMD package :link(USER-SMD),h5 Supporting info: This package implements smoothed Mach dynamics (SMD) in LAMMPS. Currently, the package has the following features: * Does liquids via traditional Smooth Particle Hydrodynamics (SPH) * Also solves solids mechanics problems via a state of the art stabilized meshless method with hourglass control. * Can specify hydrostatic interactions independently from material strength models, i.e. pressure and deviatoric stresses are separated. * Many material models available (Johnson-Cook, plasticity with hardening, Mie-Grueneisen, Polynomial EOS). Easy to add new material models. * Rigid boundary conditions (walls) can be loaded as surface geometries from *.STL files. See the file doc/PDF/SMD_LAMMPS_userguide.pdf to get started. There are example scripts for using this package in examples/USER/smd. The person who created this package is Georg Ganzenmuller at the Fraunhofer-Institute for High-Speed Dynamics, Ernst Mach Institute in Germany (georg.ganzenmueller at emi.fhg.de). Contact him directly if you have questions. Examples: examples/USER/smd :line USER-SMTBQ package :link(USER-SMTBQ),h5 Supporting info: This package implements the Second Moment Tight Binding - QEq (SMTB-Q) potential for the description of ionocovalent bonds in oxides. There are example scripts for using this package in examples/USER/smtbq. See this doc page to get started: "pair_style smtbq"_pair_smtbq.html The persons who created the USER-SMTBQ package are Nicolas Salles, Emile Maras, Olivier Politano, Robert Tetot, who can be contacted at these email addresses: lammps@u-bourgogne.fr, nsalles@laas.fr. Contact them directly if you have any questions. Examples: examples/USER/smtbq :line USER-SPH package :link(USER-SPH),h5 Supporting info: This package implements smoothed particle hydrodynamics (SPH) in LAMMPS. Currently, the package has the following features: * Tait, ideal gas, Lennard-Jones equation of states, full support for complete (i.e. internal-energy dependent) equations of state * Plain or Monaghans XSPH integration of the equations of motion * Density continuity or density summation to propagate the density field * Commands to set internal energy and density of particles from the input script * Output commands to access internal energy and density for dumping and thermo output See the file doc/PDF/SPH_LAMMPS_userguide.pdf to get started. There are example scripts for using this package in examples/USER/sph. The person who created this package is Georg Ganzenmuller at the Fraunhofer-Institute for High-Speed Dynamics, Ernst Mach Institute in Germany (georg.ganzenmueller at emi.fhg.de). Contact him directly if you have questions. Examples: examples/USER/sph :line USER-TALLY package :link(USER-TALLY),h5 Supporting info: Examples: examples/USER/tally :line USER-VTK package :link(USER-VTK),h5 diff --git a/doc/src/angle_sdk.txt b/doc/src/angle_sdk.txt index 785585f84..0cc535e54 100644 --- a/doc/src/angle_sdk.txt +++ b/doc/src/angle_sdk.txt @@ -1,58 +1,58 @@ "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 angle_style sdk command :h3 [Syntax:] angle_style sdk :pre angle_style sdk/omp :pre [Examples:] angle_style sdk angle_coeff 1 300.0 107.0 :pre [Description:] The {sdk} angle style is a combination of the harmonic angle potential, :c,image(Eqs/angle_harmonic.jpg) where theta0 is the equilibrium value of the angle and K a prefactor, with the {repulsive} part of the non-bonded {lj/sdk} pair style between the atoms 1 and 3. This angle potential is intended for coarse grained MD simulations with the CMM parametrization using the "pair_style lj/sdk"_pair_sdk.html. Relative to the pair_style {lj/sdk}, however, the energy is shifted by {epsilon}, to avoid sudden jumps. Note that the usual 1/2 factor is included in K. The following coefficients must be defined for each angle type via the "angle_coeff"_angle_coeff.html command as in the example above: K (energy/radian^2) theta0 (degrees) :ul Theta0 is specified in degrees, but LAMMPS converts it to radians internally; hence the units of K are in energy/radian^2. The also required {lj/sdk} parameters will be extracted automatically from the pair_style. [Restrictions:] This angle style can only be used if LAMMPS was built with the -USER-CG-CMM package. See the "Making +USER-CGSDK package. See the "Making LAMMPS"_Section_start.html#start_3 section for more info on packages. [Related commands:] "angle_coeff"_angle_coeff.html, "angle_style harmonic"_angle_harmonic.html, "pair_style lj/sdk"_pair_sdk.html, "pair_style lj/sdk/coul/long"_pair_sdk.html [Default:] none diff --git a/doc/src/pair_sdk.txt b/doc/src/pair_sdk.txt index 212760e03..1c348eaaf 100644 --- a/doc/src/pair_sdk.txt +++ b/doc/src/pair_sdk.txt @@ -1,156 +1,156 @@ "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 pair_style lj/sdk command :h3 pair_style lj/sdk/gpu command :h3 pair_style lj/sdk/kk command :h3 pair_style lj/sdk/omp command :h3 pair_style lj/sdk/coul/long command :h3 pair_style lj/sdk/coul/long/gpu command :h3 pair_style lj/sdk/coul/long/omp command :h3 [Syntax:] pair_style style args :pre style = {lj/sdk} or {lj/sdk/coul/long} args = list of arguments for a particular style :ul {lj/sdk} args = cutoff cutoff = global cutoff for Lennard Jones interactions (distance units) {lj/sdk/coul/long} args = cutoff (cutoff2) cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units) cutoff2 = global cutoff for Coulombic (optional) (distance units) :pre [Examples:] pair_style lj/sdk 2.5 pair_coeff 1 1 lj12_6 1 1.1 2.8 :pre pair_style lj/sdk/coul/long 10.0 pair_style lj/sdk/coul/long 10.0 12.0 pair_coeff 1 1 lj9_6 100.0 3.5 12.0 :pre [Description:] The {lj/sdk} styles compute a 9/6, 12/4, or 12/6 Lennard-Jones potential, given by :c,image(Eqs/pair_cmm.jpg) as required for the SDK Coarse-grained MD parametrization discussed in "(Shinoda)"_#Shinoda3 and "(DeVane)"_#DeVane. Rc is the cutoff. Style {lj/sdk/coul/long} computes the adds Coulombic interactions with an additional damping factor applied so it can be used in conjunction with the "kspace_style"_kspace_style.html command and its {ewald} or {pppm} or {pppm/cg} option. The Coulombic cutoff specified for this style means that pairwise interactions within this distance are computed directly; interactions outside that distance are computed in reciprocal space. The following coefficients must be defined for each pair of atoms types via the "pair_coeff"_pair_coeff.html command as in the examples above, or in the data file or restart files read by the "read_data"_read_data.html or "read_restart"_read_restart.html commands, or by mixing as described below: cg_type (lj9_6, lj12_4, or lj12_6) epsilon (energy units) sigma (distance units) cutoff1 (distance units) :ul Note that sigma is defined in the LJ formula as the zero-crossing distance for the potential, not as the energy minimum. The prefactors are chosen so that the potential minimum is at -epsilon. The latter 2 coefficients are optional. If not specified, the global LJ and Coulombic cutoffs specified in the pair_style command are used. If only one cutoff is specified, it is used as the cutoff for both LJ and Coulombic interactions for this type pair. If both coefficients are specified, they are used as the LJ and Coulombic cutoffs for this type pair. For {lj/sdk/coul/long} only the LJ cutoff can be specified since a Coulombic cutoff cannot be specified for an individual I,J type pair. All type pairs use the same global Coulombic cutoff specified in the pair_style command. :line Styles with a {gpu}, {intel}, {kk}, {omp} or {opt} suffix are functionally the same as the corresponding style without the suffix. They have been optimized to run faster, depending on your available hardware, as discussed in "Section 5"_Section_accelerate.html of the manual. The accelerated styles take the same arguments and should produce the same results, except for round-off and precision issues. These accelerated styles are part of the GPU, USER-INTEL, KOKKOS, USER-OMP, and OPT packages respectively. They are only enabled if LAMMPS was built with those packages. See the "Making LAMMPS"_Section_start.html#start_3 section for more info. You can specify the accelerated styles explicitly in your input script by including their suffix, or you can use the "-suffix command-line switch"_Section_start.html#start_7 when you invoke LAMMPS, or you can use the "suffix"_suffix.html command in your input script. See "Section 5"_Section_accelerate.html of the manual for more instructions on how to use the accelerated styles effectively. :line [Mixing, shift, table, tail correction, restart, and rRESPA info]: For atom type pairs I,J and I != J, the epsilon and sigma coefficients and cutoff distance for all of the lj/sdk pair styles {cannot} be mixed, since different pairs may have different exponents. So all parameters for all pairs have to be specified explicitly through the "pair_coeff" command. Defining then in a data file is also not supported, due to limitations of that file format. All of the lj/sdk pair styles support the "pair_modify"_pair_modify.html shift option for the energy of the Lennard-Jones portion of the pair interaction. The {lj/sdk/coul/long} pair styles support the "pair_modify"_pair_modify.html table option since they can tabulate the short-range portion of the long-range Coulombic interaction. All of the lj/sdk pair styles write their information to "binary restart files"_restart.html, so pair_style and pair_coeff commands do not need to be specified in an input script that reads a restart file. The lj/sdk and lj/cut/coul/long pair styles do not support the use of the {inner}, {middle}, and {outer} keywords of the "run_style respa"_run_style.html command. :line [Restrictions:] -All of the lj/sdk pair styles are part of the USER-CG-CMM package. +All of the lj/sdk pair styles are part of the USER-CGSDK package. The {lj/sdk/coul/long} style also requires the KSPACE package to be built (which is enabled by default). They are only enabled if LAMMPS was built with that package. See the "Making LAMMPS"_Section_start.html#start_3 section for more info. [Related commands:] "pair_coeff"_pair_coeff.html, "angle_style sdk"_angle_sdk.html [Default:] none :line :link(Shinoda3) [(Shinoda)] Shinoda, DeVane, Klein, Mol Sim, 33, 27 (2007). :link(DeVane) [(DeVane)] Shinoda, DeVane, Klein, Soft Matter, 4, 2453-2462 (2008).