diff --git a/doc/Section_commands.html b/doc/Section_commands.html
index e19d54733..220a3db9a 100644
--- a/doc/Section_commands.html
+++ b/doc/Section_commands.html
@@ -1,645 +1,645 @@
 <HTML>
 <CENTER><A HREF = "Section_start.html">Previous Section</A> - <A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A> - <A HREF = "Section_packages.html">Next Section</A> 
 </CENTER>
 
 
 
 
 
 
 <HR>
 
 <H3>3. Commands 
 </H3>
 <P>This section describes how a LAMMPS input script is formatted and the
 input script commands used to define a LAMMPS simulation.
 </P>
 3.1 <A HREF = "#cmd_1">LAMMPS input script</A><BR>
 3.2 <A HREF = "#cmd_2">Parsing rules</A><BR>
 3.3 <A HREF = "#cmd_3">Input script structure</A><BR>
 3.4 <A HREF = "#cmd_4">Commands listed by category</A><BR>
 3.5 <A HREF = "#cmd_5">Commands listed alphabetically</A> <BR>
 
 <HR>
 
 <HR>
 
 <A NAME = "cmd_1"></A><H4>3.1 LAMMPS input script 
 </H4>
 <P>LAMMPS executes by reading commands from a input script (text file),
 one line at a time.  When the input script ends, LAMMPS exits.  Each
 command causes LAMMPS to take some action.  It may set an internal
 variable, read in a file, or run a simulation.  Most commands have
 default settings, which means you only need to use the command if you
 wish to change the default.
 </P>
 <P>In many cases, the ordering of commands in an input script is not
 important.  However the following rules apply:
 </P>
 <P>(1) LAMMPS does not read your entire input script and then perform a
 simulation with all the settings.  Rather, the input script is read
 one line at a time and each command takes effect when it is read.
 Thus this sequence of commands:
 </P>
 <PRE>timestep 0.5 
 run      100 
 run      100 
 </PRE>
 <P>does something different than this sequence:
 </P>
 <PRE>run      100 
 timestep 0.5 
 run      100 
 </PRE>
 <P>In the first case, the specified timestep (0.5 fmsec) is used for two
 simulations of 100 timesteps each.  In the 2nd case, the default
 timestep (1.0 fmsec) is used for the 1st 100 step simulation and a 0.5
 fmsec timestep is used for the 2nd one.
 </P>
 <P>(2) Some commands are only valid when they follow other commands.  For
 example you cannot set the temperature of a group of atoms until atoms
 have been defined and a group command is used to define which atoms
 belong to the group.
 </P>
 <P>(3) Sometimes command B will use values that can be set by command A.
 This means command A must precede command B in the input script if it
 is to have the desired effect.  For example, the
 <A HREF = "read_data.html">read_data</A> command initializes the system by setting
 up the simulation box and assigning atoms to processors.  If default
 values are not desired, the <A HREF = "processors.html">processors</A> and
 <A HREF = "boundary.html">boundary</A> commands need to be used before read_data to
 tell LAMMPS how to map processors to the simulation box.
 </P>
 <P>Many input script errors are detected by LAMMPS and an ERROR or
 WARNING message is printed.  <A HREF = "Section_errors.html">This section</A> gives
 more information on what errors mean.  The documentation for each
 command lists restrictions on how the command can be used.
 </P>
 <HR>
 
 <A NAME = "cmd_2"></A><H4>3.2 Parsing rules 
 </H4>
 <P>Each non-blank line in the input script is treated as a command.
 LAMMPS commands are case sensitive.  Command names are lower-case, as
 are specified command arguments.  Upper case letters may be used in
 file names or user-chosen ID strings.
 </P>
 <P>Here is how each line in the input script is parsed by LAMMPS:
 </P>
 <P>(1) If the last printable character on the line is a "&" character
 (with no surrounding quotes), the command is assumed to continue on
 the next line.  The next line is concatenated to the previous line by
 removing the "&" character and newline.  This allows long commands to
 be continued across two or more lines.
 </P>
 <P>(2) All characters from the first "#" character onward are treated as
 comment and discarded.  See an exception in (6).  Note that a
 comment after a trailing "&" character will prevent the command from
 continuing on the next line.  Also note that for multi-line commands a
 single leading "#" will comment out the entire command.
 </P>
 <P>(3) The line is searched repeatedly for $ characters, which indicate
 variables that are replaced with a text string.  See an exception in
 (6).  If the $ is followed by curly brackets, then the variable name
 is the text inside the curly brackets.  If no curly brackets follow
 the $, then the variable name is the single character immediately
 following the $.  Thus ${myTemp} and $x refer to variable names
 "myTemp" and "x".  See the <A HREF = "variable.html">variable</A> command for
 details of how strings are assigned to variables and how they are
 substituted for in input script commands.
 </P>
 <P>(4) The line is broken into "words" separated by whitespace (tabs,
 spaces).  Note that words can thus contain letters, digits,
 underscores, or punctuation characters.
 </P>
 <P>(5) The first word is the command name.  All successive words in the
 line are arguments.
 </P>
 <P>(6) If you want text with spaces to be treated as a single argument,
 it can be enclosed in either double or single quotes.  E.g.
 </P>
 <PRE>print "Volume = $v"
 print 'Volume = $v' 
 </PRE>
 <P>The quotes are removed when the single argument is stored internally.
 See the <A HREF = "dump_modify.html">dump modify format</A> or <A HREF = "if.html">if</A> commands
 for examples.  A "#" or "$" character that is between quotes will not
 be treated as a comment indicator in (2) or substituted for as a
 variable in (3).
 </P>
 <P>IMPORTANT NOTE: If the argument is itself a command that requires a
 quoted argument (e.g. using a <A HREF = "print.html">print</A> command as part of an
 <A HREF = "if.html">if</A> or <A HREF = "run.html">run every</A> command), then the double and
 single quotes can be nested in the usual manner.  See the doc pages
 for those commands for examples.  Only one of level of nesting is
 allowed, but that should be sufficient for most use cases.
 </P>
 <HR>
 
 <H4><A NAME = "cmd_3"></A>3.3 Input script structure 
 </H4>
 <P>This section describes the structure of a typical LAMMPS input script.
 The "examples" directory in the LAMMPS distribution contains many
 sample input scripts; the corresponding problems are discussed in
 <A HREF = "Section_example.html">Section_example</A>, and animated on the <A HREF = "http://lammps.sandia.gov">LAMMPS
 WWW Site</A>.
 </P>
 <P>A LAMMPS input script typically has 4 parts:
 </P>
 <OL><LI>Initialization
 <LI>Atom definition
 <LI>Settings
 <LI>Run a simulation 
 </OL>
 <P>The last 2 parts can be repeated as many times as desired.  I.e. run a
 simulation, change some settings, run some more, etc.  Each of the 4
 parts is now described in more detail.  Remember that almost all the
 commands need only be used if a non-default value is desired.
 </P>
 <P>(1) Initialization
 </P>
 <P>Set parameters that need to be defined before atoms are created or
 read-in from a file.
 </P>
 <P>The relevant commands are <A HREF = "units.html">units</A>,
 <A HREF = "dimension.html">dimension</A>, <A HREF = "newton.html">newton</A>,
 <A HREF = "processors.html">processors</A>, <A HREF = "boundary.html">boundary</A>,
 <A HREF = "atom_style.html">atom_style</A>, <A HREF = "atom_modify.html">atom_modify</A>.
 </P>
 <P>If force-field parameters appear in the files that will be read, these
 commands tell LAMMPS what kinds of force fields are being used:
 <A HREF = "pair_style.html">pair_style</A>, <A HREF = "bond_style.html">bond_style</A>,
 <A HREF = "angle_style.html">angle_style</A>, <A HREF = "dihedral_style.html">dihedral_style</A>,
 <A HREF = "improper_style.html">improper_style</A>.
 </P>
 <P>(2) Atom definition
 </P>
 <P>There are 3 ways to define atoms in LAMMPS.  Read them in from a data
 or restart file via the <A HREF = "read_data.html">read_data</A> or
 <A HREF = "read_restart.html">read_restart</A> commands.  These files can contain
 molecular topology information.  Or create atoms on a lattice (with no
 molecular topology), using these commands: <A HREF = "lattice.html">lattice</A>,
 <A HREF = "region.html">region</A>, <A HREF = "create_box.html">create_box</A>,
 <A HREF = "create_atoms.html">create_atoms</A>.  The entire set of atoms can be
 duplicated to make a larger simulation using the
 <A HREF = "replicate.html">replicate</A> command.
 </P>
 <P>(3) Settings
 </P>
 <P>Once atoms and molecular topology are defined, a variety of settings
 can be specified: force field coefficients, simulation parameters,
 output options, etc.
 </P>
 <P>Force field coefficients are set by these commands (they can also be
 set in the read-in files): <A HREF = "pair_coeff.html">pair_coeff</A>,
 <A HREF = "bond_coeff.html">bond_coeff</A>, <A HREF = "angle_coeff.html">angle_coeff</A>,
 <A HREF = "dihedral_coeff.html">dihedral_coeff</A>,
 <A HREF = "improper_coeff.html">improper_coeff</A>,
 <A HREF = "kspace_style.html">kspace_style</A>, <A HREF = "dielectric.html">dielectric</A>,
 <A HREF = "special_bonds.html">special_bonds</A>.
 </P>
 <P>Various simulation parameters are set by these commands:
 <A HREF = "neighbor.html">neighbor</A>, <A HREF = "neigh_modify.html">neigh_modify</A>,
 <A HREF = "group.html">group</A>, <A HREF = "timestep.html">timestep</A>,
 <A HREF = "reset_timestep.html">reset_timestep</A>, <A HREF = "run_style.html">run_style</A>,
 <A HREF = "min_style.html">min_style</A>, <A HREF = "min_modify.html">min_modify</A>.
 </P>
 <P>Fixes impose a variety of boundary conditions, time integration, and
 diagnostic options.  The <A HREF = "fix.html">fix</A> command comes in many flavors.
 </P>
 <P>Various computations can be specified for execution during a
 simulation using the <A HREF = "compute.html">compute</A>,
 <A HREF = "compute_modify.html">compute_modify</A>, and <A HREF = "variable.html">variable</A>
 commands.
 </P>
 <P>Output options are set by the <A HREF = "thermo.html">thermo</A>, <A HREF = "dump.html">dump</A>,
 and <A HREF = "restart.html">restart</A> commands.
 </P>
 <P>(4) Run a simulation
 </P>
 <P>A molecular dynamics simulation is run using the <A HREF = "run.html">run</A>
 command.  Energy minimization (molecular statics) is performed using
 the <A HREF = "minimize.html">minimize</A> command.  A parallel tempering
 (replica-exchange) simulation can be run using the
 <A HREF = "temper.html">temper</A> command.
 </P>
 <HR>
 
 <A NAME = "cmd_4"></A><H4>3.4 Commands listed by category 
 </H4>
 <P>This section lists all LAMMPS commands, grouped by category.  The
 <A HREF = "#cmd_5">next section</A> lists the same commands alphabetically.  Note
 that some style options for some commands are part of specific LAMMPS
 packages, which means they cannot be used unless the package was
 included when LAMMPS was built.  Not all packages are included in a
 default LAMMPS build.  These dependencies are listed as Restrictions
 in the command's documentation.
 </P>
 <P>Initialization:
 </P>
 <P><A HREF = "atom_modify.html">atom_modify</A>, <A HREF = "atom_style.html">atom_style</A>,
 <A HREF = "boundary.html">boundary</A>, <A HREF = "dimension.html">dimension</A>,
 <A HREF = "newton.html">newton</A>, <A HREF = "processors.html">processors</A>, <A HREF = "units.html">units</A>
 </P>
 <P>Atom definition:
 </P>
 <P><A HREF = "create_atoms.html">create_atoms</A>, <A HREF = "create_box.html">create_box</A>,
 <A HREF = "lattice.html">lattice</A>, <A HREF = "read_data.html">read_data</A>,
 <A HREF = "read_dump.html">read_dump</A>, <A HREF = "read_restart.html">read_restart</A>,
 <A HREF = "region.html">region</A>, <A HREF = "replicate.html">replicate</A>
 </P>
 <P>Force fields:
 </P>
 <P><A HREF = "angle_coeff.html">angle_coeff</A>, <A HREF = "angle_style.html">angle_style</A>,
 <A HREF = "bond_coeff.html">bond_coeff</A>, <A HREF = "bond_style.html">bond_style</A>,
 <A HREF = "dielectric.html">dielectric</A>, <A HREF = "dihedral_coeff.html">dihedral_coeff</A>,
 <A HREF = "dihedral_style.html">dihedral_style</A>,
 <A HREF = "improper_coeff.html">improper_coeff</A>,
 <A HREF = "improper_style.html">improper_style</A>,
 <A HREF = "kspace_modify.html">kspace_modify</A>, <A HREF = "kspace_style.html">kspace_style</A>,
 <A HREF = "pair_coeff.html">pair_coeff</A>, <A HREF = "pair_modify.html">pair_modify</A>,
 <A HREF = "pair_style.html">pair_style</A>, <A HREF = "pair_write.html">pair_write</A>,
 <A HREF = "special_bonds.html">special_bonds</A>
 </P>
 <P>Settings:
 </P>
 <P><A HREF = "communicate.html">communicate</A>, <A HREF = "group.html">group</A>, <A HREF = "mass.html">mass</A>,
 <A HREF = "min_modify.html">min_modify</A>, <A HREF = "min_style.html">min_style</A>,
 <A HREF = "neigh_modify.html">neigh_modify</A>, <A HREF = "neighbor.html">neighbor</A>,
 <A HREF = "reset_timestep.html">reset_timestep</A>, <A HREF = "run_style.html">run_style</A>,
 <A HREF = "set.html">set</A>, <A HREF = "timestep.html">timestep</A>, <A HREF = "velocity.html">velocity</A>
 </P>
 <P>Fixes:
 </P>
 <P><A HREF = "fix.html">fix</A>, <A HREF = "fix_modify.html">fix_modify</A>, <A HREF = "unfix.html">unfix</A>
 </P>
 <P>Computes:
 </P>
 <P><A HREF = "compute.html">compute</A>, <A HREF = "compute_modify.html">compute_modify</A>,
 <A HREF = "uncompute.html">uncompute</A>
 </P>
 <P>Output:
 </P>
 <P><A HREF = "dump.html">dump</A>, <A HREF = "dump_image.html">dump image</A>,
 <A HREF = "dump_modify.html">dump_modify</A>, <A HREF = "restart.html">restart</A>,
 <A HREF = "thermo.html">thermo</A>, <A HREF = "thermo_modify.html">thermo_modify</A>,
 <A HREF = "thermo_style.html">thermo_style</A>, <A HREF = "undump.html">undump</A>,
 <A HREF = "write_restart.html">write_restart</A>
 </P>
 <P>Actions:
 </P>
 <P><A HREF = "delete_atoms.html">delete_atoms</A>, <A HREF = "delete_bonds.html">delete_bonds</A>,
 <A HREF = "displace_atoms.html">displace_atoms</A>, <A HREF = "change_box.html">change_box</A>,
 <A HREF = "minimize.html">minimize</A>, <A HREF = "neb.html">neb</A> <A HREF = "prd.html">prd</A>,
 <A HREF = "rerun.html">rerun</A>, <A HREF = "run.html">run</A>, <A HREF = "temper.html">temper</A>
 </P>
 <P>Miscellaneous:
 </P>
 <P><A HREF = "clear.html">clear</A>, <A HREF = "echo.html">echo</A>, <A HREF = "if.html">if</A>,
 <A HREF = "include.html">include</A>, <A HREF = "jump.html">jump</A>, <A HREF = "label.html">label</A>,
 <A HREF = "log.html">log</A>, <A HREF = "next.html">next</A>, <A HREF = "print.html">print</A>,
 <A HREF = "shell.html">shell</A>, <A HREF = "variable.html">variable</A>
 </P>
 <HR>
 
 <H4><A NAME = "cmd_5"></A><A NAME = "comm"></A>3.5 Individual commands 
 </H4>
 <P>This section lists all LAMMPS commands alphabetically, with a separate
 listing below of styles within certain commands.  The <A HREF = "#cmd_4">previous
 section</A> lists the same commands, grouped by category.  Note
 that some style options for some commands are part of specific LAMMPS
 packages, which means they cannot be used unless the package was
 included when LAMMPS was built.  Not all packages are included in a
 default LAMMPS build.  These dependencies are listed as Restrictions
 in the command's documentation.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "angle_coeff.html">angle_coeff</A></TD><TD ><A HREF = "angle_style.html">angle_style</A></TD><TD ><A HREF = "atom_modify.html">atom_modify</A></TD><TD ><A HREF = "atom_style.html">atom_style</A></TD><TD ><A HREF = "balance.html">balance</A></TD><TD ><A HREF = "bond_coeff.html">bond_coeff</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "bond_style.html">bond_style</A></TD><TD ><A HREF = "boundary.html">boundary</A></TD><TD ><A HREF = "box.html">box</A></TD><TD ><A HREF = "change_box.html">change_box</A></TD><TD ><A HREF = "clear.html">clear</A></TD><TD ><A HREF = "communicate.html">communicate</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "compute.html">compute</A></TD><TD ><A HREF = "compute_modify.html">compute_modify</A></TD><TD ><A HREF = "create_atoms.html">create_atoms</A></TD><TD ><A HREF = "create_box.html">create_box</A></TD><TD ><A HREF = "delete_atoms.html">delete_atoms</A></TD><TD ><A HREF = "delete_bonds.html">delete_bonds</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "dielectric.html">dielectric</A></TD><TD ><A HREF = "dihedral_coeff.html">dihedral_coeff</A></TD><TD ><A HREF = "dihedral_style.html">dihedral_style</A></TD><TD ><A HREF = "dimension.html">dimension</A></TD><TD ><A HREF = "displace_atoms.html">displace_atoms</A></TD><TD ><A HREF = "dump.html">dump</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "dump_image.html">dump image</A></TD><TD ><A HREF = "dump_modify.html">dump_modify</A></TD><TD ><A HREF = "echo.html">echo</A></TD><TD ><A HREF = "fix.html">fix</A></TD><TD ><A HREF = "fix_modify.html">fix_modify</A></TD><TD ><A HREF = "group.html">group</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "if.html">if</A></TD><TD ><A HREF = "improper_coeff.html">improper_coeff</A></TD><TD ><A HREF = "improper_style.html">improper_style</A></TD><TD ><A HREF = "include.html">include</A></TD><TD ><A HREF = "jump.html">jump</A></TD><TD ><A HREF = "kspace_modify.html">kspace_modify</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "kspace_style.html">kspace_style</A></TD><TD ><A HREF = "label.html">label</A></TD><TD ><A HREF = "lattice.html">lattice</A></TD><TD ><A HREF = "log.html">log</A></TD><TD ><A HREF = "mass.html">mass</A></TD><TD ><A HREF = "minimize.html">minimize</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "min_modify.html">min_modify</A></TD><TD ><A HREF = "min_style.html">min_style</A></TD><TD ><A HREF = "neb.html">neb</A></TD><TD ><A HREF = "neigh_modify.html">neigh_modify</A></TD><TD ><A HREF = "neighbor.html">neighbor</A></TD><TD ><A HREF = "newton.html">newton</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "next.html">next</A></TD><TD ><A HREF = "package.html">package</A></TD><TD ><A HREF = "pair_coeff.html">pair_coeff</A></TD><TD ><A HREF = "pair_modify.html">pair_modify</A></TD><TD ><A HREF = "pair_style.html">pair_style</A></TD><TD ><A HREF = "pair_write.html">pair_write</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "partition.html">partition</A></TD><TD ><A HREF = "prd.html">prd</A></TD><TD ><A HREF = "print.html">print</A></TD><TD ><A HREF = "processors.html">processors</A></TD><TD ><A HREF = "quit.html">quit</A></TD><TD ><A HREF = "read_data.html">read_data</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "read_dump.html">read_dump</A></TD><TD ><A HREF = "read_restart.html">read_restart</A></TD><TD ><A HREF = "region.html">region</A></TD><TD ><A HREF = "replicate.html">replicate</A></TD><TD ><A HREF = "rerun.html">rerun</A></TD><TD ><A HREF = "reset_timestep.html">reset_timestep</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "restart.html">restart</A></TD><TD ><A HREF = "run.html">run</A></TD><TD ><A HREF = "run_style.html">run_style</A></TD><TD ><A HREF = "set.html">set</A></TD><TD ><A HREF = "shell.html">shell</A></TD><TD ><A HREF = "special_bonds.html">special_bonds</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "suffix.html">suffix</A></TD><TD ><A HREF = "tad.html">tad</A></TD><TD ><A HREF = "temper.html">temper</A></TD><TD ><A HREF = "thermo.html">thermo</A></TD><TD ><A HREF = "thermo_modify.html">thermo_modify</A></TD><TD ><A HREF = "thermo_style.html">thermo_style</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "timestep.html">timestep</A></TD><TD ><A HREF = "uncompute.html">uncompute</A></TD><TD ><A HREF = "undump.html">undump</A></TD><TD ><A HREF = "unfix.html">unfix</A></TD><TD ><A HREF = "units.html">units</A></TD><TD ><A HREF = "variable.html">variable</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "velocity.html">velocity</A></TD><TD ><A HREF = "write_restart.html">write_restart</A> 
 </TD></TR></TABLE></DIV>
 
 <HR>
 
 <H4>Fix styles 
 </H4>
 <P>See the <A HREF = "fix.html">fix</A> command for one-line descriptions
 of each style or click on the style itself for a full description:
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "fix_adapt.html">adapt</A></TD><TD ><A HREF = "fix_addforce.html">addforce</A></TD><TD ><A HREF = "fix_append_atoms.html">append/atoms</A></TD><TD ><A HREF = "fix_aveforce.html">aveforce</A></TD><TD ><A HREF = "fix_ave_atom.html">ave/atom</A></TD><TD ><A HREF = "fix_ave_correlate.html">ave/correlate</A></TD><TD ><A HREF = "fix_ave_histo.html">ave/histo</A></TD><TD ><A HREF = "fix_ave_spatial.html">ave/spatial</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "fix_ave_time.html">ave/time</A></TD><TD ><A HREF = "fix_balance.html">balance</A></TD><TD ><A HREF = "fix_bond_break.html">bond/break</A></TD><TD ><A HREF = "fix_bond_create.html">bond/create</A></TD><TD ><A HREF = "fix_bond_swap.html">bond/swap</A></TD><TD ><A HREF = "fix_box_relax.html">box/relax</A></TD><TD ><A HREF = "fix_deform.html">deform</A></TD><TD ><A HREF = "fix_deposit.html">deposit</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "fix_drag.html">drag</A></TD><TD ><A HREF = "fix_dt_reset.html">dt/reset</A></TD><TD ><A HREF = "fix_efield.html">efield</A></TD><TD ><A HREF = "fix_enforce2d.html">enforce2d</A></TD><TD ><A HREF = "fix_evaporate.html">evaporate</A></TD><TD ><A HREF = "fix_external.html">external</A></TD><TD ><A HREF = "fix_freeze.html">freeze</A></TD><TD ><A HREF = "fix_gcmc.html">gcmc</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "fix_gravity.html">gravity</A></TD><TD ><A HREF = "fix_heat.html">heat</A></TD><TD ><A HREF = "fix_indent.html">indent</A></TD><TD ><A HREF = "fix_langevin.html">langevin</A></TD><TD ><A HREF = "fix_lineforce.html">lineforce</A></TD><TD ><A HREF = "fix_momentum.html">momentum</A></TD><TD ><A HREF = "fix_move.html">move</A></TD><TD ><A HREF = "fix_msst.html">msst</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "fix_neb.html">neb</A></TD><TD ><A HREF = "fix_nh.html">nph</A></TD><TD ><A HREF = "fix_nphug.html">nphug</A></TD><TD ><A HREF = "fix_nph_asphere.html">nph/asphere</A></TD><TD ><A HREF = "fix_nph_sphere.html">nph/sphere</A></TD><TD ><A HREF = "fix_nh.html">npt</A></TD><TD ><A HREF = "fix_npt_asphere.html">npt/asphere</A></TD><TD ><A HREF = "fix_npt_sphere.html">npt/sphere</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "fix_nve.html">nve</A></TD><TD ><A HREF = "fix_nve_asphere.html">nve/asphere</A></TD><TD ><A HREF = "fix_nve_asphere_noforce.html">nve/asphere/noforce</A></TD><TD ><A HREF = "fix_nve_limit.html">nve/limit</A></TD><TD ><A HREF = "fix_nve_line.html">nve/line</A></TD><TD ><A HREF = "fix_nve_noforce.html">nve/noforce</A></TD><TD ><A HREF = "fix_nve_sphere.html">nve/sphere</A></TD><TD ><A HREF = "fix_nve_tri.html">nve/tri</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "fix_nh.html">nvt</A></TD><TD ><A HREF = "fix_nvt_asphere.html">nvt/asphere</A></TD><TD ><A HREF = "fix_nvt_sllod.html">nvt/sllod</A></TD><TD ><A HREF = "fix_nvt_sphere.html">nvt/sphere</A></TD><TD ><A HREF = "fix_orient_fcc.html">orient/fcc</A></TD><TD ><A HREF = "fix_planeforce.html">planeforce</A></TD><TD ><A HREF = "fix_poems.html">poems</A></TD><TD ><A HREF = "fix_pour.html">pour</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "fix_press_berendsen.html">press/berendsen</A></TD><TD ><A HREF = "fix_print.html">print</A></TD><TD ><A HREF = "fix_qeq_comb.html">qeq/comb</A></TD><TD ><A HREF = "fix_reax_bonds.html">reax/bonds</A></TD><TD ><A HREF = "fix_recenter.html">recenter</A></TD><TD ><A HREF = "fix_restrain.html">restrain</A></TD><TD ><A HREF = "fix_rigid.html">rigid</A></TD><TD ><A HREF = "fix_rigid.html">rigid/nph</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "fix_rigid.html">rigid/npt</A></TD><TD ><A HREF = "fix_rigid.html">rigid/nve</A></TD><TD ><A HREF = "fix_rigid.html">rigid/nvt</A></TD><TD ><A HREF = "fix_setforce.html">setforce</A></TD><TD ><A HREF = "fix_shake.html">shake</A></TD><TD ><A HREF = "fix_spring.html">spring</A></TD><TD ><A HREF = "fix_spring_rg.html">spring/rg</A></TD><TD ><A HREF = "fix_spring_self.html">spring/self</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "fix_srd.html">srd</A></TD><TD ><A HREF = "fix_store_force.html">store/force</A></TD><TD ><A HREF = "fix_store_state.html">store/state</A></TD><TD ><A HREF = "fix_temp_berendsen.html">temp/berendsen</A></TD><TD ><A HREF = "fix_temp_rescale.html">temp/rescale</A></TD><TD ><A HREF = "fix_thermal_conductivity.html">thermal/conductivity</A></TD><TD ><A HREF = "fix_tmd.html">tmd</A></TD><TD ><A HREF = "fix_ttm.html">ttm</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "fix_viscosity.html">viscosity</A></TD><TD ><A HREF = "fix_viscous.html">viscous</A></TD><TD ><A HREF = "fix_wall.html">wall/colloid</A></TD><TD ><A HREF = "fix_wall_gran.html">wall/gran</A></TD><TD ><A HREF = "fix_wall.html">wall/harmonic</A></TD><TD ><A HREF = "fix_wall.html">wall/lj126</A></TD><TD ><A HREF = "fix_wall.html">wall/lj93</A></TD><TD ><A HREF = "fix_wall_piston.html">wall/piston</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "fix_wall_reflect.html">wall/reflect</A></TD><TD ><A HREF = "fix_wall_region.html">wall/region</A></TD><TD ><A HREF = "fix_wall_srd.html">wall/srd</A> 
+<TR ALIGN="center"><TD ><A HREF = "fix_nve.html">nve</A></TD><TD ><A HREF = "fix_nve_asphere.html">nve/asphere</A></TD><TD ><A HREF = "fix_nve_asphere_noforce.html">nve/asphere/noforce</A></TD><TD ><A HREF = "fix_nve_body.html">nve/body</A></TD><TD ><A HREF = "fix_nve_limit.html">nve/limit</A></TD><TD ><A HREF = "fix_nve_line.html">nve/line</A></TD><TD ><A HREF = "fix_nve_noforce.html">nve/noforce</A></TD><TD ><A HREF = "fix_nve_sphere.html">nve/sphere</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "fix_nve_tri.html">nve/tri</A></TD><TD ><A HREF = "fix_nh.html">nvt</A></TD><TD ><A HREF = "fix_nvt_asphere.html">nvt/asphere</A></TD><TD ><A HREF = "fix_nvt_sllod.html">nvt/sllod</A></TD><TD ><A HREF = "fix_nvt_sphere.html">nvt/sphere</A></TD><TD ><A HREF = "fix_orient_fcc.html">orient/fcc</A></TD><TD ><A HREF = "fix_planeforce.html">planeforce</A></TD><TD ><A HREF = "fix_poems.html">poems</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "fix_pour.html">pour</A></TD><TD ><A HREF = "fix_press_berendsen.html">press/berendsen</A></TD><TD ><A HREF = "fix_print.html">print</A></TD><TD ><A HREF = "fix_qeq_comb.html">qeq/comb</A></TD><TD ><A HREF = "fix_reax_bonds.html">reax/bonds</A></TD><TD ><A HREF = "fix_recenter.html">recenter</A></TD><TD ><A HREF = "fix_restrain.html">restrain</A></TD><TD ><A HREF = "fix_rigid.html">rigid</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "fix_rigid.html">rigid/nph</A></TD><TD ><A HREF = "fix_rigid.html">rigid/npt</A></TD><TD ><A HREF = "fix_rigid.html">rigid/nve</A></TD><TD ><A HREF = "fix_rigid.html">rigid/nvt</A></TD><TD ><A HREF = "fix_setforce.html">setforce</A></TD><TD ><A HREF = "fix_shake.html">shake</A></TD><TD ><A HREF = "fix_spring.html">spring</A></TD><TD ><A HREF = "fix_spring_rg.html">spring/rg</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "fix_spring_self.html">spring/self</A></TD><TD ><A HREF = "fix_srd.html">srd</A></TD><TD ><A HREF = "fix_store_force.html">store/force</A></TD><TD ><A HREF = "fix_store_state.html">store/state</A></TD><TD ><A HREF = "fix_temp_berendsen.html">temp/berendsen</A></TD><TD ><A HREF = "fix_temp_rescale.html">temp/rescale</A></TD><TD ><A HREF = "fix_thermal_conductivity.html">thermal/conductivity</A></TD><TD ><A HREF = "fix_tmd.html">tmd</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "fix_ttm.html">ttm</A></TD><TD ><A HREF = "fix_viscosity.html">viscosity</A></TD><TD ><A HREF = "fix_viscous.html">viscous</A></TD><TD ><A HREF = "fix_wall.html">wall/colloid</A></TD><TD ><A HREF = "fix_wall_gran.html">wall/gran</A></TD><TD ><A HREF = "fix_wall.html">wall/harmonic</A></TD><TD ><A HREF = "fix_wall.html">wall/lj126</A></TD><TD ><A HREF = "fix_wall.html">wall/lj93</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "fix_wall_piston.html">wall/piston</A></TD><TD ><A HREF = "fix_wall_reflect.html">wall/reflect</A></TD><TD ><A HREF = "fix_wall_region.html">wall/region</A></TD><TD ><A HREF = "fix_wall_srd.html">wall/srd</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are fix styles contributed by users, which can be used if
 <A HREF = "Section_start.html#start_3">LAMMPS is built with the appropriate
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "fix_addtorque.html">addtorque</A></TD><TD ><A HREF = "fix_atc.html">atc</A></TD><TD ><A HREF = "fix_colvars.html">colvars</A></TD><TD ><A HREF = "fix_imd.html">imd</A></TD><TD ><A HREF = "fix_langevin_eff.html">langevin/eff</A></TD><TD ><A HREF = "fix_meso.html">meso</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "fix_meso_stationary.html">meso/stationary</A></TD><TD ><A HREF = "fix_nh_eff.html">nph/eff</A></TD><TD ><A HREF = "fix_nh_eff.html">npt/eff</A></TD><TD ><A HREF = "fix_nve_eff.html">nve/eff</A></TD><TD ><A HREF = "fix_nh_eff.html">nvt/eff</A></TD><TD ><A HREF = "fix_nvt_sllod_eff.html">nvt/sllod/eff</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "fix_qeq_reax.html">qeq/reax</A></TD><TD ><A HREF = "fix_reaxc_bonds.html">reax/c/bonds</A></TD><TD ><A HREF = "fix_smd.html">smd</A></TD><TD ><A HREF = "fix_temp_rescale_eff.html">temp/rescale/eff</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are accelerated fix styles, which can be used if LAMMPS is
 built with the <A HREF = "Section_accelerate.html">appropriate accelerated
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "fix_freeze.html">freeze/cuda</A></TD><TD ><A HREF = "fix_addforce.html">addforce/cuda</A></TD><TD ><A HREF = "fix_aveforce.html">aveforce/cuda</A></TD><TD ><A HREF = "fix_enforce2d.html">enforce2d/cuda</A></TD><TD ><A HREF = "fix_gravity.html">gravity/cuda</A></TD><TD ><A HREF = "fix_gravity.html">gravity/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "fix_nh.html">npt/cuda</A></TD><TD ><A HREF = "fix_nh.html">nve/cuda</A></TD><TD ><A HREF = "fix_nve_sphere.html">nve/sphere/omp</A></TD><TD ><A HREF = "fix_nh.html">nvt/cuda</A></TD><TD ><A HREF = "fix_qeq_comb.html">qeq/comb/omp</A></TD><TD ><A HREF = "fix_setforce.html">setforce/cuda</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "fix_shake.html">shake/cuda</A></TD><TD ><A HREF = "fix_temp_berendsen.html">temp/berendsen/cuda</A></TD><TD ><A HREF = "fix_temp_rescale.html">temp/rescale/cuda</A></TD><TD ><A HREF = "fix_temp_rescale.html">temp/rescale/limit/cuda</A></TD><TD ><A HREF = "fix_viscous.html">viscous/cuda</A> 
 </TD></TR></TABLE></DIV>
 
 <HR>
 
 <H4>Compute styles 
 </H4>
 <P>See the <A HREF = "compute.html">compute</A> command for one-line descriptions of
 each style or click on the style itself for a full description:
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
-<TR ALIGN="center"><TD ><A HREF = "compute_angle_local.html">angle/local</A></TD><TD ><A HREF = "compute_atom_molecule.html">atom/molecule</A></TD><TD ><A HREF = "compute_bond_local.html">bond/local</A></TD><TD ><A HREF = "compute_centro_atom.html">centro/atom</A></TD><TD ><A HREF = "compute_cluster_atom.html">cluster/atom</A></TD><TD ><A HREF = "compute_cna_atom.html">cna/atom</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "compute_com.html">com</A></TD><TD ><A HREF = "compute_com_molecule.html">com/molecule</A></TD><TD ><A HREF = "compute_contact_atom.html">contact/atom</A></TD><TD ><A HREF = "compute_coord_atom.html">coord/atom</A></TD><TD ><A HREF = "compute_damage_atom.html">damage/atom</A></TD><TD ><A HREF = "compute_dihedral_local.html">dihedral/local</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "compute_displace_atom.html">displace/atom</A></TD><TD ><A HREF = "compute_erotate_asphere.html">erotate/asphere</A></TD><TD ><A HREF = "compute_erotate_sphere.html">erotate/sphere</A></TD><TD ><A HREF = "compute_erotate_sphere_atom.html">erotate/sphere/atom</A></TD><TD ><A HREF = "compute_event_displace.html">event/displace</A></TD><TD ><A HREF = "compute_group_group.html">group/group</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "compute_gyration.html">gyration</A></TD><TD ><A HREF = "compute_gyration_molecule.html">gyration/molecule</A></TD><TD ><A HREF = "compute_heat_flux.html">heat/flux</A></TD><TD ><A HREF = "compute_improper_local.html">improper/local</A></TD><TD ><A HREF = "compute_inertia_molecule.html">inertia/molecule</A></TD><TD ><A HREF = "compute_ke.html">ke</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "compute_ke_atom.html">ke/atom</A></TD><TD ><A HREF = "compute_msd.html">msd</A></TD><TD ><A HREF = "compute_msd_molecule.html">msd/molecule</A></TD><TD ><A HREF = "compute_pair.html">pair</A></TD><TD ><A HREF = "compute_pair_local.html">pair/local</A></TD><TD ><A HREF = "compute_pe.html">pe</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "compute_pe_atom.html">pe/atom</A></TD><TD ><A HREF = "compute_pressure.html">pressure</A></TD><TD ><A HREF = "compute_property_atom.html">property/atom</A></TD><TD ><A HREF = "compute_property_local.html">property/local</A></TD><TD ><A HREF = "compute_property_molecule.html">property/molecule</A></TD><TD ><A HREF = "compute_rdf.html">rdf</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "compute_reduce.html">reduce</A></TD><TD ><A HREF = "compute_reduce.html">reduce/region</A></TD><TD ><A HREF = "compute_slice.html">slice</A></TD><TD ><A HREF = "compute_stress_atom.html">stress/atom</A></TD><TD ><A HREF = "compute_temp.html">temp</A></TD><TD ><A HREF = "compute_temp_asphere.html">temp/asphere</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "compute_temp_com.html">temp/com</A></TD><TD ><A HREF = "compute_temp_deform.html">temp/deform</A></TD><TD ><A HREF = "compute_temp_partial.html">temp/partial</A></TD><TD ><A HREF = "compute_temp_profile.html">temp/profile</A></TD><TD ><A HREF = "compute_temp_ramp.html">temp/ramp</A></TD><TD ><A HREF = "compute_temp_region.html">temp/region</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "compute_temp_sphere.html">temp/sphere</A></TD><TD ><A HREF = "compute_ti.html">ti</A></TD><TD ><A HREF = "compute_voronoi_atom.html">voronoi/atom</A> 
+<TR ALIGN="center"><TD ><A HREF = "compute_angle_local.html">angle/local</A></TD><TD ><A HREF = "compute_atom_molecule.html">atom/molecule</A></TD><TD ><A HREF = "compute_body_local.html">body/local</A></TD><TD ><A HREF = "compute_bond_local.html">bond/local</A></TD><TD ><A HREF = "compute_centro_atom.html">centro/atom</A></TD><TD ><A HREF = "compute_cluster_atom.html">cluster/atom</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "compute_cna_atom.html">cna/atom</A></TD><TD ><A HREF = "compute_com.html">com</A></TD><TD ><A HREF = "compute_com_molecule.html">com/molecule</A></TD><TD ><A HREF = "compute_contact_atom.html">contact/atom</A></TD><TD ><A HREF = "compute_coord_atom.html">coord/atom</A></TD><TD ><A HREF = "compute_damage_atom.html">damage/atom</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "compute_dihedral_local.html">dihedral/local</A></TD><TD ><A HREF = "compute_displace_atom.html">displace/atom</A></TD><TD ><A HREF = "compute_erotate_asphere.html">erotate/asphere</A></TD><TD ><A HREF = "compute_erotate_sphere.html">erotate/sphere</A></TD><TD ><A HREF = "compute_erotate_sphere_atom.html">erotate/sphere/atom</A></TD><TD ><A HREF = "compute_event_displace.html">event/displace</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "compute_group_group.html">group/group</A></TD><TD ><A HREF = "compute_gyration.html">gyration</A></TD><TD ><A HREF = "compute_gyration_molecule.html">gyration/molecule</A></TD><TD ><A HREF = "compute_heat_flux.html">heat/flux</A></TD><TD ><A HREF = "compute_improper_local.html">improper/local</A></TD><TD ><A HREF = "compute_inertia_molecule.html">inertia/molecule</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "compute_ke.html">ke</A></TD><TD ><A HREF = "compute_ke_atom.html">ke/atom</A></TD><TD ><A HREF = "compute_msd.html">msd</A></TD><TD ><A HREF = "compute_msd_molecule.html">msd/molecule</A></TD><TD ><A HREF = "compute_pair.html">pair</A></TD><TD ><A HREF = "compute_pair_local.html">pair/local</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "compute_pe.html">pe</A></TD><TD ><A HREF = "compute_pe_atom.html">pe/atom</A></TD><TD ><A HREF = "compute_pressure.html">pressure</A></TD><TD ><A HREF = "compute_property_atom.html">property/atom</A></TD><TD ><A HREF = "compute_property_local.html">property/local</A></TD><TD ><A HREF = "compute_property_molecule.html">property/molecule</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "compute_rdf.html">rdf</A></TD><TD ><A HREF = "compute_reduce.html">reduce</A></TD><TD ><A HREF = "compute_reduce.html">reduce/region</A></TD><TD ><A HREF = "compute_slice.html">slice</A></TD><TD ><A HREF = "compute_stress_atom.html">stress/atom</A></TD><TD ><A HREF = "compute_temp.html">temp</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "compute_temp_asphere.html">temp/asphere</A></TD><TD ><A HREF = "compute_temp_com.html">temp/com</A></TD><TD ><A HREF = "compute_temp_deform.html">temp/deform</A></TD><TD ><A HREF = "compute_temp_partial.html">temp/partial</A></TD><TD ><A HREF = "compute_temp_profile.html">temp/profile</A></TD><TD ><A HREF = "compute_temp_ramp.html">temp/ramp</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "compute_temp_region.html">temp/region</A></TD><TD ><A HREF = "compute_temp_sphere.html">temp/sphere</A></TD><TD ><A HREF = "compute_ti.html">ti</A></TD><TD ><A HREF = "compute_voronoi_atom.html">voronoi/atom</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are compute styles contributed by users, which can be used if
 <A HREF = "Section_start.html#start_3">LAMMPS is built with the appropriate
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "compute_ackland_atom.html">ackland/atom</A></TD><TD ><A HREF = "compute_ke_eff.html">ke/eff</A></TD><TD ><A HREF = "compute_ke_atom_eff.html">ke/atom/eff</A></TD><TD ><A HREF = "compute_meso_e_atom.html">meso_e/atom</A></TD><TD ><A HREF = "compute_meso_rho_atom.html">meso_rho/atom</A></TD><TD ><A HREF = "compute_meso_t_atom.html">meso_t/atom</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "compute_temp_eff.html">temp/eff</A></TD><TD ><A HREF = "compute_temp_deform_eff.html">temp/deform/eff</A></TD><TD ><A HREF = "compute_temp_region_eff.html">temp/region/eff</A></TD><TD ><A HREF = "compute_temp_rotate.html">temp/rotate</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are accelerated compute styles, which can be used if LAMMPS is
 built with the <A HREF = "Section_accelerate.html">appropriate accelerated
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "compute_pe.html">pe/cuda</A></TD><TD ><A HREF = "compute_pressure.html">pressure/cuda</A></TD><TD ><A HREF = "compute_temp.html">temp/cuda</A></TD><TD ><A HREF = "compute_temp_partial.html">temp/partial/cuda</A> 
 </TD></TR></TABLE></DIV>
 
 <HR>
 
 <H4>Pair_style potentials 
 </H4>
 <P>See the <A HREF = "pair_style.html">pair_style</A> command for an overview of pair
 potentials.  Click on the style itself for a full description:
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "pair_none.html">none</A></TD><TD ><A HREF = "pair_hybrid.html">hybrid</A></TD><TD ><A HREF = "pair_hybrid.html">hybrid/overlay</A></TD><TD ><A HREF = "pair_adp.html">adp</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_airebo.html">airebo</A></TD><TD ><A HREF = "pair_beck.html">beck</A></TD><TD ><A HREF = "pair_bop.html">bop</A></TD><TD ><A HREF = "pair_born.html">born</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_born.html">born/coul/long</A></TD><TD ><A HREF = "pair_born.html">born/coul/msm</A></TD><TD ><A HREF = "pair_born.html">born/coul/wolf</A></TD><TD ><A HREF = "pair_brownian.html">brownian</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_brownian.html">brownian/poly</A></TD><TD ><A HREF = "pair_buck.html">buck</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/cut</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/long</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_buck.html">buck/coul/msm</A></TD><TD ><A HREF = "pair_buck_long.html">buck/long/coul/long</A></TD><TD ><A HREF = "pair_colloid.html">colloid</A></TD><TD ><A HREF = "pair_comb.html">comb</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_coul.html">coul/cut</A></TD><TD ><A HREF = "pair_coul.html">coul/debye</A></TD><TD ><A HREF = "pair_coul.html">coul/dsf</A></TD><TD ><A HREF = "pair_coul.html">coul/long</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_coul.html">coul/msm</A></TD><TD ><A HREF = "pair_coul.html">coul/wolf</A></TD><TD ><A HREF = "pair_dipole.html">dipole/cut</A></TD><TD ><A HREF = "pair_dpd.html">dpd</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_dpd.html">dpd/tstat</A></TD><TD ><A HREF = "pair_dsmc.html">dsmc</A></TD><TD ><A HREF = "pair_eam.html">eam</A></TD><TD ><A HREF = "pair_eam.html">eam/alloy</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/fs</A></TD><TD ><A HREF = "pair_eim.html">eim</A></TD><TD ><A HREF = "pair_gauss.html">gauss</A></TD><TD ><A HREF = "pair_gayberne.html">gayberne</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_gran.html">gran/hertz/history</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke/history</A></TD><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/lj</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/morse</A></TD><TD ><A HREF = "pair_kim.html">kim</A></TD><TD ><A HREF = "pair_lcbop.html">lcbop</A></TD><TD ><A HREF = "pair_line_lj.html">line/lj</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/implicit</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/msm</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_class2.html">lj/class2</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/cut</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/long</A></TD><TD ><A HREF = "pair_lj.html">lj/cut</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/dsf</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/msm</A></TD><TD ><A HREF = "pair_lj_long.html">lj/long/coul/long</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/tip4p/long</A></TD><TD ><A HREF = "pair_lj_long.html">lj/long/tip4p/long</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_lj_expand.html">lj/expand</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/coul/gromacs</A></TD><TD ><A HREF = "pair_lj_smooth.html">lj/smooth</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_lj_smooth_linear.html">lj/smooth/linear</A></TD><TD ><A HREF = "pair_lj96.html">lj96/cut</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate/poly</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_lubricateU.html">lubricateU</A></TD><TD ><A HREF = "pair_lubricateU.html">lubricateU/poly</A></TD><TD ><A HREF = "pair_meam.html">meam</A></TD><TD ><A HREF = "pair_mie.html">mie/cut</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_morse.html">morse</A></TD><TD ><A HREF = "pair_peri.html">peri/lps</A></TD><TD ><A HREF = "pair_peri.html">peri/pmb</A></TD><TD ><A HREF = "pair_reax.html">reax</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_airebo.html">rebo</A></TD><TD ><A HREF = "pair_resquared.html">resquared</A></TD><TD ><A HREF = "pair_soft.html">soft</A></TD><TD ><A HREF = "pair_sw.html">sw</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_table.html">table</A></TD><TD ><A HREF = "pair_tersoff.html">tersoff</A></TD><TD ><A HREF = "pair_tersoff_zbl.html">tersoff/zbl</A></TD><TD ><A HREF = "pair_tri_lj.html">tri/lj</A></TD></TR>
-<TR ALIGN="center"><TD ><A HREF = "pair_yukawa.html">yukawa</A></TD><TD ><A HREF = "pair_yukawa_colloid.html">yukawa/colloid</A> 
+<TR ALIGN="center"><TD ><A HREF = "pair_airebo.html">airebo</A></TD><TD ><A HREF = "pair_beck.html">beck</A></TD><TD ><A HREF = "pair_body.html">body</A></TD><TD ><A HREF = "pair_bop.html">bop</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_born.html">born</A></TD><TD ><A HREF = "pair_born.html">born/coul/long</A></TD><TD ><A HREF = "pair_born.html">born/coul/msm</A></TD><TD ><A HREF = "pair_born.html">born/coul/wolf</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_brownian.html">brownian</A></TD><TD ><A HREF = "pair_brownian.html">brownian/poly</A></TD><TD ><A HREF = "pair_buck.html">buck</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/cut</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_buck.html">buck/coul/long</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/msm</A></TD><TD ><A HREF = "pair_buck_long.html">buck/long/coul/long</A></TD><TD ><A HREF = "pair_colloid.html">colloid</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_comb.html">comb</A></TD><TD ><A HREF = "pair_coul.html">coul/cut</A></TD><TD ><A HREF = "pair_coul.html">coul/debye</A></TD><TD ><A HREF = "pair_coul.html">coul/dsf</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_coul.html">coul/long</A></TD><TD ><A HREF = "pair_coul.html">coul/msm</A></TD><TD ><A HREF = "pair_coul.html">coul/wolf</A></TD><TD ><A HREF = "pair_dipole.html">dipole/cut</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_dpd.html">dpd</A></TD><TD ><A HREF = "pair_dpd.html">dpd/tstat</A></TD><TD ><A HREF = "pair_dsmc.html">dsmc</A></TD><TD ><A HREF = "pair_eam.html">eam</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/alloy</A></TD><TD ><A HREF = "pair_eam.html">eam/fs</A></TD><TD ><A HREF = "pair_eim.html">eim</A></TD><TD ><A HREF = "pair_gauss.html">gauss</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_gayberne.html">gayberne</A></TD><TD ><A HREF = "pair_gran.html">gran/hertz/history</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke/history</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/lj</A></TD><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/morse</A></TD><TD ><A HREF = "pair_kim.html">kim</A></TD><TD ><A HREF = "pair_lcbop.html">lcbop</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_line_lj.html">line/lj</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/implicit</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/msm</A></TD><TD ><A HREF = "pair_class2.html">lj/class2</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/cut</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/long</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/dsf</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/long</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/msm</A></TD><TD ><A HREF = "pair_lj_long.html">lj/long/coul/long</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/tip4p/long</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_lj_long.html">lj/long/tip4p/long</A></TD><TD ><A HREF = "pair_lj_expand.html">lj/expand</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/coul/gromacs</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_lj_smooth.html">lj/smooth</A></TD><TD ><A HREF = "pair_lj_smooth_linear.html">lj/smooth/linear</A></TD><TD ><A HREF = "pair_lj96.html">lj96/cut</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_lubricate.html">lubricate/poly</A></TD><TD ><A HREF = "pair_lubricateU.html">lubricateU</A></TD><TD ><A HREF = "pair_lubricateU.html">lubricateU/poly</A></TD><TD ><A HREF = "pair_meam.html">meam</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_mie.html">mie/cut</A></TD><TD ><A HREF = "pair_morse.html">morse</A></TD><TD ><A HREF = "pair_peri.html">peri/lps</A></TD><TD ><A HREF = "pair_peri.html">peri/pmb</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_reax.html">reax</A></TD><TD ><A HREF = "pair_airebo.html">rebo</A></TD><TD ><A HREF = "pair_resquared.html">resquared</A></TD><TD ><A HREF = "pair_soft.html">soft</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_sw.html">sw</A></TD><TD ><A HREF = "pair_table.html">table</A></TD><TD ><A HREF = "pair_tersoff.html">tersoff</A></TD><TD ><A HREF = "pair_tersoff_zbl.html">tersoff/zbl</A></TD></TR>
+<TR ALIGN="center"><TD ><A HREF = "pair_tri_lj.html">tri/lj</A></TD><TD ><A HREF = "pair_yukawa.html">yukawa</A></TD><TD ><A HREF = "pair_yukawa_colloid.html">yukawa/colloid</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are pair styles contributed by users, which can be used if
 <A HREF = "Section_start.html#start_3">LAMMPS is built with the appropriate
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "pair_awpmd.html">awpmd/cut</A></TD><TD ><A HREF = "pair_coul_diel.html">coul/diel</A></TD><TD ><A HREF = "pair_dipole.html">dipole/sf</A></TD><TD ><A HREF = "pair_eam.html">eam/cd</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_edip.html">edip</A></TD><TD ><A HREF = "pair_eff.html">eff/cut</A></TD><TD ><A HREF = "pair_gauss.html">gauss/cut</A></TD><TD ><A HREF = "pair_sdk.html">lj/sdk</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_sdk.html">lj/sdk/coul/long</A></TD><TD ><A HREF = "pair_lj_sf.html">lj/sf</A></TD><TD ><A HREF = "pair_meam_spline.html">meam/spline</A></TD><TD ><A HREF = "pair_meam_sw_spline.html">meam/sw/spline</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_reax_c.html">reax/c</A></TD><TD ><A HREF = "pair_sph_heatconduction.html">sph/heatconduction</A></TD><TD ><A HREF = "pair_sph_idealgas.html">sph/idealgas</A></TD><TD ><A HREF = "pair_sph_lj.html">sph/lj</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_sph_rhosum.html">sph/rhosum</A></TD><TD ><A HREF = "pair_sph_taitwater.html">sph/taitwater</A></TD><TD ><A HREF = "pair_sph_taitwater_morris.html">sph/taitwater/morris</A></TD><TD ><A HREF = "pair_tersoff.html">tersoff/table</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are accelerated pair styles, which can be used if LAMMPS is
 built with the <A HREF = "Section_accelerate.html">appropriate accelerated
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "pair_adp.html">adp/omp</A></TD><TD ><A HREF = "pair_airebo.html">airebo/omp</A></TD><TD ><A HREF = "pair_beck.html">beck/omp</A></TD><TD ><A HREF = "pair_born.html">born/coul/long/cuda</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_born.html">born/coul/long/gpu</A></TD><TD ><A HREF = "pair_born.html">born/coul/long/omp</A></TD><TD ><A HREF = "pair_born.html">born/coul/msm/omp</A></TD><TD ><A HREF = "pair_born.html">born/coul/wolf/gpu</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_born.html">born/coul/wolf/omp</A></TD><TD ><A HREF = "pair_born.html">born/gpu</A></TD><TD ><A HREF = "pair_born.html">born/omp</A></TD><TD ><A HREF = "pair_brownian.html">brownian/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_brownian.html">brownian/poly/omp</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/cut/cuda</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/cut/gpu</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/cut/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_buck.html">buck/coul/long/cuda</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/long/gpu</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/long/omp</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/msm/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_buck.html">buck/cuda</A></TD><TD ><A HREF = "pair_buck_long.html">buck/long/coul/long/omp</A></TD><TD ><A HREF = "pair_buck.html">buck/gpu</A></TD><TD ><A HREF = "pair_buck.html">buck/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_colloid.html">colloid/gpu</A></TD><TD ><A HREF = "pair_colloid.html">colloid/omp</A></TD><TD ><A HREF = "pair_comb.html">comb/omp</A></TD><TD ><A HREF = "pair_coul.html">coul/cut/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_coul.html">coul/debye/omp</A></TD><TD ><A HREF = "pair_coul.html">coul/dsf/gpu</A></TD><TD ><A HREF = "pair_coul.html">coul/long/gpu</A></TD><TD ><A HREF = "pair_coul.html">coul/long/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_coul.html">coul/msm/omp</A></TD><TD ><A HREF = "pair_coul.html">coul/wolf</A></TD><TD ><A HREF = "pair_dipole.html">dipole/cut/gpu</A></TD><TD ><A HREF = "pair_dipole.html">dipole/cut/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_dipole.html">dipole/sf/gpu</A></TD><TD ><A HREF = "pair_dipole.html">dipole/sf/omp</A></TD><TD ><A HREF = "pair_dpd.html">dpd/omp</A></TD><TD ><A HREF = "pair_dpd.html">dpd/tstat/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/alloy/cuda</A></TD><TD ><A HREF = "pair_eam.html">eam/alloy/gpu</A></TD><TD ><A HREF = "pair_eam.html">eam/alloy/omp</A></TD><TD ><A HREF = "pair_eam.html">eam/alloy/opt</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/cd/omp</A></TD><TD ><A HREF = "pair_eam.html">eam/cuda</A></TD><TD ><A HREF = "pair_eam.html">eam/fs/cuda</A></TD><TD ><A HREF = "pair_eam.html">eam/fs/gpu</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/fs/omp</A></TD><TD ><A HREF = "pair_eam.html">eam/fs/opt</A></TD><TD ><A HREF = "pair_eam.html">eam/gpu</A></TD><TD ><A HREF = "pair_eam.html">eam/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/opt</A></TD><TD ><A HREF = "pair_edip.html">edip/omp</A></TD><TD ><A HREF = "pair_eim.html">eim/omp</A></TD><TD ><A HREF = "pair_gauss.html">gauss/gpu</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_gauss.html">gauss/omp</A></TD><TD ><A HREF = "pair_gayberne.html">gayberne/gpu</A></TD><TD ><A HREF = "pair_gayberne.html">gayberne/omp</A></TD><TD ><A HREF = "pair_gran.html">gran/hertz/history/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_gran.html">gran/hooke/cuda</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke/history/omp</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke/omp</A></TD><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/lj/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/morse/omp</A></TD><TD ><A HREF = "pair_line_lj.html">line/lj/omp</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/cuda</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/implicit/cuda</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/implicit/omp</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/cuda</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/gpu</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/omp</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/opt</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/cut/cuda</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/cut/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_class2.html">lj/class2/coul/long/cuda</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/long/gpu</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/long/omp</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/msm/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_class2.html">lj/class2/cuda</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/gpu</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/omp</A></TD><TD ><A HREF = "pair_lj_long.html">lj/long/coul/long/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut/cuda</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut/omp</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye/cuda</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye/omp</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/dsf/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/cuda</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/omp</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/opt</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/msm/opt</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/cuda</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/experimental/cuda</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/opt</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/tip4p/long/omp</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/tip4p/long/opt</A></TD><TD ><A HREF = "pair_lj_expand.html">lj/expand/cuda</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_lj_expand.html">lj/expand/gpu</A></TD><TD ><A HREF = "pair_lj_expand.html">lj/expand/omp</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/coul/gromacs/cuda</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/coul/gromacs/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_gromacs.html">lj/gromacs/cuda</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/omp</A></TD><TD ><A HREF = "pair_sdk.html">lj/sdk/gpu</A></TD><TD ><A HREF = "pair_sdk.html">lj/sdk/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_sdk.html">lj/sdk/coul/long/gpu</A></TD><TD ><A HREF = "pair_sdk.html">lj/sdk/coul/long/omp</A></TD><TD ><A HREF = "pair_lj_sf.html">lj/sf/omp</A></TD><TD ><A HREF = "pair_lj_smooth.html">lj/smooth/cuda</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_lj_smooth.html">lj/smooth/omp</A></TD><TD ><A HREF = "pair_lj_smooth_linear.html">lj/smooth/linear/omp</A></TD><TD ><A HREF = "pair_lj96.html">lj96/cut/cuda</A></TD><TD ><A HREF = "pair_lj96.html">lj96/cut/gpu</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_lj96.html">lj96/cut/omp</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate/omp</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate/poly/omp</A></TD><TD ><A HREF = "pair_meam_spline.html">meam/spline/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_morse.html">morse/cuda</A></TD><TD ><A HREF = "pair_morse.html">morse/gpu</A></TD><TD ><A HREF = "pair_morse.html">morse/omp</A></TD><TD ><A HREF = "pair_morse.html">morse/opt</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_peri.html">peri/lps/omp</A></TD><TD ><A HREF = "pair_peri.html">peri/pmb/omp</A></TD><TD ><A HREF = "pair_airebo.html">rebo/omp</A></TD><TD ><A HREF = "pair_resquared.html">resquared/gpu</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_resquared.html">resquared/omp</A></TD><TD ><A HREF = "pair_soft.html">soft/omp</A></TD><TD ><A HREF = "pair_sw.html">sw/cuda</A></TD><TD ><A HREF = "pair_sw.html">sw/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_table.html">table/gpu</A></TD><TD ><A HREF = "pair_table.html">table/omp</A></TD><TD ><A HREF = "pair_tersoff.html">tersoff/cuda</A></TD><TD ><A HREF = "pair_tersoff.html">tersoff/omp</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_tersoff.html">tersoff/table/omp</A></TD><TD ><A HREF = "pair_tersoff_zbl.html">tersoff/zbl/omp</A></TD><TD ><A HREF = "pair_tri_lj.html">tri/lj/omp</A></TD><TD ><A HREF = "pair_yukawa.html">yukawa/gpu</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "pair_yukawa.html">yukawa/omp</A></TD><TD ><A HREF = "pair_yukawa_colloid.html">yukawa/colloid/gpu</A></TD><TD ><A HREF = "pair_yukawa_colloid.html">yukawa/colloid/omp</A> 
 </TD></TR></TABLE></DIV>
 
 <HR>
 
 <H4>Bond_style potentials 
 </H4>
 <P>See the <A HREF = "bond_style.html">bond_style</A> command for an overview of bond
 potentials.  Click on the style itself for a full description:
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "bond_none.html">none</A></TD><TD WIDTH="100"><A HREF = "bond_hybrid.html">hybrid</A></TD><TD WIDTH="100"><A HREF = "bond_class2.html">class2</A></TD><TD WIDTH="100"><A HREF = "bond_fene.html">fene</A></TD></TR>
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "bond_fene_expand.html">fene/expand</A></TD><TD WIDTH="100"><A HREF = "bond_harmonic.html">harmonic</A></TD><TD WIDTH="100"><A HREF = "bond_morse.html">morse</A></TD><TD WIDTH="100"><A HREF = "bond_nonlinear.html">nonlinear</A></TD></TR>
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "bond_quartic.html">quartic</A></TD><TD WIDTH="100"><A HREF = "bond_table.html">table</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are bond styles contributed by users, which can be used if
 <A HREF = "Section_start.html#start_3">LAMMPS is built with the appropriate
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "bond_harmonic_shift.html">harmonic/shift</A></TD><TD ><A HREF = "bond_harmonic_shift_cut.html">harmonic/shift/cut</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are accelerated bond styles, which can be used if LAMMPS is
 built with the <A HREF = "Section_accelerate.html">appropriate accelerated
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "bond_class2.html">class2/omp</A></TD><TD WIDTH="100"><A HREF = "bond_fene.html">fene/omp</A></TD><TD WIDTH="100"><A HREF = "bond_fene_expand.html">fene/expand/omp</A></TD><TD WIDTH="100"><A HREF = "bond_harmonic.html">harmonic/omp</A></TD></TR>
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "bond_harmonic_shift.html">harmonic/shift/omp</A></TD><TD WIDTH="100"><A HREF = "bond_harmonic_shift_cut.html">harmonic/shift/cut/omp</A></TD><TD WIDTH="100"><A HREF = "bond_morse.html">morse/omp</A></TD><TD WIDTH="100"><A HREF = "bond_nonlinear.html">nonlinear/omp</A></TD></TR>
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "bond_quartic.html">quartic/omp</A></TD><TD WIDTH="100"><A HREF = "bond_table.html">table/omp</A> 
 </TD></TR></TABLE></DIV>
 
 <HR>
 
 <H4>Angle_style potentials 
 </H4>
 <P>See the <A HREF = "angle_style.html">angle_style</A> command for an overview of
 angle potentials.  Click on the style itself for a full description:
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "angle_none.html">none</A></TD><TD WIDTH="100"><A HREF = "angle_hybrid.html">hybrid</A></TD><TD WIDTH="100"><A HREF = "angle_charmm.html">charmm</A></TD><TD WIDTH="100"><A HREF = "angle_class2.html">class2</A></TD></TR>
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "angle_cosine.html">cosine</A></TD><TD WIDTH="100"><A HREF = "angle_cosine_delta.html">cosine/delta</A></TD><TD WIDTH="100"><A HREF = "angle_cosine_periodic.html">cosine/periodic</A></TD><TD WIDTH="100"><A HREF = "angle_cosine_squared.html">cosine/squared</A></TD></TR>
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "angle_harmonic.html">harmonic</A></TD><TD WIDTH="100"><A HREF = "angle_table.html">table</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are angle styles contributed by users, which can be used if
 <A HREF = "Section_start.html#start_3">LAMMPS is built with the appropriate
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "angle_sdk.html">sdk</A></TD><TD ><A HREF = "angle_cosine_shift.html">cosine/shift</A></TD><TD ><A HREF = "angle_cosine_shift_exp.html">cosine/shift/exp</A></TD><TD ><A HREF = "angle_dipole.html">dipole</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "angle_fourier.html">fourier</A></TD><TD ><A HREF = "angle_fourier_simple.html">fourier/simple</A></TD><TD ><A HREF = "angle_quartic.html">quartic</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are accelerated angle styles, which can be used if LAMMPS is
 built with the <A HREF = "Section_accelerate.html">appropriate accelerated
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "angle_charmm.html">charmm/omp</A></TD><TD WIDTH="100"><A HREF = "angle_class2.html">class2/omp</A></TD><TD WIDTH="100"><A HREF = "angle_cosine.html">cosine/omp</A></TD><TD WIDTH="100"><A HREF = "angle_cosine_delta.html">cosine/delta/omp</A></TD></TR>
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "angle_cosine_periodic.html">cosine/periodic/omp</A></TD><TD WIDTH="100"><A HREF = "angle_cosine_shift.html">cosine/shift/omp</A></TD><TD WIDTH="100"><A HREF = "angle_cosine_shift_exp.html">cosine/shift/exp/omp</A></TD><TD WIDTH="100"><A HREF = "angle_cosine_squared.html">cosine/squared/omp</A></TD></TR>
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "angle_dipole.html">dipole/omp</A><A HREF = "angle_harmonic.html">harmonic/omp</A></TD><TD WIDTH="100"><A HREF = "angle_table.html">table/omp</A> 
 </TD></TR></TABLE></DIV>
 
 <HR>
 
 <H4>Dihedral_style potentials 
 </H4>
 <P>See the <A HREF = "dihedral_style.html">dihedral_style</A> command for an overview
 of dihedral potentials.  Click on the style itself for a full
 description:
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "dihedral_none.html">none</A></TD><TD WIDTH="100"><A HREF = "dihedral_hybrid.html">hybrid</A></TD><TD WIDTH="100"><A HREF = "dihedral_charmm.html">charmm</A></TD><TD WIDTH="100"><A HREF = "dihedral_class2.html">class2</A></TD></TR>
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "dihedral_harmonic.html">harmonic</A></TD><TD WIDTH="100"><A HREF = "dihedral_helix.html">helix</A></TD><TD WIDTH="100"><A HREF = "dihedral_multi_harmonic.html">multi/harmonic</A></TD><TD WIDTH="100"><A HREF = "dihedral_opls.html">opls</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are dihedral styles contributed by users, which can be used if
 <A HREF = "Section_start.html#start_3">LAMMPS is built with the appropriate
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "dihedral_cosine_shift_exp.html">cosine/shift/exp</A></TD><TD ><A HREF = "dihedral_fourier.html">fourier</A></TD><TD ><A HREF = "dihedral_nharmonic.html">nharmonic</A></TD><TD ><A HREF = "dihedral_quadratic.html">quadratic</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "dihedral_table.html">table</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are accelerated dihedral styles, which can be used if LAMMPS is
 built with the <A HREF = "Section_accelerate.html">appropriate accelerated
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "dihedral_charmm.html">charmm/omp</A></TD><TD WIDTH="100"><A HREF = "dihedral_class2.html">class2/omp</A></TD><TD WIDTH="100"><A HREF = "dihedral_cosine_shift_exp.html">cosine/shift/exp/omp</A></TD><TD WIDTH="100"><A HREF = "dihedral_harmonic.html">harmonic/omp</A></TD></TR>
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "dihedral_helix.html">helix/omp</A></TD><TD WIDTH="100"><A HREF = "dihedral_multi_harmonic.html">multi/harmonic/omp</A></TD><TD WIDTH="100"><A HREF = "dihedral_opls.html">opls/omp</A><A HREF = "dihedral_table.html">table/omp</A> 
 </TD></TR></TABLE></DIV>
 
 <HR>
 
 <H4>Improper_style potentials 
 </H4>
 <P>See the <A HREF = "improper_style.html">improper_style</A> command for an overview
 of improper potentials.  Click on the style itself for a full
 description:
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "improper_none.html">none</A></TD><TD WIDTH="100"><A HREF = "improper_hybrid.html">hybrid</A></TD><TD WIDTH="100"><A HREF = "improper_class2.html">class2</A></TD><TD WIDTH="100"><A HREF = "improper_cvff.html">cvff</A></TD></TR>
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "improper_harmonic.html">harmonic</A></TD><TD WIDTH="100"><A HREF = "improper_umbrella.html">umbrella</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are improper styles contributed by users, which can be used if
 <A HREF = "Section_start.html#start_3">LAMMPS is built with the appropriate
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "improper_cossq.html">cossq</A></TD><TD ><A HREF = "improper_ring.html">ring</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are accelerated improper styles, which can be used if LAMMPS is
 built with the <A HREF = "Section_accelerate.html">appropriate accelerated
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "improper_class2.html">class2/omp</A></TD><TD WIDTH="100"><A HREF = "improper_cossq.html">cossq/omp</A></TD><TD WIDTH="100"><A HREF = "improper_cvff.html">cvff/omp</A></TD><TD WIDTH="100"><A HREF = "improper_fourier.html">fourier</A></TD></TR>
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "improper_harmonic.html">harmonic/omp</A></TD><TD WIDTH="100"><A HREF = "improper_ring.html">ring/omp</A></TD><TD WIDTH="100"><A HREF = "improper_umbrella.html">umbrella/omp</A> 
 </TD></TR></TABLE></DIV>
 
 <HR>
 
 <H4>Kspace solvers 
 </H4>
 <P>See the <A HREF = "kspace_style.html">kspace_style</A> command for an overview of
 Kspace solvers.  Click on the style itself for a full description:
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "kspace_style.html">ewald</A></TD><TD WIDTH="100"><A HREF = "kspace_style.html">ewald/disp</A></TD><TD WIDTH="100"><A HREF = "kspace_style.html">msm</A></TD><TD WIDTH="100"><A HREF = "kspace_style.html">pppm</A></TD></TR>
 <TR ALIGN="center"><TD WIDTH="100"><A HREF = "kspace_style.html">pppm/cg</A></TD><TD WIDTH="100"><A HREF = "kspace_style.html">pppm/disp</A></TD><TD WIDTH="100"><A HREF = "kspace_style.html">pppm/disp/tip4p</A></TD><TD WIDTH="100"><A HREF = "kspace_style.html">pppm/tip4p</A> 
 </TD></TR></TABLE></DIV>
 
 <P>These are accelerated Kspace solvers, which can be used if LAMMPS is
 built with the <A HREF = "Section_accelerate.html">appropriate accelerated
 package</A>.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR ALIGN="center"><TD ><A HREF = "kspace_style.html">ewald/omp</A></TD><TD ><A HREF = "kspace_style.html">msm/omp</A></TD><TD ><A HREF = "kspace_style.html">pppm/cuda</A></TD><TD ><A HREF = "kspace_style.html">pppm/gpu</A></TD></TR>
 <TR ALIGN="center"><TD ><A HREF = "kspace_style.html">pppm/omp</A></TD><TD ><A HREF = "kspace_style.html">pppm/cg/omp</A></TD><TD ><A HREF = "kspace_style.html">pppm/tip4p/omp</A> 
 </TD></TR></TABLE></DIV>
 
 </HTML>
diff --git a/doc/Section_commands.txt b/doc/Section_commands.txt
index a313d6ca8..d61077259 100644
--- a/doc/Section_commands.txt
+++ b/doc/Section_commands.txt
@@ -1,1081 +1,1084 @@
 "Previous Section"_Section_start.html - "LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc - "Next Section"_Section_packages.html :c
 
 :link(lws,http://lammps.sandia.gov)
 :link(ld,Manual.html)
 :link(lc,Section_commands.html#comm)
 
 :line
 
 3. Commands :h3
 
 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
 3.3 "Input script structure"_#cmd_3
 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
 
 LAMMPS executes by reading commands from a input script (text file),
 one line at a time.  When the input script ends, LAMMPS exits.  Each
 command causes LAMMPS to take some action.  It may set an internal
 variable, read in a file, or run a simulation.  Most commands have
 default settings, which means you only need to use the command if you
 wish to change the default.
 
 In many cases, the ordering of commands in an input script is not
 important.  However the following rules apply:
 
 (1) LAMMPS does not read your entire input script and then perform a
 simulation with all the settings.  Rather, the input script is read
 one line at a time and each command takes effect when it is read.
 Thus this sequence of commands:
 
 timestep 0.5 
 run      100 
 run      100 :pre
 
 does something different than this sequence:
 
 run      100 
 timestep 0.5 
 run      100 :pre
 
 In the first case, the specified timestep (0.5 fmsec) is used for two
 simulations of 100 timesteps each.  In the 2nd case, the default
 timestep (1.0 fmsec) is used for the 1st 100 step simulation and a 0.5
 fmsec timestep is used for the 2nd one.
 
 (2) Some commands are only valid when they follow other commands.  For
 example you cannot set the temperature of a group of atoms until atoms
 have been defined and a group command is used to define which atoms
 belong to the group.
 
 (3) Sometimes command B will use values that can be set by command A.
 This means command A must precede command B in the input script if it
 is to have the desired effect.  For example, the
 "read_data"_read_data.html command initializes the system by setting
 up the simulation box and assigning atoms to processors.  If default
 values are not desired, the "processors"_processors.html and
 "boundary"_boundary.html commands need to be used before read_data to
 tell LAMMPS how to map processors to the simulation box.
 
 Many input script errors are detected by LAMMPS and an ERROR or
 WARNING message is printed.  "This section"_Section_errors.html gives
 more information on what errors mean.  The documentation for each
 command lists restrictions on how the command can be used.
 
 :line
 
 3.2 Parsing rules :link(cmd_2),h4
 
 Each non-blank line in the input script is treated as a command.
 LAMMPS commands are case sensitive.  Command names are lower-case, as
 are specified command arguments.  Upper case letters may be used in
 file names or user-chosen ID strings.
 
 Here is how each line in the input script is parsed by LAMMPS:
 
 (1) If the last printable character on the line is a "&" character
 (with no surrounding quotes), the command is assumed to continue on
 the next line.  The next line is concatenated to the previous line by
 removing the "&" character and newline.  This allows long commands to
 be continued across two or more lines.
 
 (2) All characters from the first "#" character onward are treated as
 comment and discarded.  See an exception in (6).  Note that a
 comment after a trailing "&" character will prevent the command from
 continuing on the next line.  Also note that for multi-line commands a
 single leading "#" will comment out the entire command.
 
 (3) The line is searched repeatedly for $ characters, which indicate
 variables that are replaced with a text string.  See an exception in
 (6).  If the $ is followed by curly brackets, then the variable name
 is the text inside the curly brackets.  If no curly brackets follow
 the $, then the variable name is the single character immediately
 following the $.  Thus $\{myTemp\} and $x refer to variable names
 "myTemp" and "x".  See the "variable"_variable.html command for
 details of how strings are assigned to variables and how they are
 substituted for in input script commands.
 
 (4) The line is broken into "words" separated by whitespace (tabs,
 spaces).  Note that words can thus contain letters, digits,
 underscores, or punctuation characters.
 
 (5) The first word is the command name.  All successive words in the
 line are arguments.
 
 (6) If you want text with spaces to be treated as a single argument,
 it can be enclosed in either double or single quotes.  E.g.
 
 print "Volume = $v"
 print 'Volume = $v' :pre
 
 The quotes are removed when the single argument is stored internally.
 See the "dump modify format"_dump_modify.html or "if"_if.html commands
 for examples.  A "#" or "$" character that is between quotes will not
 be treated as a comment indicator in (2) or substituted for as a
 variable in (3).
 
 IMPORTANT NOTE: If the argument is itself a command that requires a
 quoted argument (e.g. using a "print"_print.html command as part of an
 "if"_if.html or "run every"_run.html command), then the double and
 single quotes can be nested in the usual manner.  See the doc pages
 for those commands for examples.  Only one of level of nesting is
 allowed, but that should be sufficient for most use cases.
 
 :line
 
 3.3 Input script structure :h4,link(cmd_3)
 
 This section describes the structure of a typical LAMMPS input script.
 The "examples" directory in the LAMMPS distribution contains many
 sample input scripts; the corresponding problems are discussed in
 "Section_example"_Section_example.html, and animated on the "LAMMPS
 WWW Site"_lws.
 
 A LAMMPS input script typically has 4 parts:
 
 Initialization
 Atom definition
 Settings
 Run a simulation :ol
 
 The last 2 parts can be repeated as many times as desired.  I.e. run a
 simulation, change some settings, run some more, etc.  Each of the 4
 parts is now described in more detail.  Remember that almost all the
 commands need only be used if a non-default value is desired.
 
 (1) Initialization
 
 Set parameters that need to be defined before atoms are created or
 read-in from a file.
 
 The relevant commands are "units"_units.html,
 "dimension"_dimension.html, "newton"_newton.html,
 "processors"_processors.html, "boundary"_boundary.html,
 "atom_style"_atom_style.html, "atom_modify"_atom_modify.html.
 
 If force-field parameters appear in the files that will be read, these
 commands tell LAMMPS what kinds of force fields are being used:
 "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.
 
 (2) Atom definition
 
 There are 3 ways to define atoms in LAMMPS.  Read them in from a data
 or restart file via the "read_data"_read_data.html or
 "read_restart"_read_restart.html commands.  These files can contain
 molecular topology information.  Or create atoms on a lattice (with no
 molecular topology), using these commands: "lattice"_lattice.html,
 "region"_region.html, "create_box"_create_box.html,
 "create_atoms"_create_atoms.html.  The entire set of atoms can be
 duplicated to make a larger simulation using the
 "replicate"_replicate.html command.
 
 (3) Settings
 
 Once atoms and molecular topology are defined, a variety of settings
 can be specified: force field coefficients, simulation parameters,
 output options, etc.
 
 Force field coefficients are set by these commands (they can also be
 set in the read-in files): "pair_coeff"_pair_coeff.html,
 "bond_coeff"_bond_coeff.html, "angle_coeff"_angle_coeff.html,
 "dihedral_coeff"_dihedral_coeff.html,
 "improper_coeff"_improper_coeff.html,
 "kspace_style"_kspace_style.html, "dielectric"_dielectric.html,
 "special_bonds"_special_bonds.html.
 
 Various simulation parameters are set by these commands:
 "neighbor"_neighbor.html, "neigh_modify"_neigh_modify.html,
 "group"_group.html, "timestep"_timestep.html,
 "reset_timestep"_reset_timestep.html, "run_style"_run_style.html,
 "min_style"_min_style.html, "min_modify"_min_modify.html.
 
 Fixes impose a variety of boundary conditions, time integration, and
 diagnostic options.  The "fix"_fix.html command comes in many flavors.
 
 Various computations can be specified for execution during a
 simulation using the "compute"_compute.html,
 "compute_modify"_compute_modify.html, and "variable"_variable.html
 commands.
 
 Output options are set by the "thermo"_thermo.html, "dump"_dump.html,
 and "restart"_restart.html commands.
 
 (4) Run a simulation
 
 A molecular dynamics simulation is run using the "run"_run.html
 command.  Energy minimization (molecular statics) is performed using
 the "minimize"_minimize.html command.  A parallel tempering
 (replica-exchange) simulation can be run using the
 "temper"_temper.html command.
 
 :line
 
 3.4 Commands listed by category :link(cmd_4),h4
 
 This section lists all LAMMPS commands, grouped by category.  The
 "next section"_#cmd_5 lists the same commands alphabetically.  Note
 that some style options for some commands are part of specific LAMMPS
 packages, which means they cannot be used unless the package was
 included when LAMMPS was built.  Not all packages are included in a
 default LAMMPS build.  These dependencies are listed as Restrictions
 in the command's documentation.
 
 Initialization:
 
 "atom_modify"_atom_modify.html, "atom_style"_atom_style.html,
 "boundary"_boundary.html, "dimension"_dimension.html,
 "newton"_newton.html, "processors"_processors.html, "units"_units.html
 
 Atom definition:
 
 "create_atoms"_create_atoms.html, "create_box"_create_box.html,
 "lattice"_lattice.html, "read_data"_read_data.html,
 "read_dump"_read_dump.html, "read_restart"_read_restart.html,
 "region"_region.html, "replicate"_replicate.html
 
 Force fields:
 
 "angle_coeff"_angle_coeff.html, "angle_style"_angle_style.html,
 "bond_coeff"_bond_coeff.html, "bond_style"_bond_style.html,
 "dielectric"_dielectric.html, "dihedral_coeff"_dihedral_coeff.html,
 "dihedral_style"_dihedral_style.html,
 "improper_coeff"_improper_coeff.html,
 "improper_style"_improper_style.html,
 "kspace_modify"_kspace_modify.html, "kspace_style"_kspace_style.html,
 "pair_coeff"_pair_coeff.html, "pair_modify"_pair_modify.html,
 "pair_style"_pair_style.html, "pair_write"_pair_write.html,
 "special_bonds"_special_bonds.html
 
 Settings:
 
 "communicate"_communicate.html, "group"_group.html, "mass"_mass.html,
 "min_modify"_min_modify.html, "min_style"_min_style.html,
 "neigh_modify"_neigh_modify.html, "neighbor"_neighbor.html,
 "reset_timestep"_reset_timestep.html, "run_style"_run_style.html,
 "set"_set.html, "timestep"_timestep.html, "velocity"_velocity.html
 
 Fixes:
 
 "fix"_fix.html, "fix_modify"_fix_modify.html, "unfix"_unfix.html
 
 Computes:
 
 "compute"_compute.html, "compute_modify"_compute_modify.html,
 "uncompute"_uncompute.html
 
 Output:
 
 "dump"_dump.html, "dump image"_dump_image.html,
 "dump_modify"_dump_modify.html, "restart"_restart.html,
 "thermo"_thermo.html, "thermo_modify"_thermo_modify.html,
 "thermo_style"_thermo_style.html, "undump"_undump.html,
 "write_restart"_write_restart.html
 
 Actions:
 
 "delete_atoms"_delete_atoms.html, "delete_bonds"_delete_bonds.html,
 "displace_atoms"_displace_atoms.html, "change_box"_change_box.html,
 "minimize"_minimize.html, "neb"_neb.html "prd"_prd.html,
 "rerun"_rerun.html, "run"_run.html, "temper"_temper.html
 
 Miscellaneous:
 
 "clear"_clear.html, "echo"_echo.html, "if"_if.html,
 "include"_include.html, "jump"_jump.html, "label"_label.html,
 "log"_log.html, "next"_next.html, "print"_print.html,
 "shell"_shell.html, "variable"_variable.html
 
 :line
 
 3.5 Individual commands :h4,link(cmd_5),link(comm)
 
 This section lists all LAMMPS commands alphabetically, with a separate
 listing below of styles within certain commands.  The "previous
 section"_#cmd_4 lists the same commands, grouped by category.  Note
 that some style options for some commands are part of specific LAMMPS
 packages, which means they cannot be used unless the package was
 included when LAMMPS was built.  Not all packages are included in a
 default LAMMPS build.  These dependencies are listed as Restrictions
 in the command's documentation.
 
 "angle_coeff"_angle_coeff.html,
 "angle_style"_angle_style.html,
 "atom_modify"_atom_modify.html,
 "atom_style"_atom_style.html,
 "balance"_balance.html,
 "bond_coeff"_bond_coeff.html,
 "bond_style"_bond_style.html,
 "boundary"_boundary.html,
 "box"_box.html,
 "change_box"_change_box.html,
 "clear"_clear.html,
 "communicate"_communicate.html,
 "compute"_compute.html,
 "compute_modify"_compute_modify.html,
 "create_atoms"_create_atoms.html,
 "create_box"_create_box.html,
 "delete_atoms"_delete_atoms.html,
 "delete_bonds"_delete_bonds.html,
 "dielectric"_dielectric.html,
 "dihedral_coeff"_dihedral_coeff.html,
 "dihedral_style"_dihedral_style.html,
 "dimension"_dimension.html,
 "displace_atoms"_displace_atoms.html,
 "dump"_dump.html,
 "dump image"_dump_image.html,
 "dump_modify"_dump_modify.html,
 "echo"_echo.html,
 "fix"_fix.html,
 "fix_modify"_fix_modify.html,
 "group"_group.html,
 "if"_if.html,
 "improper_coeff"_improper_coeff.html,
 "improper_style"_improper_style.html,
 "include"_include.html,
 "jump"_jump.html,
 "kspace_modify"_kspace_modify.html,
 "kspace_style"_kspace_style.html,
 "label"_label.html,
 "lattice"_lattice.html,
 "log"_log.html,
 "mass"_mass.html,
 "minimize"_minimize.html,
 "min_modify"_min_modify.html,
 "min_style"_min_style.html,
 "neb"_neb.html,
 "neigh_modify"_neigh_modify.html,
 "neighbor"_neighbor.html,
 "newton"_newton.html,
 "next"_next.html,
 "package"_package.html,
 "pair_coeff"_pair_coeff.html,
 "pair_modify"_pair_modify.html,
 "pair_style"_pair_style.html,
 "pair_write"_pair_write.html,
 "partition"_partition.html,
 "prd"_prd.html,
 "print"_print.html,
 "processors"_processors.html,
 "quit"_quit.html,
 "read_data"_read_data.html,
 "read_dump"_read_dump.html,
 "read_restart"_read_restart.html,
 "region"_region.html,
 "replicate"_replicate.html,
 "rerun"_rerun.html,
 "reset_timestep"_reset_timestep.html,
 "restart"_restart.html,
 "run"_run.html,
 "run_style"_run_style.html,
 "set"_set.html,
 "shell"_shell.html,
 "special_bonds"_special_bonds.html,
 "suffix"_suffix.html,
 "tad"_tad.html,
 "temper"_temper.html,
 "thermo"_thermo.html,
 "thermo_modify"_thermo_modify.html,
 "thermo_style"_thermo_style.html,
 "timestep"_timestep.html,
 "uncompute"_uncompute.html,
 "undump"_undump.html,
 "unfix"_unfix.html,
 "units"_units.html,
 "variable"_variable.html,
 "velocity"_velocity.html,
 "write_restart"_write_restart.html :tb(c=6,ea=c)
 
 :line
 
 Fix styles :h4
 
 See the "fix"_fix.html command for one-line descriptions
 of each style or click on the style itself for a full description:
 
 "adapt"_fix_adapt.html,
 "addforce"_fix_addforce.html,
 "append/atoms"_fix_append_atoms.html,
 "aveforce"_fix_aveforce.html,
 "ave/atom"_fix_ave_atom.html,
 "ave/correlate"_fix_ave_correlate.html,
 "ave/histo"_fix_ave_histo.html,
 "ave/spatial"_fix_ave_spatial.html,
 "ave/time"_fix_ave_time.html,
 "balance"_fix_balance.html,
 "bond/break"_fix_bond_break.html,
 "bond/create"_fix_bond_create.html,
 "bond/swap"_fix_bond_swap.html,
 "box/relax"_fix_box_relax.html,
 "deform"_fix_deform.html,
 "deposit"_fix_deposit.html,
 "drag"_fix_drag.html,
 "dt/reset"_fix_dt_reset.html,
 "efield"_fix_efield.html,
 "enforce2d"_fix_enforce2d.html,
 "evaporate"_fix_evaporate.html,
 "external"_fix_external.html,
 "freeze"_fix_freeze.html,
 "gcmc"_fix_gcmc.html,
 "gravity"_fix_gravity.html,
 "heat"_fix_heat.html,
 "indent"_fix_indent.html,
 "langevin"_fix_langevin.html,
 "lineforce"_fix_lineforce.html,
 "momentum"_fix_momentum.html,
 "move"_fix_move.html,
 "msst"_fix_msst.html,
 "neb"_fix_neb.html,
 "nph"_fix_nh.html,
 "nphug"_fix_nphug.html,
 "nph/asphere"_fix_nph_asphere.html,
 "nph/sphere"_fix_nph_sphere.html,
 "npt"_fix_nh.html,
 "npt/asphere"_fix_npt_asphere.html,
 "npt/sphere"_fix_npt_sphere.html,
 "nve"_fix_nve.html,
 "nve/asphere"_fix_nve_asphere.html,
 "nve/asphere/noforce"_fix_nve_asphere_noforce.html,
+"nve/body"_fix_nve_body.html,
 "nve/limit"_fix_nve_limit.html,
 "nve/line"_fix_nve_line.html,
 "nve/noforce"_fix_nve_noforce.html,
 "nve/sphere"_fix_nve_sphere.html,
 "nve/tri"_fix_nve_tri.html,
 "nvt"_fix_nh.html,
 "nvt/asphere"_fix_nvt_asphere.html,
 "nvt/sllod"_fix_nvt_sllod.html,
 "nvt/sphere"_fix_nvt_sphere.html,
 "orient/fcc"_fix_orient_fcc.html,
 "planeforce"_fix_planeforce.html,
 "poems"_fix_poems.html,
 "pour"_fix_pour.html,
 "press/berendsen"_fix_press_berendsen.html,
 "print"_fix_print.html,
 "qeq/comb"_fix_qeq_comb.html,
 "reax/bonds"_fix_reax_bonds.html,
 "recenter"_fix_recenter.html,
 "restrain"_fix_restrain.html,
 "rigid"_fix_rigid.html,
 "rigid/nph"_fix_rigid.html,
 "rigid/npt"_fix_rigid.html,
 "rigid/nve"_fix_rigid.html,
 "rigid/nvt"_fix_rigid.html,
 "setforce"_fix_setforce.html,
 "shake"_fix_shake.html,
 "spring"_fix_spring.html,
 "spring/rg"_fix_spring_rg.html,
 "spring/self"_fix_spring_self.html,
 "srd"_fix_srd.html,
 "store/force"_fix_store_force.html,
 "store/state"_fix_store_state.html,
 "temp/berendsen"_fix_temp_berendsen.html,
 "temp/rescale"_fix_temp_rescale.html,
 "thermal/conductivity"_fix_thermal_conductivity.html,
 "tmd"_fix_tmd.html,
 "ttm"_fix_ttm.html,
 "viscosity"_fix_viscosity.html,
 "viscous"_fix_viscous.html,
 "wall/colloid"_fix_wall.html,
 "wall/gran"_fix_wall_gran.html,
 "wall/harmonic"_fix_wall.html,
 "wall/lj126"_fix_wall.html,
 "wall/lj93"_fix_wall.html,
 "wall/piston"_fix_wall_piston.html,
 "wall/reflect"_fix_wall_reflect.html,
 "wall/region"_fix_wall_region.html,
 "wall/srd"_fix_wall_srd.html :tb(c=8,ea=c)
 
 These are fix styles contributed by users, which can be used if
 "LAMMPS is built with the appropriate
 package"_Section_start.html#start_3.
 
 "addtorque"_fix_addtorque.html,
 "atc"_fix_atc.html,
 "colvars"_fix_colvars.html,
 "imd"_fix_imd.html,
 "langevin/eff"_fix_langevin_eff.html,
 "meso"_fix_meso.html,
 "meso/stationary"_fix_meso_stationary.html,
 "nph/eff"_fix_nh_eff.html,
 "npt/eff"_fix_nh_eff.html,
 "nve/eff"_fix_nve_eff.html,
 "nvt/eff"_fix_nh_eff.html,
 "nvt/sllod/eff"_fix_nvt_sllod_eff.html,
 "qeq/reax"_fix_qeq_reax.html,
 "reax/c/bonds"_fix_reaxc_bonds.html,
 "smd"_fix_smd.html,
 "temp/rescale/eff"_fix_temp_rescale_eff.html :tb(c=6,ea=c)
 
 These are accelerated fix styles, which can be used if LAMMPS is
 built with the "appropriate accelerated
 package"_Section_accelerate.html.
 
 "freeze/cuda"_fix_freeze.html,
 "addforce/cuda"_fix_addforce.html,
 "aveforce/cuda"_fix_aveforce.html,
 "enforce2d/cuda"_fix_enforce2d.html,
 "gravity/cuda"_fix_gravity.html,
 "gravity/omp"_fix_gravity.html,
 "npt/cuda"_fix_nh.html,
 "nve/cuda"_fix_nh.html,
 "nve/sphere/omp"_fix_nve_sphere.html,
 "nvt/cuda"_fix_nh.html,
 "qeq/comb/omp"_fix_qeq_comb.html,
 "setforce/cuda"_fix_setforce.html,
 "shake/cuda"_fix_shake.html,
 "temp/berendsen/cuda"_fix_temp_berendsen.html,
 "temp/rescale/cuda"_fix_temp_rescale.html,
 "temp/rescale/limit/cuda"_fix_temp_rescale.html,
 "viscous/cuda"_fix_viscous.html :tb(c=6,ea=c)
 
 :line
 
 Compute styles :h4
 
 See the "compute"_compute.html command for one-line descriptions of
 each style or click on the style itself for a full description:
 
 "angle/local"_compute_angle_local.html,
 "atom/molecule"_compute_atom_molecule.html,
+"body/local"_compute_body_local.html,
 "bond/local"_compute_bond_local.html,
 "centro/atom"_compute_centro_atom.html,
 "cluster/atom"_compute_cluster_atom.html,
 "cna/atom"_compute_cna_atom.html,
 "com"_compute_com.html,
 "com/molecule"_compute_com_molecule.html,
 "contact/atom"_compute_contact_atom.html,
 "coord/atom"_compute_coord_atom.html,
 "damage/atom"_compute_damage_atom.html,
 "dihedral/local"_compute_dihedral_local.html,
 "displace/atom"_compute_displace_atom.html,
 "erotate/asphere"_compute_erotate_asphere.html,
 "erotate/sphere"_compute_erotate_sphere.html,
 "erotate/sphere/atom"_compute_erotate_sphere_atom.html,
 "event/displace"_compute_event_displace.html,
 "group/group"_compute_group_group.html,
 "gyration"_compute_gyration.html,
 "gyration/molecule"_compute_gyration_molecule.html,
 "heat/flux"_compute_heat_flux.html,
 "improper/local"_compute_improper_local.html,
 "inertia/molecule"_compute_inertia_molecule.html,
 "ke"_compute_ke.html,
 "ke/atom"_compute_ke_atom.html,
 "msd"_compute_msd.html,
 "msd/molecule"_compute_msd_molecule.html,
 "pair"_compute_pair.html,
 "pair/local"_compute_pair_local.html,
 "pe"_compute_pe.html,
 "pe/atom"_compute_pe_atom.html,
 "pressure"_compute_pressure.html,
 "property/atom"_compute_property_atom.html,
 "property/local"_compute_property_local.html,
 "property/molecule"_compute_property_molecule.html,
 "rdf"_compute_rdf.html,
 "reduce"_compute_reduce.html,
 "reduce/region"_compute_reduce.html,
 "slice"_compute_slice.html,
 "stress/atom"_compute_stress_atom.html,
 "temp"_compute_temp.html,
 "temp/asphere"_compute_temp_asphere.html,
 "temp/com"_compute_temp_com.html,
 "temp/deform"_compute_temp_deform.html,
 "temp/partial"_compute_temp_partial.html,
 "temp/profile"_compute_temp_profile.html,
 "temp/ramp"_compute_temp_ramp.html,
 "temp/region"_compute_temp_region.html,
 "temp/sphere"_compute_temp_sphere.html,
 "ti"_compute_ti.html,
 "voronoi/atom"_compute_voronoi_atom.html :tb(c=6,ea=c)
 
 These are compute styles contributed by users, which can be used if
 "LAMMPS is built with the appropriate
 package"_Section_start.html#start_3.
 
 "ackland/atom"_compute_ackland_atom.html,
 "ke/eff"_compute_ke_eff.html,
 "ke/atom/eff"_compute_ke_atom_eff.html,
 "meso_e/atom"_compute_meso_e_atom.html,
 "meso_rho/atom"_compute_meso_rho_atom.html,
 "meso_t/atom"_compute_meso_t_atom.html,
 "temp/eff"_compute_temp_eff.html,
 "temp/deform/eff"_compute_temp_deform_eff.html,
 "temp/region/eff"_compute_temp_region_eff.html,
 "temp/rotate"_compute_temp_rotate.html :tb(c=6,ea=c)
 
 These are accelerated compute styles, which can be used if LAMMPS is
 built with the "appropriate accelerated
 package"_Section_accelerate.html.
 
 "pe/cuda"_compute_pe.html,
 "pressure/cuda"_compute_pressure.html,
 "temp/cuda"_compute_temp.html,
 "temp/partial/cuda"_compute_temp_partial.html :tb(c=6,ea=c)
 
 :line
 
 Pair_style potentials :h4
 
 See the "pair_style"_pair_style.html command for an overview of pair
 potentials.  Click on the style itself for a full description:
 
 "none"_pair_none.html,
 "hybrid"_pair_hybrid.html,
 "hybrid/overlay"_pair_hybrid.html,
 "adp"_pair_adp.html,
 "airebo"_pair_airebo.html,
 "beck"_pair_beck.html,
+"body"_pair_body.html,
 "bop"_pair_bop.html,
 "born"_pair_born.html,
 "born/coul/long"_pair_born.html,
 "born/coul/msm"_pair_born.html,
 "born/coul/wolf"_pair_born.html,
 "brownian"_pair_brownian.html,
 "brownian/poly"_pair_brownian.html,
 "buck"_pair_buck.html,
 "buck/coul/cut"_pair_buck.html,
 "buck/coul/long"_pair_buck.html,
 "buck/coul/msm"_pair_buck.html,
 "buck/long/coul/long"_pair_buck_long.html,
 "colloid"_pair_colloid.html,
 "comb"_pair_comb.html,
 "coul/cut"_pair_coul.html,
 "coul/debye"_pair_coul.html,
 "coul/dsf"_pair_coul.html,
 "coul/long"_pair_coul.html,
 "coul/msm"_pair_coul.html,
 "coul/wolf"_pair_coul.html,
 "dipole/cut"_pair_dipole.html,
 "dpd"_pair_dpd.html,
 "dpd/tstat"_pair_dpd.html,
 "dsmc"_pair_dsmc.html,
 "eam"_pair_eam.html,
 "eam/alloy"_pair_eam.html,
 "eam/fs"_pair_eam.html,
 "eim"_pair_eim.html,
 "gauss"_pair_gauss.html,
 "gayberne"_pair_gayberne.html,
 "gran/hertz/history"_pair_gran.html,
 "gran/hooke"_pair_gran.html,
 "gran/hooke/history"_pair_gran.html,
 "hbond/dreiding/lj"_pair_hbond_dreiding.html,
 "hbond/dreiding/morse"_pair_hbond_dreiding.html,
 "kim"_pair_kim.html,
 "lcbop"_pair_lcbop.html,
 "line/lj"_pair_line_lj.html,
 "lj/charmm/coul/charmm"_pair_charmm.html,
 "lj/charmm/coul/charmm/implicit"_pair_charmm.html,
 "lj/charmm/coul/long"_pair_charmm.html,
 "lj/charmm/coul/msm"_pair_charmm.html,
 "lj/class2"_pair_class2.html,
 "lj/class2/coul/cut"_pair_class2.html,
 "lj/class2/coul/long"_pair_class2.html,
 "lj/cut"_pair_lj.html,
 "lj/cut/coul/cut"_pair_lj.html,
 "lj/cut/coul/debye"_pair_lj.html,
 "lj/cut/coul/dsf"_pair_lj.html,
 "lj/cut/coul/long"_pair_lj.html,
 "lj/cut/coul/msm"_pair_lj.html,
 "lj/long/coul/long"_pair_lj_long.html,
 "lj/cut/tip4p/long"_pair_lj.html,
 "lj/long/tip4p/long"_pair_lj_long.html,
 "lj/expand"_pair_lj_expand.html,
 "lj/gromacs"_pair_gromacs.html,
 "lj/gromacs/coul/gromacs"_pair_gromacs.html,
 "lj/smooth"_pair_lj_smooth.html,
 "lj/smooth/linear"_pair_lj_smooth_linear.html,
 "lj96/cut"_pair_lj96.html,
 "lubricate"_pair_lubricate.html,
 "lubricate/poly"_pair_lubricate.html,
 "lubricateU"_pair_lubricateU.html,
 "lubricateU/poly"_pair_lubricateU.html,
 "meam"_pair_meam.html,
 "mie/cut"_pair_mie.html,
 "morse"_pair_morse.html,
 "peri/lps"_pair_peri.html,
 "peri/pmb"_pair_peri.html,
 "reax"_pair_reax.html,
 "rebo"_pair_airebo.html,
 "resquared"_pair_resquared.html,
 "soft"_pair_soft.html,
 "sw"_pair_sw.html,
 "table"_pair_table.html,
 "tersoff"_pair_tersoff.html,
 "tersoff/zbl"_pair_tersoff_zbl.html,
 "tri/lj"_pair_tri_lj.html,
 "yukawa"_pair_yukawa.html,
 "yukawa/colloid"_pair_yukawa_colloid.html :tb(c=4,ea=c)
 
 These are pair styles contributed by users, which can be used if
 "LAMMPS is built with the appropriate
 package"_Section_start.html#start_3.
 
 "awpmd/cut"_pair_awpmd.html,
 "coul/diel"_pair_coul_diel.html,
 "dipole/sf"_pair_dipole.html,
 "eam/cd"_pair_eam.html,
 "edip"_pair_edip.html,
 "eff/cut"_pair_eff.html,
 "gauss/cut"_pair_gauss.html,
 "lj/sdk"_pair_sdk.html,
 "lj/sdk/coul/long"_pair_sdk.html,
 "lj/sf"_pair_lj_sf.html,
 "meam/spline"_pair_meam_spline.html,
 "meam/sw/spline"_pair_meam_sw_spline.html,
 "reax/c"_pair_reax_c.html,
 "sph/heatconduction"_pair_sph_heatconduction.html,
 "sph/idealgas"_pair_sph_idealgas.html,
 "sph/lj"_pair_sph_lj.html,
 "sph/rhosum"_pair_sph_rhosum.html,
 "sph/taitwater"_pair_sph_taitwater.html,
 "sph/taitwater/morris"_pair_sph_taitwater_morris.html,
 "tersoff/table"_pair_tersoff.html :tb(c=4,ea=c)
 
 These are accelerated pair styles, which can be used if LAMMPS is
 built with the "appropriate accelerated
 package"_Section_accelerate.html.
 
 "adp/omp"_pair_adp.html,
 "airebo/omp"_pair_airebo.html,
 "beck/omp"_pair_beck.html,
 "born/coul/long/cuda"_pair_born.html,
 "born/coul/long/gpu"_pair_born.html,
 "born/coul/long/omp"_pair_born.html,
 "born/coul/msm/omp"_pair_born.html,
 "born/coul/wolf/gpu"_pair_born.html,
 "born/coul/wolf/omp"_pair_born.html,
 "born/gpu"_pair_born.html,
 "born/omp"_pair_born.html,
 "brownian/omp"_pair_brownian.html,
 "brownian/poly/omp"_pair_brownian.html,
 "buck/coul/cut/cuda"_pair_buck.html,
 "buck/coul/cut/gpu"_pair_buck.html,
 "buck/coul/cut/omp"_pair_buck.html,
 "buck/coul/long/cuda"_pair_buck.html,
 "buck/coul/long/gpu"_pair_buck.html,
 "buck/coul/long/omp"_pair_buck.html,
 "buck/coul/msm/omp"_pair_buck.html,
 "buck/cuda"_pair_buck.html,
 "buck/long/coul/long/omp"_pair_buck_long.html,
 "buck/gpu"_pair_buck.html,
 "buck/omp"_pair_buck.html,
 "colloid/gpu"_pair_colloid.html,
 "colloid/omp"_pair_colloid.html,
 "comb/omp"_pair_comb.html,
 "coul/cut/omp"_pair_coul.html,
 "coul/debye/omp"_pair_coul.html,
 "coul/dsf/gpu"_pair_coul.html,
 "coul/long/gpu"_pair_coul.html,
 "coul/long/omp"_pair_coul.html,
 "coul/msm/omp"_pair_coul.html,
 "coul/wolf"_pair_coul.html,
 "dipole/cut/gpu"_pair_dipole.html,
 "dipole/cut/omp"_pair_dipole.html,
 "dipole/sf/gpu"_pair_dipole.html,
 "dipole/sf/omp"_pair_dipole.html,
 "dpd/omp"_pair_dpd.html,
 "dpd/tstat/omp"_pair_dpd.html,
 "eam/alloy/cuda"_pair_eam.html,
 "eam/alloy/gpu"_pair_eam.html,
 "eam/alloy/omp"_pair_eam.html,
 "eam/alloy/opt"_pair_eam.html,
 "eam/cd/omp"_pair_eam.html,
 "eam/cuda"_pair_eam.html,
 "eam/fs/cuda"_pair_eam.html,
 "eam/fs/gpu"_pair_eam.html,
 "eam/fs/omp"_pair_eam.html,
 "eam/fs/opt"_pair_eam.html,
 "eam/gpu"_pair_eam.html,
 "eam/omp"_pair_eam.html,
 "eam/opt"_pair_eam.html,
 "edip/omp"_pair_edip.html,
 "eim/omp"_pair_eim.html,
 "gauss/gpu"_pair_gauss.html,
 "gauss/omp"_pair_gauss.html,
 "gayberne/gpu"_pair_gayberne.html,
 "gayberne/omp"_pair_gayberne.html,
 "gran/hertz/history/omp"_pair_gran.html,
 "gran/hooke/cuda"_pair_gran.html,
 "gran/hooke/history/omp"_pair_gran.html,
 "gran/hooke/omp"_pair_gran.html,
 "hbond/dreiding/lj/omp"_pair_hbond_dreiding.html,
 "hbond/dreiding/morse/omp"_pair_hbond_dreiding.html,
 "line/lj/omp"_pair_line_lj.html,
 "lj/charmm/coul/charmm/cuda"_pair_charmm.html,
 "lj/charmm/coul/charmm/omp"_pair_charmm.html,
 "lj/charmm/coul/charmm/implicit/cuda"_pair_charmm.html,
 "lj/charmm/coul/charmm/implicit/omp"_pair_charmm.html,
 "lj/charmm/coul/long/cuda"_pair_charmm.html,
 "lj/charmm/coul/long/gpu"_pair_charmm.html,
 "lj/charmm/coul/long/omp"_pair_charmm.html,
 "lj/charmm/coul/long/opt"_pair_charmm.html,
 "lj/class2/coul/cut/cuda"_pair_class2.html,
 "lj/class2/coul/cut/omp"_pair_class2.html,
 "lj/class2/coul/long/cuda"_pair_class2.html,
 "lj/class2/coul/long/gpu"_pair_class2.html,
 "lj/class2/coul/long/omp"_pair_class2.html,
 "lj/class2/coul/msm/omp"_pair_class2.html,
 "lj/class2/cuda"_pair_class2.html,
 "lj/class2/gpu"_pair_class2.html,
 "lj/class2/omp"_pair_class2.html,
 "lj/long/coul/long/omp"_pair_lj_long.html,
 "lj/cut/coul/cut/cuda"_pair_lj.html,
 "lj/cut/coul/cut/gpu"_pair_lj.html,
 "lj/cut/coul/cut/omp"_pair_lj.html,
 "lj/cut/coul/debye/cuda"_pair_lj.html,
 "lj/cut/coul/debye/gpu"_pair_lj.html,
 "lj/cut/coul/debye/omp"_pair_lj.html,
 "lj/cut/coul/dsf/gpu"_pair_lj.html,
 "lj/cut/coul/long/cuda"_pair_lj.html,
 "lj/cut/coul/long/gpu"_pair_lj.html,
 "lj/cut/coul/long/omp"_pair_lj.html,
 "lj/cut/coul/long/opt"_pair_lj.html,
 "lj/cut/coul/msm/opt"_pair_lj.html,
 "lj/cut/cuda"_pair_lj.html,
 "lj/cut/experimental/cuda"_pair_lj.html,
 "lj/cut/gpu"_pair_lj.html,
 "lj/cut/omp"_pair_lj.html,
 "lj/cut/opt"_pair_lj.html,
 "lj/cut/tip4p/long/omp"_pair_lj.html,
 "lj/cut/tip4p/long/opt"_pair_lj.html,
 "lj/expand/cuda"_pair_lj_expand.html,
 "lj/expand/gpu"_pair_lj_expand.html,
 "lj/expand/omp"_pair_lj_expand.html,
 "lj/gromacs/coul/gromacs/cuda"_pair_gromacs.html,
 "lj/gromacs/coul/gromacs/omp"_pair_gromacs.html,
 "lj/gromacs/cuda"_pair_gromacs.html,
 "lj/gromacs/omp"_pair_gromacs.html,
 "lj/sdk/gpu"_pair_sdk.html,
 "lj/sdk/omp"_pair_sdk.html,
 "lj/sdk/coul/long/gpu"_pair_sdk.html,
 "lj/sdk/coul/long/omp"_pair_sdk.html,
 "lj/sf/omp"_pair_lj_sf.html,
 "lj/smooth/cuda"_pair_lj_smooth.html,
 "lj/smooth/omp"_pair_lj_smooth.html,
 "lj/smooth/linear/omp"_pair_lj_smooth_linear.html,
 "lj96/cut/cuda"_pair_lj96.html,
 "lj96/cut/gpu"_pair_lj96.html,
 "lj96/cut/omp"_pair_lj96.html,
 "lubricate/omp"_pair_lubricate.html,
 "lubricate/poly/omp"_pair_lubricate.html,
 "meam/spline/omp"_pair_meam_spline.html,
 "morse/cuda"_pair_morse.html,
 "morse/gpu"_pair_morse.html,
 "morse/omp"_pair_morse.html,
 "morse/opt"_pair_morse.html,
 "peri/lps/omp"_pair_peri.html,
 "peri/pmb/omp"_pair_peri.html,
 "rebo/omp"_pair_airebo.html,
 "resquared/gpu"_pair_resquared.html,
 "resquared/omp"_pair_resquared.html,
 "soft/omp"_pair_soft.html,
 "sw/cuda"_pair_sw.html,
 "sw/omp"_pair_sw.html,
 "table/gpu"_pair_table.html,
 "table/omp"_pair_table.html,
 "tersoff/cuda"_pair_tersoff.html,
 "tersoff/omp"_pair_tersoff.html,
 "tersoff/table/omp"_pair_tersoff.html,
 "tersoff/zbl/omp"_pair_tersoff_zbl.html,
 "tri/lj/omp"_pair_tri_lj.html,
 "yukawa/gpu"_pair_yukawa.html,
 "yukawa/omp"_pair_yukawa.html,
 "yukawa/colloid/gpu"_pair_yukawa_colloid.html,
 "yukawa/colloid/omp"_pair_yukawa_colloid.html :tb(c=4,ea=c)
 
 :line
 
 Bond_style potentials :h4
 
 See the "bond_style"_bond_style.html command for an overview of bond
 potentials.  Click on the style itself for a full description:
 
 "none"_bond_none.html,
 "hybrid"_bond_hybrid.html,
 "class2"_bond_class2.html,
 "fene"_bond_fene.html,
 "fene/expand"_bond_fene_expand.html,
 "harmonic"_bond_harmonic.html,
 "morse"_bond_morse.html,
 "nonlinear"_bond_nonlinear.html,
 "quartic"_bond_quartic.html,
 "table"_bond_table.html :tb(c=4,ea=c,w=100)
 
 These are bond styles contributed by users, which can be used if
 "LAMMPS is built with the appropriate
 package"_Section_start.html#start_3.
 
 "harmonic/shift"_bond_harmonic_shift.html,
 "harmonic/shift/cut"_bond_harmonic_shift_cut.html :tb(c=4,ea=c)
 
 These are accelerated bond styles, which can be used if LAMMPS is
 built with the "appropriate accelerated
 package"_Section_accelerate.html.
 
 "class2/omp"_bond_class2.html,
 "fene/omp"_bond_fene.html,
 "fene/expand/omp"_bond_fene_expand.html,
 "harmonic/omp"_bond_harmonic.html,
 "harmonic/shift/omp"_bond_harmonic_shift.html,
 "harmonic/shift/cut/omp"_bond_harmonic_shift_cut.html,
 "morse/omp"_bond_morse.html,
 "nonlinear/omp"_bond_nonlinear.html,
 "quartic/omp"_bond_quartic.html,
 "table/omp"_bond_table.html :tb(c=4,ea=c,w=100)
 
 :line
 
 Angle_style potentials :h4
 
 See the "angle_style"_angle_style.html command for an overview of
 angle potentials.  Click on the style itself for a full description:
 
 "none"_angle_none.html,
 "hybrid"_angle_hybrid.html,
 "charmm"_angle_charmm.html,
 "class2"_angle_class2.html,
 "cosine"_angle_cosine.html,
 "cosine/delta"_angle_cosine_delta.html,
 "cosine/periodic"_angle_cosine_periodic.html,
 "cosine/squared"_angle_cosine_squared.html,
 "harmonic"_angle_harmonic.html,
 "table"_angle_table.html :tb(c=4,ea=c,w=100)
 
 These are angle styles contributed by users, which can be used if
 "LAMMPS is built with the appropriate
 package"_Section_start.html#start_3.
 
 "sdk"_angle_sdk.html,
 "cosine/shift"_angle_cosine_shift.html,
 "cosine/shift/exp"_angle_cosine_shift_exp.html,
 "dipole"_angle_dipole.html,
 "fourier"_angle_fourier.html,
 "fourier/simple"_angle_fourier_simple.html,
 "quartic"_angle_quartic.html :tb(c=4,ea=c)
 
 These are accelerated angle styles, which can be used if LAMMPS is
 built with the "appropriate accelerated
 package"_Section_accelerate.html.
 
 "charmm/omp"_angle_charmm.html,
 "class2/omp"_angle_class2.html,
 "cosine/omp"_angle_cosine.html,
 "cosine/delta/omp"_angle_cosine_delta.html,
 "cosine/periodic/omp"_angle_cosine_periodic.html,
 "cosine/shift/omp"_angle_cosine_shift.html,
 "cosine/shift/exp/omp"_angle_cosine_shift_exp.html,
 "cosine/squared/omp"_angle_cosine_squared.html,
 "dipole/omp"_angle_dipole.html
 "harmonic/omp"_angle_harmonic.html,
 "table/omp"_angle_table.html :tb(c=4,ea=c,w=100)
 
 :line
 
 Dihedral_style potentials :h4
 
 See the "dihedral_style"_dihedral_style.html command for an overview
 of dihedral potentials.  Click on the style itself for a full
 description:
 
 "none"_dihedral_none.html,
 "hybrid"_dihedral_hybrid.html,
 "charmm"_dihedral_charmm.html,
 "class2"_dihedral_class2.html,
 "harmonic"_dihedral_harmonic.html,
 "helix"_dihedral_helix.html,
 "multi/harmonic"_dihedral_multi_harmonic.html,
 "opls"_dihedral_opls.html :tb(c=4,ea=c,w=100)
 
 These are dihedral styles contributed by users, which can be used if
 "LAMMPS is built with the appropriate
 package"_Section_start.html#start_3.
 
 "cosine/shift/exp"_dihedral_cosine_shift_exp.html,
 "fourier"_dihedral_fourier.html,
 "nharmonic"_dihedral_nharmonic.html,
 "quadratic"_dihedral_quadratic.html,
 "table"_dihedral_table.html :tb(c=4,ea=c)
 
 These are accelerated dihedral styles, which can be used if LAMMPS is
 built with the "appropriate accelerated
 package"_Section_accelerate.html.
 
 "charmm/omp"_dihedral_charmm.html,
 "class2/omp"_dihedral_class2.html,
 "cosine/shift/exp/omp"_dihedral_cosine_shift_exp.html,
 "harmonic/omp"_dihedral_harmonic.html,
 "helix/omp"_dihedral_helix.html,
 "multi/harmonic/omp"_dihedral_multi_harmonic.html,
 "opls/omp"_dihedral_opls.html
 "table/omp"_dihedral_table.html :tb(c=4,ea=c,w=100)
 
 :line
 
 Improper_style potentials :h4
 
 See the "improper_style"_improper_style.html command for an overview
 of improper potentials.  Click on the style itself for a full
 description:
 
 "none"_improper_none.html,
 "hybrid"_improper_hybrid.html,
 "class2"_improper_class2.html,
 "cvff"_improper_cvff.html,
 "harmonic"_improper_harmonic.html,
 "umbrella"_improper_umbrella.html :tb(c=4,ea=c,w=100)
 
 These are improper styles contributed by users, which can be used if
 "LAMMPS is built with the appropriate
 package"_Section_start.html#start_3.
 
 "cossq"_improper_cossq.html,
 "ring"_improper_ring.html :tb(c=4,ea=c)
 
 These are accelerated improper styles, which can be used if LAMMPS is
 built with the "appropriate accelerated
 package"_Section_accelerate.html.
 
 "class2/omp"_improper_class2.html,
 "cossq/omp"_improper_cossq.html,
 "cvff/omp"_improper_cvff.html,
 "fourier"_improper_fourier.html,
 "harmonic/omp"_improper_harmonic.html,
 "ring/omp"_improper_ring.html,
 "umbrella/omp"_improper_umbrella.html :tb(c=4,ea=c,w=100)
 
 :line
 
 Kspace solvers :h4
 
 See the "kspace_style"_kspace_style.html command for an overview of
 Kspace solvers.  Click on the style itself for a full description:
 
 "ewald"_kspace_style.html,
 "ewald/disp"_kspace_style.html,
 "msm"_kspace_style.html,
 "pppm"_kspace_style.html,
 "pppm/cg"_kspace_style.html,
 "pppm/disp"_kspace_style.html,
 "pppm/disp/tip4p"_kspace_style.html,
 "pppm/tip4p"_kspace_style.html :tb(c=4,ea=c,w=100)
 
 These are accelerated Kspace solvers, which can be used if LAMMPS is
 built with the "appropriate accelerated
 package"_Section_accelerate.html.
 
 "ewald/omp"_kspace_style.html,
 "msm/omp"_kspace_style.html,
 "pppm/cuda"_kspace_style.html,
 "pppm/gpu"_kspace_style.html,
 "pppm/omp"_kspace_style.html,
 "pppm/cg/omp"_kspace_style.html,
 "pppm/tip4p/omp"_kspace_style.html :tb(c=4,ea=c)
diff --git a/doc/atom_style.html b/doc/atom_style.html
index 77ca19b72..ff8009158 100644
--- a/doc/atom_style.html
+++ b/doc/atom_style.html
@@ -1,161 +1,185 @@
 <HTML>
 <CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A> 
 </CENTER>
 
 
 
 
 
 
 <HR>
 
 <H3>atom_style command 
 </H3>
 <P><B>Syntax:</B>
 </P>
 <PRE>atom_style style args 
 </PRE>
-<UL><LI>style = <I>angle</I> or <I>atomic</I> or <I>bond</I> or <I>charge</I> or <I>dipole</I> or         <I>electron</I> or <I>ellipsoid</I> or <I>full</I> or <I>line</I> or <I>meso</I> or 	<I>molecular</I> or <I>peri</I> or <I>sphere</I> or <I>tri</I> or <I>hybrid</I> 
+<UL><LI>style = <I>angle</I> or <I>atomic</I> or <I>body</I> or <I>bond</I> or <I>charge</I> or <I>dipole</I> or         <I>electron</I> or <I>ellipsoid</I> or <I>full</I> or <I>line</I> or <I>meso</I> or 	<I>molecular</I> or <I>peri</I> or <I>sphere</I> or <I>tri</I> or <I>hybrid</I> 
 </UL>
-<PRE>  args = none for any style except <I>hybrid</I>
-  <I>hybrid</I> args = list of one or more sub-styles 
+<PRE>  args = none for any style except <I>body</I> and <I>hybrid</I>
+  <I>body</I> args = Bstyle
+    Bstyle = style of body particles
+  <I>hybrid</I> args = list of one or more sub-styles, each with their args 
 </PRE>
 <P><B>Examples:</B>
 </P>
 <PRE>atom_style atomic
 atom_style bond
 atom_style full
-atom_style hybrid charge bond 
+atom_style body nparticle
+atom_style hybrid charge bond
+atom_style hybrid charge body nparticle 
 </PRE>
 <P><B>Description:</B>
 </P>
 <P>Define what style of atoms to use in a simulation.  This determines
 what attributes are associated with the atoms.  This command must be
 used before a simulation is setup via a <A HREF = "read_data.html">read_data</A>,
 <A HREF = "read_restart.html">read_restart</A>, or <A HREF = "create_box.html">create_box</A>
 command.
 </P>
 <P>Once a style is assigned, it cannot be changed, so use a style general
 enough to encompass all attributes.  E.g. with style <I>bond</I>, angular
 terms cannot be used or added later to the model.  It is OK to use a
 style more general than needed, though it may be slightly inefficient.
 </P>
 <P>The choice of style affects what quantities are stored by each atom,
 what quantities are communicated between processors to enable forces
 to be computed, and what quantities are listed in the data file read
 by the <A HREF = "read_data.html">read_data</A> command.
 </P>
 <P>These are the additional attributes of each style and the typical
 kinds of physical systems they are used to model.  All styles store
 coordinates, velocities, atom IDs and types.  See the
 <A HREF = "read_data.html">read_data</A>, <A HREF = "create_atoms.html">create_atoms</A>, and
 <A HREF = "set.html">set</A> commands for info on how to set these various
 quantities.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR><TD ><I>angle</I> </TD><TD > bonds and angles </TD><TD > bead-spring polymers with stiffness </TD></TR>
 <TR><TD ><I>atomic</I> </TD><TD > only the default values </TD><TD > coarse-grain liquids, solids, metals </TD></TR>
+<TR><TD ><I>body</I> </TD><TD > mass, inertia moments, quaternion, angular momentum </TD><TD > arbitrary bodies </TD></TR>
 <TR><TD ><I>bond</I> </TD><TD > bonds </TD><TD > bead-spring polymers </TD></TR>
 <TR><TD ><I>charge</I> </TD><TD > charge </TD><TD > atomic system with charges </TD></TR>
 <TR><TD ><I>dipole</I> </TD><TD > charge and dipole moment </TD><TD > system with dipolar particles </TD></TR>
 <TR><TD ><I>electron</I> </TD><TD > charge and spin and eradius </TD><TD > electronic force field </TD></TR>
-<TR><TD ><I>ellipsoid</I> </TD><TD > shape, quaternion for particle orientation, angular momentum </TD><TD > extended aspherical particles </TD></TR>
+<TR><TD ><I>ellipsoid</I> </TD><TD > shape, quaternion, angular momentum </TD><TD > extended aspherical particles </TD></TR>
 <TR><TD ><I>full</I> </TD><TD > molecular + charge </TD><TD > bio-molecules </TD></TR>
 <TR><TD ><I>line</I> </TD><TD > end points, angular velocity </TD><TD > rigid bodies </TD></TR>
 <TR><TD ><I>meso</I> </TD><TD > rho, e, cv </TD><TD > SPH particles </TD></TR>
 <TR><TD ><I>molecular</I> </TD><TD > bonds, angles, dihedrals, impropers </TD><TD > uncharged molecules </TD></TR>
 <TR><TD ><I>peri</I> </TD><TD > mass, volume </TD><TD > mesocopic Peridynamic models </TD></TR>
 <TR><TD ><I>sphere</I> </TD><TD > diameter, mass, angular velocity </TD><TD > granular models </TD></TR>
 <TR><TD ><I>tri</I> </TD><TD > corner points, angular momentum </TD><TD > rigid bodies </TD></TR>
 <TR><TD ><I>wavepacket</I> </TD><TD > charge, spin, eradius, etag, cs_re, cs_im </TD><TD > AWPMD 
 </TD></TR></TABLE></DIV>
 
+<P>All of the styles define point particles, except the <I>sphere</I>,
+<I>ellipsoid</I>, <I>electron</I>, <I>peri</I>, <I>wavepacket</I>, <I>line</I>, <I>tri</I>, and
+<I>body</I> styles, which define finite-size particles.
+</P>
 <P>All of the styles assign mass to particles on a per-type basis, using
 the <A HREF = "mass.html">mass</A> command, except for the finite-size particle
-styles discussed below.  They assign mass on a per-atom basis.
-</P>
-<P>All of the styles define point particles, except the <I>sphere</I>,
-<I>ellipsoid</I>, <I>electron</I>, <I>peri</I>, <I>wavepacket</I>, <I>line</I>, and <I>tri</I>
-styles, which define finite-size particles.
+styles.  They assign mass to individual particles on a per-particle
+basis.
 </P>
 <P>For the <I>sphere</I> style, the particles are spheres and each stores a
 per-particle diameter and mass.  If the diameter > 0.0, the particle
 is a finite-size sphere.  If the diameter = 0.0, it is a point
 particle.
 </P>
 <P>For the <I>ellipsoid</I> style, the particles are ellipsoids and each
 stores a flag which indicates whether it is a finite-size ellipsoid or
 a point particle.  If it is an ellipsoid, it also stores a shape
 vector with the 3 diamters of the ellipsoid and a quaternion 4-vector
 with its orientation.
 </P>
 <P>For the <I>electron</I> style, the particles representing electrons are 3d
 Gaussians with a specified position and bandwidth or uncertainty in
 position, which is represented by the eradius = electron size.
 </P>
 <P>For the <I>peri</I> style, the particles are spherical and each stores a
 per-particle mass and volume.
 </P>
 <P>The <I>meso</I> style is for smoothed particle hydrodynamics (SPH)
 particles which store a density (rho), energy (e), and heat capacity
 (cv).
 </P>
 <P>The <I>wavepacket</I> style is similar to <I>electron</I>, but the electrons may
 consist of several Gaussian wave packets, summed up with coefficients
 cs= (cs_re,cs_im).  Each of the wave packets is treated as a separate
 particle in LAMMPS, wave packets belonging to the same electron must
 have identical <I>etag</I> values.
 </P>
 <P>For the <I>line</I> style, the particles are idealized line segments and
 each stores a per-particle mass and length and orientation (i.e. the
 end points of the line segment).
 </P>
 <P>For the <I>tri</I> style, the particles are planar triangles and each
 stores a per-particle mass and size and orientation (i.e. the corner
 points of the triangle).
 </P>
+<P>For the <I>body</I> style, the particles are arbitrary bodies with internal
+attributes defined by the "style" of the bodies, which is specified by
+the <I>Bstyle</I> argument.  Each body particle stores moments of inertia
+and a quaternion 4-vector, so that its orientation can be time
+integrated.  This atom style enables LAMMPS to work with particles
+that represent complex entities, such as surface meshes of discrete
+points, collections of sub-particles, deformable objects, etc.  Of
+course, the interactions between pairs of bodies will need to be
+encoded in an appropriate pair style.
+</P>
+<P>These are the body styles that LAMMPS currently supports.  The name in
+the first column is used as the <I>Bstyle</I> argument for atom_style body:
+</P>
+<DIV ALIGN=center><TABLE  BORDER=1 >
+<TR><TD ><I>nparticle</I> </TD><TD > body with N sub-particles 
+</TD></TR></TABLE></DIV>
+
 <HR>
 
 <P>Typically, simulations require only a single (non-hybrid) atom style.
 If some atoms in the simulation do not have all the properties defined
 by a particular style, use the simplest style that defines all the
 needed properties by any atom.  For example, if some atoms in a
 simulation are charged, but others are not, use the <I>charge</I> style.
 If some atoms have bonds, but others do not, use the <I>bond</I> style.
 </P>
 <P>The only scenario where the <I>hybrid</I> style is needed is if there is no
 single style which defines all needed properties of all atoms.  For
-example, if you want dipolar particles which will be torqued and
-rotate, you would need to use "atom_style hybrid sphere dipole".  When
+example, if you want dipolar particles which will rotate due to
+torque, you would need to use "atom_style hybrid sphere dipole".  When
 a hybrid style is used, atoms store and communicate the union of all
 quantities implied by the individual styles.
 </P>
-<P>LAMMPS can be extended with new atom styles; see <A HREF = "Section_modify.html">this
-section</A>.
+<P>LAMMPS can be extended with new atom styles as well as new body
+styles; see <A HREF = "Section_modify.html">this section</A>.
 </P>
 <P><B>Restrictions:</B>
 </P>
 <P>This command cannot be used after the simulation box is defined by a
 <A HREF = "read_data.html">read_data</A> or <A HREF = "create_box.html">create_box</A> command.
 </P>
 <P>The <I>angle</I>, <I>bond</I>, <I>full</I>, and <I>molecular</I> styles are part of the
-MOLECULAR package.  The <I>dipole</I> style is part of the "dipole"
+MOLECULAR package.  The <I>line</I>, <I>tri</I>, and <I>body</I> styles are part of
+the ASPHERE pacakge.  The <I>dipole</I> style is part of the DIPOLE
 package.  The <I>peri</I> style is part of the PERI package for
 Peridynamics.  The <I>electron</I> style is part of the USER-EFF package
 for <A HREF = "pair_eff.html">electronic force fields</A>.  The <I>meso</I> style is part
 of the USER-SPH package for smoothed particle hydrodyanmics (SPH).
 See <A HREF = "USER/sph/SPH_LAMMPS_userguide.pdf">this PDF guide</A> to using SPH in
 LAMMPS.  The <I>wavepacket</I> style is part of the USER-AWPMD package for
 the <A HREF = "pair_awpmd.html">antisymmetrized wave packet MD method</A>.  They are
 only enabled if LAMMPS was built with that package.  See the <A HREF = "Section_start.html#start_3">Making
 LAMMPS</A> section for more info.
 </P>
 <P><B>Related commands:</B>
 </P>
 <P><A HREF = "read_data.html">read_data</A>, <A HREF = "pair_style.html">pair_style</A>
 </P>
 <P><B>Default:</B>
 </P>
 <P>atom_style atomic
 </P>
 </HTML>
diff --git a/doc/atom_style.txt b/doc/atom_style.txt
index ee0375927..8301968f7 100644
--- a/doc/atom_style.txt
+++ b/doc/atom_style.txt
@@ -1,155 +1,177 @@
 "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
 
 atom_style command :h3
 
 [Syntax:]
 
 atom_style style args :pre
 
-style = {angle} or {atomic} or {bond} or {charge} or {dipole} or \
+style = {angle} or {atomic} or {body} or {bond} or {charge} or {dipole} or \
         {electron} or {ellipsoid} or {full} or {line} or {meso} or \
 	{molecular} or {peri} or {sphere} or {tri} or {hybrid} :ul
-  args = none for any style except {hybrid}
-  {hybrid} args = list of one or more sub-styles :pre
+  args = none for any style except {body} and {hybrid}
+  {body} args = Bstyle
+    Bstyle = style of body particles
+  {hybrid} args = list of one or more sub-styles, each with their args :pre
 
 [Examples:]
 
 atom_style atomic
 atom_style bond
 atom_style full
-atom_style hybrid charge bond :pre
+atom_style body nparticle
+atom_style hybrid charge bond
+atom_style hybrid charge body nparticle :pre
 
 [Description:]
 
 Define what style of atoms to use in a simulation.  This determines
 what attributes are associated with the atoms.  This command must be
 used before a simulation is setup via a "read_data"_read_data.html,
 "read_restart"_read_restart.html, or "create_box"_create_box.html
 command.
 
 Once a style is assigned, it cannot be changed, so use a style general
 enough to encompass all attributes.  E.g. with style {bond}, angular
 terms cannot be used or added later to the model.  It is OK to use a
 style more general than needed, though it may be slightly inefficient.
 
 The choice of style affects what quantities are stored by each atom,
 what quantities are communicated between processors to enable forces
 to be computed, and what quantities are listed in the data file read
 by the "read_data"_read_data.html command.
 
 These are the additional attributes of each style and the typical
 kinds of physical systems they are used to model.  All styles store
 coordinates, velocities, atom IDs and types.  See the
 "read_data"_read_data.html, "create_atoms"_create_atoms.html, and
 "set"_set.html commands for info on how to set these various
 quantities.
 
 {angle} | bonds and angles | bead-spring polymers with stiffness |
 {atomic} | only the default values | coarse-grain liquids, solids, metals |
+{body} | mass, inertia moments, quaternion, angular momentum | arbitrary bodies |
 {bond} | bonds | bead-spring polymers |
 {charge} | charge | atomic system with charges |
 {dipole} | charge and dipole moment | system with dipolar particles |
 {electron} | charge and spin and eradius | electronic force field |
-{ellipsoid} | shape, quaternion for particle orientation, angular momentum | extended aspherical particles |
+{ellipsoid} | shape, quaternion, angular momentum | extended aspherical particles |
 {full} | molecular + charge | bio-molecules |
 {line} | end points, angular velocity | rigid bodies |
 {meso} | rho, e, cv | SPH particles |
 {molecular} | bonds, angles, dihedrals, impropers | uncharged molecules |
 {peri} | mass, volume | mesocopic Peridynamic models |
 {sphere} | diameter, mass, angular velocity | granular models |
 {tri} | corner points, angular momentum | rigid bodies |
 {wavepacket} | charge, spin, eradius, etag, cs_re, cs_im | AWPMD :tb(c=3,s=|)
 
+All of the styles define point particles, except the {sphere},
+{ellipsoid}, {electron}, {peri}, {wavepacket}, {line}, {tri}, and
+{body} styles, which define finite-size particles.
+
 All of the styles assign mass to particles on a per-type basis, using
 the "mass"_mass.html command, except for the finite-size particle
-styles discussed below.  They assign mass on a per-atom basis.
-
-All of the styles define point particles, except the {sphere},
-{ellipsoid}, {electron}, {peri}, {wavepacket}, {line}, and {tri}
-styles, which define finite-size particles.
+styles.  They assign mass to individual particles on a per-particle
+basis.
 
 For the {sphere} style, the particles are spheres and each stores a
 per-particle diameter and mass.  If the diameter > 0.0, the particle
 is a finite-size sphere.  If the diameter = 0.0, it is a point
 particle.
 
 For the {ellipsoid} style, the particles are ellipsoids and each
 stores a flag which indicates whether it is a finite-size ellipsoid or
 a point particle.  If it is an ellipsoid, it also stores a shape
 vector with the 3 diamters of the ellipsoid and a quaternion 4-vector
 with its orientation.
 
 For the {electron} style, the particles representing electrons are 3d
 Gaussians with a specified position and bandwidth or uncertainty in
 position, which is represented by the eradius = electron size.
 
 For the {peri} style, the particles are spherical and each stores a
 per-particle mass and volume.
 
 The {meso} style is for smoothed particle hydrodynamics (SPH)
 particles which store a density (rho), energy (e), and heat capacity
 (cv).
 
 The {wavepacket} style is similar to {electron}, but the electrons may
 consist of several Gaussian wave packets, summed up with coefficients
 cs= (cs_re,cs_im).  Each of the wave packets is treated as a separate
 particle in LAMMPS, wave packets belonging to the same electron must
 have identical {etag} values.
 
 For the {line} style, the particles are idealized line segments and
 each stores a per-particle mass and length and orientation (i.e. the
 end points of the line segment).
 
 For the {tri} style, the particles are planar triangles and each
 stores a per-particle mass and size and orientation (i.e. the corner
 points of the triangle).
 
+For the {body} style, the particles are arbitrary bodies with internal
+attributes defined by the "style" of the bodies, which is specified by
+the {Bstyle} argument.  Each body particle stores moments of inertia
+and a quaternion 4-vector, so that its orientation can be time
+integrated.  This atom style enables LAMMPS to work with particles
+that represent complex entities, such as surface meshes of discrete
+points, collections of sub-particles, deformable objects, etc.  Of
+course, the interactions between pairs of bodies will need to be
+encoded in an appropriate pair style.
+
+These are the body styles that LAMMPS currently supports.  The name in
+the first column is used as the {Bstyle} argument for atom_style body:
+
+{nparticle} | body with N sub-particles :tb(c=2,s=|)
+
 :line
 
 Typically, simulations require only a single (non-hybrid) atom style.
 If some atoms in the simulation do not have all the properties defined
 by a particular style, use the simplest style that defines all the
 needed properties by any atom.  For example, if some atoms in a
 simulation are charged, but others are not, use the {charge} style.
 If some atoms have bonds, but others do not, use the {bond} style.
 
 The only scenario where the {hybrid} style is needed is if there is no
 single style which defines all needed properties of all atoms.  For
-example, if you want dipolar particles which will be torqued and
-rotate, you would need to use "atom_style hybrid sphere dipole".  When
+example, if you want dipolar particles which will rotate due to
+torque, you would need to use "atom_style hybrid sphere dipole".  When
 a hybrid style is used, atoms store and communicate the union of all
 quantities implied by the individual styles.
 
-LAMMPS can be extended with new atom styles; see "this
-section"_Section_modify.html.
+LAMMPS can be extended with new atom styles as well as new body
+styles; see "this section"_Section_modify.html.
 
 [Restrictions:]
 
 This command cannot be used after the simulation box is defined by a
 "read_data"_read_data.html or "create_box"_create_box.html command.
 
 The {angle}, {bond}, {full}, and {molecular} styles are part of the
-MOLECULAR package.  The {dipole} style is part of the "dipole"
+MOLECULAR package.  The {line}, {tri}, and {body} styles are part of
+the ASPHERE pacakge.  The {dipole} style is part of the DIPOLE
 package.  The {peri} style is part of the PERI package for
 Peridynamics.  The {electron} style is part of the USER-EFF package
 for "electronic force fields"_pair_eff.html.  The {meso} style is part
 of the USER-SPH package for smoothed particle hydrodyanmics (SPH).
 See "this PDF guide"_USER/sph/SPH_LAMMPS_userguide.pdf to using SPH in
 LAMMPS.  The {wavepacket} style is part of the USER-AWPMD package for
 the "antisymmetrized wave packet MD method"_pair_awpmd.html.  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:]
 
 "read_data"_read_data.html, "pair_style"_pair_style.html
 
 [Default:]
 
 atom_style atomic
diff --git a/doc/compute.html b/doc/compute.html
index c25364fa3..a7272cdfb 100644
--- a/doc/compute.html
+++ b/doc/compute.html
@@ -1,242 +1,243 @@
 <HTML>
 <CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A> 
 </CENTER>
 
 
 
 
 
 
 <HR>
 
 <H3>compute command 
 </H3>
 <P><B>Syntax:</B>
 </P>
 <PRE>compute ID group-ID style args 
 </PRE>
 <UL><LI>ID = user-assigned name for the computation
 <LI>group-ID = ID of the group of atoms to perform the computation on
 <LI>style = one of a list of possible style names (see below)
 <LI>args = arguments used by a particular style 
 </UL>
 <P><B>Examples:</B>
 </P>
 <PRE>compute 1 all temp
 compute newtemp flow temp/partial 1 1 0
 compute 3 all ke/atom 
 </PRE>
 <P><B>Description:</B>
 </P>
 <P>Define a computation that will be performed on a group of atoms.
 Quantities calculated by a compute are instantaneous values, meaning
 they are calculated from information about atoms on the current
 timestep or iteration, though a compute may internally store some
 information about a previous state of the system.  Defining a compute
 does not perform a computation.  Instead computes are invoked by other
 LAMMPS commands as needed, e.g. to calculate a temperature needed for
 a thermostat fix or to generate thermodynamic or dump file output.
 See this <A HREF = "Section_howto.html#howto_15">howto section</A> for a summary of
 various LAMMPS output options, many of which involve computes.
 </P>
 <P>The ID of a compute can only contain alphanumeric characters and
 underscores.
 </P>
 <HR>
 
 <P>Computes calculate one of three styles of quantities: global,
 per-atom, or local.  A global quantity is one or more system-wide
 values, e.g. the temperature of the system.  A per-atom quantity is
 one or more values per atom, e.g. the kinetic energy of each atom.
 Per-atom values are set to 0.0 for atoms not in the specified compute
 group.  Local quantities are calculated by each processor based on the
 atoms it owns, but there may be zero or more per atom, e.g. a list of
 bond distances.  Computes that produce per-atom quantities have the
 word "atom" in their style, e.g. <I>ke/atom</I>.  Computes that produce
 local quantities have the word "local" in their style,
 e.g. <I>bond/local</I>.  Styles with neither "atom" or "local" in their
 style produce global quantities.
 </P>
 <P>Note that a single compute produces either global or per-atom or local
 quantities, but never more than one of these.
 </P>
 <P>Global, per-atom, and local quantities each come in three kinds: a
 single scalar value, a vector of values, or a 2d array of values.  The
 doc page for each compute describes the style and kind of values it
 produces, e.g. a per-atom vector.  Some computes produce more than one
 kind of a single style, e.g. a global scalar and a global vector.
 </P>
 <P>When a compute quantity is accessed, as in many of the output commands
 discussed below, it can be referenced via the following bracket
 notation, where ID is the ID of the compute:
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR><TD >c_ID </TD><TD > entire scalar, vector, or array</TD></TR>
 <TR><TD >c_ID[I] </TD><TD > one element of vector, one column of array</TD></TR>
 <TR><TD >c_ID[I][J] </TD><TD > one element of array 
 </TD></TR></TABLE></DIV>
 
 <P>In other words, using one bracket reduces the dimension of the
 quantity once (vector -> scalar, array -> vector).  Using two brackets
 reduces the dimension twice (array -> scalar).  Thus a command that
 uses scalar compute values as input can also process elements of a
 vector or array.
 </P>
 <P>Note that commands and <A HREF = "variable.html">variables</A> which use compute
 quantities typically do not allow for all kinds, e.g. a command may
 require a vector of values, not a scalar.  This means there is no
 ambiguity about referring to a compute quantity as c_ID even if it
 produces, for example, both a scalar and vector.  The doc pages for
 various commands explain the details.
 </P>
 <HR>
 
 <P>In LAMMPS, the values generated by a compute can be used in several
 ways:
 </P>
 <UL><LI>The results of computes that calculate a global temperature or
 pressure can be used by fixes that do thermostatting or barostatting
 or when atom velocities are created. 
 
 <LI>Global values can be output via the <A HREF = "thermo_style.html">thermo_style
 custom</A> or <A HREF = "fix_ave_time.html">fix ave/time</A> command.
 Or the values can be referenced in a <A HREF = "variable.html">variable equal</A> or
 <A HREF = "variable.html">variable atom</A> command. 
 
 <LI>Per-atom values can be output via the <A HREF = "dump.html">dump custom</A> command
 or the <A HREF = "fix_ave_spatial.html">fix ave/spatial</A> command.  Or they can be
 time-averaged via the <A HREF = "fix_ave_atom.html">fix ave/atom</A> command or
 reduced by the <A HREF = "compute_reduce.html">compute reduce</A> command.  Or the
 per-atom values can be referenced in an <A HREF = "variable.html">atom-style
 variable</A>. 
 
 <LI>Local values can be reduced by the <A HREF = "compute_reduce.html">compute
 reduce</A> command, or histogrammed by the <A HREF = "fix_ave_histo.html">fix
 ave/histo</A> command, or output by the <A HREF = "dump.html">dump
 local</A> command. 
 </UL>
 <P>The results of computes that calculate global quantities can be either
 "intensive" or "extensive" values.  Intensive means the value is
 independent of the number of atoms in the simulation,
 e.g. temperature.  Extensive means the value scales with the number of
 atoms in the simulation, e.g. total rotational kinetic energy.
 <A HREF = "thermo_style.html">Thermodynamic output</A> will normalize extensive
 values by the number of atoms in the system, depending on the
 "thermo_modify norm" setting.  It will not normalize intensive values.
 If a compute value is accessed in another way, e.g. by a
 <A HREF = "variable.html">variable</A>, you may want to know whether it is an
 intensive or extensive value.  See the doc page for individual
 computes for further info.
 </P>
 <HR>
 
 <P>LAMMPS creates its own computes internally for thermodynamic output.
 Three computes are always created, named "thermo_temp",
 "thermo_press", and "thermo_pe", as if these commands had been invoked
 in the input script:
 </P>
 <PRE>compute thermo_temp all temp
 compute thermo_press all pressure thermo_temp
 compute thermo_pe all pe 
 </PRE>
 <P>Additional computes for other quantities are created if the thermo
 style requires it.  See the documentation for the
 <A HREF = "thermo_style.html">thermo_style</A> command.
 </P>
 <P>Fixes that calculate temperature or pressure, i.e. for thermostatting
 or barostatting, may also create computes.  These are discussed in the
 documentation for specific <A HREF = "fix.html">fix</A> commands.
 </P>
 <P>In all these cases, the default computes LAMMPS creates can be
 replaced by computes defined by the user in the input script, as
 described by the <A HREF = "thermo_modify.html">thermo_modify</A> and <A HREF = "fix_modify.html">fix
 modify</A> commands.
 </P>
 <P>Properties of either a default or user-defined compute can be modified
 via the <A HREF = "compute_modify.html">compute_modify</A> command.
 </P>
 <P>Computes can be deleted with the <A HREF = "uncompute.html">uncompute</A> command.
 </P>
 <P>Code for new computes can be added to LAMMPS (see <A HREF = "Section_modify.html">this
 section</A> of the manual) and the results of their
 calculations accessed in the various ways described above.
 </P>
 <HR>
 
 <P>Each compute style has its own doc page which describes its arguments
 and what it does.  Here is an alphabetic list of compute styles
 available in LAMMPS:
 </P>
 <UL><LI><A HREF = "compute_bond_local.html">angle/local</A> - theta and energy of each angle
 <LI><A HREF = "compute_atom_molecule.html">atom/molecule</A> - sum per-atom properties for each molecule
+<LI><A HREF = "compute_body_local.html">body/local</A> - attributes of body sub-particles
 <LI><A HREF = "compute_bond_local.html">bond/local</A> - distance and energy of each bond
 <LI><A HREF = "compute_centro_atom.html">centro/atom</A> - centro-symmetry parameter for each atom
 <LI><A HREF = "compute_cluster_atom.html">cluster/atom</A> - cluster ID for each atom
 <LI><A HREF = "compute_cna_atom.html">cna/atom</A> - common neighbor analysis (CNA) for each atom
 <LI><A HREF = "compute_com.html">com</A> - center-of-mass of group of atoms
 <LI><A HREF = "compute_com_molecule.html">com/molecule</A> - center-of-mass for each molecule
 <LI><A HREF = "compute_contact_atom.html">contact/atom</A> - contact count for each spherical particle
 <LI><A HREF = "compute_coord_atom.html">coord/atom</A> - coordination number for each atom
 <LI><A HREF = "compute_damage_atom.html">damage/atom</A> - Peridynamic damage for each atom
 <LI><A HREF = "compute_dihedral_local.html">dihedral/local</A> - angle of each dihedral
 <LI><A HREF = "compute_displace_atom.html">displace/atom</A> - displacement of each atom
 <LI><A HREF = "compute_erotate_asphere.html">erotate/asphere</A> - rotational energy of aspherical particles
 <LI><A HREF = "compute_erotate_sphere.html">erotate/sphere</A> - rotational energy of spherical particles
 <LI><A HREF = "compute_erotate_sphere.html">erotate/sphere/atom</A> - rotational energy for each spherical particle
 <LI><A HREF = "compute_event_displace.html">event/displace</A> - detect event on atom displacement
 <LI><A HREF = "compute_group_group.html">group/group</A> - energy/force between two groups of atoms
 <LI><A HREF = "compute_gyration.html">gyration</A> - radius of gyration of group of atoms
 <LI><A HREF = "compute_gyration_molecule.html">gyration/molecule</A> - radius of gyration for each molecule
 <LI><A HREF = "compute_heat_flux.html">heat/flux</A> - heat flux through a group of atoms
 <LI><A HREF = "compute_improper_local.html">improper/local</A> - angle of each improper
 <LI><A HREF = "compute_inertia_molecule.html">inertia/molecule</A> - inertia tensor for each molecule
 <LI><A HREF = "compute_ke.html">ke</A> - translational kinetic energy
 <LI><A HREF = "compute_ke_atom.html">ke/atom</A> - kinetic energy for each atom
 <LI><A HREF = "compute_msd.html">msd</A> - mean-squared displacement of group of atoms
 <LI><A HREF = "compute_msd_molecule.html">msd/molecule</A> - mean-squared displacement for each molecule
 <LI><A HREF = "compute_pair.html">pair</A> - values computed by a pair style
 <LI><A HREF = "compute_pair_local.html">pair/local</A> - distance/energy/force of each pairwise interaction
 <LI><A HREF = "compute_pe.html">pe</A> - potential energy
 <LI><A HREF = "compute_pe_atom.html">pe/atom</A> - potential energy for each atom
 <LI><A HREF = "compute_pressure.html">pressure</A> - total pressure and pressure tensor
 <LI><A HREF = "compute_property_atom.html">property/atom</A> - convert atom attributes to per-atom vectors/arrays
 <LI><A HREF = "compute_property_local.html">property/local</A> - convert local attributes to localvectors/arrays
 <LI><A HREF = "compute_property_molecule.html">property/molecule</A> - convert molecule attributes to localvectors/arrays
 <LI><A HREF = "compute_rdf.html">rdf</A> - radial distribution function g(r) histogram of group of atoms
 <LI><A HREF = "compute_reduce.html">reduce</A> - combine per-atom quantities into a single global value
 <LI><A HREF = "compute_reduce.html">reduce/region</A> - same as compute reduce, within a region
 <LI><A HREF = "compute_slice.html">slice</A> - extract values from global vector or array
 <LI><A HREF = "compute_stress_atom.html">stress/atom</A> - stress tensor for each atom
 <LI><A HREF = "compute_temp.html">temp</A> - temperature of group of atoms
 <LI><A HREF = "compute_temp_asphere.html">temp/asphere</A> - temperature of aspherical particles
 <LI><A HREF = "compute_temp_com.html">temp/com</A> - temperature after subtracting center-of-mass velocity
 <LI><A HREF = "compute_temp_deform.html">temp/deform</A> - temperature excluding box deformation velocity
 <LI><A HREF = "compute_temp_partial.html">temp/partial</A> - temperature excluding one or more dimensions of velocity
 <LI><A HREF = "compute_temp_profile.html">temp/profile</A> - temperature excluding a binned velocity profile
 <LI><A HREF = "compute_temp_ramp.html">temp/ramp</A> - temperature excluding ramped velocity component
 <LI><A HREF = "compute_temp_region.html">temp/region</A> - temperature of a region of atoms
 <LI><A HREF = "compute_temp_sphere.html">temp/sphere</A> - temperature of spherical particles
 <LI><A HREF = "compute_ti.html">ti</A> - thermodyanmic integration free energy values
 <LI><A HREF = "compute_voronoi_atom.html">voronoi/atom</A> - Voronoi volume and neighbors for each atom 
 </UL>
 <P>There are also additional compute styles submitted by users which are
 included in the LAMMPS distribution.  The list of these with links to
 the individual styles are given in the compute section of <A HREF = "Section_commands.html#cmd_5">this
 page</A>.
 </P>
 <P>There are also additional accelerated compute styles included in the
 LAMMPS distribution for faster performance on CPUs and GPUs.  The list
 of these with links to the individual styles are given in the pair
 section of <A HREF = "Section_commands.html#cmd_5">this page</A>.
 </P>
 <P><B>Restrictions:</B> none
 </P>
 <P><B>Related commands:</B>
 </P>
 <P><A HREF = "uncompute.html">uncompute</A>, <A HREF = "compute_modify.html">compute_modify</A>, <A HREF = "fix_ave_atom.html">fix
 ave/atom</A>, <A HREF = "fix_ave_spatial.html">fix ave/spatial</A>,
 <A HREF = "fix_ave_time.html">fix ave/time</A>, <A HREF = "fix_ave_histo.html">fix ave/histo</A>
 </P>
 <P><B>Default:</B> none
 </P>
 </HTML>
diff --git a/doc/compute.txt b/doc/compute.txt
index 362165468..cc64d107c 100644
--- a/doc/compute.txt
+++ b/doc/compute.txt
@@ -1,235 +1,236 @@
 "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
 
 compute command :h3
 
 [Syntax:]
 
 compute ID group-ID style args :pre
 
 ID = user-assigned name for the computation
 group-ID = ID of the group of atoms to perform the computation on
 style = one of a list of possible style names (see below)
 args = arguments used by a particular style :ul
 
 [Examples:]
 
 compute 1 all temp
 compute newtemp flow temp/partial 1 1 0
 compute 3 all ke/atom :pre
 
 [Description:]
 
 Define a computation that will be performed on a group of atoms.
 Quantities calculated by a compute are instantaneous values, meaning
 they are calculated from information about atoms on the current
 timestep or iteration, though a compute may internally store some
 information about a previous state of the system.  Defining a compute
 does not perform a computation.  Instead computes are invoked by other
 LAMMPS commands as needed, e.g. to calculate a temperature needed for
 a thermostat fix or to generate thermodynamic or dump file output.
 See this "howto section"_Section_howto.html#howto_15 for a summary of
 various LAMMPS output options, many of which involve computes.
 
 The ID of a compute can only contain alphanumeric characters and
 underscores.
 
 :line
 
 Computes calculate one of three styles of quantities: global,
 per-atom, or local.  A global quantity is one or more system-wide
 values, e.g. the temperature of the system.  A per-atom quantity is
 one or more values per atom, e.g. the kinetic energy of each atom.
 Per-atom values are set to 0.0 for atoms not in the specified compute
 group.  Local quantities are calculated by each processor based on the
 atoms it owns, but there may be zero or more per atom, e.g. a list of
 bond distances.  Computes that produce per-atom quantities have the
 word "atom" in their style, e.g. {ke/atom}.  Computes that produce
 local quantities have the word "local" in their style,
 e.g. {bond/local}.  Styles with neither "atom" or "local" in their
 style produce global quantities.
 
 Note that a single compute produces either global or per-atom or local
 quantities, but never more than one of these.
 
 Global, per-atom, and local quantities each come in three kinds: a
 single scalar value, a vector of values, or a 2d array of values.  The
 doc page for each compute describes the style and kind of values it
 produces, e.g. a per-atom vector.  Some computes produce more than one
 kind of a single style, e.g. a global scalar and a global vector.
 
 When a compute quantity is accessed, as in many of the output commands
 discussed below, it can be referenced via the following bracket
 notation, where ID is the ID of the compute:
 
 c_ID | entire scalar, vector, or array
 c_ID\[I\] | one element of vector, one column of array
 c_ID\[I\]\[J\] | one element of array :tb(s=|)
 
 In other words, using one bracket reduces the dimension of the
 quantity once (vector -> scalar, array -> vector).  Using two brackets
 reduces the dimension twice (array -> scalar).  Thus a command that
 uses scalar compute values as input can also process elements of a
 vector or array.
 
 Note that commands and "variables"_variable.html which use compute
 quantities typically do not allow for all kinds, e.g. a command may
 require a vector of values, not a scalar.  This means there is no
 ambiguity about referring to a compute quantity as c_ID even if it
 produces, for example, both a scalar and vector.  The doc pages for
 various commands explain the details.
 
 :line
 
 In LAMMPS, the values generated by a compute can be used in several
 ways:
 
 The results of computes that calculate a global temperature or
 pressure can be used by fixes that do thermostatting or barostatting
 or when atom velocities are created. :ulb,l
 
 Global values can be output via the "thermo_style
 custom"_thermo_style.html or "fix ave/time"_fix_ave_time.html command.
 Or the values can be referenced in a "variable equal"_variable.html or
 "variable atom"_variable.html command. :l
 
 Per-atom values can be output via the "dump custom"_dump.html command
 or the "fix ave/spatial"_fix_ave_spatial.html command.  Or they can be
 time-averaged via the "fix ave/atom"_fix_ave_atom.html command or
 reduced by the "compute reduce"_compute_reduce.html command.  Or the
 per-atom values can be referenced in an "atom-style
 variable"_variable.html. :l
 
 Local values can be reduced by the "compute
 reduce"_compute_reduce.html command, or histogrammed by the "fix
 ave/histo"_fix_ave_histo.html command, or output by the "dump
 local"_dump.html command. :l,ule
 
 The results of computes that calculate global quantities can be either
 "intensive" or "extensive" values.  Intensive means the value is
 independent of the number of atoms in the simulation,
 e.g. temperature.  Extensive means the value scales with the number of
 atoms in the simulation, e.g. total rotational kinetic energy.
 "Thermodynamic output"_thermo_style.html will normalize extensive
 values by the number of atoms in the system, depending on the
 "thermo_modify norm" setting.  It will not normalize intensive values.
 If a compute value is accessed in another way, e.g. by a
 "variable"_variable.html, you may want to know whether it is an
 intensive or extensive value.  See the doc page for individual
 computes for further info.
 
 :line
 
 LAMMPS creates its own computes internally for thermodynamic output.
 Three computes are always created, named "thermo_temp",
 "thermo_press", and "thermo_pe", as if these commands had been invoked
 in the input script:
 
 compute thermo_temp all temp
 compute thermo_press all pressure thermo_temp
 compute thermo_pe all pe :pre
 
 Additional computes for other quantities are created if the thermo
 style requires it.  See the documentation for the
 "thermo_style"_thermo_style.html command.
 
 Fixes that calculate temperature or pressure, i.e. for thermostatting
 or barostatting, may also create computes.  These are discussed in the
 documentation for specific "fix"_fix.html commands.
 
 In all these cases, the default computes LAMMPS creates can be
 replaced by computes defined by the user in the input script, as
 described by the "thermo_modify"_thermo_modify.html and "fix
 modify"_fix_modify.html commands.
 
 Properties of either a default or user-defined compute can be modified
 via the "compute_modify"_compute_modify.html command.
 
 Computes can be deleted with the "uncompute"_uncompute.html command.
 
 Code for new computes can be added to LAMMPS (see "this
 section"_Section_modify.html of the manual) and the results of their
 calculations accessed in the various ways described above.
 
 :line
 
 Each compute style has its own doc page which describes its arguments
 and what it does.  Here is an alphabetic list of compute styles
 available in LAMMPS:
 
 "angle/local"_compute_bond_local.html - theta and energy of each angle
 "atom/molecule"_compute_atom_molecule.html - sum per-atom properties for each molecule
+"body/local"_compute_body_local.html - attributes of body sub-particles
 "bond/local"_compute_bond_local.html - distance and energy of each bond
 "centro/atom"_compute_centro_atom.html - centro-symmetry parameter for each atom
 "cluster/atom"_compute_cluster_atom.html - cluster ID for each atom
 "cna/atom"_compute_cna_atom.html - common neighbor analysis (CNA) for each atom
 "com"_compute_com.html - center-of-mass of group of atoms
 "com/molecule"_compute_com_molecule.html - center-of-mass for each molecule
 "contact/atom"_compute_contact_atom.html - contact count for each spherical particle
 "coord/atom"_compute_coord_atom.html - coordination number for each atom
 "damage/atom"_compute_damage_atom.html - Peridynamic damage for each atom
 "dihedral/local"_compute_dihedral_local.html - angle of each dihedral
 "displace/atom"_compute_displace_atom.html - displacement of each atom
 "erotate/asphere"_compute_erotate_asphere.html - rotational energy of aspherical particles
 "erotate/sphere"_compute_erotate_sphere.html - rotational energy of spherical particles
 "erotate/sphere/atom"_compute_erotate_sphere.html - rotational energy for each spherical particle
 "event/displace"_compute_event_displace.html - detect event on atom displacement
 "group/group"_compute_group_group.html - energy/force between two groups of atoms
 "gyration"_compute_gyration.html - radius of gyration of group of atoms
 "gyration/molecule"_compute_gyration_molecule.html - radius of gyration for each molecule
 "heat/flux"_compute_heat_flux.html - heat flux through a group of atoms
 "improper/local"_compute_improper_local.html - angle of each improper
 "inertia/molecule"_compute_inertia_molecule.html - inertia tensor for each molecule
 "ke"_compute_ke.html - translational kinetic energy
 "ke/atom"_compute_ke_atom.html - kinetic energy for each atom
 "msd"_compute_msd.html - mean-squared displacement of group of atoms
 "msd/molecule"_compute_msd_molecule.html - mean-squared displacement for each molecule
 "pair"_compute_pair.html - values computed by a pair style
 "pair/local"_compute_pair_local.html - distance/energy/force of each pairwise interaction
 "pe"_compute_pe.html - potential energy
 "pe/atom"_compute_pe_atom.html - potential energy for each atom
 "pressure"_compute_pressure.html - total pressure and pressure tensor
 "property/atom"_compute_property_atom.html - convert atom attributes to per-atom vectors/arrays
 "property/local"_compute_property_local.html - convert local attributes to localvectors/arrays
 "property/molecule"_compute_property_molecule.html - convert molecule attributes to localvectors/arrays
 "rdf"_compute_rdf.html - radial distribution function g(r) histogram of group of atoms
 "reduce"_compute_reduce.html - combine per-atom quantities into a single global value
 "reduce/region"_compute_reduce.html - same as compute reduce, within a region
 "slice"_compute_slice.html - extract values from global vector or array
 "stress/atom"_compute_stress_atom.html - stress tensor for each atom
 "temp"_compute_temp.html - temperature of group of atoms
 "temp/asphere"_compute_temp_asphere.html - temperature of aspherical particles
 "temp/com"_compute_temp_com.html - temperature after subtracting center-of-mass velocity
 "temp/deform"_compute_temp_deform.html - temperature excluding box deformation velocity
 "temp/partial"_compute_temp_partial.html - temperature excluding one or more dimensions of velocity
 "temp/profile"_compute_temp_profile.html - temperature excluding a binned velocity profile
 "temp/ramp"_compute_temp_ramp.html - temperature excluding ramped velocity component
 "temp/region"_compute_temp_region.html - temperature of a region of atoms
 "temp/sphere"_compute_temp_sphere.html - temperature of spherical particles
 "ti"_compute_ti.html - thermodyanmic integration free energy values
 "voronoi/atom"_compute_voronoi_atom.html - Voronoi volume and neighbors for each atom :ul
 
 There are also additional compute styles submitted by users which are
 included in the LAMMPS distribution.  The list of these with links to
 the individual styles are given in the compute section of "this
 page"_Section_commands.html#cmd_5.
 
 There are also additional accelerated compute styles included in the
 LAMMPS distribution for faster performance on CPUs and GPUs.  The list
 of these with links to the individual styles are given in the pair
 section of "this page"_Section_commands.html#cmd_5.
 
 [Restrictions:] none
 
 [Related commands:]
 
 "uncompute"_uncompute.html, "compute_modify"_compute_modify.html, "fix
 ave/atom"_fix_ave_atom.html, "fix ave/spatial"_fix_ave_spatial.html,
 "fix ave/time"_fix_ave_time.html, "fix ave/histo"_fix_ave_histo.html
 
 [Default:] none
diff --git a/doc/fix.html b/doc/fix.html
index 183370606..a621c3eb2 100644
--- a/doc/fix.html
+++ b/doc/fix.html
@@ -1,274 +1,275 @@
 <HTML>
 <CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A> 
 </CENTER>
 
 
 
 
 
 
 <HR>
 
 <H3>fix command 
 </H3>
 <P><B>Syntax:</B>
 </P>
 <PRE>fix ID group-ID style args 
 </PRE>
 <UL><LI>ID = user-assigned name for the fix
 <LI>group-ID = ID of the group of atoms to apply the fix to
 <LI>style = one of a long list of possible style names (see below)
 <LI>args = arguments used by a particular style 
 </UL>
 <P><B>Examples:</B>
 </P>
 <PRE>fix 1 all nve
 fix 3 all nvt temp 300.0 300.0 0.01
 fix mine top setforce 0.0 NULL 0.0 
 </PRE>
 <P><B>Description:</B>
 </P>
 <P>Set a fix that will be applied to a group of atoms.  In LAMMPS, a
 "fix" is any operation that is applied to the system during
 timestepping or minimization.  Examples include updating of atom
 positions and velocities due to time integration, controlling
 temperature, applying constraint forces to atoms, enforcing boundary
 conditions, computing diagnostics, etc.  There are dozens of fixes
 defined in LAMMPS and new ones can be added; see <A HREF = "Section_modify.html">this
 section</A> for a discussion.
 </P>
 <P>Fixes perform their operations at different stages of the timestep.
 If 2 or more fixes operate at the same stage of the timestep, they are
 invoked in the order they were specified in the input script.
 </P>
 <P>The ID of a fix can only contain alphanumeric characters and
 underscores.
 </P>
 <P>Fixes can be deleted with the <A HREF = "unfix.html">unfix</A> command.
 </P>
 <P>IMPORTANT NOTE: The <A HREF = "unfix.html">unfix</A> command is the only way to turn
 off a fix; simply specifying a new fix with a similar style will not
 turn off the first one.  This is especially important to realize for
 integration fixes.  For example, using a <A HREF = "fix_nve.html">fix nve</A>
 command for a second run after using a <A HREF = "fix_nh.html">fix nvt</A> command
 for the first run, will not cancel out the NVT time integration
 invoked by the "fix nvt" command.  Thus two time integrators would be
 in place!
 </P>
 <P>If you specify a new fix with the same ID and style as an existing
 fix, the old fix is deleted and the new one is created (presumably
 with new settings).  This is the same as if an "unfix" command were
 first performed on the old fix, except that the new fix is kept in the
 same order relative to the existing fixes as the old one originally
 was.  Note that this operation also wipes out any additional changes
 made to the old fix via the <A HREF = "fix_modify.html">fix_modify</A> command.
 </P>
 <P>The <A HREF = "fix_modify.html">fix modify</A> command allows settings for some
 fixes to be reset.  See the doc page for individual fixes for details.
 </P>
 <P>Some fixes store an internal "state" which is written to binary
 restart files via the <A HREF = "restart.html">restart</A> or
 <A HREF = "write_restart.html">write_restart</A> commands.  This allows the fix to
 continue on with its calculations in a restarted simulation.  See the
 <A HREF = "read_restart.html">read_restart</A> command for info on how to re-specify
 a fix in an input script that reads a restart file.  See the doc pages
 for individual fixes for info on which ones can be restarted.
 </P>
 <HR>
 
 <P>Some fixes calculate one of three styles of quantities: global,
 per-atom, or local, which can be used by other commands or output as
 described below.  A global quantity is one or more system-wide values,
 e.g. the energy of a wall interacting with particles.  A per-atom
 quantity is one or more values per atom, e.g. the displacement vector
 for each atom since time 0.  Per-atom values are set to 0.0 for atoms
 not in the specified fix group.  Local quantities are calculated by
 each processor based on the atoms it owns, but there may be zero or
 more per atoms.
 </P>
 <P>Note that a single fix may produces either global or per-atom or local
 quantities (or none at all), but never more than one of these.
 </P>
 <P>Global, per-atom, and local quantities each come in three kinds: a
 single scalar value, a vector of values, or a 2d array of values.  The
 doc page for each fix describes the style and kind of values it
 produces, e.g. a per-atom vector.  Some fixes produce more than one
 kind of a single style, e.g. a global scalar and a global vector.
 </P>
 <P>When a fix quantity is accessed, as in many of the output commands
 discussed below, it can be referenced via the following bracket
 notation, where ID is the ID of the fix:
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR><TD >f_ID </TD><TD > entire scalar, vector, or array</TD></TR>
 <TR><TD >f_ID[I] </TD><TD > one element of vector, one column of array</TD></TR>
 <TR><TD >f_ID[I][J] </TD><TD > one element of array 
 </TD></TR></TABLE></DIV>
 
 <P>In other words, using one bracket reduces the dimension of the
 quantity once (vector -> scalar, array -> vector).  Using two brackets
 reduces the dimension twice (array -> scalar).  Thus a command that
 uses scalar fix values as input can also process elements of a vector
 or array.
 </P>
 <P>Note that commands and <A HREF = "variable.html">variables</A> which use fix
 quantities typically do not allow for all kinds, e.g. a command may
 require a vector of values, not a scalar.  This means there is no
 ambiguity about referring to a fix quantity as f_ID even if it
 produces, for example, both a scalar and vector.  The doc pages for
 various commands explain the details.
 </P>
 <HR>
 
 <P>In LAMMPS, the values generated by a fix can be used in several ways:
 </P>
 <UL><LI>Global values can be output via the <A HREF = "thermo_style.html">thermo_style
 custom</A> or <A HREF = "fix_ave_time.html">fix ave/time</A> command.
 Or the values can be referenced in a <A HREF = "variable.html">variable equal</A> or
 <A HREF = "variable.html">variable atom</A> command. 
 
 <LI>Per-atom values can be output via the <A HREF = "dump.html">dump custom</A> command
 or the <A HREF = "fix_ave_spatial.html">fix ave/spatial</A> command.  Or they can be
 time-averaged via the <A HREF = "fix_ave_atom.html">fix ave/atom</A> command or
 reduced by the <A HREF = "compute_reduce.html">compute reduce</A> command.  Or the
 per-atom values can be referenced in an <A HREF = "variable.html">atom-style
 variable</A>. 
 
 <LI>Local values can be reduced by the <A HREF = "compute_reduce.html">compute
 reduce</A> command, or histogrammed by the <A HREF = "fix_ave_histo.html">fix
 ave/histo</A> command. 
 </UL>
 <P>See this <A HREF = "Section_howto.html#howto_15">howto section</A> for a summary of
 various LAMMPS output options, many of which involve fixes.
 </P>
 <P>The results of fixes that calculate global quantities can be either
 "intensive" or "extensive" values.  Intensive means the value is
 independent of the number of atoms in the simulation,
 e.g. temperature.  Extensive means the value scales with the number of
 atoms in the simulation, e.g. total rotational kinetic energy.
 <A HREF = "thermo_style.html">Thermodynamic output</A> will normalize extensive
 values by the number of atoms in the system, depending on the
 "thermo_modify norm" setting.  It will not normalize intensive values.
 If a fix value is accessed in another way, e.g. by a
 <A HREF = "variable.html">variable</A>, you may want to know whether it is an
 intensive or extensive value.  See the doc page for individual fixes
 for further info.
 </P>
 <HR>
 
 <P>Each fix style has its own documentation page which describes its
 arguments and what it does, as listed below.  Here is an alphabetic
 list of fix styles available in LAMMPS:
 </P>
 <UL><LI><A HREF = "fix_adapt.html">adapt</A> - change a simulation parameter over time
 <LI><A HREF = "fix_addforce.html">addforce</A> - add a force to each atom
 <LI><A HREF = "fix_append_atoms.html">append/atoms</A> - append atoms to a running simulation
 <LI><A HREF = "fix_aveforce.html">aveforce</A> - add an averaged force to each atom
 <LI><A HREF = "fix_ave_atom.html">ave/atom</A> - compute per-atom time-averaged quantities
 <LI><A HREF = "fix_ave_histo.html">ave/histo</A> - compute/output time-averaged histograms
 <LI><A HREF = "fix_ave_spatial.html">ave/spatial</A> - compute/output time-averaged per-atom quantities by layer
 <LI><A HREF = "fix_ave_time.html">ave/time</A> - compute/output global time-averaged quantities
 <LI><A HREF = "fix_bond_break.html">bond/break</A> - break bonds on the fly
 <LI><A HREF = "fix_bond_create.html">bond/create</A> - create bonds on the fly
 <LI><A HREF = "fix_bond_swap.html">bond/swap</A> - Monte Carlo bond swapping
 <LI><A HREF = "fix_box_relax.html">box/relax</A> - relax box size during energy minimization
 <LI><A HREF = "fix_deform.html">deform</A> - change the simulation box size/shape
 <LI><A HREF = "fix_deposit.html">deposit</A> - add new atoms above a surface
 <LI><A HREF = "fix_drag.html">drag</A> - drag atoms towards a defined coordinate
 <LI><A HREF = "fix_dt_reset.html">dt/reset</A> - reset the timestep based on velocity, forces
 <LI><A HREF = "fix_efield.html">efield</A> - impose electric field on system
 <LI><A HREF = "fix_enforce2d.html">enforce2d</A> - zero out z-dimension velocity and force
 <LI><A HREF = "fix_evaporate.html">evaporate</A> - remove atoms from simulation periodically
 <LI><A HREF = "fix_external.html">external</A> - callback to an external driver program
 <LI><A HREF = "fix_freeze.html">freeze</A> - freeze atoms in a granular simulation
 <LI><A HREF = "fix_gravity.html">gravity</A> - add gravity to atoms in a granular simulation
 <LI><A HREF = "fix_gcmc.html">gcmc</A> - grand canonical insertions/deletions
 <LI><A HREF = "fix_heat.html">heat</A> - add/subtract momentum-conserving heat
 <LI><A HREF = "fix_indent.html">indent</A> - impose force due to an indenter
 <LI><A HREF = "fix_langevin.html">langevin</A> - Langevin temperature control
 <LI><A HREF = "fix_lineforce.html">lineforce</A> - constrain atoms to move in a line
 <LI><A HREF = "fix_momentum.html">momentum</A> - zero the linear and/or angular momentum of a group of atoms
 <LI><A HREF = "fix_move.html">move</A> - move atoms in a prescribed fashion
 <LI><A HREF = "fix_msst.html">msst</A> - multi-scale shock technique (MSST) integration
 <LI><A HREF = "fix_neb.html">neb</A> - nudged elastic band (NEB) spring forces
 <LI><A HREF = "fix_nh.html">nph</A> - constant NPH time integration via Nose/Hoover
 <LI><A HREF = "fix_nph_asphere.html">nph/asphere</A> - NPH for aspherical particles
 <LI><A HREF = "fix_nph_sphere.html">nph/sphere</A> - NPH for spherical particles
 <LI><A HREF = "fix_nphug.html">nphug</A> - constant-stress Hugoniostat integration
 <LI><A HREF = "fix_nh.html">npt</A> - constant NPT time integration via Nose/Hoover
 <LI><A HREF = "fix_npt_asphere.html">npt/asphere</A> - NPT for aspherical particles
 <LI><A HREF = "fix_npt_sphere.html">npt/sphere</A> - NPT for spherical particles
 <LI><A HREF = "fix_nve.html">nve</A> - constant NVE time integration
 <LI><A HREF = "fix_nve_asphere.html">nve/asphere</A> - NVE for aspherical particles
-<LI><A HREF = "fix_nve_asphere_noforce.html">nve/asphere/noforce</A> - NVE for aspherical particles without forces<A HREF = "fix_nve_limit.html">
-<LI>nve/limit</A> - NVE with limited step length
+<LI><A HREF = "fix_nve_asphere_noforce.html">nve/asphere/noforce</A> - NVE for aspherical particles without forces"
+<LI><A HREF = "fix_nve_body.html">nve/body</A> - NVE for body particles
+<LI><A HREF = "fix_nve_limit.html">nve/limit</A> - NVE with limited step length
 <LI><A HREF = "fix_nve_line.html">nve/line</A> - NVE for line segments
 <LI><A HREF = "fix_nve_noforce.html">nve/noforce</A> - NVE without forces (v only)
 <LI><A HREF = "fix_nve_sphere.html">nve/sphere</A> - NVE for spherical particles
 <LI><A HREF = "fix_nve_tri.html">nve/tri</A> - NVE for triangles
 <LI><A HREF = "fix_nh.html">nvt</A> - constant NVT time integration via Nose/Hoover
 <LI><A HREF = "fix_nvt_asphere.html">nvt/asphere</A> - NVT for aspherical particles
 <LI><A HREF = "fix_nvt_sllod.html">nvt/sllod</A> - NVT for NEMD with SLLOD equations
 <LI><A HREF = "fix_nvt_sphere.html">nvt/sphere</A> - NVT for spherical particles
 <LI><A HREF = "fix_orient_fcc.html">orient/fcc</A> - add grain boundary migration force
 <LI><A HREF = "fix_planeforce.html">planeforce</A> - constrain atoms to move in a plane
 <LI><A HREF = "fix_poems.html">poems</A> - constrain clusters of atoms to move   as coupled rigid bodies
 <LI><A HREF = "fix_pour.html">pour</A> - pour new atoms into a granular simulation domain
 <LI><A HREF = "fix_press_berendsen.html">press/berendsen</A> - pressure control by      Berendsen barostat
 <LI><A HREF = "fix_print.html">print</A> - print text and variables during a simulation
 <LI><A HREF = "fix_reax_bonds.html">reax/bonds</A> - write out ReaxFF bond information <A HREF = "fix_recenter.html">recenter</A> - constrain the center-of-mass position   of a group of atoms
 <LI><A HREF = "fix_restrain.html">restrain</A> - constrain a bond, angle, dihedral
 <LI><A HREF = "fix_rigid.html">rigid</A> - constrain one or more clusters of atoms to      move as a rigid body with NVE integration
 <LI><A HREF = "fix_rigid.html">rigid/nph</A> - constrain one or more clusters of atoms to      move as a rigid body with NPH integration
 <LI><A HREF = "fix_rigid.html">rigid/npt</A> - constrain one or more clusters of atoms to      move as a rigid body with NPT integration
 <LI><A HREF = "fix_rigid.html">rigid/nve</A> - constrain one or more clusters of atoms to      move as a rigid body with alternate NVE integration
 <LI><A HREF = "fix_rigid.html">rigid/nvt</A> - constrain one or more clusters of atoms to      move as a rigid body with NVT integration
 <LI><A HREF = "fix_setforce.html">setforce</A> - set the force on each atom
 <LI><A HREF = "fix_shake.html">shake</A> - SHAKE constraints on bonds and/or angles
 <LI><A HREF = "fix_spring.html">spring</A> - apply harmonic spring force to group of atoms
 <LI><A HREF = "fix_spring_rg.html">spring/rg</A> - spring on radius of gyration of      group of atoms
 <LI><A HREF = "fix_spring_self.html">spring/self</A> - spring from each atom to its origin
 <LI><A HREF = "fix_srd.html">srd</A> - stochastic rotation dynamics (SRD)
 <LI><A HREF = "fix_store_force.html">store/force</A> - store force on each atom
 <LI><A HREF = "fix_store_state.html">store/state</A> - store attributes for each atom
 <LI><A HREF = "fix_temp_berendsen.html">temp/berendsen</A> - temperature control by      Berendsen thermostat
 <LI><A HREF = "fix_temp_rescale.html">temp/rescale</A> - temperature control by      velocity rescaling
 <LI><A HREF = "fix_thermal_conductivity.html">thermal/conductivity</A> - Muller-Plathe kinetic energy exchange for      thermal conductivity calculation
 <LI><A HREF = "fix_tmd.html">tmd</A> - guide a group of atoms to a new configuration
 <LI><A HREF = "fix_ttm.html">ttm</A> - two-temperature model for electronic/atomic coupling
 <LI><A HREF = "fix_viscosity.html">viscosity</A> - Muller-Plathe momentum exchange for      viscosity calculation
 <LI><A HREF = "fix_viscous.html">viscous</A> - viscous damping for granular simulations
 <LI><A HREF = "fix_wall.html">wall/colloid</A> - Lennard-Jones wall interacting with finite-size particles
 <LI><A HREF = "fix_wall_gran.html">wall/gran</A> - frictional wall(s) for granular simulations
 <LI><A HREF = "fix_wall.html">wall/harmonic</A> - harmonic spring wall
 <LI><A HREF = "fix_wall.html">wall/lj126</A> - Lennard-Jones 12-6 wall
 <LI><A HREF = "fix_wall.html">wall/lj93</A> - Lennard-Jones 9-3 wall
 <LI><A HREF = "fix_wall_piston.html">wall/piston</A> - moving reflective piston wall
 <LI><A HREF = "fix_wall_reflect.html">wall/reflect</A> - reflecting wall(s)
 <LI><A HREF = "fix_wall_region.html">wall/region</A> - use region surface as wall
 <LI><A HREF = "fix_wall_srd.html">wall/srd</A> - slip/no-slip wall for SRD particles 
 </UL>
 <P>There are also additional fix styles submitted by users which are
 included in the LAMMPS distribution.  The list of these with links to
 the individual styles are given in the fix section of <A HREF = "Section_commands.html#cmd_5">this
 page</A>.
 </P>
 <P>There are also additional accelerated fix styles included in the
 LAMMPS distribution for faster performance on CPUs and GPUs.  The list
 of these with links to the individual styles are given in the pair
 section of <A HREF = "Section_commands.html#cmd_5">this page</A>.
 </P>
 <P><B>Restrictions:</B>
 </P>
 <P>Some fix styles are part of specific packages.  They are only enabled
 if LAMMPS was built with that package.  See the <A HREF = "Section_start.html#start_3">Making
 LAMMPS</A> section for more info on packages.
 The doc pages for individual fixes tell if it is part of a package.
 </P>
 <P><B>Related commands:</B>
 </P>
 <P><A HREF = "unfix.html">unfix</A>, <A HREF = "fix_modify.html">fix_modify</A>
 </P>
 <P><B>Default:</B> none
 </P>
 </HTML>
diff --git a/doc/fix.txt b/doc/fix.txt
index de5e5e63c..a077122c7 100644
--- a/doc/fix.txt
+++ b/doc/fix.txt
@@ -1,281 +1,282 @@
 "LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
 
 :link(lws,http://lammps.sandia.gov)
 :link(ld,Manual.html)
 :link(lc,Section_commands.html#comm)
 
 :line
 
 fix command :h3
 
 [Syntax:]
 
 fix ID group-ID style args :pre
 
 ID = user-assigned name for the fix
 group-ID = ID of the group of atoms to apply the fix to
 style = one of a long list of possible style names (see below)
 args = arguments used by a particular style :ul
 
 [Examples:]
 
 fix 1 all nve
 fix 3 all nvt temp 300.0 300.0 0.01
 fix mine top setforce 0.0 NULL 0.0 :pre
 
 [Description:]
 
 Set a fix that will be applied to a group of atoms.  In LAMMPS, a
 "fix" is any operation that is applied to the system during
 timestepping or minimization.  Examples include updating of atom
 positions and velocities due to time integration, controlling
 temperature, applying constraint forces to atoms, enforcing boundary
 conditions, computing diagnostics, etc.  There are dozens of fixes
 defined in LAMMPS and new ones can be added; see "this
 section"_Section_modify.html for a discussion.
 
 Fixes perform their operations at different stages of the timestep.
 If 2 or more fixes operate at the same stage of the timestep, they are
 invoked in the order they were specified in the input script.
 
 The ID of a fix can only contain alphanumeric characters and
 underscores.
 
 Fixes can be deleted with the "unfix"_unfix.html command.
 
 IMPORTANT NOTE: The "unfix"_unfix.html command is the only way to turn
 off a fix; simply specifying a new fix with a similar style will not
 turn off the first one.  This is especially important to realize for
 integration fixes.  For example, using a "fix nve"_fix_nve.html
 command for a second run after using a "fix nvt"_fix_nh.html command
 for the first run, will not cancel out the NVT time integration
 invoked by the "fix nvt" command.  Thus two time integrators would be
 in place!
 
 If you specify a new fix with the same ID and style as an existing
 fix, the old fix is deleted and the new one is created (presumably
 with new settings).  This is the same as if an "unfix" command were
 first performed on the old fix, except that the new fix is kept in the
 same order relative to the existing fixes as the old one originally
 was.  Note that this operation also wipes out any additional changes
 made to the old fix via the "fix_modify"_fix_modify.html command.
 
 The "fix modify"_fix_modify.html command allows settings for some
 fixes to be reset.  See the doc page for individual fixes for details.
 
 Some fixes store an internal "state" which is written to binary
 restart files via the "restart"_restart.html or
 "write_restart"_write_restart.html commands.  This allows the fix to
 continue on with its calculations in a restarted simulation.  See the
 "read_restart"_read_restart.html command for info on how to re-specify
 a fix in an input script that reads a restart file.  See the doc pages
 for individual fixes for info on which ones can be restarted.
 
 :line
 
 Some fixes calculate one of three styles of quantities: global,
 per-atom, or local, which can be used by other commands or output as
 described below.  A global quantity is one or more system-wide values,
 e.g. the energy of a wall interacting with particles.  A per-atom
 quantity is one or more values per atom, e.g. the displacement vector
 for each atom since time 0.  Per-atom values are set to 0.0 for atoms
 not in the specified fix group.  Local quantities are calculated by
 each processor based on the atoms it owns, but there may be zero or
 more per atoms.
 
 Note that a single fix may produces either global or per-atom or local
 quantities (or none at all), but never more than one of these.
 
 Global, per-atom, and local quantities each come in three kinds: a
 single scalar value, a vector of values, or a 2d array of values.  The
 doc page for each fix describes the style and kind of values it
 produces, e.g. a per-atom vector.  Some fixes produce more than one
 kind of a single style, e.g. a global scalar and a global vector.
 
 When a fix quantity is accessed, as in many of the output commands
 discussed below, it can be referenced via the following bracket
 notation, where ID is the ID of the fix:
 
 f_ID | entire scalar, vector, or array
 f_ID\[I\] | one element of vector, one column of array
 f_ID\[I\]\[J\] | one element of array :tb(s=|)
 
 In other words, using one bracket reduces the dimension of the
 quantity once (vector -> scalar, array -> vector).  Using two brackets
 reduces the dimension twice (array -> scalar).  Thus a command that
 uses scalar fix values as input can also process elements of a vector
 or array.
 
 Note that commands and "variables"_variable.html which use fix
 quantities typically do not allow for all kinds, e.g. a command may
 require a vector of values, not a scalar.  This means there is no
 ambiguity about referring to a fix quantity as f_ID even if it
 produces, for example, both a scalar and vector.  The doc pages for
 various commands explain the details.
 
 :line
 
 In LAMMPS, the values generated by a fix can be used in several ways:
 
 Global values can be output via the "thermo_style
 custom"_thermo_style.html or "fix ave/time"_fix_ave_time.html command.
 Or the values can be referenced in a "variable equal"_variable.html or
 "variable atom"_variable.html command. :ulb,l
 
 Per-atom values can be output via the "dump custom"_dump.html command
 or the "fix ave/spatial"_fix_ave_spatial.html command.  Or they can be
 time-averaged via the "fix ave/atom"_fix_ave_atom.html command or
 reduced by the "compute reduce"_compute_reduce.html command.  Or the
 per-atom values can be referenced in an "atom-style
 variable"_variable.html. :l
 
 Local values can be reduced by the "compute
 reduce"_compute_reduce.html command, or histogrammed by the "fix
 ave/histo"_fix_ave_histo.html command. :l,ule
 
 See this "howto section"_Section_howto.html#howto_15 for a summary of
 various LAMMPS output options, many of which involve fixes.
 
 The results of fixes that calculate global quantities can be either
 "intensive" or "extensive" values.  Intensive means the value is
 independent of the number of atoms in the simulation,
 e.g. temperature.  Extensive means the value scales with the number of
 atoms in the simulation, e.g. total rotational kinetic energy.
 "Thermodynamic output"_thermo_style.html will normalize extensive
 values by the number of atoms in the system, depending on the
 "thermo_modify norm" setting.  It will not normalize intensive values.
 If a fix value is accessed in another way, e.g. by a
 "variable"_variable.html, you may want to know whether it is an
 intensive or extensive value.  See the doc page for individual fixes
 for further info.
 
 :line
 
 Each fix style has its own documentation page which describes its
 arguments and what it does, as listed below.  Here is an alphabetic
 list of fix styles available in LAMMPS:
 
 "adapt"_fix_adapt.html - change a simulation parameter over time
 "addforce"_fix_addforce.html - add a force to each atom
 "append/atoms"_fix_append_atoms.html - append atoms to a running simulation
 "aveforce"_fix_aveforce.html - add an averaged force to each atom
 "ave/atom"_fix_ave_atom.html - compute per-atom time-averaged quantities
 "ave/histo"_fix_ave_histo.html - compute/output time-averaged histograms
 "ave/spatial"_fix_ave_spatial.html - compute/output time-averaged per-atom quantities by layer
 "ave/time"_fix_ave_time.html - compute/output global time-averaged quantities
 "bond/break"_fix_bond_break.html - break bonds on the fly
 "bond/create"_fix_bond_create.html - create bonds on the fly
 "bond/swap"_fix_bond_swap.html - Monte Carlo bond swapping
 "box/relax"_fix_box_relax.html - relax box size during energy minimization
 "deform"_fix_deform.html - change the simulation box size/shape
 "deposit"_fix_deposit.html - add new atoms above a surface
 "drag"_fix_drag.html - drag atoms towards a defined coordinate
 "dt/reset"_fix_dt_reset.html - reset the timestep based on velocity, forces
 "efield"_fix_efield.html - impose electric field on system
 "enforce2d"_fix_enforce2d.html - zero out z-dimension velocity and force
 "evaporate"_fix_evaporate.html - remove atoms from simulation periodically
 "external"_fix_external.html - callback to an external driver program
 "freeze"_fix_freeze.html - freeze atoms in a granular simulation
 "gravity"_fix_gravity.html - add gravity to atoms in a granular simulation
 "gcmc"_fix_gcmc.html - grand canonical insertions/deletions
 "heat"_fix_heat.html - add/subtract momentum-conserving heat
 "indent"_fix_indent.html - impose force due to an indenter
 "langevin"_fix_langevin.html - Langevin temperature control
 "lineforce"_fix_lineforce.html - constrain atoms to move in a line
 "momentum"_fix_momentum.html - zero the linear and/or angular momentum of a group of atoms
 "move"_fix_move.html - move atoms in a prescribed fashion
 "msst"_fix_msst.html - multi-scale shock technique (MSST) integration
 "neb"_fix_neb.html - nudged elastic band (NEB) spring forces
 "nph"_fix_nh.html - constant NPH time integration via Nose/Hoover
 "nph/asphere"_fix_nph_asphere.html - NPH for aspherical particles
 "nph/sphere"_fix_nph_sphere.html - NPH for spherical particles
 "nphug"_fix_nphug.html - constant-stress Hugoniostat integration
 "npt"_fix_nh.html - constant NPT time integration via Nose/Hoover
 "npt/asphere"_fix_npt_asphere.html - NPT for aspherical particles
 "npt/sphere"_fix_npt_sphere.html - NPT for spherical particles
 "nve"_fix_nve.html - constant NVE time integration
 "nve/asphere"_fix_nve_asphere.html - NVE for aspherical particles
 "nve/asphere/noforce"_fix_nve_asphere_noforce.html - NVE for aspherical particles without forces"
-nve/limit"_fix_nve_limit.html - NVE with limited step length
+"nve/body"_fix_nve_body.html - NVE for body particles
+"nve/limit"_fix_nve_limit.html - NVE with limited step length
 "nve/line"_fix_nve_line.html - NVE for line segments
 "nve/noforce"_fix_nve_noforce.html - NVE without forces (v only)
 "nve/sphere"_fix_nve_sphere.html - NVE for spherical particles
 "nve/tri"_fix_nve_tri.html - NVE for triangles
 "nvt"_fix_nh.html - constant NVT time integration via Nose/Hoover
 "nvt/asphere"_fix_nvt_asphere.html - NVT for aspherical particles
 "nvt/sllod"_fix_nvt_sllod.html - NVT for NEMD with SLLOD equations
 "nvt/sphere"_fix_nvt_sphere.html - NVT for spherical particles
 "orient/fcc"_fix_orient_fcc.html - add grain boundary migration force
 "planeforce"_fix_planeforce.html - constrain atoms to move in a plane
 "poems"_fix_poems.html - constrain clusters of atoms to move \
   as coupled rigid bodies
 "pour"_fix_pour.html - pour new atoms into a granular simulation domain
 "press/berendsen"_fix_press_berendsen.html - pressure control by \
      Berendsen barostat
 "print"_fix_print.html - print text and variables during a simulation
 "reax/bonds"_fix_reax_bonds.html - write out ReaxFF bond information \
 "recenter"_fix_recenter.html - constrain the center-of-mass position \
   of a group of atoms
 "restrain"_fix_restrain.html - constrain a bond, angle, dihedral
 "rigid"_fix_rigid.html - constrain one or more clusters of atoms to \
      move as a rigid body with NVE integration
 "rigid/nph"_fix_rigid.html - constrain one or more clusters of atoms to \
      move as a rigid body with NPH integration
 "rigid/npt"_fix_rigid.html - constrain one or more clusters of atoms to \
      move as a rigid body with NPT integration
 "rigid/nve"_fix_rigid.html - constrain one or more clusters of atoms to \
      move as a rigid body with alternate NVE integration
 "rigid/nvt"_fix_rigid.html - constrain one or more clusters of atoms to \
      move as a rigid body with NVT integration
 "setforce"_fix_setforce.html - set the force on each atom
 "shake"_fix_shake.html - SHAKE constraints on bonds and/or angles
 "spring"_fix_spring.html - apply harmonic spring force to group of atoms
 "spring/rg"_fix_spring_rg.html - spring on radius of gyration of \
      group of atoms
 "spring/self"_fix_spring_self.html - spring from each atom to its origin
 "srd"_fix_srd.html - stochastic rotation dynamics (SRD)
 "store/force"_fix_store_force.html - store force on each atom
 "store/state"_fix_store_state.html - store attributes for each atom
 "temp/berendsen"_fix_temp_berendsen.html - temperature control by \
      Berendsen thermostat
 "temp/rescale"_fix_temp_rescale.html - temperature control by \
      velocity rescaling
 "thermal/conductivity"_fix_thermal_conductivity.html - Muller-Plathe kinetic energy exchange for \
      thermal conductivity calculation
 "tmd"_fix_tmd.html - guide a group of atoms to a new configuration
 "ttm"_fix_ttm.html - two-temperature model for electronic/atomic coupling
 "viscosity"_fix_viscosity.html - Muller-Plathe momentum exchange for \
      viscosity calculation
 "viscous"_fix_viscous.html - viscous damping for granular simulations
 "wall/colloid"_fix_wall.html - Lennard-Jones wall interacting with finite-size particles
 "wall/gran"_fix_wall_gran.html - frictional wall(s) for granular simulations
 "wall/harmonic"_fix_wall.html - harmonic spring wall
 "wall/lj126"_fix_wall.html - Lennard-Jones 12-6 wall
 "wall/lj93"_fix_wall.html - Lennard-Jones 9-3 wall
 "wall/piston"_fix_wall_piston.html - moving reflective piston wall
 "wall/reflect"_fix_wall_reflect.html - reflecting wall(s)
 "wall/region"_fix_wall_region.html - use region surface as wall
 "wall/srd"_fix_wall_srd.html - slip/no-slip wall for SRD particles :ul
 
 There are also additional fix styles submitted by users which are
 included in the LAMMPS distribution.  The list of these with links to
 the individual styles are given in the fix section of "this
 page"_Section_commands.html#cmd_5.
 
 There are also additional accelerated fix styles included in the
 LAMMPS distribution for faster performance on CPUs and GPUs.  The list
 of these with links to the individual styles are given in the pair
 section of "this page"_Section_commands.html#cmd_5.
 
 [Restrictions:]
 
 Some fix styles are part of specific packages.  They are only enabled
 if LAMMPS was built with that package.  See the "Making
 LAMMPS"_Section_start.html#start_3 section for more info on packages.
 The doc pages for individual fixes tell if it is part of a package.
 
 [Related commands:]
 
 "unfix"_unfix.html, "fix_modify"_fix_modify.html
 
 [Default:] none
diff --git a/doc/pair_coeff.html b/doc/pair_coeff.html
index 6147eaf04..7cbff1035 100644
--- a/doc/pair_coeff.html
+++ b/doc/pair_coeff.html
@@ -1,188 +1,189 @@
 <HTML>
 <CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A> 
 </CENTER>
 
 
 
 
 
 
 <HR>
 
 <H3>pair_coeff command 
 </H3>
 <P><B>Syntax:</B>
 </P>
 <PRE>pair_coeff I J args 
 </PRE>
 <UL><LI>I,J = atom types (see asterisk form below)
 <LI>args = coefficients for one or more pairs of atom types 
 </UL>
 <P><B>Examples:</B>
 </P>
 <PRE>pair_coeff 1 2 1.0 1.0 2.5
 pair_coeff 2 * 1.0 1.0
 pair_coeff 3* 1*2 1.0 1.0 2.5
 pair_coeff * * 1.0 1.0
 pair_coeff * * nialhjea 1 1 2
 pair_coeff * 3 morse.table ENTRY1
 pair_coeff 1 2 lj/cut 1.0 1.0 2.5 (for pair_style hybrid) 
 </PRE>
 <P><B>Description:</B>
 </P>
 <P>Specify the pairwise force field coefficients for one or more pairs of
 atom types.  The number and meaning of the coefficients depends on the
 pair style.  Pair coefficients can also be set in the data file read
 by the <A HREF = "read_data.html">read_data</A> command or in a restart file.
 </P>
 <P>I and J can be specified in one of two ways.  Explicit numeric values
 can be used for each, as in the 1st example above.  I <= J is
 required.  LAMMPS sets the coefficients for the symmetric J,I
 interaction to the same values.
 </P>
 <P>A wildcard asterisk can be used in place of or in conjunction with the
 I,J arguments to set the coefficients for multiple pairs of atom
 types.  This takes the form "*" or "*n" or "n*" or "m*n".  If N = the
 number of atom types, then an asterisk with no numeric values means all
 types from 1 to N.  A leading asterisk means all types from 1 to n
 (inclusive).  A trailing asterisk means all types from n to N
 (inclusive).  A middle asterisk means all types from m to n
 (inclusive).  Note that only type pairs with I <= J are considered; if
 asterisks imply type pairs where J < I, they are ignored.
 </P>
 <P>Note that a pair_coeff command can override a previous setting for the
 same I,J pair.  For example, these commands set the coeffs for all I,J
 pairs, then overwrite the coeffs for just the I,J = 2,3 pair:
 </P>
 <PRE>pair_coeff * * 1.0 1.0 2.5
 pair_coeff 2 3 2.0 1.0 1.12 
 </PRE>
 <P>A line in a data file that specifies pair coefficients uses the exact
 same format as the arguments of the pair_coeff command in an input
 script, with the exception of the I,J type arguments.  In each line of
 the "Pair Coeffs" section of a data file, only a single type I is
 specified, which sets the coefficients for type I interacting with
 type I.  This is because the section has exactly N lines, where N =
 the number of atom types.  For this reason, the wild-card asterisk
 should also not be used as part of the I argument.  Thus in a data
 file, the line corresponding to the 1st example above would be listed
 as
 </P>
 <PRE>2 1.0 1.0 2.5 
 </PRE>
 <P>For many potentials, if coefficients for type pairs with I != J are
 not set explicitly by a pair_coeff command, the values are inferred
 from the I,I and J,J settings by mixing rules; see the
 <A HREF = "pair_modify.html">pair_modify</A> command for a discussion.  Details on
 this option as it pertains to individual potentials are described on
 the doc page for the potential.
 </P>
 <HR>
 
 <P>Here is an alphabetic list of pair styles defined in LAMMPS.  Click on
 the style to display the formula it computes, arguments specified in
 the pair_style command, and coefficients specified by the associated
 <A HREF = "pair_coeff.html">pair_coeff</A> command.
 </P>
 <P>Note that there are also additional pair styles submitted by users
 which are included in the LAMMPS distribution.  The list of these with
 links to the individual styles are given in the pair section of <A HREF = "Section_commands.html#cmd_5">this
 page</A>.
 </P>
 <P>There are also additional accelerated pair styles included in the
 LAMMPS distribution for faster performance on CPUs and GPUs.  The list
 of these with links to the individual styles are given in the pair
 section of <A HREF = "Section_commands.html#cmd_5">this page</A>.
 </P>
 <UL><LI><A HREF = "pair_hybrid.html">pair_style hybrid</A> - multiple styles of pairwise interactions
 <LI><A HREF = "pair_hybrid.html">pair_style hybrid/overlay</A> - multiple styles of superposed pairwise interactions 
 </UL>
 <UL><LI><A HREF = "pair_adp.html">pair_style adp</A> - angular dependent potential (ADP) of Mishin
 <LI><A HREF = "pair_airebo.html">pair_style airebo</A> - AIREBO potential of Stuart
+<LI><A HREF = "pair_body.html">pair_style body</A> - interactions between body particles
 <LI><A HREF = "pair_bop.html">pair_style bop</A> - BOP potential of Pettifor
 <LI><A HREF = "pair_born.html">pair_style born</A> - Born-Mayer-Huggins potential
 <LI><A HREF = "pair_born.html">pair_style born/coul/long</A> - Born-Mayer-Huggins with long-range Coulombics
 <LI><A HREF = "pair_born.html">pair_style born/coul/wolf</A> - Born-Mayer-Huggins with Coulombics via Wolf potential
 <LI><A HREF = "pair_brownian.html">pair_style brownian</A> - Brownian potential for Fast Lubrication Dynamics
 <LI><A HREF = "pair_brownian.html">pair_style brownian/poly</A> - Brownian potential for Fast Lubrication Dynamics with polydispersity
 <LI><A HREF = "pair_buck.html">pair_style buck</A> - Buckingham potential
 <LI><A HREF = "pair_buck.html">pair_style buck/coul/cut</A> - Buckingham with cutoff Coulomb
 <LI><A HREF = "pair_buck.html">pair_style buck/coul/long</A> - Buckingham with long-range Coulomb
 <LI><A HREF = "pair_colloid.html">pair_style colloid</A> - integrated colloidal potential
 <LI><A HREF = "pair_comb.html">pair_style comb</A> - charge-optimized many-body (COMB) potential
 <LI><A HREF = "pair_coul.html">pair_style coul/cut</A> - cutoff Coulombic potential
 <LI><A HREF = "pair_coul.html">pair_style coul/debye</A> - cutoff Coulombic potential with Debye screening
 <LI><A HREF = "pair_coul.html">pair_style coul/long</A> - long-range Coulombic potential
 <LI><A HREF = "pair_coul.html">pair_style coul/wolf</A> - Coulombics via Wolf potential
 <LI><A HREF = "pair_dipole.html">pair_style dipole/cut</A> - point dipoles with cutoff
 <LI><A HREF = "pair_dpd.html">pair_style dpd</A> - dissipative particle dynamics (DPD)
 <LI><A HREF = "pair_dpd.html">pair_style dpd/tstat</A> - DPD thermostatting
 <LI><A HREF = "pair_dsmc.html">pair_style dsmc</A> - Direct Simulation Monte Carlo (DSMC)
 <LI><A HREF = "pair_eam.html">pair_style eam</A> - embedded atom method (EAM)
 <LI><A HREF = "pair_eam.html">pair_style eam/alloy</A> - alloy EAM
 <LI><A HREF = "pair_eam.html">pair_style eam/fs</A> - Finnis-Sinclair EAM
 <LI><A HREF = "pair_eim.html">pair_style eim</A> - embedded ion method (EIM)
 <LI><A HREF = "pair_gauss.html">pair_style gauss</A> - Gaussian potential
 <LI><A HREF = "pair_gayberne.html">pair_style gayberne</A> - Gay-Berne ellipsoidal potential
 <LI><A HREF = "pair_gran.html">pair_style gran/hertz/history</A> - granular potential with Hertzian interactions
 <LI><A HREF = "pair_gran.html">pair_style gran/hooke</A> - granular potential with history effects
 <LI><A HREF = "pair_gran.html">pair_style gran/hooke/history</A> - granular potential without history effects
 <LI><A HREF = "pair_hbond_dreiding.html">pair_style hbond/dreiding/lj</A> - DREIDING hydrogen bonding LJ potential
 <LI><A HREF = "pair_hbond_dreiding.html">pair_style hbond/dreiding/morse</A> - DREIDING hydrogen bonding Morse potential
 <LI><A HREF = "pair_lcbop.html">pair_style lcbop</A> - long-range bond-order potential (LCBOP)
 <LI><A HREF = "pair_line_lj.html">pair_style line/lj</A> - LJ potential between line segments
 <LI><A HREF = "pair_charmm.html">pair_style lj/charmm/coul/charmm</A> - CHARMM potential with cutoff Coulomb
 <LI><A HREF = "pair_charmm.html">pair_style lj/charmm/coul/charmm/implicit</A> - CHARMM for implicit solvent
 <LI><A HREF = "pair_charmm.html">pair_style lj/charmm/coul/long</A> - CHARMM with long-range Coulomb
 <LI><A HREF = "pair_class2.html">pair_style lj/class2</A> - COMPASS (class 2) force field with no Coulomb
 <LI><A HREF = "pair_class2.html">pair_style lj/class2/coul/cut</A> - COMPASS with cutoff Coulomb
 <LI><A HREF = "pair_class2.html">pair_style lj/class2/coul/long</A> - COMPASS with long-range Coulomb
 <LI><A HREF = "pair_lj.html">pair_style lj/cut</A> - cutoff Lennard-Jones potential with no Coulomb
 <LI><A HREF = "pair_lj.html">pair_style lj/cut/coul/cut</A> - LJ with cutoff Coulomb
 <LI><A HREF = "pair_lj.html">pair_style lj/cut/coul/debye</A> - LJ with Debye screening added to Coulomb
 <LI><A HREF = "pair_lj.html">pair_style lj/cut/coul/long</A> - LJ with long-range Coulomb
 <LI><A HREF = "pair_lj.html">pair_style lj/cut/coul/long/tip4p</A> - LJ with long-range Coulomb for TIP4P water
 <LI><A HREF = "pair_lj_expand.html">pair_style lj/expand</A> - Lennard-Jones for variable size particles
 <LI><A HREF = "pair_gromacs.html">pair_style lj/gromacs</A> - GROMACS-style Lennard-Jones potential
 <LI><A HREF = "pair_gromacs.html">pair_style lj/gromacs/coul/gromacs</A> - GROMACS-style LJ and Coulombic potential
 <LI><A HREF = "pair_lj_smooth.html">pair_style lj/smooth</A> - smoothed Lennard-Jones potential
 <LI><A HREF = "pair_lj_smooth_linear.html">pair_style lj/smooth/linear</A> - linear smoothed Lennard-Jones potential
 <LI><A HREF = "pair_lj96.html">pair_style lj96/cut</A> - Lennard-Jones 9/6 potential
 <LI><A HREF = "pair_lubricate.html">pair_style lubricate</A> - hydrodynamic lubrication forces
 <LI><A HREF = "pair_lubricate.html">pair_style lubricate/poly</A> - hydrodynamic lubrication forces with polydispersity
 <LI><A HREF = "pair_lubricateU.html">pair_style lubricateU</A> - hydrodynamic lubrication forces for Fast Lubrication Dynamics
 <LI><A HREF = "pair_lubricateU.html">pair_style lubricateU/poly</A> - hydrodynamic lubrication forces for Fast Lubrication Dynamics with polydispersity
 <LI><A HREF = "pair_meam.html">pair_style meam</A> - modified embedded atom method (MEAM)
 <LI><A HREF = "pair_mie.html">pair_style mie/cut</A> - Mie potential
 <LI><A HREF = "pair_morse.html">pair_style morse</A> - Morse potential
 <LI><A HREF = "pair_peri.html">pair_style peri/lps</A> - peridynamic LPS potential
 <LI><A HREF = "pair_peri.html">pair_style peri/pmb</A> - peridynamic PMB potential
 <LI><A HREF = "pair_reax.html">pair_style reax</A> - ReaxFF potential
 <LI><A HREF = "pair_airebo.html">pair_style rebo</A> - 2nd-generation REBO potential of Brenner
 <LI><A HREF = "pair_resquared.html">pair_style resquared</A> - Everaers RE-Squared ellipsoidal potential
 <LI><A HREF = "pair_soft.html">pair_style soft</A> - Soft (cosine) potential
 <LI><A HREF = "pair_sw.html">pair_style sw</A> - Stillinger-Weber 3-body potential
 <LI><A HREF = "pair_table.html">pair_style table</A> - tabulated pair potential
 <LI><A HREF = "pair_tersoff.html">pair_style tersoff</A> - Tersoff 3-body potential
 <LI><A HREF = "pair_tersoff_zbl.html">pair_style tersoff/zbl</A> - Tersoff/ZBL 3-body potential
 <LI><A HREF = "pair_tri_lj.html">pair_style tri/lj</A> - LJ potential between triangles
 <LI><A HREF = "pair_yukawa.html">pair_style yukawa</A> - Yukawa potential
 <LI><A HREF = "pair_yukawa_colloid.html">pair_style yukawa/colloid</A> - screened Yukawa potential for finite-size particles 
 </UL>
 <HR>
 
 <P><B>Restrictions:</B>
 </P>
 <P>This command must come after the simulation box is defined by a
 <A HREF = "read_data.html">read_data</A>, <A HREF = "read_restart.html">read_restart</A>, or
 <A HREF = "create_box.html">create_box</A> command.
 </P>
 <P><B>Related commands:</B>
 </P>
 <P><A HREF = "pair_style.html">pair_style</A>, <A HREF = "pair_modify.html">pair_modify</A>,
 <A HREF = "read_data.html">read_data</A>, <A HREF = "read_restart.html">read_restart</A>,
 <A HREF = "pair_write.html">pair_write</A>
 </P>
 <P><B>Default:</B> none
 </P>
 </HTML>
diff --git a/doc/pair_coeff.txt b/doc/pair_coeff.txt
index 3ee89a8d6..14a00f882 100644
--- a/doc/pair_coeff.txt
+++ b/doc/pair_coeff.txt
@@ -1,183 +1,184 @@
 "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_coeff command :h3
 
 [Syntax:]
 
 pair_coeff I J args :pre
 
 I,J = atom types (see asterisk form below)
 args = coefficients for one or more pairs of atom types :ul
 
 [Examples:]
 
 pair_coeff 1 2 1.0 1.0 2.5
 pair_coeff 2 * 1.0 1.0
 pair_coeff 3* 1*2 1.0 1.0 2.5
 pair_coeff * * 1.0 1.0
 pair_coeff * * nialhjea 1 1 2
 pair_coeff * 3 morse.table ENTRY1
 pair_coeff 1 2 lj/cut 1.0 1.0 2.5 (for pair_style hybrid) :pre
 
 [Description:]
 
 Specify the pairwise force field coefficients for one or more pairs of
 atom types.  The number and meaning of the coefficients depends on the
 pair style.  Pair coefficients can also be set in the data file read
 by the "read_data"_read_data.html command or in a restart file.
 
 I and J can be specified in one of two ways.  Explicit numeric values
 can be used for each, as in the 1st example above.  I <= J is
 required.  LAMMPS sets the coefficients for the symmetric J,I
 interaction to the same values.
 
 A wildcard asterisk can be used in place of or in conjunction with the
 I,J arguments to set the coefficients for multiple pairs of atom
 types.  This takes the form "*" or "*n" or "n*" or "m*n".  If N = the
 number of atom types, then an asterisk with no numeric values means all
 types from 1 to N.  A leading asterisk means all types from 1 to n
 (inclusive).  A trailing asterisk means all types from n to N
 (inclusive).  A middle asterisk means all types from m to n
 (inclusive).  Note that only type pairs with I <= J are considered; if
 asterisks imply type pairs where J < I, they are ignored.
 
 Note that a pair_coeff command can override a previous setting for the
 same I,J pair.  For example, these commands set the coeffs for all I,J
 pairs, then overwrite the coeffs for just the I,J = 2,3 pair:
 
 pair_coeff * * 1.0 1.0 2.5
 pair_coeff 2 3 2.0 1.0 1.12 :pre
 
 A line in a data file that specifies pair coefficients uses the exact
 same format as the arguments of the pair_coeff command in an input
 script, with the exception of the I,J type arguments.  In each line of
 the "Pair Coeffs" section of a data file, only a single type I is
 specified, which sets the coefficients for type I interacting with
 type I.  This is because the section has exactly N lines, where N =
 the number of atom types.  For this reason, the wild-card asterisk
 should also not be used as part of the I argument.  Thus in a data
 file, the line corresponding to the 1st example above would be listed
 as
 
 2 1.0 1.0 2.5 :pre
 
 For many potentials, if coefficients for type pairs with I != J are
 not set explicitly by a pair_coeff command, the values are inferred
 from the I,I and J,J settings by mixing rules; see the
 "pair_modify"_pair_modify.html command for a discussion.  Details on
 this option as it pertains to individual potentials are described on
 the doc page for the potential.
 
 :line
 
 Here is an alphabetic list of pair styles defined in LAMMPS.  Click on
 the style to display the formula it computes, arguments specified in
 the pair_style command, and coefficients specified by the associated
 "pair_coeff"_pair_coeff.html command.
 
 Note that there are also additional pair styles submitted by users
 which are included in the LAMMPS distribution.  The list of these with
 links to the individual styles are given in the pair section of "this
 page"_Section_commands.html#cmd_5.
 
 There are also additional accelerated pair styles included in the
 LAMMPS distribution for faster performance on CPUs and GPUs.  The list
 of these with links to the individual styles are given in the pair
 section of "this page"_Section_commands.html#cmd_5.
 
 "pair_style hybrid"_pair_hybrid.html - multiple styles of pairwise interactions
 "pair_style hybrid/overlay"_pair_hybrid.html - multiple styles of superposed pairwise interactions :ul
 
 "pair_style adp"_pair_adp.html - angular dependent potential (ADP) of Mishin
 "pair_style airebo"_pair_airebo.html - AIREBO potential of Stuart
+"pair_style body"_pair_body.html - interactions between body particles
 "pair_style bop"_pair_bop.html - BOP potential of Pettifor
 "pair_style born"_pair_born.html - Born-Mayer-Huggins potential
 "pair_style born/coul/long"_pair_born.html - Born-Mayer-Huggins with long-range Coulombics
 "pair_style born/coul/wolf"_pair_born.html - Born-Mayer-Huggins with Coulombics via Wolf potential
 "pair_style brownian"_pair_brownian.html - Brownian potential for Fast Lubrication Dynamics
 "pair_style brownian/poly"_pair_brownian.html - Brownian potential for Fast Lubrication Dynamics with polydispersity
 "pair_style buck"_pair_buck.html - Buckingham potential
 "pair_style buck/coul/cut"_pair_buck.html - Buckingham with cutoff Coulomb
 "pair_style buck/coul/long"_pair_buck.html - Buckingham with long-range Coulomb
 "pair_style colloid"_pair_colloid.html - integrated colloidal potential
 "pair_style comb"_pair_comb.html - charge-optimized many-body (COMB) potential
 "pair_style coul/cut"_pair_coul.html - cutoff Coulombic potential
 "pair_style coul/debye"_pair_coul.html - cutoff Coulombic potential with Debye screening
 "pair_style coul/long"_pair_coul.html - long-range Coulombic potential
 "pair_style coul/wolf"_pair_coul.html - Coulombics via Wolf potential
 "pair_style dipole/cut"_pair_dipole.html - point dipoles with cutoff
 "pair_style dpd"_pair_dpd.html - dissipative particle dynamics (DPD)
 "pair_style dpd/tstat"_pair_dpd.html - DPD thermostatting
 "pair_style dsmc"_pair_dsmc.html - Direct Simulation Monte Carlo (DSMC)
 "pair_style eam"_pair_eam.html - embedded atom method (EAM)
 "pair_style eam/alloy"_pair_eam.html - alloy EAM
 "pair_style eam/fs"_pair_eam.html - Finnis-Sinclair EAM
 "pair_style eim"_pair_eim.html - embedded ion method (EIM)
 "pair_style gauss"_pair_gauss.html - Gaussian potential
 "pair_style gayberne"_pair_gayberne.html - Gay-Berne ellipsoidal potential
 "pair_style gran/hertz/history"_pair_gran.html - granular potential with Hertzian interactions
 "pair_style gran/hooke"_pair_gran.html - granular potential with history effects
 "pair_style gran/hooke/history"_pair_gran.html - granular potential without history effects
 "pair_style hbond/dreiding/lj"_pair_hbond_dreiding.html - DREIDING hydrogen bonding LJ potential
 "pair_style hbond/dreiding/morse"_pair_hbond_dreiding.html - DREIDING hydrogen bonding Morse potential
 "pair_style lcbop"_pair_lcbop.html - long-range bond-order potential (LCBOP)
 "pair_style line/lj"_pair_line_lj.html - LJ potential between line segments
 "pair_style lj/charmm/coul/charmm"_pair_charmm.html - CHARMM potential with cutoff Coulomb
 "pair_style lj/charmm/coul/charmm/implicit"_pair_charmm.html - CHARMM for implicit solvent
 "pair_style lj/charmm/coul/long"_pair_charmm.html - CHARMM with long-range Coulomb
 "pair_style lj/class2"_pair_class2.html - COMPASS (class 2) force field with no Coulomb
 "pair_style lj/class2/coul/cut"_pair_class2.html - COMPASS with cutoff Coulomb
 "pair_style lj/class2/coul/long"_pair_class2.html - COMPASS with long-range Coulomb
 "pair_style lj/cut"_pair_lj.html - cutoff Lennard-Jones potential with no Coulomb
 "pair_style lj/cut/coul/cut"_pair_lj.html - LJ with cutoff Coulomb
 "pair_style lj/cut/coul/debye"_pair_lj.html - LJ with Debye screening added to Coulomb
 "pair_style lj/cut/coul/long"_pair_lj.html - LJ with long-range Coulomb
 "pair_style lj/cut/coul/long/tip4p"_pair_lj.html - LJ with long-range Coulomb for TIP4P water
 "pair_style lj/expand"_pair_lj_expand.html - Lennard-Jones for variable size particles
 "pair_style lj/gromacs"_pair_gromacs.html - GROMACS-style Lennard-Jones potential
 "pair_style lj/gromacs/coul/gromacs"_pair_gromacs.html - GROMACS-style LJ and Coulombic potential
 "pair_style lj/smooth"_pair_lj_smooth.html - smoothed Lennard-Jones potential
 "pair_style lj/smooth/linear"_pair_lj_smooth_linear.html - linear smoothed Lennard-Jones potential
 "pair_style lj96/cut"_pair_lj96.html - Lennard-Jones 9/6 potential
 "pair_style lubricate"_pair_lubricate.html - hydrodynamic lubrication forces
 "pair_style lubricate/poly"_pair_lubricate.html - hydrodynamic lubrication forces with polydispersity
 "pair_style lubricateU"_pair_lubricateU.html - hydrodynamic lubrication forces for Fast Lubrication Dynamics
 "pair_style lubricateU/poly"_pair_lubricateU.html - hydrodynamic lubrication forces for Fast Lubrication Dynamics with polydispersity
 "pair_style meam"_pair_meam.html - modified embedded atom method (MEAM)
 "pair_style mie/cut"_pair_mie.html - Mie potential
 "pair_style morse"_pair_morse.html - Morse potential
 "pair_style peri/lps"_pair_peri.html - peridynamic LPS potential
 "pair_style peri/pmb"_pair_peri.html - peridynamic PMB potential
 "pair_style reax"_pair_reax.html - ReaxFF potential
 "pair_style rebo"_pair_airebo.html - 2nd-generation REBO potential of Brenner
 "pair_style resquared"_pair_resquared.html - Everaers RE-Squared ellipsoidal potential
 "pair_style soft"_pair_soft.html - Soft (cosine) potential
 "pair_style sw"_pair_sw.html - Stillinger-Weber 3-body potential
 "pair_style table"_pair_table.html - tabulated pair potential
 "pair_style tersoff"_pair_tersoff.html - Tersoff 3-body potential
 "pair_style tersoff/zbl"_pair_tersoff_zbl.html - Tersoff/ZBL 3-body potential
 "pair_style tri/lj"_pair_tri_lj.html - LJ potential between triangles
 "pair_style yukawa"_pair_yukawa.html - Yukawa potential
 "pair_style yukawa/colloid"_pair_yukawa_colloid.html - screened Yukawa potential for finite-size particles :ul
 
 :line
 
 [Restrictions:]
 
 This command must come after the simulation box is defined by a
 "read_data"_read_data.html, "read_restart"_read_restart.html, or
 "create_box"_create_box.html command.
 
 [Related commands:]
 
 "pair_style"_pair_style.html, "pair_modify"_pair_modify.html,
 "read_data"_read_data.html, "read_restart"_read_restart.html,
 "pair_write"_pair_write.html
 
 [Default:] none
diff --git a/doc/pair_style.html b/doc/pair_style.html
index 1024ac5e5..1931c695d 100644
--- a/doc/pair_style.html
+++ b/doc/pair_style.html
@@ -1,198 +1,199 @@
 <HTML>
 <CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A> 
 </CENTER>
 
 
 
 
 
 
 <HR>
 
 <H3>pair_style command 
 </H3>
 <P><B>Syntax:</B>
 </P>
 <PRE>pair_style style args 
 </PRE>
 <UL><LI>style = one of the styles from the list below
 <LI>args = arguments used by a particular style 
 </UL>
 <P><B>Examples:</B>
 </P>
 <PRE>pair_style lj/cut 2.5
 pair_style eam/alloy
 pair_style hybrid lj/charmm/coul/long 10.0 eam
 pair_style table linear 1000
 pair_style none 
 </PRE>
 <P><B>Description:</B>
 </P>
 <P>Set the formula(s) LAMMPS uses to compute pairwise interactions.  In
 LAMMPS, pair potentials are defined between pairs of atoms that are
 within a cutoff distance and the set of active interactions typically
 changes over time.  See the <A HREF = "bond_style.html">bond_style</A> command to
 define potentials between pairs of bonded atoms, which typically
 remain in place for the duration of a simulation.
 </P>
 <P>In LAMMPS, pairwise force fields encompass a variety of interactions,
 some of which include many-body effects, e.g. EAM, Stillinger-Weber,
 Tersoff, REBO potentials.  They are still classified as "pairwise"
 potentials because the set of interacting atoms changes with time
 (unlike molecular bonds) and thus a neighbor list is used to find
 nearby interacting atoms.
 </P>
 <P>Hybrid models where specified pairs of atom types interact via
 different pair potentials can be setup using the <I>hybrid</I> pair style.
 </P>
 <P>The coefficients associated with a pair style are typically set for
 each pair of atom types, and are specified by the
 <A HREF = "pair_coeff.html">pair_coeff</A> command or read from a file by the
 <A HREF = "read_data.html">read_data</A> or <A HREF = "read_restart.html">read_restart</A>
 commands.
 </P>
 <P>The <A HREF = "pair_modify.html">pair_modify</A> command sets options for mixing of
 type I-J interaction coefficients and adding energy offsets or tail
 corrections to Lennard-Jones potentials.  Details on these options as
 they pertain to individual potentials are described on the doc page
 for the potential.  Likewise, info on whether the potential
 information is stored in a <A HREF = "write_restart.html">restart file</A> is listed
 on the potential doc page.
 </P>
 <P>In the formulas listed for each pair style, <I>E</I> is the energy of a
 pairwise interaction between two atoms separated by a distance <I>r</I>.
 The force between the atoms is the negative derivative of this
 expression.
 </P>
 <P>If the pair_style command has a cutoff argument, it sets global
 cutoffs for all pairs of atom types.  The distance(s) can be smaller
 or larger than the dimensions of the simulation box.
 </P>
 <P>Typically, the global cutoff value can be overridden for a specific
 pair of atom types by the <A HREF = "pair_coeff.html">pair_coeff</A> command.  The
 pair style settings (including global cutoffs) can be changed by a
 subsequent pair_style command using the same style.  This will reset
 the cutoffs for all atom type pairs, including those previously set
 explicitly by a <A HREF = "pair_coeff.html">pair_coeff</A> command.  The exceptions
 to this are that pair_style <I>table</I> and <I>hybrid</I> settings cannot be
 reset.  A new pair_style command for these styles will wipe out all
 previously specified pair_coeff values.
 </P>
 <HR>
 
 <P>Here is an alphabetic list of pair styles defined in LAMMPS.  Click on
 the style to display the formula it computes, arguments specified in
 the pair_style command, and coefficients specified by the associated
 <A HREF = "pair_coeff.html">pair_coeff</A> command.
 </P>
 <P>Note that there are also additional pair styles submitted by users
 which are included in the LAMMPS distribution.  The list of these with
 links to the individual styles are given in the pair section of <A HREF = "Section_commands.html#cmd_5">this
 page</A>.
 </P>
 <P>There are also additional accelerated pair styles included in the
 LAMMPS distribution for faster performance on CPUs and GPUs.  The list
 of these with links to the individual styles are given in the pair
 section of <A HREF = "Section_commands.html#cmd_5">this page</A>.
 </P>
 <UL><LI><A HREF = "pair_none.html">pair_style none</A> - turn off pairwise interactions
 <LI><A HREF = "pair_hybrid.html">pair_style hybrid</A> - multiple styles of pairwise interactions
 <LI><A HREF = "pair_hybrid.html">pair_style hybrid/overlay</A> - multiple styles of superposed pairwise interactions 
 </UL>
 <UL><LI><A HREF = "pair_adp.html">pair_style adp</A> - angular dependent potential (ADP) of Mishin
 <LI><A HREF = "pair_airebo.html">pair_style airebo</A> - AIREBO potential of Stuart
+<LI><A HREF = "pair_body.html">pair_style body</A> - interactions between body particles
 <LI><A HREF = "pair_bop.html">pair_style bop</A> - BOP potential of Pettifor
 <LI><A HREF = "pair_born.html">pair_style born</A> - Born-Mayer-Huggins potential
 <LI><A HREF = "pair_born.html">pair_style born/coul/long</A> - Born-Mayer-Huggins with long-range Coulombics
 <LI><A HREF = "pair_born.html">pair_style born/coul/wolf</A> - Born-Mayer-Huggins with Coulombics via Wolf potential
 <LI><A HREF = "pair_brownian.html">pair_style brownian</A> - Brownian potential for Fast Lubrication Dynamics
 <LI><A HREF = "pair_brownian.html">pair_style brownian/poly</A> - Brownian potential for Fast Lubrication Dynamics with polydispersity
 <LI><A HREF = "pair_buck.html">pair_style buck</A> - Buckingham potential
 <LI><A HREF = "pair_buck.html">pair_style buck/coul/cut</A> - Buckingham with cutoff Coulomb
 <LI><A HREF = "pair_buck.html">pair_style buck/coul/long</A> - Buckingham with long-range Coulomb
 <LI><A HREF = "pair_colloid.html">pair_style colloid</A> - integrated colloidal potential
 <LI><A HREF = "pair_comb.html">pair_style comb</A> - charge-optimized many-body (COMB) potential
 <LI><A HREF = "pair_coul.html">pair_style coul/cut</A> - cutoff Coulombic potential
 <LI><A HREF = "pair_coul.html">pair_style coul/debye</A> - cutoff Coulombic potential with Debye screening
 <LI><A HREF = "pair_coul.html">pair_style coul/long</A> - long-range Coulombic potential
 <LI><A HREF = "pair_coul.html">pair_style coul/wolf</A> - Coulombics via Wolf potential
 <LI><A HREF = "pair_dipole.html">pair_style dipole/cut</A> - point dipoles with cutoff
 <LI><A HREF = "pair_dpd.html">pair_style dpd</A> - dissipative particle dynamics (DPD)
 <LI><A HREF = "pair_dpd.html">pair_style dpd/tstat</A> - DPD thermostatting
 <LI><A HREF = "pair_dsmc.html">pair_style dsmc</A> - Direct Simulation Monte Carlo (DSMC)
 <LI><A HREF = "pair_eam.html">pair_style eam</A> - embedded atom method (EAM)
 <LI><A HREF = "pair_eam.html">pair_style eam/alloy</A> - alloy EAM
 <LI><A HREF = "pair_eam.html">pair_style eam/fs</A> - Finnis-Sinclair EAM
 <LI><A HREF = "pair_eim.html">pair_style eim</A> - embedded ion method (EIM)
 <LI><A HREF = "pair_gauss.html">pair_style gauss</A> - Gaussian potential
 <LI><A HREF = "pair_gayberne.html">pair_style gayberne</A> - Gay-Berne ellipsoidal potential
 <LI><A HREF = "pair_gran.html">pair_style gran/hertz/history</A> - granular potential with Hertzian interactions
 <LI><A HREF = "pair_gran.html">pair_style gran/hooke</A> - granular potential with history effects
 <LI><A HREF = "pair_gran.html">pair_style gran/hooke/history</A> - granular potential without history effects
 <LI><A HREF = "pair_hbond_dreiding.html">pair_style hbond/dreiding/lj</A> - DREIDING hydrogen bonding LJ potential
 <LI><A HREF = "pair_hbond_dreiding.html">pair_style hbond/dreiding/morse</A> - DREIDING hydrogen bonding Morse potential
 <LI><A HREF = "pair_lcbop.html">pair_style lcbop</A> - long-range bond-order potential (LCBOP)
 <LI><A HREF = "pair_line_lj.html">pair_style line/lj</A> - LJ potential between line segments
 <LI><A HREF = "pair_charmm.html">pair_style lj/charmm/coul/charmm</A> - CHARMM potential with cutoff Coulomb
 <LI><A HREF = "pair_charmm.html">pair_style lj/charmm/coul/charmm/implicit</A> - CHARMM for implicit solvent
 <LI><A HREF = "pair_charmm.html">pair_style lj/charmm/coul/long</A> - CHARMM with long-range Coulomb
 <LI><A HREF = "pair_class2.html">pair_style lj/class2</A> - COMPASS (class 2) force field with no Coulomb
 <LI><A HREF = "pair_class2.html">pair_style lj/class2/coul/cut</A> - COMPASS with cutoff Coulomb
 <LI><A HREF = "pair_class2.html">pair_style lj/class2/coul/long</A> - COMPASS with long-range Coulomb
 <LI><A HREF = "pair_lj.html">pair_style lj/cut</A> - cutoff Lennard-Jones potential with no Coulomb
 <LI><A HREF = "pair_lj.html">pair_style lj/cut/coul/cut</A> - LJ with cutoff Coulomb
 <LI><A HREF = "pair_lj.html">pair_style lj/cut/coul/debye</A> - LJ with Debye screening added to Coulomb
 <LI><A HREF = "pair_lj.html">pair_style lj/cut/coul/long</A> - LJ with long-range Coulomb
 <LI><A HREF = "pair_lj.html">pair_style lj/cut/coul/long/tip4p</A> - LJ with long-range Coulomb for TIP4P water
 <LI><A HREF = "pair_lj_expand.html">pair_style lj/expand</A> - Lennard-Jones for variable size particles
 <LI><A HREF = "pair_gromacs.html">pair_style lj/gromacs</A> - GROMACS-style Lennard-Jones potential
 <LI><A HREF = "pair_gromacs.html">pair_style lj/gromacs/coul/gromacs</A> - GROMACS-style LJ and Coulombic potential
 <LI><A HREF = "pair_lj_smooth.html">pair_style lj/smooth</A> - smoothed Lennard-Jones potential
 <LI><A HREF = "pair_lj_smooth_linear.html">pair_style lj/smooth/linear</A> - linear smoothed Lennard-Jones potential
 <LI><A HREF = "pair_lj96.html">pair_style lj96/cut</A> - Lennard-Jones 9/6 potential
 <LI><A HREF = "pair_lubricate.html">pair_style lubricate</A> - hydrodynamic lubrication forces
 <LI><A HREF = "pair_lubricate.html">pair_style lubricate/poly</A> - hydrodynamic lubrication forces with polydispersity
 <LI><A HREF = "pair_lubricateU.html">pair_style lubricateU</A> - hydrodynamic lubrication forces for Fast Lubrication Dynamics
 <LI><A HREF = "pair_lubricateU.html">pair_style lubricateU/poly</A> - hydrodynamic lubrication forces for Fast Lubrication with polydispersity
 <LI><A HREF = "pair_meam.html">pair_style meam</A> - modified embedded atom method (MEAM)
 <LI><A HREF = "pair_mie.html">pair_style mie/cut</A> - Mie potential
 <LI><A HREF = "pair_morse.html">pair_style morse</A> - Morse potential
 <LI><A HREF = "pair_peri.html">pair_style peri/lps</A> - peridynamic LPS potential
 <LI><A HREF = "pair_peri.html">pair_style peri/pmb</A> - peridynamic PMB potential
 <LI><A HREF = "pair_reax.html">pair_style reax</A> - ReaxFF potential
 <LI><A HREF = "pair_airebo.html">pair_style rebo</A> - 2nd generation REBO potential of Brenner
 <LI><A HREF = "pair_resquared.html">pair_style resquared</A> - Everaers RE-Squared ellipsoidal potential
 <LI><A HREF = "pair_soft.html">pair_style soft</A> - Soft (cosine) potential
 <LI><A HREF = "pair_sw.html">pair_style sw</A> - Stillinger-Weber 3-body potential
 <LI><A HREF = "pair_table.html">pair_style table</A> - tabulated pair potential
 <LI><A HREF = "pair_tersoff.html">pair_style tersoff</A> - Tersoff 3-body potential
 <LI><A HREF = "pair_tersoff_zbl.html">pair_style tersoff/zbl</A> - Tersoff/ZBL 3-body potential
 <LI><A HREF = "pair_tri_lj.html">pair_style tri/lj</A> - LJ potential between triangles
 <LI><A HREF = "pair_yukawa.html">pair_style yukawa</A> - Yukawa potential
 <LI><A HREF = "pair_yukawa_colloid.html">pair_style yukawa/colloid</A> - screened Yukawa potential for finite-size particles 
 </UL>
 <HR>
 
 <P><B>Restrictions:</B>
 </P>
 <P>This command must be used before any coefficients are set by the
 <A HREF = "pair_coeff.html">pair_coeff</A>, <A HREF = "read_data.html">read_data</A>, or
 <A HREF = "read_restart.html">read_restart</A> commands.
 </P>
 <P>Some pair styles are part of specific packages.  They are only enabled
 if LAMMPS was built with that package.  See the <A HREF = "Section_start.html#start_3">Making
 LAMMPS</A> section for more info on packages.
 The doc pages for individual pair potentials tell if it is part of a
 package.
 </P>
 <P><B>Related commands:</B>
 </P>
 <P><A HREF = "pair_coeff.html">pair_coeff</A>, <A HREF = "read_data.html">read_data</A>,
 <A HREF = "pair_modify.html">pair_modify</A>, <A HREF = "kspace_style.html">kspace_style</A>,
 <A HREF = "dielectric.html">dielectric</A>, <A HREF = "pair_write.html">pair_write</A>
 </P>
 <P><B>Default:</B>
 </P>
 <PRE>pair_style none 
 </PRE>
 </HTML>
diff --git a/doc/pair_style.txt b/doc/pair_style.txt
index d9fe32df9..3e9de618b 100644
--- a/doc/pair_style.txt
+++ b/doc/pair_style.txt
@@ -1,193 +1,194 @@
 "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 command :h3
 
 [Syntax:]
 
 pair_style style args :pre
 
 style = one of the styles from the list below
 args = arguments used by a particular style :ul
 
 [Examples:]
 
 pair_style lj/cut 2.5
 pair_style eam/alloy
 pair_style hybrid lj/charmm/coul/long 10.0 eam
 pair_style table linear 1000
 pair_style none :pre
 
 [Description:]
 
 Set the formula(s) LAMMPS uses to compute pairwise interactions.  In
 LAMMPS, pair potentials are defined between pairs of atoms that are
 within a cutoff distance and the set of active interactions typically
 changes over time.  See the "bond_style"_bond_style.html command to
 define potentials between pairs of bonded atoms, which typically
 remain in place for the duration of a simulation.
 
 In LAMMPS, pairwise force fields encompass a variety of interactions,
 some of which include many-body effects, e.g. EAM, Stillinger-Weber,
 Tersoff, REBO potentials.  They are still classified as "pairwise"
 potentials because the set of interacting atoms changes with time
 (unlike molecular bonds) and thus a neighbor list is used to find
 nearby interacting atoms.
 
 Hybrid models where specified pairs of atom types interact via
 different pair potentials can be setup using the {hybrid} pair style.
 
 The coefficients associated with a pair style are typically set for
 each pair of atom types, and are specified by the
 "pair_coeff"_pair_coeff.html command or read from a file by the
 "read_data"_read_data.html or "read_restart"_read_restart.html
 commands.
 
 The "pair_modify"_pair_modify.html command sets options for mixing of
 type I-J interaction coefficients and adding energy offsets or tail
 corrections to Lennard-Jones potentials.  Details on these options as
 they pertain to individual potentials are described on the doc page
 for the potential.  Likewise, info on whether the potential
 information is stored in a "restart file"_write_restart.html is listed
 on the potential doc page.
 
 In the formulas listed for each pair style, {E} is the energy of a
 pairwise interaction between two atoms separated by a distance {r}.
 The force between the atoms is the negative derivative of this
 expression.
 
 If the pair_style command has a cutoff argument, it sets global
 cutoffs for all pairs of atom types.  The distance(s) can be smaller
 or larger than the dimensions of the simulation box.
 
 Typically, the global cutoff value can be overridden for a specific
 pair of atom types by the "pair_coeff"_pair_coeff.html command.  The
 pair style settings (including global cutoffs) can be changed by a
 subsequent pair_style command using the same style.  This will reset
 the cutoffs for all atom type pairs, including those previously set
 explicitly by a "pair_coeff"_pair_coeff.html command.  The exceptions
 to this are that pair_style {table} and {hybrid} settings cannot be
 reset.  A new pair_style command for these styles will wipe out all
 previously specified pair_coeff values.
 
 :line
 
 Here is an alphabetic list of pair styles defined in LAMMPS.  Click on
 the style to display the formula it computes, arguments specified in
 the pair_style command, and coefficients specified by the associated
 "pair_coeff"_pair_coeff.html command.
 
 Note that there are also additional pair styles submitted by users
 which are included in the LAMMPS distribution.  The list of these with
 links to the individual styles are given in the pair section of "this
 page"_Section_commands.html#cmd_5.
 
 There are also additional accelerated pair styles included in the
 LAMMPS distribution for faster performance on CPUs and GPUs.  The list
 of these with links to the individual styles are given in the pair
 section of "this page"_Section_commands.html#cmd_5.
 
 "pair_style none"_pair_none.html - turn off pairwise interactions
 "pair_style hybrid"_pair_hybrid.html - multiple styles of pairwise interactions
 "pair_style hybrid/overlay"_pair_hybrid.html - multiple styles of superposed pairwise interactions :ul
 
 "pair_style adp"_pair_adp.html - angular dependent potential (ADP) of Mishin
 "pair_style airebo"_pair_airebo.html - AIREBO potential of Stuart
+"pair_style body"_pair_body.html - interactions between body particles
 "pair_style bop"_pair_bop.html - BOP potential of Pettifor
 "pair_style born"_pair_born.html - Born-Mayer-Huggins potential
 "pair_style born/coul/long"_pair_born.html - Born-Mayer-Huggins with long-range Coulombics
 "pair_style born/coul/wolf"_pair_born.html - Born-Mayer-Huggins with Coulombics via Wolf potential
 "pair_style brownian"_pair_brownian.html - Brownian potential for Fast Lubrication Dynamics
 "pair_style brownian/poly"_pair_brownian.html - Brownian potential for Fast Lubrication Dynamics with polydispersity
 "pair_style buck"_pair_buck.html - Buckingham potential
 "pair_style buck/coul/cut"_pair_buck.html - Buckingham with cutoff Coulomb
 "pair_style buck/coul/long"_pair_buck.html - Buckingham with long-range Coulomb
 "pair_style colloid"_pair_colloid.html - integrated colloidal potential
 "pair_style comb"_pair_comb.html - charge-optimized many-body (COMB) potential
 "pair_style coul/cut"_pair_coul.html - cutoff Coulombic potential
 "pair_style coul/debye"_pair_coul.html - cutoff Coulombic potential with Debye screening
 "pair_style coul/long"_pair_coul.html - long-range Coulombic potential
 "pair_style coul/wolf"_pair_coul.html - Coulombics via Wolf potential
 "pair_style dipole/cut"_pair_dipole.html - point dipoles with cutoff
 "pair_style dpd"_pair_dpd.html - dissipative particle dynamics (DPD)
 "pair_style dpd/tstat"_pair_dpd.html - DPD thermostatting
 "pair_style dsmc"_pair_dsmc.html - Direct Simulation Monte Carlo (DSMC)
 "pair_style eam"_pair_eam.html - embedded atom method (EAM)
 "pair_style eam/alloy"_pair_eam.html - alloy EAM
 "pair_style eam/fs"_pair_eam.html - Finnis-Sinclair EAM
 "pair_style eim"_pair_eim.html - embedded ion method (EIM)
 "pair_style gauss"_pair_gauss.html - Gaussian potential
 "pair_style gayberne"_pair_gayberne.html - Gay-Berne ellipsoidal potential
 "pair_style gran/hertz/history"_pair_gran.html - granular potential with Hertzian interactions
 "pair_style gran/hooke"_pair_gran.html - granular potential with history effects
 "pair_style gran/hooke/history"_pair_gran.html - granular potential without history effects
 "pair_style hbond/dreiding/lj"_pair_hbond_dreiding.html - DREIDING hydrogen bonding LJ potential
 "pair_style hbond/dreiding/morse"_pair_hbond_dreiding.html - DREIDING hydrogen bonding Morse potential
 "pair_style lcbop"_pair_lcbop.html - long-range bond-order potential (LCBOP)
 "pair_style line/lj"_pair_line_lj.html - LJ potential between line segments
 "pair_style lj/charmm/coul/charmm"_pair_charmm.html - CHARMM potential with cutoff Coulomb
 "pair_style lj/charmm/coul/charmm/implicit"_pair_charmm.html - CHARMM for implicit solvent
 "pair_style lj/charmm/coul/long"_pair_charmm.html - CHARMM with long-range Coulomb
 "pair_style lj/class2"_pair_class2.html - COMPASS (class 2) force field with no Coulomb
 "pair_style lj/class2/coul/cut"_pair_class2.html - COMPASS with cutoff Coulomb
 "pair_style lj/class2/coul/long"_pair_class2.html - COMPASS with long-range Coulomb
 "pair_style lj/cut"_pair_lj.html - cutoff Lennard-Jones potential with no Coulomb
 "pair_style lj/cut/coul/cut"_pair_lj.html - LJ with cutoff Coulomb
 "pair_style lj/cut/coul/debye"_pair_lj.html - LJ with Debye screening added to Coulomb
 "pair_style lj/cut/coul/long"_pair_lj.html - LJ with long-range Coulomb
 "pair_style lj/cut/coul/long/tip4p"_pair_lj.html - LJ with long-range Coulomb for TIP4P water
 "pair_style lj/expand"_pair_lj_expand.html - Lennard-Jones for variable size particles
 "pair_style lj/gromacs"_pair_gromacs.html - GROMACS-style Lennard-Jones potential
 "pair_style lj/gromacs/coul/gromacs"_pair_gromacs.html - GROMACS-style LJ and Coulombic potential
 "pair_style lj/smooth"_pair_lj_smooth.html - smoothed Lennard-Jones potential
 "pair_style lj/smooth/linear"_pair_lj_smooth_linear.html - linear smoothed Lennard-Jones potential
 "pair_style lj96/cut"_pair_lj96.html - Lennard-Jones 9/6 potential
 "pair_style lubricate"_pair_lubricate.html - hydrodynamic lubrication forces
 "pair_style lubricate/poly"_pair_lubricate.html - hydrodynamic lubrication forces with polydispersity
 "pair_style lubricateU"_pair_lubricateU.html - hydrodynamic lubrication forces for Fast Lubrication Dynamics
 "pair_style lubricateU/poly"_pair_lubricateU.html - hydrodynamic lubrication forces for Fast Lubrication with polydispersity
 "pair_style meam"_pair_meam.html - modified embedded atom method (MEAM)
 "pair_style mie/cut"_pair_mie.html - Mie potential
 "pair_style morse"_pair_morse.html - Morse potential
 "pair_style peri/lps"_pair_peri.html - peridynamic LPS potential
 "pair_style peri/pmb"_pair_peri.html - peridynamic PMB potential
 "pair_style reax"_pair_reax.html - ReaxFF potential
 "pair_style rebo"_pair_airebo.html - 2nd generation REBO potential of Brenner
 "pair_style resquared"_pair_resquared.html - Everaers RE-Squared ellipsoidal potential
 "pair_style soft"_pair_soft.html - Soft (cosine) potential
 "pair_style sw"_pair_sw.html - Stillinger-Weber 3-body potential
 "pair_style table"_pair_table.html - tabulated pair potential
 "pair_style tersoff"_pair_tersoff.html - Tersoff 3-body potential
 "pair_style tersoff/zbl"_pair_tersoff_zbl.html - Tersoff/ZBL 3-body potential
 "pair_style tri/lj"_pair_tri_lj.html - LJ potential between triangles
 "pair_style yukawa"_pair_yukawa.html - Yukawa potential
 "pair_style yukawa/colloid"_pair_yukawa_colloid.html - screened Yukawa potential for finite-size particles :ul
 
 :line
 
 [Restrictions:]
 
 This command must be used before any coefficients are set by the
 "pair_coeff"_pair_coeff.html, "read_data"_read_data.html, or
 "read_restart"_read_restart.html commands.
 
 Some pair styles are part of specific packages.  They are only enabled
 if LAMMPS was built with that package.  See the "Making
 LAMMPS"_Section_start.html#start_3 section for more info on packages.
 The doc pages for individual pair potentials tell if it is part of a
 package.
 
 [Related commands:]
 
 "pair_coeff"_pair_coeff.html, "read_data"_read_data.html,
 "pair_modify"_pair_modify.html, "kspace_style"_kspace_style.html,
 "dielectric"_dielectric.html, "pair_write"_pair_write.html
 
 [Default:]
 
 pair_style none :pre
diff --git a/doc/read_data.html b/doc/read_data.html
index 28e7148e8..e06f2c731 100644
--- a/doc/read_data.html
+++ b/doc/read_data.html
@@ -1,857 +1,919 @@
 <HTML>
 <CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A> 
 </CENTER>
 
 
 
 
 
 
 <HR>
 
 <H3>read_data command 
 </H3>
 <P><B>Syntax:</B>
 </P>
 <PRE>read_data file keyword args ... 
 </PRE>
 <UL><LI>file = name of data file to read in 
 
 <LI>zero or more keyword/arg pairs may be appended 
 
 <LI>keyword = <I>fix</I> 
 
 <PRE>  <I>fix</I> args = fix-ID header-string section-string
     fix-ID = ID of fix to process header lines and sections of data file
     header-string = header lines containing this string will be passed to fix
     section-string = section names with this string will be passed to fix 
 </PRE>
 
 </UL>
 <P><B>Examples:</B>
 </P>
 <PRE>read_data data.lj
 read_data ../run7/data.polymer.gz
 read_data data.protein fix mycmap crossterm CMAP 
 </PRE>
 <P><B>Description:</B>
 </P>
 <P>Read in a data file containing information LAMMPS needs to run a
 simulation.  The file can be ASCII text or a gzipped text file
 (detected by a .gz suffix).  This is one of 3 ways to specify initial
 atom coordinates; see the <A HREF = "read_restart.html">read_restart</A> and
 <A HREF = "create_atoms.html">create_atoms</A> commands for alternative methods.
 </P>
 <P>The structure of the data file is important, though many settings and
 sections are optional or can come in any order.  See the examples
 directory for sample data files for different problems.
 </P>
 <P>A data file has a header and a body.  The header appears first.  The
 first line of the header is always skipped; it typically contains a
 description of the file.  Then lines are read one at a time.  Lines
 can have a trailing comment starting with '#' that is ignored.  If the
 line is blank (only whitespace after comment is deleted), it is
 skipped.  If the line contains a header keyword, the corresponding
 value(s) is read from the line.  If it doesn't contain a header
 keyword, the line begins the body of the file.
 </P>
 <P>The body of the file contains zero or more sections.  The first line
 of a section has only a keyword.  The next line is skipped.  The
 remaining lines of the section contain values.  The number of lines
 depends on the section keyword as described below.  Zero or more blank
 lines can be used between sections.  Sections can appear in any order,
 with a few exceptions as noted below.
 </P>
 <P>If the keyword <I>fix</I> is used, it specifies a fix that will be used to
 process portions of the data file.  Any header line containing
 <I>header-string</I> and any section with a name containing
 <I>section-string</I> will be passed to the fix.  See the <A HREF = "fix_cmap.html">fix
 cmap</A> command for an example of a fix that operates in
 this manner.  The doc page for the fix defines the syntax of the
 header line(s) and section(s) that it reads from the data file.
 </P>
 <P>The formatting of individual lines in the data file (indentation,
 spacing between words and numbers) is not important except that header
 and section keywords (e.g. atoms, xlo xhi, Masses, Bond Coeffs) must
 be capitalized as shown and can't have extra white space between their
 words - e.g. two spaces or a tab between "Bond" and "Coeffs" is not
 valid.
 </P>
 <HR>
 
 <P>These are the recognized header keywords.  Header lines can come in
 any order.  The value(s) are read from the beginning of the line.
 Thus the keyword <I>atoms</I> should be in a line like "1000 atoms"; the
 keyword <I>ylo yhi</I> should be in a line like "-10.0 10.0 ylo yhi"; the
 keyword <I>xy xz yz</I> should be in a line like "0.0 5.0 6.0 xy xz yz".
 All these settings have a default value of 0, except the lo/hi box
 size defaults are -0.5 and 0.5.  A line need only appear if the value
 is different than the default.
 </P>
 <UL><LI><I>atoms</I> = # of atoms in system
 <LI><I>bonds</I> = # of bonds in system
 <LI><I>angles</I> = # of angles in system
 <LI><I>dihedrals</I> = # of dihedrals in system
 <LI><I>impropers</I> = # of impropers in system
 <LI><I>atom types</I> = # of atom types in system
 <LI><I>bond types</I> = # of bond types in system
 <LI><I>angle types</I> = # of angle types in system
 <LI><I>dihedral types</I> = # of dihedral types in system
 <LI><I>improper types</I> = # of improper types in system
 <LI><I>extra bond per atom</I> = leave space for this many new bonds per atom
 <LI><I>ellipsoids</I> = # of ellipsoids in system
 <LI><I>lines</I> = # of line segments in system
 <LI><I>triangles</I> = # of triangles in system
+<LI><I>bodies</I> = # of bodies in system
 <LI><I>xlo xhi</I> = simulation box boundaries in x dimension
 <LI><I>ylo yhi</I> = simulation box boundaries in y dimension
 <LI><I>zlo zhi</I> = simulation box boundaries in z dimension
 <LI><I>xy xz yz</I> = simulation box tilt factors for triclinic system 
 </UL>
 <P>The initial simulation box size is determined by the lo/hi settings.
 In any dimension, the system may be periodic or non-periodic; see the
 <A HREF = "boundary.html">boundary</A> command.
 </P>
 <P>If the <I>xy xz yz</I> line does not appear, LAMMPS will set up an
 axis-aligned (orthogonal) simulation box.  If the line does appear,
 LAMMPS creates a non-orthogonal simulation domain shaped as a
 parallelepiped with triclinic symmetry.  The parallelepiped has its
 "origin" at (xlo,ylo,zlo) and is defined by 3 edge vectors starting
 from the origin given by A = (xhi-xlo,0,0); B = (xy,yhi-ylo,0); C =
 (xz,yz,zhi-zlo).  <I>Xy,xz,yz</I> can be 0.0 or positive or negative values
 and are called "tilt factors" because they are the amount of
 displacement applied to faces of an originally orthogonal box to
 transform it into the parallelepiped.
 </P>
 <P>The tilt factors (xy,xz,yz) can not skew the box more than half the
 distance of the corresponding parallel box length.  For example, if
 xlo = 2 and xhi = 12, then the x box length is 10 and the xy tilt
 factor must be between -5 and 5.  Similarly, both xz and yz must be
 between -(xhi-xlo)/2 and +(yhi-ylo)/2.  Note that this is not a
 limitation, since if the maximum tilt factor is 5 (as in this
 example), then configurations with tilt = ..., -15, -5, 5, 15, 25,
 ... are all geometrically equivalent.
 </P>
 <P>See <A HREF = "Section_howto.html#howto_12">Section_howto 12</A> of the doc pages
 for a geometric description of triclinic boxes, as defined by LAMMPS,
 and how to transform these parameters to and from other commonly used
 triclinic representations.
 </P>
 <P>When a triclinic system is used, the simulation domain must be
 periodic in any dimensions with a non-zero tilt factor, as defined by
 the <A HREF = "boundary.html">boundary</A> command.  I.e. if the xy tilt factor is
 non-zero, then both the x and y dimensions must be periodic.
 Similarly, x and z must be periodic if xz is non-zero and y and z must
 be periodic if yz is non-zero.  Also note that if your simulation will
 tilt the box, e.g. via the <A HREF = "fix_deform.html">fix deform</A> command, the
 simulation box must be defined as triclinic, even if the tilt factors
 are initially 0.0.
 </P>
 <P>For 2d simulations, the <I>zlo zhi</I> values should be set to bound the z
 coords for atoms that appear in the file; the default of -0.5 0.5 is
 valid if all z coords are 0.0.  For 2d triclinic simulations, the xz
 and yz tilt factors must be 0.0.
 </P>
 <P>If the system is periodic (in a dimension), then atom coordinates can
 be outside the bounds (in that dimension); they will be remapped (in a
 periodic sense) back inside the box.
 </P>
 <P>IMPORTANT NOTE: If the system is non-periodic (in a dimension), then
 all atoms in the data file must have coordinates (in that dimension)
 that are "greater than or equal to" the lo value and "less than or
 equal to" the hi value.  If the non-periodic dimension is of style
 "fixed" (see the <A HREF = "boundary.html">boundary</A> command), then the atom
 coords must be strictly "less than" the hi value, due to the way
 LAMMPS assign atoms to processors.  Note that you should not make the
 lo/hi values radically smaller/larger than the extent of the atoms.
 For example, if your atoms extend from 0 to 50, you should not specify
 the box bounds as -10000 and 10000.  This is because LAMMPS uses the
 specified box size to layout the 3d grid of processors.  A huge
 (mostly empty) box will be sub-optimal for performance when using
 "fixed" boundary conditions (see the <A HREF = "boundary.html">boundary</A>
 command).  When using "shrink-wrap" boundary conditions (see the
 <A HREF = "boundary.html">boundary</A> command), a huge (mostly empty) box may cause
 a parallel simulation to lose atoms the first time that LAMMPS
 shrink-wraps the box around the atoms.
 </P>
 <P>The "extra bond per atom" setting should be used if new bonds will be
 added to the system when a simulation runs, e.g. by using the <A HREF = "fix_bond_create.html">fix
 bond/create</A> command.  This will pre-allocate
 space in LAMMPS data structures for storing the new bonds.
 </P>
-<P>The "ellipsoids" and "lines" and "triangles" settings are only used
-with <A HREF = "atom_style.html">atom_style ellipsoid or line or tri</A> and
-specifies how many of the atoms are finite-size ellipsoids or lines or
-triangles; the remainder are point particles.  See the discussion of
-ellipsoidflag and the <I>Ellipsoids</I> section below.  See the discussion
-of lineflag and the <I>Lines</I> section below.  See the discussion of
-triangleflag and the <I>Triangles</I> section below.
+<P>The "ellipsoids" and "lines" and "triangles" and "bodies" settings are
+only used with <A HREF = "atom_style.html">atom_style ellipsoid or line or tri or
+body</A> and specify how many of the atoms are
+finite-size ellipsoids or lines or triangles or bodies; the remainder
+are point particles.  See the discussion of ellipsoidflag and the
+<I>Ellipsoids</I> section below.  See the discussion of lineflag and the
+<I>Lines</I> section below.  See the discussion of triangleflag and the
+<I>Triangles</I> section below.  See the discussion of bodyflag and the
+<I>Bodies</I> section below.
 </P>
 <HR>
 
 <P>These are the section keywords for the body of the file.
 </P>
-<UL><LI><I>Atoms, Velocities, Masses, Ellipsoids, Lines, Triangles</I> = atom-property sections 
+<UL><LI><I>Atoms, Velocities, Masses, Ellipsoids, Lines, Triangles, Bodies</I> = atom-property sections 
 <LI><I>Bonds, Angles, Dihedrals, Impropers</I> = molecular topology sections 
 <LI><I>Pair Coeffs, Bond Coeffs, Angle Coeffs, Dihedral Coeffs,    Improper Coeffs</I> = force field sections
 <LI><I>BondBond Coeffs, BondAngle Coeffs, MiddleBondTorsion Coeffs,    EndBondTorsion Coeffs, AngleTorsion Coeffs, AngleAngleTorsion Coeffs,    BondBond13 Coeffs, AngleAngle Coeffs</I> = class 2 force field sections 
 </UL>
 <P>Each section is listed below in alphabetic order.  The format of each
 section is described including the number of lines it must contain and
 rules (if any) for where it can appear in the data file.
 </P>
 <P>Any individual line in the various sections can have a trailing
 comment starting with "#" for annotation purposes.  E.g. in the
 Atoms section:
 </P>
 <PRE>10 1 17 -1.0 10.0 5.0 6.0   # salt ion 
 </PRE>
 <HR>
 
 <P><I>Angle Coeffs</I> section:
 </P>
 <UL><LI>one line per angle type 
 
 <LI>line syntax: ID coeffs 
 
 <PRE>  ID = angle type (1-N)
   coeffs = list of coeffs 
 </PRE>
 <LI>example: 
 
 <PRE>  6 70 108.5 0 0 
 </PRE>
 
 </UL>
 <P>The number and meaning of the coefficients are specific to the defined
 angle style.  See the <A HREF = "angle_style.html">angle_style</A> and
 <A HREF = "angle_coeff.html">angle_coeff</A> commands for details.  Coefficients can
 also be set via the <A HREF = "angle_coeff.html">angle_coeff</A> command in the
 input script.
 </P>
 <HR>
 
 <P><I>AngleAngle Coeffs</I> section:
 </P>
 <UL><LI>one line per improper type 
 
 <LI>line syntax: ID coeffs 
 
 <PRE>  ID = improper type (1-N)
   coeffs = list of coeffs (see <A HREF = "improper_coeff.html">improper_coeff</A>) 
 </PRE>
 
 </UL>
 <HR>
 
 <P><I>AngleAngleTorsion Coeffs</I> section:
 </P>
 <UL><LI>one line per dihedral type 
 
 <LI>line syntax: ID coeffs 
 
 <PRE>  ID = dihedral type (1-N)
   coeffs = list of coeffs (see <A HREF = "dihedral_coeff.html">dihedral_coeff</A>) 
 </PRE>
 
 </UL>
 <HR>
 
 <P><I>Angles</I> section:
 </P>
 <UL><LI>one line per angle 
 
 <LI>line syntax: ID type atom1 atom2 atom3 
 
 <PRE>  ID = number of angle (1-Nangles)
   type = angle type (1-Nangletype)
   atom1,atom2,atom3 = IDs of 1st,2nd,3rd atoms in angle 
 </PRE>
 example: 
 <BR>
 <PRE>  2 2 17 29 430 
 </PRE>
 
 </UL>
 <P>The 3 atoms are ordered linearly within the angle.  Thus the central
 atom (around which the angle is computed) is the atom2 in the list.
 E.g. H,O,H for a water molecule.  The <I>Angles</I> section must appear
 after the <I>Atoms</I> section.  All values in this section must be
 integers (1, not 1.0).
 </P>
 <HR>
 
 <P><I>AngleTorsion Coeffs</I> section:
 </P>
 <UL><LI>one line per dihedral type 
 
 <LI>line syntax: ID coeffs 
 
 <PRE>  ID = dihedral type (1-N)
   coeffs = list of coeffs (see <A HREF = "dihedral_coeff.html">dihedral_coeff</A>) 
 </PRE>
 
 </UL>
 <HR>
 
 <P><I>Atoms</I> section:
 </P>
 <UL><LI>one line per atom
 <LI>line syntax: depends on atom style 
 </UL>
 <P>An <I>Atoms</I> section must appear in the data file if natoms > 0 in the
 header section.  The atoms can be listed in any order.  These are the
 line formats for each <A HREF = "atom_style.html">atom style</A> in LAMMPS.  As
 discussed below, each line can optionally have 3 flags (nx,ny,nz)
 appended to it, which indicate which image of a periodic simulation
 box the atom is in.  These may be important to include for some kinds
 of analysis.
 </P>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR><TD >angle</TD><TD > atom-ID molecule-ID atom-type x y z</TD></TR>
 <TR><TD >atomic</TD><TD > atom-ID atom-type x y z</TD></TR>
+<TR><TD >body</TD><TD > atom-ID atom-type bodyflag mass x y z</TD></TR>
 <TR><TD >bond</TD><TD > atom-ID molecule-ID atom-type x y z</TD></TR>
 <TR><TD >charge</TD><TD > atom-ID atom-type q x y z</TD></TR>
 <TR><TD >dipole</TD><TD > atom-ID atom-type q x y z mux muy muz</TD></TR>
 <TR><TD >electron</TD><TD > atom-ID atom-type q spin eradius x y z</TD></TR>
 <TR><TD >ellipsoid</TD><TD > atom-ID atom-type ellipsoidflag density x y z</TD></TR>
 <TR><TD >full</TD><TD > atom-ID molecule-ID atom-type q x y z</TD></TR>
 <TR><TD >line</TD><TD > atom-ID molecule-ID atom-type lineflag density x y z</TD></TR>
 <TR><TD >meso</TD><TD > atom-ID atom-type rho e cv x y z</TD></TR>
 <TR><TD >molecular</TD><TD > atom-ID molecule-ID atom-type x y z</TD></TR>
 <TR><TD >peri</TD><TD > atom-ID atom-type volume density x y z</TD></TR>
 <TR><TD >sphere</TD><TD > atom-ID atom-type diameter density x y z</TD></TR>
 <TR><TD >tri</TD><TD > atom-ID molecule-ID atom-type triangleflag density x y z</TD></TR>
 <TR><TD >wavepacket</TD><TD > atom-ID atom-type charge spin eradius etag cs_re cs_im x y z</TD></TR>
 <TR><TD >hybrid</TD><TD > atom-ID atom-type x y z sub-style1 sub-style2 ...  
 </TD></TR></TABLE></DIV>
 
 <P>The keywords have these meanings:
 </P>
 <UL><LI>atom-ID = integer ID of atom
 <LI>molecule-ID = integer ID of molecule the atom belongs to
 <LI>atom-type = type of atom (1-Ntype)
 <LI>q = charge on atom (charge units)
 <LI>diameter = diameter of spherical atom (distance units)
 <LI>ellipsoidflag = 1 for ellipsoidal particles, 0 for point particles
 <LI>lineflag = 1 for line segment particles, 0 for point particles
 <LI>triangleflag = 1 for triangular particles, 0 for point particles
+<LI>bodyflag = 1 for body particles, 0 for point particles
 <LI>density = density of particle (mass/distance^3 or mass/distance^2 or mass/distance units, depending on dimensionality of particle)
-<LI>volume = volume of atom (distance^3 units)
+<LI>mass = mass of particle (mass units)
+<LI>volume = volume of particle (distance^3 units)
 <LI>x,y,z = coordinates of atom
 <LI>mux,muy,muz = components of dipole moment of atom (dipole units)
 <LI>rho = density (need units) for SPH particles
 <LI>e = energy (need units) for SPH particles
 <LI>cv = heat capacity (need units) for SPH particles
 <LI>spin = electron spin (+1/-1), 0 = nuclei, 2 = fixed-core, 3 = pseudo-cores (i.e. ECP)
 <LI>eradius = electron radius (or fixed-core radius)
 <LI>etag = integer ID of electron that each wavepacket belongs to
 <LI>cs_re,cs_im = real/imaginary parts of wavepacket coefficients 
 </UL>
 <P>The units for these quantities depend on the unit style; see the
 <A HREF = "units.html">units</A> command for details.
 </P>
 <P>For 2d simulations specify z as 0.0, or a value within the <I>zlo zhi</I>
 setting in the data file header.
 </P>
 <P>The atom-ID is used to identify the atom throughout the simulation and
 in dump files.  Normally, it is a unique value from 1 to Natoms for
 each atom.  Unique values larger than Natoms can be used, but they
 will cause extra memory to be allocated on each processor, if an atom
 map array is used (see the <A HREF = "atom_modify.html">atom_modify</A> command).
 If an atom map array is not used (e.g. an atomic system with no
 bonds), and velocities are not assigned in the data file, and you
 don't care if unique atom IDs appear in dump files, then the atom-IDs
 can all be set to 0.
 </P>
 <P>The molecule ID is a 2nd identifier attached to an atom.  Normally, it
 is a number from 1 to N, identifying which molecule the atom belongs
 to.  It can be 0 if it is an unbonded atom or if you don't care to
 keep track of molecule assignments.
 </P>
 <P>The diameter specifies the size of a finite-size spherical particle.
 It can be set to 0.0, which means that atom is a point particle.
 </P>
-<P>The ellipsoidflag, lineflag, and triangleflag determine whether the
-particle is a finite-size ellipsoid or line or triangle of finite
-size, or a point particle.  Additional attributes must be defined for
-each ellipsoid in the <I>Ellipsoids</I> section.  Additional attributes
-must be defined for each line in the <I>Lines</I> section.  Additional
-attributes must be defined for each triangle in the <I>Triangles</I>
-section.
+<P>The ellipsoidflag, lineflag, triangleflag, and bodyflag determine
+whether the particle is a finite-size ellipsoid or line or triangle or
+body of finite size, or a point particle.  Additional attributes must
+be defined for each ellipsoid in the <I>Ellipsoids</I> section.  Additional
+attributes must be defined for each line in the <I>Lines</I> section.
+Additional attributes must be defined for each triangle in the
+<I>Triangles</I> section.  Additional attributes must be defined for each
+body in the <I>Bodies</I> section.
 </P>
 <P>Some pair styles and fixes and computes that operate on finite-size
 particles allow for a mixture of finite-size and point particles.  See
 the doc pages of individual commands for details.
 </P>
-<P>The density is used in conjunction with the particle volume for
-finite-size particles to set the mass of the particle as mass =
-density * volume.  In this context, volume can be a 3d quantity (for
-spheres or ellipsoids), a 2d quantity (for triangles), or a 1d
-quantity (for line segments).  If the volume is 0.0, meaning a point
-particle, then the density value is used as the mass.
+<P>For finite-size particles, the density is used in conjunction with the
+particle volume to set the mass of each particle as mass = density *
+volume.  In this context, volume can be a 3d quantity (for spheres or
+ellipsoids), a 2d quantity (for triangles), or a 1d quantity (for line
+segments).  If the volume is 0.0, meaning a point particle, then the
+density value is used as the mass.  One exception is for the body
+style, in which case the mass of each particle (body or point
+particle) is specified explicitly.  This is because the volume of the
+body is not known.
 </P>
 <P>For atom_style hybrid, following the 5 initial values (ID,type,x,y,z),
 specific values for each sub-style must be listed.  The order of the
 sub-styles is the same as they were listed in the
 <A HREF = "atom_style.html">atom_style</A> command.  The sub-style specific values
 are those that are not the 5 standard ones (ID,type,x,y,z).  For
 example, for the "charge" sub-style, a "q" value would appear.  For
 the "full" sub-style, a "molecule-ID" and "q" would appear.  These are
 listed in the same order they appear as listed above.  Thus if
 </P>
 <PRE>atom_style hybrid charge sphere 
 </PRE>
 <P>were used in the input script, each atom line would have these fields:
 </P>
 <PRE>atom-ID atom-type x y z q diameter density 
 </PRE>
 <P>Note that if a non-standard value is defined by multiple sub-styles,
 it must appear mutliple times in the atom line.  E.g. the atom line
 for atom_style hybrid dipole full would list "q" twice:
 </P>
 <PRE>atom-ID atom-type x y z q mux muy myz molecule-ID q 
 </PRE>
 <P>Atom lines (all lines or none of them) can optionally list 3 trailing
 integer values: nx,ny,nz.  For periodic dimensions, they specify which
 image of the simulation box the atom is considered to be in.  An image
 of 0 means it is inside the box as defined.  A value of 2 means add 2
 box lengths to get the true value.  A value of -1 means subtract 1 box
 length to get the true value.  LAMMPS updates these flags as atoms
 cross periodic boundaries during the simulation.  The flags can be
 output with atom snapshots via the <A HREF = "dump.html">dump</A> command.
 </P>
 <P>If nx,ny,nz values are not set in the data file, LAMMPS initializes
 them to 0.  If image information is needed for later analysis and they
 are not all initially 0, it's important to set them correctly in the
 data file.  Also, if you plan to use the <A HREF = "replicate.html">replicate</A>
 command to generate a larger system, these flags must be listed
 correctly for bonded atoms when the bond crosses a periodic boundary.
 I.e. the values of the image flags should be different by 1 (in the
 appropriate dimension) for the two atoms in such a bond.
 </P>
 <P>Atom velocities and other atom quantities not defined above are set to
 0.0 when the <I>Atoms</I> section is read.  Velocities can be set later by
 a <I>Velocities</I> section in the data file or by a
 <A HREF = "velocity.html">velocity</A> or <A HREF = "set.html">set</A> command in the input
 script.
 </P>
 <HR>
 
+<P><I>Bodies</I> section:
+</P>
+<UL><LI>one or more lines per body 
+
+<LI>first line syntax: atom-ID ninteger ndouble 
+
+<PRE>  ninteger = # of integer quantities for this particle
+  ndouble = # of floating-point quantities for this particle 
+</PRE>
+<LI>0 or more integer lines: one line for every 10 integer quantities 
+
+<LI>0 or more double lines: one line for every 10 double quantities 
+
+<LI>example: 
+
+<PRE>  12 3 6
+  2 3 2
+  1.0 2.0 3.0 1.0 2.0 4.0 
+</PRE>
+<LI>example: 
+
+<PRE>  12 0 14
+  1.0 2.0 3.0 1.0 2.0 4.0 1.0 2.0 3.0 1.0
+  2.0 4.0 4.0 2.0 
+</PRE>
+
+</UL>
+<P>The <I>Bodies</I> section must appear if <A HREF = "atom_style.html">atom_style body</A>
+is used and any atoms are listed in the <I>Atoms</I> section with a
+bodyflag = 1.  The number of bodies should be specified in the header
+section via the "bodies" keyword.
+</P>
+<P>Each body can have a variable number of integer and/or floating-point
+values.  The number and meaning of the values is defined by the Body
+style which will process and store them for each body.  This style is
+given as an argument to the <A HREF = "atom_style.html">atom_style body</A> command.
+</P>
+<P>The ninteger and ndouble values determine how many integer and
+floating-point values are specified for this particle.  Ninteger and
+ndouble can be as large as needed and can be different for every body.
+Integer values are then listed on subsequent lines, 10 values per
+line.  Floating-point values follow on subsequent lines, again 10 per
+line.  If the number of lines is not evenly divisible by 10, the last
+line in that group contains the remaining values, e.g. 4 values out of
+14 in the last example above, for floating-point values.  If there are
+no values of a particular type, no lines appear for that type,
+e.g. there are no integer lines in the last example above.
+</P>
+<P>The <I>Bodies</I> section must appear after the <I>Atoms</I> section.
+</P>
+<HR>
+
 <P><I>Bond Coeffs</I> section:
 </P>
 <UL><LI>one line per bond type 
 
 <LI>line syntax: ID coeffs 
 
 <PRE>  ID = bond type (1-N)
   coeffs = list of coeffs 
 </PRE>
 <LI>example: 
 
 <PRE>  4 250 1.49 
 </PRE>
 
 </UL>
 <P>The number and meaning of the coefficients are specific to the defined
 bond style.  See the <A HREF = "bond_style.html">bond_style</A> and
 <A HREF = "bond_coeff.html">bond_coeff</A> commands for details.  Coefficients can
 also be set via the <A HREF = "bond_coeff.html">bond_coeff</A> command in the input
 script.
 </P>
 <HR>
 
 <P><I>BondAngle Coeffs</I> section:
 </P>
 <UL><LI>one line per angle type 
 
 <LI>line syntax: ID coeffs 
 
 <PRE>  ID = angle type (1-N)
   coeffs = list of coeffs (see class 2 section of <A HREF = "angle_coeff.html">angle_coeff</A>) 
 </PRE>
 
 </UL>
 <HR>
 
 <P><I>BondBond Coeffs</I> section:
 </P>
 <UL><LI>one line per angle type 
 
 <LI>line syntax: ID coeffs 
 
 <PRE>  ID = angle type (1-N)
   coeffs = list of coeffs (see class 2 section of <A HREF = "angle_coeff.html">angle_coeff</A>) 
 </PRE>
 
 </UL>
 <HR>
 
 <P><I>BondBond13 Coeffs</I> section:
 </P>
 <UL><LI>one line per dihedral type 
 
 <LI>line syntax: ID coeffs 
 
 <PRE>  ID = dihedral type (1-N)
   coeffs = list of coeffs (see class 2 section of <A HREF = "dihedral_coeff.html">dihedral_coeff</A>) 
 </PRE>
 
 </UL>
 <HR>
 
 <P><I>Bonds</I> section:
 </P>
 <UL><LI>one line per bond 
 
 <LI>line syntax: ID type atom1 atom2 
 
 <PRE>  ID = bond number (1-Nbonds)
   type = bond type (1-Nbondtype)
   atom1,atom2 = IDs of 1st,2nd atoms in bond 
 </PRE>
 <LI>example: 
 
 <PRE>  12 3 17 29 
 </PRE>
 
 </UL>
 <P>The <I>Bonds</I> section must appear after the <I>Atoms</I> section.  All values
 in this section must be integers (1, not 1.0).
 </P>
 <HR>
 
 <P><I>Dihedral Coeffs</I> section:
 </P>
 <UL><LI>one line per dihedral type 
 
 <LI>line syntax: ID coeffs 
 
 <PRE>  ID = dihedral type (1-N)
   coeffs = list of coeffs 
 </PRE>
 <LI>example: 
 
 <PRE>  3 0.6 1 0 1 
 </PRE>
 
 </UL>
 <P>The number and meaning of the coefficients are specific to the defined
 dihedral style.  See the <A HREF = "dihedral_style.html">dihedral_style</A> and
 <A HREF = "dihedral_coeff.html">dihedral_coeff</A> commands for details.
 Coefficients can also be set via the
 <A HREF = "dihedral_coeff.html">dihedral_coeff</A> command in the input script.
 </P>
 <HR>
 
 <P><I>Dihedrals</I> section:
 </P>
 <UL><LI>one line per dihedral 
 
 <LI>line syntax: ID type atom1 atom2 atom3 atom4 
 
 <PRE>  ID = number of dihedral (1-Ndihedrals)
   type = dihedral type (1-Ndihedraltype)
   atom1,atom2,atom3,atom4 = IDs of 1st,2nd,3rd,4th atoms in dihedral 
 </PRE>
 <LI>example: 
 
 <PRE>  12 4 17 29 30 21 
 </PRE>
 
 </UL>
 <P>The 4 atoms are ordered linearly within the dihedral.  The <I>Dihedrals</I>
 section must appear after the <I>Atoms</I> section.  All values in this
 section must be integers (1, not 1.0).
 </P>
 <HR>
 
 <P><I>Ellipsoids</I> section:
 </P>
 <UL><LI>one line per ellipsoid 
 
 <LI>line syntax: atom-ID shapex shapey shapez quatw quati quatj quatk 
 
 <PRE>  atom-ID = ID of atom which is an ellipsoid
   shapex,shapey,shapez = 3 diameters of ellipsoid (distance units)
   quatw,quati,quatj,quatk = quaternion components for orientation of atom 
 </PRE>
 <LI>example: 
 
 <PRE>  12 1 2 1 1 0 0 0 
 </PRE>
 
 </UL>
 <P>The <I>Ellipsoids</I> section must appear if <A HREF = "atom_style.html">atom_style
 ellipsoid</A> is used and any atoms are listed in the
 <I>Atoms</I> section with an ellipsoidflag = 1.  The number of ellipsoids
 should be specified in the header section via the "ellipsoids"
 keyword.
 </P>
 <P>The 3 shape values specify the 3 diameters or aspect ratios of a
 finite-size ellipsoidal particle, when it is oriented along the 3
 coordinate axes.  They must all be non-zero values.
 </P>
 <P>The values <I>quatw</I>, <I>quati</I>, <I>quatj</I>, and <I>quatk</I> set the orientation
 of the atom as a quaternion (4-vector).  Note that the shape
 attributes specify the aspect ratios of an ellipsoidal particle, which
 is oriented by default with its x-axis along the simulation box's
 x-axis, and similarly for y and z.  If this body is rotated (via the
 right-hand rule) by an angle theta around a unit vector (a,b,c), then
 the quaternion that represents its new orientation is given by
 (cos(theta/2), a*sin(theta/2), b*sin(theta/2), c*sin(theta/2)).  These
 4 components are quatw, quati, quatj, and quatk as specified above.
 LAMMPS normalizes each atom's quaternion in case (a,b,c) is not
 specified as a unit vector.
 </P>
 <P>The <I>Ellipsoids</I> section must appear after the <I>Atoms</I> section.
 </P>
 <HR>
 
 <P><I>EndBondTorsion Coeffs</I> section:
 </P>
 <UL><LI>one line per dihedral type 
 
 <LI>line syntax: ID coeffs 
 
 <PRE>  ID = dihedral type (1-N)
   coeffs = list of coeffs (see class 2 section of <A HREF = "dihedral_coeff.html">dihedral_coeff</A>) 
 </PRE>
 
 </UL>
 <HR>
 
 <P><I>Improper Coeffs</I> section:
 </P>
 <UL><LI>one line per improper type 
 
 <LI>line syntax: ID coeffs 
 
 <PRE>  ID = improper type (1-N)
   coeffs = list of coeffs 
 </PRE>
 <LI>example: 
 
 <PRE>  2 20 0.0548311 
 </PRE>
 
 </UL>
 <P>The number and meaning of the coefficients are specific to the defined
 improper style.  See the <A HREF = "improper_style.html">improper_style</A> and
 <A HREF = "improper_coeff.html">improper_coeff</A> commands for details.
 Coefficients can also be set via the
 <A HREF = "improper_coeff.html">improper_coeff</A> command in the input script.
 </P>
 <HR>
 
 <P><I>Impropers</I> section:
 </P>
 <UL><LI>one line per improper 
 
 <LI>line syntax: ID type atom1 atom2 atom3 atom4 
 
 <PRE>  ID = number of improper (1-Nimpropers)
   type = improper type (1-Nimpropertype)
   atom1,atom2,atom3,atom4 = IDs of 1st,2nd,3rd,4th atoms in improper 
 </PRE>
 <LI>example: 
 
 <PRE>  12 3 17 29 13 100 
 </PRE>
 
 </UL>
 <P>The ordering of the 4 atoms determines the definition of the improper
 angle used in the formula for each <A HREF = "improper_style.html">improper
 style</A>.  See the doc pages for individual styles
 for details.
 </P>
 <P>The <I>Impropers</I> section must appear after the <I>Atoms</I> section.  All
 values in this section must be integers (1, not 1.0).
 </P>
 <HR>
 
 <P><I>Lines</I> section:
 </P>
 <UL><LI>one line per line segment 
 
 <LI>line syntax: atom-ID x1 y1 x2 y2 
 
 <PRE>  atom-ID = ID of atom which is a line segment
   x1,y1 = 1st end point
   x2,y2 = 2nd end point 
 </PRE>
 <LI>example: 
 
 <PRE>  12 1.0 0.0 2.0 0.0 
 </PRE>
 
 </UL>
 <P>The <I>Lines</I> section must appear if <A HREF = "atom_style.html">atom_style line</A>
 is used and any atoms are listed in the <I>Atoms</I> section with a
 lineflag = 1.  The number of lines should be specified in the header
 section via the "lines" keyword.
 </P>
 <P>The 2 end points are the end points of the line segment.  The ordering
 of the 2 points should be such that using a right-hand rule to cross
 the line segment with a unit vector in the +z direction, gives an
 "outward" normal vector perpendicular to the line segment.
 I.e. normal = (c2-c1) x (0,0,1).  This orientation may be important
 for defining some interactions.
 </P>
 <P>The <I>Lines</I> section must appear after the <I>Atoms</I> section.
 </P>
 <HR>
 
 <P><I>Masses</I> section:
 </P>
 <UL><LI>one line per atom type 
 
 <LI>line syntax: ID mass 
 
 <PRE>  ID = atom type (1-N)
   mass = mass value 
 </PRE>
 <LI>example: 
 
 <PRE>  3 1.01 
 </PRE>
 
 </UL>
 <P>This defines the mass of each atom type.  This can also be set via the
 <A HREF = "mass.html">mass</A> command in the input script.  This section cannot be
 used for atom styles that define a mass for individual atoms -
 e.g. <A HREF = "atom_style.html">atom_style sphere</A>.
 </P>
 <HR>
 
 <P><I>MiddleBondTorsion Coeffs</I> section:
 </P>
 <UL><LI>one line per dihedral type 
 
 <LI>line syntax: ID coeffs 
 
 <PRE>  ID = dihedral type (1-N)
   coeffs = list of coeffs (see class 2 section of <A HREF = "dihedral_coeff.html">dihedral_coeff</A>) 
 </PRE>
 
 </UL>
 <HR>
 
 <P><I>Pair Coeffs</I> section:
 </P>
 <UL><LI>one line per atom type 
 
 <LI>line syntax: ID coeffs 
 
 <PRE>  ID = atom type (1-N)
   coeffs = list of coeffs 
 </PRE>
 <LI>example: 
 
 <PRE>  3 0.022 2.35197 0.022 2.35197 
 </PRE>
 
 </UL>
 <P>The number and meaning of the coefficients are specific to the defined
 pair style.  See the <A HREF = "pair_style.html">pair_style</A> and
 <A HREF = "pair_coeff.html">pair_coeff</A> commands for details.  Coefficients can
 also be set via the <A HREF = "pair_coeff.html">pair_coeff</A> command in the input
 script.
 </P>
 <HR>
 
 <P><I>Triangles</I> section:
 </P>
 <UL><LI>one line per triangle 
 
 <LI>line syntax: atom-ID x1 y1 x2 y2 
 
 <PRE>  atom-ID = ID of atom which is a line segment
   x1,y1,z1 = 1st corner point
   x2,y2,z2 = 2nd corner point
   x3,y3,z3 = 3rd corner point 
 </PRE>
 <LI>example: 
 
 <PRE>  12 0.0 0.0 0.0 2.0 0.0 1.0 0.0 2.0 1.0 
 </PRE>
 
 </UL>
 <P>The <I>Triangles</I> section must appear if <A HREF = "atom_style.html">atom_style
 tri</A> is used and any atoms are listed in the <I>Atoms</I>
 section with a triangleflag = 1.  The number of lines should be
 specified in the header section via the "triangles" keyword.
 </P>
 <P>The 3 corner points are the corner points of the triangle.  The
 ordering of the 3 points should be such that using a right-hand rule
 to go from point1 to point2 to point3 gives an "outward" normal vector
 to the face of the triangle.  I.e. normal = (c2-c1) x (c3-c1).  This
 orientation may be important for defining some interactions.
 </P>
 <P>The <I>Triangles</I> section must appear after the <I>Atoms</I> section.
 </P>
 <HR>
 
 <P><I>Velocities</I> section:
 </P>
 <UL><LI>one line per atom
 <LI>line syntax: depends on atom style 
 </UL>
 <DIV ALIGN=center><TABLE  BORDER=1 >
 <TR><TD >all styles except those listed</TD><TD > atom-ID vx vy vz</TD></TR>
 <TR><TD >electron</TD><TD > atom-ID vx vy vz ervel</TD></TR>
 <TR><TD >ellipsoid</TD><TD > atom-ID vx vy vz lx ly lz</TD></TR>
 <TR><TD >sphere</TD><TD > atom-ID vx vy vz wx wy wz</TD></TR>
 <TR><TD >hybrid</TD><TD > atom-ID vx vy vz sub-style1 sub-style2 ... 
 </TD></TR></TABLE></DIV>
 
 <P>where the keywords have these meanings:
 </P>
 <P>vx,vy,vz = translational velocity of atom
 lx,ly,lz = angular momentum of aspherical atom
 wx,wy,wz = angular velocity of spherical atom
 ervel = electron radial velocity (0 for fixed-core):ul
 </P>
 <P>The velocity lines can appear in any order.  This section can only be
 used after an <I>Atoms</I> section.  This is because the <I>Atoms</I> section
 must have assigned a unique atom ID to each atom so that velocities
 can be assigned to them.
 </P>
 <P>Vx, vy, vz, and ervel are in <A HREF = "units.html">units</A> of velocity.  Lx, ly,
 lz are in units of angular momentum (distance-velocity-mass).  Wx, Wy,
 Wz are in units of angular velocity (radians/time).
 </P>
 <P>For atom_style hybrid, following the 4 initial values (ID,vx,vy,vz),
 specific values for each sub-style must be listed.  The order of the
 sub-styles is the same as they were listed in the
 <A HREF = "atom_style.html">atom_style</A> command.  The sub-style specific values
 are those that are not the 5 standard ones (ID,vx,vy,vz).  For
 example, for the "sphere" sub-style, "wx", "wy", "wz" values would
 appear.  These are listed in the same order they appear as listed
 above.  Thus if
 </P>
 <PRE>atom_style hybrid electron sphere 
 </PRE>
 <P>were used in the input script, each velocity line would have these
 fields:
 </P>
 <PRE>atom-ID vx vy vz ervel wx wy wz 
 </PRE>
 <P>Translational velocities can also be set by the
 <A HREF = "velocity.html">velocity</A> command in the input script.
 </P>
 <HR>
 
 <P><B>Restrictions:</B>
 </P>
 <P>To read gzipped data files, you must compile LAMMPS with the
 -DLAMMPS_GZIP option - see the <A HREF = "Section_start.html#start_2">Making
 LAMMPS</A> section of the documentation.
 </P>
 <P><B>Related commands:</B>
 </P>
 <P><A HREF = "read_dump.html">read_dump</A>, <A HREF = "read_restart.html">read_restart</A>,
 <A HREF = "create_atoms.html">create_atoms</A>
 </P>
 <P><B>Default:</B> none
 </P>
 </HTML>
diff --git a/doc/read_data.txt b/doc/read_data.txt
index 17f627c1e..827b67620 100644
--- a/doc/read_data.txt
+++ b/doc/read_data.txt
@@ -1,759 +1,812 @@
 "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
 
 read_data command :h3
 
 [Syntax:]
 
 read_data file keyword args ... :pre
 
 file = name of data file to read in :ulb,l
 zero or more keyword/arg pairs may be appended :l
 keyword = {fix} :l
   {fix} args = fix-ID header-string section-string
     fix-ID = ID of fix to process header lines and sections of data file
     header-string = header lines containing this string will be passed to fix
     section-string = section names with this string will be passed to fix :pre
 :ule
 
 
 [Examples:]
 
 read_data data.lj
 read_data ../run7/data.polymer.gz
 read_data data.protein fix mycmap crossterm CMAP :pre
 
 [Description:]
 
 Read in a data file containing information LAMMPS needs to run a
 simulation.  The file can be ASCII text or a gzipped text file
 (detected by a .gz suffix).  This is one of 3 ways to specify initial
 atom coordinates; see the "read_restart"_read_restart.html and
 "create_atoms"_create_atoms.html commands for alternative methods.
 
 The structure of the data file is important, though many settings and
 sections are optional or can come in any order.  See the examples
 directory for sample data files for different problems.
 
 A data file has a header and a body.  The header appears first.  The
 first line of the header is always skipped; it typically contains a
 description of the file.  Then lines are read one at a time.  Lines
 can have a trailing comment starting with '#' that is ignored.  If the
 line is blank (only whitespace after comment is deleted), it is
 skipped.  If the line contains a header keyword, the corresponding
 value(s) is read from the line.  If it doesn't contain a header
 keyword, the line begins the body of the file.
 
 The body of the file contains zero or more sections.  The first line
 of a section has only a keyword.  The next line is skipped.  The
 remaining lines of the section contain values.  The number of lines
 depends on the section keyword as described below.  Zero or more blank
 lines can be used between sections.  Sections can appear in any order,
 with a few exceptions as noted below.
 
 If the keyword {fix} is used, it specifies a fix that will be used to
 process portions of the data file.  Any header line containing
 {header-string} and any section with a name containing
 {section-string} will be passed to the fix.  See the "fix
 cmap"_fix_cmap.html command for an example of a fix that operates in
 this manner.  The doc page for the fix defines the syntax of the
 header line(s) and section(s) that it reads from the data file.
 
 The formatting of individual lines in the data file (indentation,
 spacing between words and numbers) is not important except that header
 and section keywords (e.g. atoms, xlo xhi, Masses, Bond Coeffs) must
 be capitalized as shown and can't have extra white space between their
 words - e.g. two spaces or a tab between "Bond" and "Coeffs" is not
 valid.
 
 :line
 
 These are the recognized header keywords.  Header lines can come in
 any order.  The value(s) are read from the beginning of the line.
 Thus the keyword {atoms} should be in a line like "1000 atoms"; the
 keyword {ylo yhi} should be in a line like "-10.0 10.0 ylo yhi"; the
 keyword {xy xz yz} should be in a line like "0.0 5.0 6.0 xy xz yz".
 All these settings have a default value of 0, except the lo/hi box
 size defaults are -0.5 and 0.5.  A line need only appear if the value
 is different than the default.
 
 {atoms} = # of atoms in system
 {bonds} = # of bonds in system
 {angles} = # of angles in system
 {dihedrals} = # of dihedrals in system
 {impropers} = # of impropers in system
 {atom types} = # of atom types in system
 {bond types} = # of bond types in system
 {angle types} = # of angle types in system
 {dihedral types} = # of dihedral types in system
 {improper types} = # of improper types in system
 {extra bond per atom} = leave space for this many new bonds per atom
 {ellipsoids} = # of ellipsoids in system
 {lines} = # of line segments in system
 {triangles} = # of triangles in system
+{bodies} = # of bodies in system
 {xlo xhi} = simulation box boundaries in x dimension
 {ylo yhi} = simulation box boundaries in y dimension
 {zlo zhi} = simulation box boundaries in z dimension
 {xy xz yz} = simulation box tilt factors for triclinic system :ul
 
 The initial simulation box size is determined by the lo/hi settings.
 In any dimension, the system may be periodic or non-periodic; see the
 "boundary"_boundary.html command.
 
 If the {xy xz yz} line does not appear, LAMMPS will set up an
 axis-aligned (orthogonal) simulation box.  If the line does appear,
 LAMMPS creates a non-orthogonal simulation domain shaped as a
 parallelepiped with triclinic symmetry.  The parallelepiped has its
 "origin" at (xlo,ylo,zlo) and is defined by 3 edge vectors starting
 from the origin given by A = (xhi-xlo,0,0); B = (xy,yhi-ylo,0); C =
 (xz,yz,zhi-zlo).  {Xy,xz,yz} can be 0.0 or positive or negative values
 and are called "tilt factors" because they are the amount of
 displacement applied to faces of an originally orthogonal box to
 transform it into the parallelepiped.
 
 The tilt factors (xy,xz,yz) can not skew the box more than half the
 distance of the corresponding parallel box length.  For example, if
 xlo = 2 and xhi = 12, then the x box length is 10 and the xy tilt
 factor must be between -5 and 5.  Similarly, both xz and yz must be
 between -(xhi-xlo)/2 and +(yhi-ylo)/2.  Note that this is not a
 limitation, since if the maximum tilt factor is 5 (as in this
 example), then configurations with tilt = ..., -15, -5, 5, 15, 25,
 ... are all geometrically equivalent.
 
 See "Section_howto 12"_Section_howto.html#howto_12 of the doc pages
 for a geometric description of triclinic boxes, as defined by LAMMPS,
 and how to transform these parameters to and from other commonly used
 triclinic representations.
 
 When a triclinic system is used, the simulation domain must be
 periodic in any dimensions with a non-zero tilt factor, as defined by
 the "boundary"_boundary.html command.  I.e. if the xy tilt factor is
 non-zero, then both the x and y dimensions must be periodic.
 Similarly, x and z must be periodic if xz is non-zero and y and z must
 be periodic if yz is non-zero.  Also note that if your simulation will
 tilt the box, e.g. via the "fix deform"_fix_deform.html command, the
 simulation box must be defined as triclinic, even if the tilt factors
 are initially 0.0.
 
 For 2d simulations, the {zlo zhi} values should be set to bound the z
 coords for atoms that appear in the file; the default of -0.5 0.5 is
 valid if all z coords are 0.0.  For 2d triclinic simulations, the xz
 and yz tilt factors must be 0.0.
 
 If the system is periodic (in a dimension), then atom coordinates can
 be outside the bounds (in that dimension); they will be remapped (in a
 periodic sense) back inside the box.
 
 IMPORTANT NOTE: If the system is non-periodic (in a dimension), then
 all atoms in the data file must have coordinates (in that dimension)
 that are "greater than or equal to" the lo value and "less than or
 equal to" the hi value.  If the non-periodic dimension is of style
 "fixed" (see the "boundary"_boundary.html command), then the atom
 coords must be strictly "less than" the hi value, due to the way
 LAMMPS assign atoms to processors.  Note that you should not make the
 lo/hi values radically smaller/larger than the extent of the atoms.
 For example, if your atoms extend from 0 to 50, you should not specify
 the box bounds as -10000 and 10000.  This is because LAMMPS uses the
 specified box size to layout the 3d grid of processors.  A huge
 (mostly empty) box will be sub-optimal for performance when using
 "fixed" boundary conditions (see the "boundary"_boundary.html
 command).  When using "shrink-wrap" boundary conditions (see the
 "boundary"_boundary.html command), a huge (mostly empty) box may cause
 a parallel simulation to lose atoms the first time that LAMMPS
 shrink-wraps the box around the atoms.
 
 The "extra bond per atom" setting should be used if new bonds will be
 added to the system when a simulation runs, e.g. by using the "fix
 bond/create"_fix_bond_create.html command.  This will pre-allocate
 space in LAMMPS data structures for storing the new bonds.
 
-The "ellipsoids" and "lines" and "triangles" settings are only used
-with "atom_style ellipsoid or line or tri"_atom_style.html and
-specifies how many of the atoms are finite-size ellipsoids or lines or
-triangles; the remainder are point particles.  See the discussion of
-ellipsoidflag and the {Ellipsoids} section below.  See the discussion
-of lineflag and the {Lines} section below.  See the discussion of
-triangleflag and the {Triangles} section below.
+The "ellipsoids" and "lines" and "triangles" and "bodies" settings are
+only used with "atom_style ellipsoid or line or tri or
+body"_atom_style.html and specify how many of the atoms are
+finite-size ellipsoids or lines or triangles or bodies; the remainder
+are point particles.  See the discussion of ellipsoidflag and the
+{Ellipsoids} section below.  See the discussion of lineflag and the
+{Lines} section below.  See the discussion of triangleflag and the
+{Triangles} section below.  See the discussion of bodyflag and the
+{Bodies} section below.
 
 :line
 
 These are the section keywords for the body of the file.
 
-{Atoms, Velocities, Masses, Ellipsoids, Lines, Triangles} = atom-property sections 
+{Atoms, Velocities, Masses, Ellipsoids, Lines, Triangles, Bodies} = atom-property sections 
 {Bonds, Angles, Dihedrals, Impropers} = molecular topology sections 
 {Pair Coeffs, Bond Coeffs, Angle Coeffs, Dihedral Coeffs, \
    Improper Coeffs} = force field sections
 {BondBond Coeffs, BondAngle Coeffs, MiddleBondTorsion Coeffs, \
    EndBondTorsion Coeffs, AngleTorsion Coeffs, AngleAngleTorsion Coeffs, \
    BondBond13 Coeffs, AngleAngle Coeffs} = class 2 force field sections :ul
 
 Each section is listed below in alphabetic order.  The format of each
 section is described including the number of lines it must contain and
 rules (if any) for where it can appear in the data file.
 
 Any individual line in the various sections can have a trailing
 comment starting with "#" for annotation purposes.  E.g. in the
 Atoms section:
 
 10 1 17 -1.0 10.0 5.0 6.0   # salt ion :pre
 
 :line
 
 {Angle Coeffs} section:
 
 one line per angle type :ulb,l
 line syntax: ID coeffs :l
   ID = angle type (1-N)
   coeffs = list of coeffs :pre
 example: :l
   6 70 108.5 0 0 :pre
 :ule
 
 The number and meaning of the coefficients are specific to the defined
 angle style.  See the "angle_style"_angle_style.html and
 "angle_coeff"_angle_coeff.html commands for details.  Coefficients can
 also be set via the "angle_coeff"_angle_coeff.html command in the
 input script.
 
 :line
 
 {AngleAngle Coeffs} section:
 
 one line per improper type :ulb,l
 line syntax: ID coeffs :l
   ID = improper type (1-N)
   coeffs = list of coeffs (see "improper_coeff"_improper_coeff.html) :pre
 :ule
 
 :line
 
 {AngleAngleTorsion Coeffs} section:
 
 one line per dihedral type :ulb,l
 line syntax: ID coeffs :l
   ID = dihedral type (1-N)
   coeffs = list of coeffs (see "dihedral_coeff"_dihedral_coeff.html) :pre
 :ule
 
 :line
 
 {Angles} section:
 
 one line per angle :ulb,l
 line syntax: ID type atom1 atom2 atom3 :l
   ID = number of angle (1-Nangles)
   type = angle type (1-Nangletype)
   atom1,atom2,atom3 = IDs of 1st,2nd,3rd atoms in angle :pre
 example: :b
   2 2 17 29 430 :pre
 :ule
 
 The 3 atoms are ordered linearly within the angle.  Thus the central
 atom (around which the angle is computed) is the atom2 in the list.
 E.g. H,O,H for a water molecule.  The {Angles} section must appear
 after the {Atoms} section.  All values in this section must be
 integers (1, not 1.0).
 
 :line
 
 {AngleTorsion Coeffs} section:
 
 one line per dihedral type :ulb,l
 line syntax: ID coeffs :l
   ID = dihedral type (1-N)
   coeffs = list of coeffs (see "dihedral_coeff"_dihedral_coeff.html) :pre
 :ule
 
 :line
 
 {Atoms} section:
 
 one line per atom
 line syntax: depends on atom style :ul
 
 An {Atoms} section must appear in the data file if natoms > 0 in the
 header section.  The atoms can be listed in any order.  These are the
 line formats for each "atom style"_atom_style.html in LAMMPS.  As
 discussed below, each line can optionally have 3 flags (nx,ny,nz)
 appended to it, which indicate which image of a periodic simulation
 box the atom is in.  These may be important to include for some kinds
 of analysis.
 
 angle: atom-ID molecule-ID atom-type x y z
 atomic: atom-ID atom-type x y z
+body: atom-ID atom-type bodyflag mass x y z
 bond: atom-ID molecule-ID atom-type x y z
 charge: atom-ID atom-type q x y z
 dipole: atom-ID atom-type q x y z mux muy muz
 electron: atom-ID atom-type q spin eradius x y z
 ellipsoid: atom-ID atom-type ellipsoidflag density x y z
 full: atom-ID molecule-ID atom-type q x y z
 line: atom-ID molecule-ID atom-type lineflag density x y z
 meso: atom-ID atom-type rho e cv x y z
 molecular: atom-ID molecule-ID atom-type x y z
 peri: atom-ID atom-type volume density x y z
 sphere: atom-ID atom-type diameter density x y z
 tri: atom-ID molecule-ID atom-type triangleflag density x y z
 wavepacket: atom-ID atom-type charge spin eradius etag cs_re cs_im x y z
 hybrid: atom-ID atom-type x y z sub-style1 sub-style2 ...  :tb(s=:)
 
 The keywords have these meanings:
 
 atom-ID = integer ID of atom
 molecule-ID = integer ID of molecule the atom belongs to
 atom-type = type of atom (1-Ntype)
 q = charge on atom (charge units)
 diameter = diameter of spherical atom (distance units)
 ellipsoidflag = 1 for ellipsoidal particles, 0 for point particles
 lineflag = 1 for line segment particles, 0 for point particles
 triangleflag = 1 for triangular particles, 0 for point particles
+bodyflag = 1 for body particles, 0 for point particles
 density = density of particle (mass/distance^3 or mass/distance^2 or mass/distance units, depending on dimensionality of particle)
-volume = volume of atom (distance^3 units)
+mass = mass of particle (mass units)
+volume = volume of particle (distance^3 units)
 x,y,z = coordinates of atom
 mux,muy,muz = components of dipole moment of atom (dipole units)
 rho = density (need units) for SPH particles
 e = energy (need units) for SPH particles
 cv = heat capacity (need units) for SPH particles
 spin = electron spin (+1/-1), 0 = nuclei, 2 = fixed-core, 3 = pseudo-cores (i.e. ECP)
 eradius = electron radius (or fixed-core radius)
 etag = integer ID of electron that each wavepacket belongs to
 cs_re,cs_im = real/imaginary parts of wavepacket coefficients :ul
 
 The units for these quantities depend on the unit style; see the
 "units"_units.html command for details.
 
 For 2d simulations specify z as 0.0, or a value within the {zlo zhi}
 setting in the data file header.
 
 The atom-ID is used to identify the atom throughout the simulation and
 in dump files.  Normally, it is a unique value from 1 to Natoms for
 each atom.  Unique values larger than Natoms can be used, but they
 will cause extra memory to be allocated on each processor, if an atom
 map array is used (see the "atom_modify"_atom_modify.html command).
 If an atom map array is not used (e.g. an atomic system with no
 bonds), and velocities are not assigned in the data file, and you
 don't care if unique atom IDs appear in dump files, then the atom-IDs
 can all be set to 0.
 
 The molecule ID is a 2nd identifier attached to an atom.  Normally, it
 is a number from 1 to N, identifying which molecule the atom belongs
 to.  It can be 0 if it is an unbonded atom or if you don't care to
 keep track of molecule assignments.
 
 The diameter specifies the size of a finite-size spherical particle.
 It can be set to 0.0, which means that atom is a point particle.
 
-The ellipsoidflag, lineflag, and triangleflag determine whether the
-particle is a finite-size ellipsoid or line or triangle of finite
-size, or a point particle.  Additional attributes must be defined for
-each ellipsoid in the {Ellipsoids} section.  Additional attributes
-must be defined for each line in the {Lines} section.  Additional
-attributes must be defined for each triangle in the {Triangles}
-section.
+The ellipsoidflag, lineflag, triangleflag, and bodyflag determine
+whether the particle is a finite-size ellipsoid or line or triangle or
+body of finite size, or a point particle.  Additional attributes must
+be defined for each ellipsoid in the {Ellipsoids} section.  Additional
+attributes must be defined for each line in the {Lines} section.
+Additional attributes must be defined for each triangle in the
+{Triangles} section.  Additional attributes must be defined for each
+body in the {Bodies} section.
 
 Some pair styles and fixes and computes that operate on finite-size
 particles allow for a mixture of finite-size and point particles.  See
 the doc pages of individual commands for details.
 
-The density is used in conjunction with the particle volume for
-finite-size particles to set the mass of the particle as mass =
-density * volume.  In this context, volume can be a 3d quantity (for
-spheres or ellipsoids), a 2d quantity (for triangles), or a 1d
-quantity (for line segments).  If the volume is 0.0, meaning a point
-particle, then the density value is used as the mass.
+For finite-size particles, the density is used in conjunction with the
+particle volume to set the mass of each particle as mass = density *
+volume.  In this context, volume can be a 3d quantity (for spheres or
+ellipsoids), a 2d quantity (for triangles), or a 1d quantity (for line
+segments).  If the volume is 0.0, meaning a point particle, then the
+density value is used as the mass.  One exception is for the body
+style, in which case the mass of each particle (body or point
+particle) is specified explicitly.  This is because the volume of the
+body is not known.
 
 For atom_style hybrid, following the 5 initial values (ID,type,x,y,z),
 specific values for each sub-style must be listed.  The order of the
 sub-styles is the same as they were listed in the
 "atom_style"_atom_style.html command.  The sub-style specific values
 are those that are not the 5 standard ones (ID,type,x,y,z).  For
 example, for the "charge" sub-style, a "q" value would appear.  For
 the "full" sub-style, a "molecule-ID" and "q" would appear.  These are
 listed in the same order they appear as listed above.  Thus if
 
 atom_style hybrid charge sphere :pre
 
 were used in the input script, each atom line would have these fields:
 
 atom-ID atom-type x y z q diameter density :pre
 
 Note that if a non-standard value is defined by multiple sub-styles,
 it must appear mutliple times in the atom line.  E.g. the atom line
 for atom_style hybrid dipole full would list "q" twice:
 
 atom-ID atom-type x y z q mux muy myz molecule-ID q :pre
 
 Atom lines (all lines or none of them) can optionally list 3 trailing
 integer values: nx,ny,nz.  For periodic dimensions, they specify which
 image of the simulation box the atom is considered to be in.  An image
 of 0 means it is inside the box as defined.  A value of 2 means add 2
 box lengths to get the true value.  A value of -1 means subtract 1 box
 length to get the true value.  LAMMPS updates these flags as atoms
 cross periodic boundaries during the simulation.  The flags can be
 output with atom snapshots via the "dump"_dump.html command.
 
 If nx,ny,nz values are not set in the data file, LAMMPS initializes
 them to 0.  If image information is needed for later analysis and they
 are not all initially 0, it's important to set them correctly in the
 data file.  Also, if you plan to use the "replicate"_replicate.html
 command to generate a larger system, these flags must be listed
 correctly for bonded atoms when the bond crosses a periodic boundary.
 I.e. the values of the image flags should be different by 1 (in the
 appropriate dimension) for the two atoms in such a bond.
 
 Atom velocities and other atom quantities not defined above are set to
 0.0 when the {Atoms} section is read.  Velocities can be set later by
 a {Velocities} section in the data file or by a
 "velocity"_velocity.html or "set"_set.html command in the input
 script.
 
 :line
 
+{Bodies} section:
+
+one or more lines per body :ulb,l
+first line syntax: atom-ID ninteger ndouble :l
+  ninteger = # of integer quantities for this particle
+  ndouble = # of floating-point quantities for this particle :pre
+0 or more integer lines: one line for every 10 integer quantities :l
+0 or more double lines: one line for every 10 double quantities :l
+example: :l
+  12 3 6
+  2 3 2
+  1.0 2.0 3.0 1.0 2.0 4.0 :pre
+example: :l
+  12 0 14
+  1.0 2.0 3.0 1.0 2.0 4.0 1.0 2.0 3.0 1.0
+  2.0 4.0 4.0 2.0 :pre
+:ule
+
+The {Bodies} section must appear if "atom_style body"_atom_style.html
+is used and any atoms are listed in the {Atoms} section with a
+bodyflag = 1.  The number of bodies should be specified in the header
+section via the "bodies" keyword.
+
+Each body can have a variable number of integer and/or floating-point
+values.  The number and meaning of the values is defined by the Body
+style which will process and store them for each body.  This style is
+given as an argument to the "atom_style body"_atom_style.html command.
+
+The ninteger and ndouble values determine how many integer and
+floating-point values are specified for this particle.  Ninteger and
+ndouble can be as large as needed and can be different for every body.
+Integer values are then listed on subsequent lines, 10 values per
+line.  Floating-point values follow on subsequent lines, again 10 per
+line.  If the number of lines is not evenly divisible by 10, the last
+line in that group contains the remaining values, e.g. 4 values out of
+14 in the last example above, for floating-point values.  If there are
+no values of a particular type, no lines appear for that type,
+e.g. there are no integer lines in the last example above.
+
+The {Bodies} section must appear after the {Atoms} section.
+
+:line
+
 {Bond Coeffs} section:
 
 one line per bond type :ulb,l
 line syntax: ID coeffs :l
   ID = bond type (1-N)
   coeffs = list of coeffs :pre
 example: :l
   4 250 1.49 :pre
 :ule
 
 The number and meaning of the coefficients are specific to the defined
 bond style.  See the "bond_style"_bond_style.html and
 "bond_coeff"_bond_coeff.html commands for details.  Coefficients can
 also be set via the "bond_coeff"_bond_coeff.html command in the input
 script.
 
 :line
 
 {BondAngle Coeffs} section:
 
 one line per angle type :ulb,l
 line syntax: ID coeffs :l
   ID = angle type (1-N)
   coeffs = list of coeffs (see class 2 section of "angle_coeff"_angle_coeff.html) :pre
 :ule
 
 :line
 
 {BondBond Coeffs} section:
 
 one line per angle type :ulb,l
 line syntax: ID coeffs :l
   ID = angle type (1-N)
   coeffs = list of coeffs (see class 2 section of "angle_coeff"_angle_coeff.html) :pre
 :ule
 
 :line
 
 {BondBond13 Coeffs} section:
 
 one line per dihedral type :ulb,l
 line syntax: ID coeffs :l
   ID = dihedral type (1-N)
   coeffs = list of coeffs (see class 2 section of "dihedral_coeff"_dihedral_coeff.html) :pre
 :ule
 
 :line
 
 {Bonds} section:
 
 one line per bond :ulb,l
 line syntax: ID type atom1 atom2 :l
   ID = bond number (1-Nbonds)
   type = bond type (1-Nbondtype)
   atom1,atom2 = IDs of 1st,2nd atoms in bond :pre
 example: :l
   12 3 17 29 :pre
 :ule
 
 The {Bonds} section must appear after the {Atoms} section.  All values
 in this section must be integers (1, not 1.0).
 
 :line
 
 {Dihedral Coeffs} section:
 
 one line per dihedral type :ulb,l
 line syntax: ID coeffs :l
   ID = dihedral type (1-N)
   coeffs = list of coeffs :pre
 example: :l
   3 0.6 1 0 1 :pre
 :ule
 
 The number and meaning of the coefficients are specific to the defined
 dihedral style.  See the "dihedral_style"_dihedral_style.html and
 "dihedral_coeff"_dihedral_coeff.html commands for details.
 Coefficients can also be set via the
 "dihedral_coeff"_dihedral_coeff.html command in the input script.
 
 :line
 
 {Dihedrals} section:
 
 one line per dihedral :ulb,l
 line syntax: ID type atom1 atom2 atom3 atom4 :l
   ID = number of dihedral (1-Ndihedrals)
   type = dihedral type (1-Ndihedraltype)
   atom1,atom2,atom3,atom4 = IDs of 1st,2nd,3rd,4th atoms in dihedral :pre
 example: :l
   12 4 17 29 30 21 :pre
 :ule
 
 The 4 atoms are ordered linearly within the dihedral.  The {Dihedrals}
 section must appear after the {Atoms} section.  All values in this
 section must be integers (1, not 1.0).
 
 :line
 
 {Ellipsoids} section:
 
 one line per ellipsoid :ulb,l
 line syntax: atom-ID shapex shapey shapez quatw quati quatj quatk :l
   atom-ID = ID of atom which is an ellipsoid
   shapex,shapey,shapez = 3 diameters of ellipsoid (distance units)
   quatw,quati,quatj,quatk = quaternion components for orientation of atom :pre
 example: :l
   12 1 2 1 1 0 0 0 :pre
 :ule
 
 The {Ellipsoids} section must appear if "atom_style
 ellipsoid"_atom_style.html is used and any atoms are listed in the
 {Atoms} section with an ellipsoidflag = 1.  The number of ellipsoids
 should be specified in the header section via the "ellipsoids"
 keyword.
 
 The 3 shape values specify the 3 diameters or aspect ratios of a
 finite-size ellipsoidal particle, when it is oriented along the 3
 coordinate axes.  They must all be non-zero values.
 
 The values {quatw}, {quati}, {quatj}, and {quatk} set the orientation
 of the atom as a quaternion (4-vector).  Note that the shape
 attributes specify the aspect ratios of an ellipsoidal particle, which
 is oriented by default with its x-axis along the simulation box's
 x-axis, and similarly for y and z.  If this body is rotated (via the
 right-hand rule) by an angle theta around a unit vector (a,b,c), then
 the quaternion that represents its new orientation is given by
 (cos(theta/2), a*sin(theta/2), b*sin(theta/2), c*sin(theta/2)).  These
 4 components are quatw, quati, quatj, and quatk as specified above.
 LAMMPS normalizes each atom's quaternion in case (a,b,c) is not
 specified as a unit vector.
 
 The {Ellipsoids} section must appear after the {Atoms} section.
 
 :line
 
 {EndBondTorsion Coeffs} section:
 
 one line per dihedral type :ulb,l
 line syntax: ID coeffs :l
   ID = dihedral type (1-N)
   coeffs = list of coeffs (see class 2 section of "dihedral_coeff"_dihedral_coeff.html) :pre
 :ule
 
 :line
 
 {Improper Coeffs} section:
 
 one line per improper type :ulb,l
 line syntax: ID coeffs :l
   ID = improper type (1-N)
   coeffs = list of coeffs :pre
 example: :l
   2 20 0.0548311 :pre
 :ule
 
 The number and meaning of the coefficients are specific to the defined
 improper style.  See the "improper_style"_improper_style.html and
 "improper_coeff"_improper_coeff.html commands for details.
 Coefficients can also be set via the
 "improper_coeff"_improper_coeff.html command in the input script.
 
 :line
 
 {Impropers} section:
 
 one line per improper :ulb,l
 line syntax: ID type atom1 atom2 atom3 atom4 :l
   ID = number of improper (1-Nimpropers)
   type = improper type (1-Nimpropertype)
   atom1,atom2,atom3,atom4 = IDs of 1st,2nd,3rd,4th atoms in improper :pre
 example: :l
   12 3 17 29 13 100 :pre
 :ule
 
 The ordering of the 4 atoms determines the definition of the improper
 angle used in the formula for each "improper
 style"_improper_style.html.  See the doc pages for individual styles
 for details.
 
 The {Impropers} section must appear after the {Atoms} section.  All
 values in this section must be integers (1, not 1.0).
 
 :line
 
 {Lines} section:
 
 one line per line segment :ulb,l
 line syntax: atom-ID x1 y1 x2 y2 :l
   atom-ID = ID of atom which is a line segment
   x1,y1 = 1st end point
   x2,y2 = 2nd end point :pre
 example: :l
   12 1.0 0.0 2.0 0.0 :pre
 :ule
 
 The {Lines} section must appear if "atom_style line"_atom_style.html
 is used and any atoms are listed in the {Atoms} section with a
 lineflag = 1.  The number of lines should be specified in the header
 section via the "lines" keyword.
 
 The 2 end points are the end points of the line segment.  The ordering
 of the 2 points should be such that using a right-hand rule to cross
 the line segment with a unit vector in the +z direction, gives an
 "outward" normal vector perpendicular to the line segment.
 I.e. normal = (c2-c1) x (0,0,1).  This orientation may be important
 for defining some interactions.
 
 The {Lines} section must appear after the {Atoms} section.
 
 :line
 
 {Masses} section:
 
 one line per atom type :ulb,l
 line syntax: ID mass :l
   ID = atom type (1-N)
   mass = mass value :pre
 example: :l
   3 1.01 :pre
 :ule
 
 This defines the mass of each atom type.  This can also be set via the
 "mass"_mass.html command in the input script.  This section cannot be
 used for atom styles that define a mass for individual atoms -
 e.g. "atom_style sphere"_atom_style.html.
 
 :line
 
 {MiddleBondTorsion Coeffs} section:
 
 one line per dihedral type :ulb,l
 line syntax: ID coeffs :l
   ID = dihedral type (1-N)
   coeffs = list of coeffs (see class 2 section of "dihedral_coeff"_dihedral_coeff.html) :pre
 :ule
 
 :line
 
 {Pair Coeffs} section:
 
 one line per atom type :ulb,l
 line syntax: ID coeffs :l
   ID = atom type (1-N)
   coeffs = list of coeffs :pre
 example: :l
   3 0.022 2.35197 0.022 2.35197 :pre
 :ule
 
 The number and meaning of the coefficients are specific to the defined
 pair style.  See the "pair_style"_pair_style.html and
 "pair_coeff"_pair_coeff.html commands for details.  Coefficients can
 also be set via the "pair_coeff"_pair_coeff.html command in the input
 script.
 
 :line
 
 {Triangles} section:
 
 one line per triangle :ulb,l
 line syntax: atom-ID x1 y1 x2 y2 :l
   atom-ID = ID of atom which is a line segment
   x1,y1,z1 = 1st corner point
   x2,y2,z2 = 2nd corner point
   x3,y3,z3 = 3rd corner point :pre
 example: :l
   12 0.0 0.0 0.0 2.0 0.0 1.0 0.0 2.0 1.0 :pre
 :ule
 
 The {Triangles} section must appear if "atom_style
 tri"_atom_style.html is used and any atoms are listed in the {Atoms}
 section with a triangleflag = 1.  The number of lines should be
 specified in the header section via the "triangles" keyword.
 
 The 3 corner points are the corner points of the triangle.  The
 ordering of the 3 points should be such that using a right-hand rule
 to go from point1 to point2 to point3 gives an "outward" normal vector
 to the face of the triangle.  I.e. normal = (c2-c1) x (c3-c1).  This
 orientation may be important for defining some interactions.
 
 The {Triangles} section must appear after the {Atoms} section.
 
 :line
 
 {Velocities} section:
 
 one line per atom
 line syntax: depends on atom style :ul
 
 all styles except those listed: atom-ID vx vy vz
 electron: atom-ID vx vy vz ervel
 ellipsoid: atom-ID vx vy vz lx ly lz
 sphere: atom-ID vx vy vz wx wy wz
 hybrid: atom-ID vx vy vz sub-style1 sub-style2 ... :tb(s=:)
 
 where the keywords have these meanings:
 
 vx,vy,vz = translational velocity of atom
 lx,ly,lz = angular momentum of aspherical atom
 wx,wy,wz = angular velocity of spherical atom
 ervel = electron radial velocity (0 for fixed-core):ul
 
 The velocity lines can appear in any order.  This section can only be
 used after an {Atoms} section.  This is because the {Atoms} section
 must have assigned a unique atom ID to each atom so that velocities
 can be assigned to them.
 
 Vx, vy, vz, and ervel are in "units"_units.html of velocity.  Lx, ly,
 lz are in units of angular momentum (distance-velocity-mass).  Wx, Wy,
 Wz are in units of angular velocity (radians/time).
 
 For atom_style hybrid, following the 4 initial values (ID,vx,vy,vz),
 specific values for each sub-style must be listed.  The order of the
 sub-styles is the same as they were listed in the
 "atom_style"_atom_style.html command.  The sub-style specific values
 are those that are not the 5 standard ones (ID,vx,vy,vz).  For
 example, for the "sphere" sub-style, "wx", "wy", "wz" values would
 appear.  These are listed in the same order they appear as listed
 above.  Thus if
 
 atom_style hybrid electron sphere :pre
 
 were used in the input script, each velocity line would have these
 fields:
 
 atom-ID vx vy vz ervel wx wy wz :pre
 
 Translational velocities can also be set by the
 "velocity"_velocity.html command in the input script.
 
 :line
 
 [Restrictions:]
 
 To read gzipped data files, you must compile LAMMPS with the
 -DLAMMPS_GZIP option - see the "Making
 LAMMPS"_Section_start.html#start_2 section of the documentation.
 
 [Related commands:]
 
 "read_dump"_read_dump.html, "read_restart"_read_restart.html,
 "create_atoms"_create_atoms.html
 
 [Default:] none
diff --git a/doc/read_restart.html b/doc/read_restart.html
index 4bddba300..0b012647c 100644
--- a/doc/read_restart.html
+++ b/doc/read_restart.html
@@ -1,165 +1,165 @@
 <HTML>
 <CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A> 
 </CENTER>
 
 
 
 
 
 
 <HR>
 
 <H3>read_restart command 
 </H3>
 <P><B>Syntax:</B>
 </P>
 <PRE>read_restart file 
 </PRE>
 <UL><LI>file = name of binary restart file to read in 
 </UL>
 <P><B>Examples:</B>
 </P>
 <PRE>read_restart save.10000
 read_restart restart.*
 read_restart poly.*.% 
 </PRE>
 <PRE>
 </PRE>
 <P><B>Description:</B>
 </P>
 <P>Read in a previously saved simulation from a restart file.  This
 allows continuation of a previous run.  Information about what is
 stored in a restart file is given below.
 </P>
 <P>Restart files are saved in binary format to enable exact restarts,
 meaning that the trajectories of a restarted run will precisely match
 those produced by the original run had it continued on.
 </P>
 <P>Several things can prevent exact restarts due to round-off effects, in
 which case the trajectories in the 2 runs will slowly diverge.  These
 include running on a different number of processors or changing
 certain settings such as those set by the <A HREF = "newton.html">newton</A> or
 <A HREF = "processors.html">processors</A> commands.  LAMMPS will issue a warning in
 these cases.
 </P>
 <P>Certain fixes will not restart exactly, though they should provide
 statistically similar results.  These include <A HREF = "fix_shake.html">fix
 shake</A> and <A HREF = "fix_langevin.html">fix langevin</A>.
 </P>
 <P>Certain pair styles will not restart exactly, though they should
 provide statistically similar results.  This is because the forces
 they compute depend on atom velocities, which are used at half-step
 values every timestep when forces are computed.  When a run restarts,
-forces are initiall evaluated with a full-step velocity, which is
+forces are initially evaluated with a full-step velocity, which is
 different than if the run had continued.  These pair styles include
 <A HREF = "pair_gran.html">granular pair styles</A>, <A HREF = "pair_dpd.html">pair dpd</A>, and
 <A HREF = "pair_lubricate.html">pair lubricate</A>.
 </P>
 <P>If a restarted run is immediately different than the run which
 produced the restart file, it could be a LAMMPS bug, so consider
 <A HREF = "Section_errors.html#err_2">reporting it</A> if you think the behavior is
 wrong.
 </P>
 <P>Because restart files are binary, they may not be portable to other
 machines.  They can be converted to ASCII data files using the
 <A HREF = "Section_tools.html#restart">restart2data tool</A> in the tools
 sub-directory of the LAMMPS distribution.
 </P>
 <P>Similar to how restart files are written (see the
 <A HREF = "write_restart.html">write_restart</A> and <A HREF = "restart.html">restart</A>
 commands), the restart filename can contain two wild-card characters.
 If a "*" appears in the filename, the directory is searched for all
 filenames that match the pattern where "*" is replaced with a timestep
 value.  The file with the largest timestep value is read in.  Thus,
 this effectively means, read the latest restart file.  It's useful if
 you want your script to continue a run from where it left off.  See
 the <A HREF = "run.html">run</A> command and its "upto" option for how to specify
 the run command so it doesn't need to be changed either.
 </P>
 <P>If a "%" character appears in the restart filename, LAMMPS expects a
 set of multiple files to exist.  The <A HREF = "restart.html">restart</A> and
 <A HREF = "write_restart.html">write_restart</A> commands explain how such sets are
 created.  Read_restart will first read a filename where "%" is
 replaced by "base".  This file tells LAMMPS how many processors
 created the set.  Read_restart then reads the additional files.  For
 example, if the restart file was specified as save.% when it was
 written, then read_restart reads the files save.base, save.0, save.1,
 ... save.P-1, where P is the number of processors that created the
 restart file.  The processors in the current LAMMPS simulation share
 the work of reading these files; each reads a roughly equal subset of
 the files.  The number of processors which created the set can be
 different the number of processors in the current LAMMPS simulation.
 This can be a fast mode of input on parallel machines that support
 parallel I/O.
 </P>
 <HR>
 
 <P>A restart file stores the following information about a simulation:
 units and atom style, simulation box size and shape and boundary
 settings, group definitions, per-type atom settings such as mass,
 per-atom attributes including their group assignments and molecular
 topology attributes, force field styles and coefficients, and
 <A HREF = "special_bonds.html">special_bonds</A> settings.  This means that commands
 for these quantities do not need to be re-specified in the input
 script that reads the restart file, though you can redefine settings
 after the restart file is read.
 </P>
 <P>One exception is that some pair styles do not store their info in
 restart files.  The doc pages for individual pair styles note if this
 is the case.  This is also true of bond_style hybrid (and angle_style,
 dihedral_style, improper_style hybrid).
 </P>
 <P>All settings made by the <A HREF = "doc/pair_modify.html">pair_modify</A> command,
 such as the shift and tail settings, are stored in the restart file
 with the pair style.  The one exception is the <A HREF = "pair_modify.html">pair_modify
 compute</A> setting is not stored.
 </P>
 <P>Information about <A HREF = "kspace_style.html">kspace_style</A> settings are not
 stored in the restart file.  Hence if you wish to use an Ewald or PPPM
 solver, these commands must be re-issued after the restart file is
 read.
 </P>
 <P>The list of <A HREF = "fix.html">fixes</A> used for a simulation is not stored in
 the restart file.  This means the new input script should specify all
 fixes it will use.  Note that some fixes store an internal "state"
 which is written to the restart file.  This allows the fix to continue
 on with its calculations in a restarted simulation.  To re-enable such
 a fix, the fix command in the new input script must use the same
 fix-ID and group-ID as was used in the input script that wrote the
 restart file.  If a match is found, LAMMPS prints a message indicating
 that the fix is being re-enabled.  If no match is found before the
 first run or minimization is performed by the new script, the "state"
 information for the saved fix is discarded.  See the doc pages for
 individual fixes for info on which ones can be restarted in this
 manner.
 </P>
 <P>Bond interactions (angle, etc) that have been turned off by the <A HREF = "fix_shake.html">fix
 shake</A> or <A HREF = "delete_bonds.html">delete_bonds</A> command will
 be written to a restart file as if they are turned on.  This means
 they will need to be turned off again in a new run after the restart
 file is read.
 </P>
 <P>Bonds that are broken (e.g. by a bond-breaking potential) are written
 to the restart file as broken bonds with a type of 0.  Thus these
 bonds will still be broken when the restart file is read.
 </P>
 <P>IMPORTANT NOTE: No other information is stored in the restart file.
 This means that an input script that reads a restart file should
 specify settings for quantities like <A HREF = "timestep.html">timestep size</A>,
 <A HREF = "thermo_style.html">thermodynamic</A>, <A HREF = "doc/neighbor.html">neighbor list</A>
 criteria including settings made via the
 <A HREF = "doc/neigh_modify.html">neigh_modify</A> comand, <A HREF = "dump.html">dump</A> file
 output, <A HREF = "region.html">geometric regions</A>, etc.
 </P>
 <HR>
 
 <P><B>Restrictions:</B> none
 </P>
 <P><B>Related commands:</B>
 </P>
 <P><A HREF = "read_data.html">read_data</A>, <A HREF = "read_dump.html">read_dump</A>,
 <A HREF = "write_restart.html">write_restart</A>, <A HREF = "restart.html">restart</A>
 </P>
 <P><B>Default:</B> none
 </P>
 </HTML>
diff --git a/doc/read_restart.txt b/doc/read_restart.txt
index 4626c1227..5431855eb 100644
--- a/doc/read_restart.txt
+++ b/doc/read_restart.txt
@@ -1,160 +1,160 @@
 "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
 
 read_restart command :h3
 
 [Syntax:]
 
 read_restart file :pre
 
 file = name of binary restart file to read in :ul
 
 [Examples:]
 
 read_restart save.10000
 read_restart restart.*
 read_restart poly.*.% :pre
 
 :pre
 
 [Description:]
 
 Read in a previously saved simulation from a restart file.  This
 allows continuation of a previous run.  Information about what is
 stored in a restart file is given below.
 
 Restart files are saved in binary format to enable exact restarts,
 meaning that the trajectories of a restarted run will precisely match
 those produced by the original run had it continued on.
 
 Several things can prevent exact restarts due to round-off effects, in
 which case the trajectories in the 2 runs will slowly diverge.  These
 include running on a different number of processors or changing
 certain settings such as those set by the "newton"_newton.html or
 "processors"_processors.html commands.  LAMMPS will issue a warning in
 these cases.
 
 Certain fixes will not restart exactly, though they should provide
 statistically similar results.  These include "fix
 shake"_fix_shake.html and "fix langevin"_fix_langevin.html.
 
 Certain pair styles will not restart exactly, though they should
 provide statistically similar results.  This is because the forces
 they compute depend on atom velocities, which are used at half-step
 values every timestep when forces are computed.  When a run restarts,
-forces are initiall evaluated with a full-step velocity, which is
+forces are initially evaluated with a full-step velocity, which is
 different than if the run had continued.  These pair styles include
 "granular pair styles"_pair_gran.html, "pair dpd"_pair_dpd.html, and
 "pair lubricate"_pair_lubricate.html.
 
 If a restarted run is immediately different than the run which
 produced the restart file, it could be a LAMMPS bug, so consider
 "reporting it"_Section_errors.html#err_2 if you think the behavior is
 wrong.
 
 Because restart files are binary, they may not be portable to other
 machines.  They can be converted to ASCII data files using the
 "restart2data tool"_Section_tools.html#restart in the tools
 sub-directory of the LAMMPS distribution.
 
 Similar to how restart files are written (see the
 "write_restart"_write_restart.html and "restart"_restart.html
 commands), the restart filename can contain two wild-card characters.
 If a "*" appears in the filename, the directory is searched for all
 filenames that match the pattern where "*" is replaced with a timestep
 value.  The file with the largest timestep value is read in.  Thus,
 this effectively means, read the latest restart file.  It's useful if
 you want your script to continue a run from where it left off.  See
 the "run"_run.html command and its "upto" option for how to specify
 the run command so it doesn't need to be changed either.
 
 If a "%" character appears in the restart filename, LAMMPS expects a
 set of multiple files to exist.  The "restart"_restart.html and
 "write_restart"_write_restart.html commands explain how such sets are
 created.  Read_restart will first read a filename where "%" is
 replaced by "base".  This file tells LAMMPS how many processors
 created the set.  Read_restart then reads the additional files.  For
 example, if the restart file was specified as save.% when it was
 written, then read_restart reads the files save.base, save.0, save.1,
 ... save.P-1, where P is the number of processors that created the
 restart file.  The processors in the current LAMMPS simulation share
 the work of reading these files; each reads a roughly equal subset of
 the files.  The number of processors which created the set can be
 different the number of processors in the current LAMMPS simulation.
 This can be a fast mode of input on parallel machines that support
 parallel I/O.
 
 :line
 
 A restart file stores the following information about a simulation:
 units and atom style, simulation box size and shape and boundary
 settings, group definitions, per-type atom settings such as mass,
 per-atom attributes including their group assignments and molecular
 topology attributes, force field styles and coefficients, and
 "special_bonds"_special_bonds.html settings.  This means that commands
 for these quantities do not need to be re-specified in the input
 script that reads the restart file, though you can redefine settings
 after the restart file is read.
 
 One exception is that some pair styles do not store their info in
 restart files.  The doc pages for individual pair styles note if this
 is the case.  This is also true of bond_style hybrid (and angle_style,
 dihedral_style, improper_style hybrid).
 
 All settings made by the "pair_modify"_doc/pair_modify.html command,
 such as the shift and tail settings, are stored in the restart file
 with the pair style.  The one exception is the "pair_modify
 compute"_pair_modify.html setting is not stored.
 
 Information about "kspace_style"_kspace_style.html settings are not
 stored in the restart file.  Hence if you wish to use an Ewald or PPPM
 solver, these commands must be re-issued after the restart file is
 read.
 
 The list of "fixes"_fix.html used for a simulation is not stored in
 the restart file.  This means the new input script should specify all
 fixes it will use.  Note that some fixes store an internal "state"
 which is written to the restart file.  This allows the fix to continue
 on with its calculations in a restarted simulation.  To re-enable such
 a fix, the fix command in the new input script must use the same
 fix-ID and group-ID as was used in the input script that wrote the
 restart file.  If a match is found, LAMMPS prints a message indicating
 that the fix is being re-enabled.  If no match is found before the
 first run or minimization is performed by the new script, the "state"
 information for the saved fix is discarded.  See the doc pages for
 individual fixes for info on which ones can be restarted in this
 manner.
 
 Bond interactions (angle, etc) that have been turned off by the "fix
 shake"_fix_shake.html or "delete_bonds"_delete_bonds.html command will
 be written to a restart file as if they are turned on.  This means
 they will need to be turned off again in a new run after the restart
 file is read.
 
 Bonds that are broken (e.g. by a bond-breaking potential) are written
 to the restart file as broken bonds with a type of 0.  Thus these
 bonds will still be broken when the restart file is read.
 
 IMPORTANT NOTE: No other information is stored in the restart file.
 This means that an input script that reads a restart file should
 specify settings for quantities like "timestep size"_timestep.html,
 "thermodynamic"_thermo_style.html, "neighbor list"_doc/neighbor.html
 criteria including settings made via the
 "neigh_modify"_doc/neigh_modify.html comand, "dump"_dump.html file
 output, "geometric regions"_region.html, etc.
 
 :line
 
 [Restrictions:] none
 
 [Related commands:]
 
 "read_data"_read_data.html, "read_dump"_read_dump.html,
 "write_restart"_write_restart.html, "restart"_restart.html
 
 [Default:] none