diff --git a/doc/Section_accelerate.html b/doc/Section_accelerate.html index b8c2b3a62a..838c1713df 100644 --- a/doc/Section_accelerate.html +++ b/doc/Section_accelerate.html @@ -11,8 +11,18 @@ Section
-

5. Using accelerated CPU and GPU styles +

5. Accelerating LAMMPS performance

+

This section describes various methods for improving LAMMPS +performance for different classes of problems running +on different kinds of machines. +

+5.1 OPT package
+5.2 USER-OMP package
+5.3 GPU package
+5.4 USER-CUDA package
+5.5 Comparison of GPU and USER-CUDA packages
+

Accelerated versions of various pair_style, fixes, computes, and other commands have been added to LAMMPS, which will typically run faster than the @@ -74,12 +84,6 @@ compute, and kspace sections.

The final section compares and contrasts the GPU and USER-CUDA packages, since they are both designed to use NVIDIA GPU hardware.

-5.1 OPT package
-5.2 USER-OMP package
-5.3 GPU package
-5.4 USER-CUDA package
-5.5 Comparison of GPU and USER-CUDA packages
-

diff --git a/doc/Section_accelerate.txt b/doc/Section_accelerate.txt index 4a9d08b001..081e6279dd 100644 --- a/doc/Section_accelerate.txt +++ b/doc/Section_accelerate.txt @@ -8,7 +8,17 @@ Section"_Section_howto.html :c :line -5. Using accelerated CPU and GPU styles :h3 +5. Accelerating LAMMPS performance :h3 + +This section describes various methods for improving LAMMPS +performance for different classes of problems running +on different kinds of machines. + +5.1 "OPT package"_#acc_1 +5.2 "USER-OMP package"_#acc_2 +5.3 "GPU package"_#acc_3 +5.4 "USER-CUDA package"_#acc_4 +5.5 "Comparison of GPU and USER-CUDA packages"_#acc_5 :all(b) Accelerated versions of various "pair_style"_pair_style.html, "fixes"_fix.html, "computes"_compute.html, and other commands have @@ -71,12 +81,6 @@ speed-ups you can expect :ul The final section compares and contrasts the GPU and USER-CUDA packages, since they are both designed to use NVIDIA GPU hardware. -5.1 "OPT package"_#acc_1 -5.2 "USER-OMP package"_#acc_2 -5.3 "GPU package"_#acc_3 -5.4 "USER-CUDA package"_#acc_4 -5.5 "Comparison of GPU and USER-CUDA packages"_#acc_5 :all(b) - :line :line diff --git a/doc/Section_commands.html b/doc/Section_commands.html index 8679adea94..916644fab4 100644 --- a/doc/Section_commands.html +++ b/doc/Section_commands.html @@ -11,8 +11,8 @@

3. Commands

-

This section describes how a LAMMPS input script is formatted and what -commands are used to define a LAMMPS simulation. +

This section describes how a LAMMPS input script is formatted and the +input script commands used to define a LAMMPS simulation.

3.1 LAMMPS input script
3.2 Parsing rules
@@ -22,6 +22,8 @@ commands are used to define a LAMMPS simulation.
+
+

3.1 LAMMPS input script

LAMMPS executes by reading commands from a input script (text file), diff --git a/doc/Section_commands.txt b/doc/Section_commands.txt index 06c530c179..b767c220e6 100644 --- a/doc/Section_commands.txt +++ b/doc/Section_commands.txt @@ -8,8 +8,8 @@ 3. Commands :h3 -This section describes how a LAMMPS input script is formatted and what -commands are used to define a LAMMPS simulation. +This section describes how a LAMMPS input script is formatted and the +input script commands used to define a LAMMPS simulation. 3.1 "LAMMPS input script"_#cmd_1 3.2 "Parsing rules"_#cmd_2 @@ -17,6 +17,7 @@ commands are used to define a LAMMPS simulation. 3.4 "Commands listed by category"_#cmd_4 3.5 "Commands listed alphabetically"_#cmd_5 :all(b) +:line :line 3.1 LAMMPS input script :link(cmd_1),h4 diff --git a/doc/Section_errors.html b/doc/Section_errors.html index 58ea10e3ff..b7fbbbba7a 100644 --- a/doc/Section_errors.html +++ b/doc/Section_errors.html @@ -13,8 +13,8 @@ Section

12. Errors

-

This section describes the various kinds of errors you can encounter -when using LAMMPS. +

This section describes the errors you can encounter when using LAMMPS, +either conceptually, or as printed out by the program.

12.1 Common problems
12.2 Reporting bugs
@@ -22,6 +22,8 @@ when using LAMMPS.
+
+

12.1 Common problems

