<li><em>Special Bond Counts, Special Bonds</em> = special neighbor info</li>
<li><em>Shake Flags, Shake Atoms, Shake Bond Types</em> = SHAKE info</li>
</ul>
<p>If a Bonds section is specified then the Special Bond Counts and
Special Bonds sections can also be used, if desired, to explicitly
list the 1-2, 1-3, 1-4 neighbors within the molecule topology (see
details below). This is optional since if these sections are not
included, LAMMPS will auto-generate this information. Note that
LAMMPS uses this info to properly exclude or weight bonded pairwise
interactions between bonded atoms. See the
<aclass="reference internal"href="special_bonds.html"><em>special_bonds</em></a> command for more details. One
reason to list the special bond info explicitly is for the
<aclass="reference internal"href="tutorial_drude.html"><em>thermalized Drude oscillator model</em></a> which treats
the bonds between nuclear cores and Drude electrons in a different
manner.</p>
<divclass="admonition note">
<pclass="first admonition-title">Note</p>
<pclass="last">Whether a section is required depends on how the molecule
template is used by other LAMMPS commands. For example, to add a
molecule via the <aclass="reference internal"href="fix_deposit.html"><em>fix deposit</em></a> command, the Coords
and Types sections are required. To add a rigid body via the <codeclass="xref doc docutils literal"><spanclass="pre">fix</span><spanclass="pre">pour</span></code> command, the Bonds (Angles, etc) sections are not
required, since the molecule will be treated as a rigid body. Some
sections are optional. For example, the <aclass="reference internal"href="fix_pour.html"><em>fix pour</em></a>
command can be used to add “molecules” which are clusters of
finite-size granular particles. If the Diameters section is not
specified, each particle in the molecule will have a default diameter
of 1.0. See the doc pages for LAMMPS commands that use molecule
templates for more details.</p>
</div>
<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 whether it can appear in the data file. In each
case the ID is ignored; it is simply included for readability, and
should be a number from 1 to Nlines for the section, indicating which
atom (or bond, etc) the entry applies to. The lines are assumed to be
listed in order from 1 to Nlines, but LAMMPS does not check for this.</p>
<hrclass="docutils"/>
<p><em>Coords</em> section:</p>
<ulclass="simple">
<li>one line per atom</li>
<li>line syntax: ID x y z</li>
<li>x,y,z = coordinate of atom</li>
</ul>
<hrclass="docutils"/>
<p><em>Types</em> section:</p>
<ulclass="simple">
<li>one line per atom</li>
<li>line syntax: ID type</li>
<li>type = atom type of atom</li>
</ul>
<hrclass="docutils"/>
<p><em>Charges</em> section:</p>
<ulclass="simple">
<li>one line per atom</li>
<li>line syntax: ID q</li>
<li>q = charge on atom</li>
</ul>
<p>This section is only allowed for <aclass="reference internal"href="atom_style.html"><em>atom styles</em></a> that
support charge. If this section is not included, the default charge
on each atom in the molecule is 0.0.</p>
<hrclass="docutils"/>
<p><em>Diameters</em> section:</p>
<ulclass="simple">
<li>one line per atom</li>
<li>line syntax: ID diam</li>
<li>diam = diameter of atom</li>
</ul>
<p>This section is only allowed for <aclass="reference internal"href="atom_style.html"><em>atom styles</em></a> that
support finite-size spherical particles, e.g. atom_style sphere. If
not listed, the default diameter of each atom in the molecule is 1.0.</p>
<hrclass="docutils"/>
<p><em>Masses</em> section:</p>
<ulclass="simple">
<li>one line per atom</li>
<li>line syntax: ID mass</li>
<li>mass = mass of atom</li>
</ul>
<p>This section is only allowed for <aclass="reference internal"href="atom_style.html"><em>atom styles</em></a> that
support per-atom mass, as opposed to per-type mass. See the
<aclass="reference internal"href="mass.html"><em>mass</em></a> command for details. If this section is not
included, the default mass for each atom is derived from its volume
(see Diameters section) and a default density of 1.0, in
<aclass="reference internal"href="units.html"><em>units</em></a> of mass/volume.</p>
<hrclass="docutils"/>
<p><em>Bonds</em> section:</p>
<ulclass="simple">
<li>one line per bond</li>
<li>line syntax: ID type atom1 atom2</li>
<li>type = bond type (1-Nbondtype)</li>
<li>atom1,atom2 = IDs of atoms in bond</li>
</ul>
<p>The IDs for the two atoms in each bond should be values
from 1 to Natoms, where Natoms = # of atoms in the molecule.</p>
<hrclass="docutils"/>
<p><em>Angles</em> section:</p>
<ulclass="simple">
<li>one line per angle</li>
<li>line syntax: ID type atom1 atom2 atom3</li>
<li>type = angle type (1-Nangletype)</li>
<li>atom1,atom2,atom3 = IDs of atoms in angle</li>
</ul>
<p>The IDs for the three atoms in each angle should be values from 1 to
Natoms, where Natoms = # of atoms in the molecule. 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.</p>
<hrclass="docutils"/>
<p><em>Dihedrals</em> section:</p>
<ulclass="simple">
<li>one line per dihedral</li>
<li>line syntax: ID type atom1 atom2 atom3 atom4</li>
<li>type = dihedral type (1-Ndihedraltype)</li>
<li>atom1,atom2,atom3,atom4 = IDs of atoms in dihedral</li>
</ul>
<p>The IDs for the four atoms in each dihedral should be values from 1 to
Natoms, where Natoms = # of atoms in the molecule. The 4 atoms are
ordered linearly within the dihedral.</p>
<hrclass="docutils"/>
<p><em>Impropers</em> section:</p>
<ulclass="simple">
<li>one line per improper</li>
<li>line syntax: ID type atom1 atom2 atom3 atom4</li>
<li>type = improper type (1-Nimpropertype)</li>
<li>atom1,atom2,atom3,atom4 = IDs of atoms in improper</li>
</ul>
<p>The IDs for the four atoms in each improper should be values from 1 to
Natoms, where Natoms = # of atoms in the molecule. The ordering of
the 4 atoms determines the definition of the improper angle used in
the formula for the defined <aclass="reference internal"href="improper_style.html"><em>improper style</em></a>. See
the doc pages for individual styles for details.</p>
<hrclass="docutils"/>
<p><em>Special Bond Counts</em> section:</p>
<ulclass="simple">
<li>one line per atom</li>
<li>line syntax: ID N1 N2 N3</li>
<li>N1 = # of 1-2 bonds</li>
<li>N2 = # of 1-3 bonds</li>
<li>N3 = # of 1-4 bonds</li>
</ul>
<p>N1, N2, N3 are the number of 1-2, 1-3, 1-4 neighbors respectively of
this atom within the topology of the molecule. See the
<aclass="reference internal"href="special_bonds.html"><em>special_bonds</em></a> doc page for more discussion of
1-2, 1-3, 1-4 neighbors. If this section appears, the Special Bonds
section must also appear. If this section is not specied, the
atoms in the molecule will have no special bonds.</p>
<hrclass="docutils"/>
<p><em>Special Bonds</em> section:</p>
<ulclass="simple">
<li>one line per atom</li>
<li>line syntax: ID a b c d ...</li>
<li>a,b,c,d,... = IDs of atoms in N1+N2+N3 special bonds</li>
</ul>
<p>A, b, c, d, etc are the IDs of the n1+n2+n3 atoms that are 1-2, 1-3,
1-4 neighbors of this atom. The IDs should be values from 1 to
Natoms, where Natoms = # of atoms in the molecule. The first N1
values should be the 1-2 neighbors, the next N2 should be the 1-3
neighbors, the last N3 should be the 1-4 neighbors. No atom ID should
appear more than once. See the <aclass="reference internal"href="special_bonds.html"><em>special_bonds</em></a> doc
page for more discussion of 1-2, 1-3, 1-4 neighbors. If this section
appears, the Special Bond Counts section must also appear. If this
section is not specied, the atoms in the molecule will have no special
bonds.</p>
<hrclass="docutils"/>
<p><em>Shake Flags</em> section:</p>
<ulclass="simple">
<li>one line per atom</li>
<li>line syntax: ID flag</li>
<li>flag = 0,1,2,3,4</li>
</ul>
<p>This section is only needed when molecules created using the template
will be constrained by SHAKE via the “fix shake” command. The other
two Shake sections must also appear in the file, following this one.</p>
<p>The meaning of the flag for each atom is as follows. See the <aclass="reference internal"href="fix_shake.html"><em>fix shake</em></a> doc page for a further description of SHAKE
clusters.</p>
<ulclass="simple">
<li>0 = not part of a SHAKE cluster</li>
<li>1 = part of a SHAKE angle cluster (two bonds and the angle they form)</li>
<li>2 = part of a 2-atom SHAKE cluster with a single bond</li>
<li>3 = part of a 3-atom SHAKE cluster with two bonds</li>
<li>4 = part of a 4-atom SHAKE cluster with three bonds</li>
</ul>
<hrclass="docutils"/>
<p><em>Shake Atoms</em> section:</p>
<ulclass="simple">
<li>one line per atom</li>
<li>line syntax: ID a b c d</li>
<li>a,b,c,d = IDs of atoms in cluster</li>
</ul>
<p>This section is only needed when molecules created using the template
will be constrained by SHAKE via the “fix shake” command. The other
two Shake sections must also appear in the file.</p>
<p>The a,b,c,d values are atom IDs (from 1 to Natoms) for all the atoms
in the SHAKE cluster that this atom belongs to. The number of values
that must appear is determined by the shake flag for the atom (see the
Shake Flags section above). All atoms in a particular cluster should
list their a,b,c,d values identically.</p>
<p>If flag = 0, no a,b,c,d values are listed on the line, just the
(ignored) ID.</p>
<p>If flag = 1, a,b,c are listed, where a = ID of central atom in the
angle, and b,c the other two atoms in the angle.</p>
<p>If flag = 2, a,b are listed, where a = ID of atom in bond with the the
lowest ID, and b = ID of atom in bond with the highest ID.</p>
<p>If flag = 3, a,b,c are listed, where a = ID of central atom,
and b,c = IDs of other two atoms bonded to the central atom.</p>
<p>If flag = 4, a,b,c,d are listed, where a = ID of central atom,
and b,c,d = IDs of other three atoms bonded to the central atom.</p>
<p>See the <aclass="reference internal"href="fix_shake.html"><em>fix shake</em></a> doc page for a further description
of SHAKE clusters.</p>
<hrclass="docutils"/>
<p><em>Shake Bond Types</em> section:</p>
<ulclass="simple">
<li>one line per atom</li>
<li>line syntax: ID a b c</li>
<li>a,b,c = bond types (or angle type) of bonds (or angle) in cluster</li>
</ul>
<p>This section is only needed when molecules created using the template
will be constrained by SHAKE via the “fix shake” command. The other
two Shake sections must also appear in the file.</p>
<p>The a,b,c values are bond types (from 1 to Nbondtypes) for all bonds
in the SHAKE cluster that this atom belongs to. The number of values
that must appear is determined by the shake flag for the atom (see the
Shake Flags section above). All atoms in a particular cluster should
list their a,b,c values identically.</p>
<p>If flag = 0, no a,b,c values are listed on the line, just the
(ignored) ID.</p>
<p>If flag = 1, a,b,c are listed, where a = bondtype of the bond between
the central atom and the first non-central atom (value b in the Shake
Atoms section), b = bondtype of the bond between the central atom and
the 2nd non-central atom (value c in the Shake Atoms section), and c =
the angle type (1 to Nangletypes) of the angle between the 3 atoms.</p>
<p>If flag = 2, only a is listed, where a = bondtype of the bond between
the 2 atoms in the cluster.</p>
<p>If flag = 3, a,b are listed, where a = bondtype of the bond between
the central atom and the first non-central atom (value b in the Shake
Atoms section), and b = bondtype of the bond between the central atom
and the 2nd non-central atom (value c in the Shake Atoms section).</p>
<p>If flag = 4, a,b,c are listed, where a = bondtype of the bond between
the central atom and the first non-central atom (value b in the Shake
Atoms section), b = bondtype of the bond between the central atom and
the 2nd non-central atom (value c in the Shake Atoms section), and c =
bondtype of the bond between the central atom and the 3rd non-central
atom (value d in the Shake Atoms section).</p>
<p>See the <aclass="reference internal"href="fix_shake.html"><em>fix shake</em></a> doc page for a further description
of SHAKE clusters.</p>
</div>
<hrclass="docutils"/>
<divclass="section"id="restrictions">
<h2>Restrictions<aclass="headerlink"href="#restrictions"title="Permalink to this headline">¶</a></h2>
<blockquote>
<div>none</div></blockquote>
</div>
<divclass="section"id="related-commands">
<h2>Related commands<aclass="headerlink"href="#related-commands"title="Permalink to this headline">¶</a></h2>
Built with <ahref="http://sphinx-doc.org/">Sphinx</a> using a <ahref="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <ahref="https://readthedocs.org">Read the Docs</a>.