Page MenuHomec4science

molecule.html
No OneTemporary

File Metadata

Created
Wed, Jun 5, 20:50

molecule.html

<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>molecule command &mdash; LAMMPS documentation</title>
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="_static/sphinxcontrib-images/LightBox2/lightbox2/css/lightbox.css" type="text/css" />
<link rel="top" title="LAMMPS documentation" href="index.html"/>
<link rel="up" title="Commands" href="commands.html"/>
<link rel="next" title="neb command" href="neb.html"/>
<link rel="prev" title="minimize command" href="minimize.html"/>
<script src="_static/js/modernizr.min.js"></script>
</head>
<body class="wy-body-for-nav" role="document">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-nav-search">
<a href="Manual.html" class="icon icon-home"> LAMMPS
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<p class="caption"><span class="caption-text">User Documentation</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="Section_intro.html">1. Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_start.html">2. Getting Started</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_commands.html">3. Commands</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_packages.html">4. Packages</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_accelerate.html">5. Accelerating LAMMPS performance</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_howto.html">6. How-to discussions</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_example.html">7. Example problems</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_perf.html">8. Performance &amp; scalability</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_tools.html">9. Additional tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_modify.html">10. Modifying &amp; extending LAMMPS</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_python.html">11. Python interface to LAMMPS</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_errors.html">12. Errors</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_history.html">13. Future and history</a></li>
</ul>
<p class="caption"><span class="caption-text">Index</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="tutorials.html">Tutorials</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="commands.html">Commands</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="angle_coeff.html">angle_coeff command</a></li>
<li class="toctree-l2"><a class="reference internal" href="angle_style.html">angle_style command</a></li>
<li class="toctree-l2"><a class="reference internal" href="atom_modify.html">atom_modify command</a></li>
<li class="toctree-l2"><a class="reference internal" href="atom_style.html">atom_style command</a></li>
<li class="toctree-l2"><a class="reference internal" href="balance.html">balance command</a></li>
<li class="toctree-l2"><a class="reference internal" href="bond_coeff.html">bond_coeff command</a></li>
<li class="toctree-l2"><a class="reference internal" href="bond_style.html">bond_style command</a></li>
<li class="toctree-l2"><a class="reference internal" href="bond_write.html">bond_write command</a></li>
<li class="toctree-l2"><a class="reference internal" href="boundary.html">boundary command</a></li>
<li class="toctree-l2"><a class="reference internal" href="box.html">box command</a></li>
<li class="toctree-l2"><a class="reference internal" href="change_box.html">change_box command</a></li>
<li class="toctree-l2"><a class="reference internal" href="clear.html">clear command</a></li>
<li class="toctree-l2"><a class="reference internal" href="comm_modify.html">comm_modify command</a></li>
<li class="toctree-l2"><a class="reference internal" href="comm_style.html">comm_style command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute.html">compute command</a></li>
<li class="toctree-l2"><a class="reference internal" href="compute_modify.html">compute_modify command</a></li>
<li class="toctree-l2"><a class="reference internal" href="create_atoms.html">create_atoms command</a></li>
<li class="toctree-l2"><a class="reference internal" href="create_bonds.html">create_bonds command</a></li>
<li class="toctree-l2"><a class="reference internal" href="create_box.html">create_box command</a></li>
<li class="toctree-l2"><a class="reference internal" href="delete_atoms.html">delete_atoms command</a></li>
<li class="toctree-l2"><a class="reference internal" href="delete_bonds.html">delete_bonds command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dielectric.html">dielectric command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dihedral_coeff.html">dihedral_coeff command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dihedral_style.html">dihedral_style command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dimension.html">dimension command</a></li>
<li class="toctree-l2"><a class="reference internal" href="displace_atoms.html">displace_atoms command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dump.html">dump command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dump.html#dump-custom-vtk-command"><code class="docutils literal"><span class="pre">dump</span> <span class="pre">custom/vtk</span></code> command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dump.html#dump-h5md-command"><code class="docutils literal"><span class="pre">dump</span> <span class="pre">h5md</span></code> command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dump.html#dump-image-command"><code class="docutils literal"><span class="pre">dump</span> <span class="pre">image</span></code> command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dump.html#dump-movie-command"><code class="docutils literal"><span class="pre">dump</span> <span class="pre">movie</span></code> command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dump.html#dump-molfile-command"><code class="docutils literal"><span class="pre">dump</span> <span class="pre">molfile</span></code> command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dump_custom_vtk.html">dump custom/vtk command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dump_h5md.html">dump h5md command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dump_image.html">dump image command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dump_image.html#dump-movie-command">dump movie command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dump_modify.html">dump_modify command</a></li>
<li class="toctree-l2"><a class="reference internal" href="dump_molfile.html">dump molfile command</a></li>
<li class="toctree-l2"><a class="reference internal" href="echo.html">echo command</a></li>
<li class="toctree-l2"><a class="reference internal" href="fix.html">fix command</a></li>
<li class="toctree-l2"><a class="reference internal" href="fix_modify.html">fix_modify command</a></li>
<li class="toctree-l2"><a class="reference internal" href="group.html">group command</a></li>
<li class="toctree-l2"><a class="reference internal" href="group2ndx.html">group2ndx command</a></li>
<li class="toctree-l2"><a class="reference internal" href="group2ndx.html#ndx2group-command">ndx2group command</a></li>
<li class="toctree-l2"><a class="reference internal" href="if.html">if command</a></li>
<li class="toctree-l2"><a class="reference internal" href="improper_coeff.html">improper_coeff command</a></li>
<li class="toctree-l2"><a class="reference internal" href="improper_style.html">improper_style command</a></li>
<li class="toctree-l2"><a class="reference internal" href="include.html">include command</a></li>
<li class="toctree-l2"><a class="reference internal" href="info.html">info command</a></li>
<li class="toctree-l2"><a class="reference internal" href="jump.html">jump command</a></li>
<li class="toctree-l2"><a class="reference internal" href="kspace_modify.html">kspace_modify command</a></li>
<li class="toctree-l2"><a class="reference internal" href="kspace_style.html">kspace_style command</a></li>
<li class="toctree-l2"><a class="reference internal" href="label.html">label command</a></li>
<li class="toctree-l2"><a class="reference internal" href="lattice.html">lattice command</a></li>
<li class="toctree-l2"><a class="reference internal" href="log.html">log command</a></li>
<li class="toctree-l2"><a class="reference internal" href="mass.html">mass command</a></li>
<li class="toctree-l2"><a class="reference internal" href="min_modify.html">min_modify command</a></li>
<li class="toctree-l2"><a class="reference internal" href="min_style.html">min_style command</a></li>
<li class="toctree-l2"><a class="reference internal" href="minimize.html">minimize command</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">molecule command</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#syntax">Syntax</a></li>
<li class="toctree-l3"><a class="reference internal" href="#examples">Examples</a></li>
<li class="toctree-l3"><a class="reference internal" href="#description">Description</a></li>
<li class="toctree-l3"><a class="reference internal" href="#restrictions">Restrictions</a></li>
<li class="toctree-l3"><a class="reference internal" href="#related-commands">Related commands</a></li>
<li class="toctree-l3"><a class="reference internal" href="#default">Default</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="neb.html">neb command</a></li>
<li class="toctree-l2"><a class="reference internal" href="neigh_modify.html">neigh_modify command</a></li>
<li class="toctree-l2"><a class="reference internal" href="neighbor.html">neighbor command</a></li>
<li class="toctree-l2"><a class="reference internal" href="newton.html">newton command</a></li>
<li class="toctree-l2"><a class="reference internal" href="next.html">next command</a></li>
<li class="toctree-l2"><a class="reference internal" href="package.html">package command</a></li>
<li class="toctree-l2"><a class="reference internal" href="pair_coeff.html">pair_coeff command</a></li>
<li class="toctree-l2"><a class="reference internal" href="pair_modify.html">pair_modify command</a></li>
<li class="toctree-l2"><a class="reference internal" href="pair_style.html">pair_style command</a></li>
<li class="toctree-l2"><a class="reference internal" href="pair_write.html">pair_write command</a></li>
<li class="toctree-l2"><a class="reference internal" href="partition.html">partition command</a></li>
<li class="toctree-l2"><a class="reference internal" href="prd.html">prd command</a></li>
<li class="toctree-l2"><a class="reference internal" href="print.html">print command</a></li>
<li class="toctree-l2"><a class="reference internal" href="processors.html">processors command</a></li>
<li class="toctree-l2"><a class="reference internal" href="python.html">python command</a></li>
<li class="toctree-l2"><a class="reference internal" href="quit.html">quit command</a></li>
<li class="toctree-l2"><a class="reference internal" href="read_data.html">read_data command</a></li>
<li class="toctree-l2"><a class="reference internal" href="read_dump.html">read_dump command</a></li>
<li class="toctree-l2"><a class="reference internal" href="read_restart.html">read_restart command</a></li>
<li class="toctree-l2"><a class="reference internal" href="region.html">region command</a></li>
<li class="toctree-l2"><a class="reference internal" href="replicate.html">replicate command</a></li>
<li class="toctree-l2"><a class="reference internal" href="rerun.html">rerun command</a></li>
<li class="toctree-l2"><a class="reference internal" href="reset_timestep.html">reset_timestep command</a></li>
<li class="toctree-l2"><a class="reference internal" href="restart.html">restart command</a></li>
<li class="toctree-l2"><a class="reference internal" href="run.html">run command</a></li>
<li class="toctree-l2"><a class="reference internal" href="run_style.html">run_style command</a></li>
<li class="toctree-l2"><a class="reference internal" href="set.html">set command</a></li>
<li class="toctree-l2"><a class="reference internal" href="shell.html">shell command</a></li>
<li class="toctree-l2"><a class="reference internal" href="special_bonds.html">special_bonds command</a></li>
<li class="toctree-l2"><a class="reference internal" href="suffix.html">suffix command</a></li>
<li class="toctree-l2"><a class="reference internal" href="tad.html">tad command</a></li>
<li class="toctree-l2"><a class="reference internal" href="temper.html">temper command</a></li>
<li class="toctree-l2"><a class="reference internal" href="thermo.html">thermo command</a></li>
<li class="toctree-l2"><a class="reference internal" href="thermo_modify.html">thermo_modify command</a></li>
<li class="toctree-l2"><a class="reference internal" href="thermo_style.html">thermo_style command</a></li>
<li class="toctree-l2"><a class="reference internal" href="timer.html">timer command</a></li>
<li class="toctree-l2"><a class="reference internal" href="timestep.html">timestep command</a></li>
<li class="toctree-l2"><a class="reference internal" href="uncompute.html">uncompute command</a></li>
<li class="toctree-l2"><a class="reference internal" href="undump.html">undump command</a></li>
<li class="toctree-l2"><a class="reference internal" href="unfix.html">unfix command</a></li>
<li class="toctree-l2"><a class="reference internal" href="units.html">units command</a></li>
<li class="toctree-l2"><a class="reference internal" href="variable.html">variable command</a></li>
<li class="toctree-l2"><a class="reference internal" href="velocity.html">velocity command</a></li>
<li class="toctree-l2"><a class="reference internal" href="write_coeff.html">write_coeff command</a></li>
<li class="toctree-l2"><a class="reference internal" href="write_data.html">write_data command</a></li>
<li class="toctree-l2"><a class="reference internal" href="write_dump.html">write_dump command</a></li>
<li class="toctree-l2"><a class="reference internal" href="write_restart.html">write_restart command</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="fixes.html">Fixes</a></li>
<li class="toctree-l1"><a class="reference internal" href="computes.html">Computes</a></li>
<li class="toctree-l1"><a class="reference internal" href="pairs.html">Pair Styles</a></li>
<li class="toctree-l1"><a class="reference internal" href="bonds.html">Bond Styles</a></li>
<li class="toctree-l1"><a class="reference internal" href="angles.html">Angle Styles</a></li>
<li class="toctree-l1"><a class="reference internal" href="dihedrals.html">Dihedral Styles</a></li>
<li class="toctree-l1"><a class="reference internal" href="impropers.html">Improper Styles</a></li>
</ul>
</div>
&nbsp;
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" role="navigation" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="Manual.html">LAMMPS</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="Manual.html">Docs</a> &raquo;</li>
<li><a href="commands.html">Commands</a> &raquo;</li>
<li>molecule command</li>
<li class="wy-breadcrumbs-aside">
<a href="http://lammps.sandia.gov">Website</a>
<a href="Section_commands.html#comm">Commands</a>
</li>
</ul>
<hr/>
<div class="rst-footer-buttons" style="margin-bottom: 1em" role="navigation" aria-label="footer navigation">
<a href="neb.html" class="btn btn-neutral float-right" title="neb command" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="minimize.html" class="btn btn-neutral" title="minimize command" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="molecule-command">
<span id="index-0"></span><h1>molecule command</h1>
<div class="section" id="syntax">
<h2>Syntax</h2>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">molecule</span> <span class="n">ID</span> <span class="n">file1</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> <span class="n">file2</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> <span class="n">fileN</span> <span class="o">...</span>
</pre></div>
</div>
<ul>
<li><p class="first">ID = user-assigned name for the molecule template</p>
</li>
<li><p class="first">file1,file2,... = names of files containing molecule descriptions</p>
</li>
<li><p class="first">zero or more keyword/value pairs may be appended after each file</p>
</li>
<li><p class="first">keyword = <em>offset</em> or <em>toff</em> or <em>boff</em> or <em>aoff</em> or <em>doff</em> or <em>ioff</em> or <em>scale</em></p>
<pre class="literal-block">
<em>offset</em> values = Toff Boff Aoff Doff Ioff
Toff = offset to add to atom types
Boff = offset to add to bond types
Aoff = offset to add to angle types
Doff = offset to add to dihedral types
Ioff = offset to add to improper types
<em>toff</em> value = Toff
Toff = offset to add to atom types
<em>boff</em> value = Boff
Boff = offset to add to bond types
<em>aoff</em> value = Aoff
Aoff = offset to add to angle types
<em>doff</em> value = Doff
Doff = offset to add to dihedral types
<em>ioff</em> value = Ioff
Ioff = offset to add to improper types
<em>scale</em> value = sfactor
sfactor = scale factor to apply to the size and mass of the molecule
</pre>
</li>
</ul>
</div>
<div class="section" id="examples">
<h2>Examples</h2>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">molecule</span> <span class="mi">1</span> <span class="n">mymol</span><span class="o">.</span><span class="n">txt</span>
<span class="n">molecule</span> <span class="mi">1</span> <span class="n">co2</span><span class="o">.</span><span class="n">txt</span> <span class="n">h2o</span><span class="o">.</span><span class="n">txt</span>
<span class="n">molecule</span> <span class="n">CO2</span> <span class="n">co2</span><span class="o">.</span><span class="n">txt</span> <span class="n">boff</span> <span class="mi">3</span> <span class="n">aoff</span> <span class="mi">2</span>
<span class="n">molecule</span> <span class="mi">1</span> <span class="n">mymol</span><span class="o">.</span><span class="n">txt</span> <span class="n">offset</span> <span class="mi">6</span> <span class="mi">9</span> <span class="mi">18</span> <span class="mi">23</span> <span class="mi">14</span>
<span class="n">molecule</span> <span class="n">objects</span> <span class="n">file</span><span class="o">.</span><span class="mi">1</span> <span class="n">scale</span> <span class="mf">1.5</span> <span class="n">file</span><span class="o">.</span><span class="mi">1</span> <span class="n">scale</span> <span class="mf">2.0</span> <span class="n">file</span><span class="o">.</span><span class="mi">2</span> <span class="n">scale</span> <span class="mf">1.3</span>
</pre></div>
</div>
</div>
<div class="section" id="description">
<h2>Description</h2>
<p>Define a molecule template that can be used as part of other LAMMPS
commands, typically to define a collection of particles as a bonded
molecule or a rigid body. Commands that currently use molecule
templates include:</p>
<ul class="simple">
<li><a class="reference internal" href="fix_deposit.html"><span class="doc">fix deposit</span></a></li>
<li><a class="reference internal" href="fix_pour.html"><span class="doc">fix pour</span></a></li>
<li><a class="reference internal" href="fix_rigid.html"><span class="doc">fix rigid/small</span></a></li>
<li><a class="reference internal" href="fix_shake.html"><span class="doc">fix shake</span></a></li>
<li><a class="reference internal" href="fix_gcmc.html"><span class="doc">fix gcmc</span></a></li>
<li><a class="reference internal" href="create_atoms.html"><span class="doc">create_atoms</span></a></li>
<li><a class="reference internal" href="atom_style.html"><span class="doc">atom_style template</span></a></li>
</ul>
<p>The ID of a molecule template can only contain alphanumeric characters
and underscores.</p>
<p>A single template can contain multiple molecules, listed one per file.
Some of the commands listed above currently use only the first
molecule in the template, and will issue a warning if the template
contains multiple molecules. The <a class="reference internal" href="atom_style.html"><span class="doc">atom_style template</span></a> command allows multiple-molecule templates
to define a system with more than one templated molecule.</p>
<p>Each filename can be followed by optional keywords which are applied
only to the molecule in the file as used in this template. This is to
make it easy to use the same molecule file in different molecule
templates or in different simulations. You can specify the same file
multiple times with different optional keywords.</p>
<p>The <em>offset</em>, <em>toff</em>, <em>aoff</em>, <em>doff</em>, <em>ioff</em> keywords add the
specified offset values to the atom types, bond types, angle types,
dihedral types, and/or improper types as they are read from the
molecule file. E.g. if <em>toff</em> = 2, and the file uses atom types
1,2,3, then each created molecule will have atom types 3,4,5. For the
<em>offset</em> keyword, all five offset values must be specified, but
individual values will be ignored if the molecule template does not
use that attribute (e.g. no bonds).</p>
<p>The <em>scale</em> keyword scales the size of the molecule. This can be
useful for modeling polydisperse granular rigid bodies. The scale
factor is applied to each of these properties in the molecule file, if
they are defined: the individual particle coordinates (Coords
section), the individual mass of each particle (Masses section), the
individual diameters of each particle (Diameters section), the total
mass of the molecule (header keyword = mass), the center-of-mass of
the molecule (header keyword = com), and the moments of inertia of the
molecule (header keyword = inertia).</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">The molecule command can be used to define molecules with bonds,
angles, dihedrals, imporopers, or special bond lists of neighbors
within a molecular topology, so that you can later add the molecules
to your simulation, via one or more of the commands listed above. If
such molecules do not already exist when LAMMPS creates the simulation
box, via the <a class="reference internal" href="create_box.html"><span class="doc">create_box</span></a> or
<a class="reference internal" href="read_data.html"><span class="doc">read_data</span></a> command, when you later add them you may
overflow the pre-allocated data structures which store molecular
topology information with each atom, and an error will be generated.
Both the <a class="reference internal" href="create_box.html"><span class="doc">create_box</span></a> command and the data files read
by the <a class="reference internal" href="read_data.html"><span class="doc">read_data</span></a> command have &#8220;extra&#8221; options which
insure space is allocated for storing topology info for molecules that
are added later.</p>
</div>
<p>The format of an individual molecule file is similar to the data file
read by the <a class="reference internal" href="read_data.html"><span class="doc">read_data</span></a> commands, and is as follows.</p>
<p>A molecule 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 &#8216;#&#8217; 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&#8217;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>These are the recognized header keywords. Header lines can come in
any order. The numeric value(s) are read from the beginning of the
line. The keyword should appear at the end of the line. All these
settings have default values, as explained below. A line need only
appear if the value(s) are different than the default.</p>
<ul class="simple">
<li>N <em>atoms</em> = # of atoms N in molecule, default = 0</li>
<li>Nb <em>bonds</em> = # of bonds Nb in molecule, default = 0</li>
<li>Na <em>angles</em> = # of angles Na in molecule, default = 0</li>
<li>Nd <em>dihedrals</em> = # of dihedrals Nd in molecule, default = 0</li>
<li>Ni <em>impropers</em> = # of impropers Ni in molecule, default = 0</li>
<li>Mtotal <em>mass</em> = total mass of molecule</li>
<li>Xc Yc Zc <em>com</em> = coordinates of center-of-mass of molecule</li>
<li>Ixx Iyy Izz Ixy Ixz Iyz <em>inertia</em> = 6 components of inertia tensor of molecule</li>
</ul>
<p>For <em>mass</em>, <em>com</em>, and <em>inertia</em>, the default is for LAMMPS to
calculate this quantity itself if needed, assuming the molecules
consists of a set of point particles or finite-size particles (with a
non-zero diameter) that do not overlap. If finite-size particles in
the molecule do overlap, LAMMPS will not account for the overlap
effects when calculating any of these 3 quantities, so you should
pre-compute them yourself and list the values in the file.</p>
<p>The mass and center-of-mass coordinates (Xc,Yc,Zc) are
self-explanatory. The 6 moments of inertia (ixx,iyy,izz,ixy,ixz,iyz)
should be the values consistent with the current orientation of the
rigid body around its center of mass. The values are with respect to
the simulation box XYZ axes, not with respect to the prinicpal axes of
the rigid body itself. LAMMPS performs the latter calculation
internally.</p>
<p>These are the allowed section keywords for the body of the file.</p>
<ul class="simple">
<li><em>Coords, Types, Charges, Diameters, Masses</em> = atom-property sections</li>
<li><em>Bonds, Angles, Dihedrals, Impropers</em> = molecular topology sections</li>
<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
<a class="reference internal" href="special_bonds.html"><span class="doc">special_bonds</span></a> command for more details. One
reason to list the special bond info explicitly is for the
<a class="reference internal" href="tutorial_drude.html"><span class="doc">thermalized Drude oscillator model</span></a> which treats
the bonds between nuclear cores and Drude electrons in a different
manner.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="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 <a class="reference internal" href="fix_deposit.html"><span class="doc">fix deposit</span></a> command, the Coords
and Types sections are required. To add a rigid body via the <a class="reference internal" href="fix_pour.html"><span class="doc">fix pour</span></a> 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 <a class="reference internal" href="fix_pour.html"><span class="doc">fix pour</span></a>
command can be used to add &#8220;molecules&#8221; 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>
<hr class="docutils" />
<p><em>Coords</em> section:</p>
<ul class="simple">
<li>one line per atom</li>
<li>line syntax: ID x y z</li>
<li>x,y,z = coordinate of atom</li>
</ul>
<hr class="docutils" />
<p><em>Types</em> section:</p>
<ul class="simple">
<li>one line per atom</li>
<li>line syntax: ID type</li>
<li>type = atom type of atom</li>
</ul>
<hr class="docutils" />
<p><em>Charges</em> section:</p>
<ul class="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 <a class="reference internal" href="atom_style.html"><span class="doc">atom styles</span></a> that
support charge. If this section is not included, the default charge
on each atom in the molecule is 0.0.</p>
<hr class="docutils" />
<p><em>Diameters</em> section:</p>
<ul class="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 <a class="reference internal" href="atom_style.html"><span class="doc">atom styles</span></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>
<hr class="docutils" />
<p><em>Masses</em> section:</p>
<ul class="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 <a class="reference internal" href="atom_style.html"><span class="doc">atom styles</span></a> that
support per-atom mass, as opposed to per-type mass. See the
<a class="reference internal" href="mass.html"><span class="doc">mass</span></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
<a class="reference internal" href="units.html"><span class="doc">units</span></a> of mass/volume.</p>
<hr class="docutils" />
<p><em>Bonds</em> section:</p>
<ul class="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>
<hr class="docutils" />
<p><em>Angles</em> section:</p>
<ul class="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>
<hr class="docutils" />
<p><em>Dihedrals</em> section:</p>
<ul class="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>
<hr class="docutils" />
<p><em>Impropers</em> section:</p>
<ul class="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 <a class="reference internal" href="improper_style.html"><span class="doc">improper style</span></a>. See
the doc pages for individual styles for details.</p>
<hr class="docutils" />
<p><em>Special Bond Counts</em> section:</p>
<ul class="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
<a class="reference internal" href="special_bonds.html"><span class="doc">special_bonds</span></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.</p>
<p>As explained above, LAMMPS will auto-generate this information if this
section is not specified. If specified, this section will
override what would be auto-generated.</p>
<hr class="docutils" />
<p><em>Special Bonds</em> section:</p>
<ul class="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 <a class="reference internal" href="special_bonds.html"><span class="doc">special_bonds</span></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.</p>
<p>As explained above, LAMMPS will auto-generate this information if this
section is not specified. If specified, this section will override
what would be auto-generated.</p>
<hr class="docutils" />
<p><em>Shake Flags</em> section:</p>
<ul class="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 &#8220;fix shake&#8221; 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 <a class="reference internal" href="fix_shake.html"><span class="doc">fix shake</span></a> doc page for a further description of SHAKE
clusters.</p>
<ul class="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>
<hr class="docutils" />
<p><em>Shake Atoms</em> section:</p>
<ul class="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 &#8220;fix shake&#8221; 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 <a class="reference internal" href="fix_shake.html"><span class="doc">fix shake</span></a> doc page for a further description
of SHAKE clusters.</p>
<hr class="docutils" />
<p><em>Shake Bond Types</em> section:</p>
<ul class="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 &#8220;fix shake&#8221; 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 <a class="reference internal" href="fix_shake.html"><span class="doc">fix shake</span></a> doc page for a further description
of SHAKE clusters.</p>
</div>
<hr class="docutils" />
<div class="section" id="restrictions">
<h2>Restrictions</h2>
<blockquote>
<div>none</div></blockquote>
</div>
<div class="section" id="related-commands">
<h2>Related commands</h2>
<p><a class="reference internal" href="fix_deposit.html"><span class="doc">fix deposit</span></a>, <a class="reference internal" href="fix_pour.html"><span class="doc">fix pour</span></a>,
<a class="reference internal" href="fix_gcmc.html"><span class="doc">fix gcmc</span></a></p>
</div>
<div class="section" id="default">
<h2>Default</h2>
<p>The default keywords values are offset 0 0 0 0 0 and scale = 1.0.</p>
</div>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="neb.html" class="btn btn-neutral float-right" title="neb command" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="minimize.html" class="btn btn-neutral" title="minimize command" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright 2013 Sandia Corporation.
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT:'./',
VERSION:'',
COLLAPSE_INDEX:false,
FILE_SUFFIX:'.html',
HAS_SOURCE: true
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
<script type="text/javascript" src="_static/sphinxcontrib-images/LightBox2/lightbox2/js/jquery-1.11.0.min.js"></script>
<script type="text/javascript" src="_static/sphinxcontrib-images/LightBox2/lightbox2/js/lightbox.min.js"></script>
<script type="text/javascript" src="_static/sphinxcontrib-images/LightBox2/lightbox2-customize/jquery-noconflict.js"></script>
<script type="text/javascript" src="_static/js/theme.js"></script>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.StickyNav.enable();
});
</script>
</body>
</html>

Event Timeline