If two LAMMPS runs do not produce the same answer on different diff --git a/doc/Section_errors.txt b/doc/Section_errors.txt index 2bf511d925..9c44470ab6 100644 --- a/doc/Section_errors.txt +++ b/doc/Section_errors.txt @@ -10,13 +10,14 @@ Section"_Section_history.html :c 12. Errors :h3 -This section describes the various kinds of errors you can encounter -when using LAMMPS. +This section describes the errors you can encounter when using LAMMPS, +either conceptually, or as printed out by the program. 12.1 "Common problems"_#err_1 12.2 "Reporting bugs"_#err_2 12.3 "Error & warning messages"_#err_3 :all(b) +:line :line 12.1 Common problems :link(err_1),h4 diff --git a/doc/Section_history.html b/doc/Section_history.html index 522e4e1220..d827db95e7 100644 --- a/doc/Section_history.html +++ b/doc/Section_history.html @@ -13,15 +13,17 @@ Section

13. Future and history

-

This section lists features we are planning to add to LAMMPS, features -of previous versions of LAMMPS, and features of other parallel -molecular dynamics codes I've distributed. +

This section lists features we plan to add to LAMMPS, features of +previous versions of LAMMPS, and features of other parallel molecular +dynamics codes our group has distributed.

13.1 Coming attractions
13.2 Past versions

+
+

13.1 Coming attractions

The Wish list link on the diff --git a/doc/Section_history.txt b/doc/Section_history.txt index 92600b7e22..2c65825370 100644 --- a/doc/Section_history.txt +++ b/doc/Section_history.txt @@ -10,13 +10,14 @@ Section"_Manual.html :c 13. Future and history :h3 -This section lists features we are planning to add to LAMMPS, features -of previous versions of LAMMPS, and features of other parallel -molecular dynamics codes I've distributed. +This section lists features we plan to add to LAMMPS, features of +previous versions of LAMMPS, and features of other parallel molecular +dynamics codes our group has distributed. 13.1 "Coming attractions"_#hist_1 13.2 "Past versions"_#hist_2 :all(b) +:line :line 13.1 Coming attractions :h4,link(hist_1) diff --git a/doc/Section_howto.html b/doc/Section_howto.html index 7f200f929e..ada3d46ade 100644 --- a/doc/Section_howto.html +++ b/doc/Section_howto.html @@ -11,8 +11,7 @@

6. How-to discussions

-

The following sections describe how to use various options within -LAMMPS. +

This section describes how to perform common tasks using LAMMPS.

6.1 Restarting a simulation
6.2 2d simulations
@@ -42,6 +41,8 @@ setup and run various kinds of simulations.


+
+

6.1 Restarting a simulation

There are 3 ways to continue a long LAMMPS simulation. Multiple diff --git a/doc/Section_howto.txt b/doc/Section_howto.txt index 65131975fb..00da9985a4 100644 --- a/doc/Section_howto.txt +++ b/doc/Section_howto.txt @@ -8,8 +8,7 @@ 6. How-to discussions :h3 -The following sections describe how to use various options within -LAMMPS. +This section describes how to perform common tasks using LAMMPS. 6.1 "Restarting a simulation"_#howto_1 6.2 "2d simulations"_#howto_2 @@ -37,6 +36,7 @@ The example input scripts included in the LAMMPS distribution and highlighted in "this section"_Section_example.html also show how to setup and run various kinds of simulations. +:line :line 6.1 Restarting a simulation :link(howto_1),h4 diff --git a/doc/Section_intro.html b/doc/Section_intro.html index 3b659cf8e7..815541a4b2 100644 --- a/doc/Section_intro.html +++ b/doc/Section_intro.html @@ -11,10 +11,10 @@

1. Introduction

-

These sections provide an overview of what LAMMPS can and can't do, -describe what it means for LAMMPS to be an open-source code, and -acknowledge the funding and people who have contributed to LAMMPS over -the years. +

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
1.2 LAMMPS features
@@ -24,6 +24,8 @@ the years.
+
+

1.1 What is LAMMPS

LAMMPS is a classical molecular dynamics code that models an ensemble diff --git a/doc/Section_intro.txt b/doc/Section_intro.txt index 2ceb4f78d4..53158cc399 100644 --- a/doc/Section_intro.txt +++ b/doc/Section_intro.txt @@ -8,10 +8,10 @@ 1. Introduction :h3 -These sections provide an overview of what LAMMPS can and can't do, -describe what it means for LAMMPS to be an open-source code, and -acknowledge the funding and people who have contributed to LAMMPS over -the years. +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 @@ -19,6 +19,7 @@ the years. 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 diff --git a/doc/Section_modify.html b/doc/Section_modify.html index 8e217b40fe..8a5604d169 100644 --- a/doc/Section_modify.html +++ b/doc/Section_modify.html @@ -13,6 +13,24 @@ Section

10. Modifying & extending LAMMPS

+

This section describes how to customize LAMMPS by modifying +and extending its source code. +

+10.1 Atom styles
+10.2 Bond, angle, dihedral, improper potentials
+10.3 Compute styles
+10.4 Dump styles
+10.5 Dump custom output options
+10.6 Fix styles which include integrators, temperature and pressure control, force constraints, boundary conditions, diagnostic output, etc
+10.7 Input script commands
+10.8 Kspace computations
+10.9 Minimization styles
+10.10 Pairwise potentials
+10.11 Region styles
+10.12 Thermodynamic output options
+10.13 Variable options
+10.14 Submitting new features for inclusion in LAMMPS
+

LAMMPS is designed in a modular fashion so as to be easy to modify and extend with new functionality. In fact, about 75% of its source code is files added in this fashion. @@ -92,8 +110,6 @@ you can optionally define. thermo.cpp, dump_custom.cpp, and variable.cpp files as explained below.

-
-

Here are additional guidelines for modifying LAMMPS and adding new functionality:

@@ -114,30 +130,10 @@ command. LAMMPS performance when it isn't used, send an email to the developers. We might be interested in adding it to the LAMMPS distribution. See further -details on this at the bottom of this page. +details on this at the bottom of this page.
-

Here are the subsequent topics discussed below, most of which are new -features that can be added in the manner just described: -

-10.1 Atom styles
-10.2 Bond, angle, dihedral, improper potentials
-10.3 Compute styles
-10.4 Dump styles
-10.5 Dump custom output options
-10.6 Fix styles which include integrators, temperature and pressure control, force constraints, boundary conditions, diagnostic output, etc
-10.7 Input script commands
-10.8 Kspace computations
-10.9 Minimization styles
-10.10 Pairwise potentials
-10.11 Region styles
-10.12 Thermodynamic output options
-10.13 Variable options
-10.14 Submitting new features for inclusion in LAMMPS
- -
-

10.1 Atom styles diff --git a/doc/Section_modify.txt b/doc/Section_modify.txt index 789761cbb2..a38bd219a7 100644 --- a/doc/Section_modify.txt +++ b/doc/Section_modify.txt @@ -10,6 +10,26 @@ Section"_Section_python.html :c 10. Modifying & extending LAMMPS :h3 +This section describes how to customize LAMMPS by modifying +and extending its source code. + +10.1 "Atom styles"_#mod_1 +10.2 "Bond, angle, dihedral, improper potentials"_#mod_2 +10.3 "Compute styles"_#mod_3 +10.4 "Dump styles"_#mod_4 +10.5 "Dump custom output options"_#mod_5 +10.6 "Fix styles"_#mod_6 which include integrators, \ + temperature and pressure control, force constraints, \ + boundary conditions, diagnostic output, etc +10.7 "Input script commands"_mod_7 +10.8 "Kspace computations"_#mod_8 +10.9 "Minimization styles"_#mod_9 +10.10 "Pairwise potentials"_#mod_10 +10.11 "Region styles"_#mod_11 +10.12 "Thermodynamic output options"_#mod_12 +10.13 "Variable options"_#mod_13 +10.14 "Submitting new features for inclusion in LAMMPS"_#mod_14 :all(b) + LAMMPS is designed in a modular fashion so as to be easy to modify and extend with new functionality. In fact, about 75% of its source code is files added in this fashion. @@ -89,8 +109,6 @@ Additionally, new output options can be added directly to the thermo.cpp, dump_custom.cpp, and variable.cpp files as explained below. -:line - Here are additional guidelines for modifying LAMMPS and adding new functionality: @@ -111,29 +129,7 @@ If you add something you think is truly useful and doesn't impact LAMMPS performance when it isn't used, send an email to the "developers"_http://lammps.sandia.gov/authors.html. We might be interested in adding it to the LAMMPS distribution. See further -details on this at the bottom of this page. :l,ule - -:line - -Here are the subsequent topics discussed below, most of which are new -features that can be added in the manner just described: - -10.1 "Atom styles"_#mod_1 -10.2 "Bond, angle, dihedral, improper potentials"_#mod_2 -10.3 "Compute styles"_#mod_3 -10.4 "Dump styles"_#mod_4 -10.5 "Dump custom output options"_#mod_5 -10.6 "Fix styles"_#mod_6 which include integrators, \ - temperature and pressure control, force constraints, \ - boundary conditions, diagnostic output, etc -10.7 "Input script commands"_mod_7 -10.8 "Kspace computations"_#mod_8 -10.9 "Minimization styles"_#mod_9 -10.10 "Pairwise potentials"_#mod_10 -10.11 "Region styles"_#mod_11 -10.12 "Thermodynamic output options"_#mod_12 -10.13 "Variable options"_#mod_13 -10.14 "Submitting new features for inclusion in LAMMPS"_#mod_14 :all(b) +details on this at the bottom of this page. :l,ule :line :line diff --git a/doc/Section_packages.html b/doc/Section_packages.html index fd9da9bb4d..600f034d3b 100644 --- a/doc/Section_packages.html +++ b/doc/Section_packages.html @@ -13,6 +13,12 @@ Section

4. Packages

+

This section gives a quick overview of the add-on packages that extend +LAMMPS functionality. +

+4.1 Standard packages
+4.2 User packages
+

LAMMPS includes many optional packages, which 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 @@ -28,9 +34,6 @@ between standard packages and user packages in LAMMPS. standard packages, just a one-line description is given. For user packages, more details are provided.

-4.1 Standard packages
-4.2 User packages
-

diff --git a/doc/Section_packages.txt b/doc/Section_packages.txt index 6e9dd1dcb1..20b016cbcb 100644 --- a/doc/Section_packages.txt +++ b/doc/Section_packages.txt @@ -10,6 +10,12 @@ Section"_Section_accelerate.html :c 4. Packages :h3 +This section gives a quick overview of the add-on packages that extend +LAMMPS functionality. + +4.1 "Standard packages"_#pkg_1 +4.2 "User packages"_#pkg_2 :all(b) + LAMMPS includes many optional packages, which 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 @@ -25,9 +31,6 @@ Below, the packages currently availabe in LAMMPS are listed. For standard packages, just a one-line description is given. For user packages, more details are provided. -4.1 "Standard packages"_#pkg_1 -4.2 "User packages"_#pkg_2 :all(b) - :line :line diff --git a/doc/Section_python.html b/doc/Section_python.html index b968a2baa7..a9eb0d34ab 100644 --- a/doc/Section_python.html +++ b/doc/Section_python.html @@ -11,6 +11,17 @@

11. Python interface to LAMMPS

+

This section describes how to build and use LAMMPS via a Python +interface. +

+

The LAMMPS distribution includes some Python code in its python directory which wraps the library interface to LAMMPS. This makes it is possible to run LAMMPS, invoke LAMMPS commands or give it an input @@ -89,14 +100,6 @@ setup discussion. The next to last sub-section describes the Python syntax used to invoke LAMMPS. The last sub-section describes example Python scripts included in the python directory.

-

Before proceeding, there are 2 items to note.

(1) The provided Python wrapper for LAMMPS uses the amazing and diff --git a/doc/Section_python.txt b/doc/Section_python.txt index 8f2aae4567..6a80a827b3 100644 --- a/doc/Section_python.txt +++ b/doc/Section_python.txt @@ -8,6 +8,17 @@ 11. Python interface to LAMMPS :h3 +This section describes how to build and use LAMMPS via a Python +interface. + +11.1 "Extending Python with a serial version of LAMMPS"_#py_1 +11.2 "Creating a shared MPI library"_#py_2 +11.3 "Extending Python with a parallel version of LAMMPS"_#py_3 +11.4 "Extending Python with MPI"_#py_4 +11.5 "Testing the Python-LAMMPS interface"_#py_5 +11.6 "Using LAMMPS from Python"_#py_6 +11.7 "Example Python scripts that use LAMMPS"_#py_7 :ul + The LAMMPS distribution includes some Python code in its python directory which wraps the library interface to LAMMPS. This makes it is possible to run LAMMPS, invoke LAMMPS commands or give it an input @@ -86,14 +97,6 @@ setup discussion. The next to last sub-section describes the Python syntax used to invoke LAMMPS. The last sub-section describes example Python scripts included in the python directory. -11.1 "Extending Python with a serial version of LAMMPS"_#py_1 -11.2 "Creating a shared MPI library"_#py_2 -11.3 "Extending Python with a parallel version of LAMMPS"_#py_3 -11.4 "Extending Python with MPI"_#py_4 -11.5 "Testing the Python-LAMMPS interface"_#py_5 -11.6 "Using LAMMPS from Python"_#py_6 -11.7 "Example Python scripts that use LAMMPS"_#py_7 :ul - Before proceeding, there are 2 items to note. (1) The provided Python wrapper for LAMMPS uses the amazing and diff --git a/doc/Section_start.html b/doc/Section_start.html index ea3f0bf52f..4d64107295 100644 --- a/doc/Section_start.html +++ b/doc/Section_start.html @@ -25,6 +25,8 @@ experienced users.


+
+

2.1 What's in the LAMMPS distribution

When you download LAMMPS you will need to unzip and untar the diff --git a/doc/Section_start.txt b/doc/Section_start.txt index 6bcb3900d9..c6c82e1eba 100644 --- a/doc/Section_start.txt +++ b/doc/Section_start.txt @@ -20,6 +20,7 @@ experienced users. 2.7 "Screen output"_#start_7 2.8 "Tips for users of previous versions"_#start_8 :all(b) +:line :line 2.1 What's in the LAMMPS distribution :h4,link(start_1)