git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@14965 f3b2605a-c512-4ea7-a41b-209d697bcdaa

This commit is contained in:
sjplimp 2016-05-09 20:08:38 +00:00
parent d3d29d35af
commit baa39ad263
3 changed files with 0 additions and 862 deletions

View File

@ -1,235 +0,0 @@
.. index:: units
units command
=============
Syntax
""""""
.. parsed-literal::
units style
* style = *lj* or *real* or *metal* or *si* or *cgs* or *electron* or *micro* or *nano*
Examples
""""""""
.. parsed-literal::
units metal
units lj
Description
"""""""""""
This command sets the style of units used for a simulation. It
determines the units of all quantities specified in the input script
and data file, as well as quantities output to the screen, log file,
and dump files. Typically, this command is used at the very beginning
of an input script.
For all units except *lj*\ , LAMMPS uses physical constants from
www.physics.nist.gov. For the definition of Kcal in real units,
LAMMPS uses the thermochemical calorie = 4.184 J.
The choice you make for units simply sets some internal conversion
factors within LAMMPS. This means that any simulation you perform for
one choice of units can be duplicated with any other unit setting
LAMMPS supports. In this context "duplicate" means the particles will
have identical trajectories and all output generated by the simulation
will be identical. This will be the case for some number of timesteps
until round-off effects accumulate, since the conversion factors for
two different unit systems are not identical to infinite precision.
To perform the same simulation in a different set of units you must
change all the unit-based input parameters in your input script and
other input files (data file, potential files, etc) correctly to the
new units. And you must correctly convert all output from the new
units to the old units when comparing to the original results. That
is often not simple to do.
----------
For style *lj*\ , all quantities are unitless. Without loss of
generality, LAMMPS sets the fundamental quantities mass, sigma,
epsilon, and the Boltzmann constant = 1. The masses, distances,
energies you specify are multiples of these fundamental values. The
formulas relating the reduced or unitless quantity (with an asterisk)
to the same quantity with units is also given. Thus you can use the
mass & sigma & epsilon values for a specific material and convert the
results from a unitless LJ simulation into physical quantities.
* mass = mass or m
* distance = sigma, where x* = x / sigma
* time = tau, where t* = t (epsilon / m / sigma^2)^1/2
* energy = epsilon, where E* = E / epsilon
* velocity = sigma/tau, where v* = v tau / sigma
* force = epsilon/sigma, where f* = f sigma / epsilon
* torque = epsilon, where t* = t / epsilon
* temperature = reduced LJ temperature, where T* = T Kb / epsilon
* pressure = reduced LJ pressure, where P* = P sigma^3 / epsilon
* dynamic viscosity = reduced LJ viscosity, where eta* = eta sigma^3 / epsilon / tau
* charge = reduced LJ charge, where q* = q / (4 pi perm0 sigma epsilon)^1/2
* dipole = reduced LJ dipole, moment where *mu = mu / (4 pi perm0 sigma^3 epsilon)^1/2
* electric field = force/charge, where E* = E (4 pi perm0 sigma epsilon)^1/2 sigma / epsilon
* density = mass/volume, where rho* = rho sigma^dim
Note that for LJ units, the default mode of thermodyamic output via
the :doc:`thermo_style <thermo_style>` command is to normalize all
extensive quantities by the number of atoms. E.g. potential energy is
extensive because it is summed over atoms, so it is output as
energy/atom. Temperature is intensive since it is already normalized
by the number of atoms, so it is output as-is. This behavior can be
changed via the :doc:`thermo_modify norm <thermo_modify>` command.
For style *real*\ , these are the units:
* mass = grams/mole
* distance = Angstroms
* time = femtoseconds
* energy = Kcal/mole
* velocity = Angstroms/femtosecond
* force = Kcal/mole-Angstrom
* torque = Kcal/mole
* temperature = Kelvin
* pressure = atmospheres
* dynamic viscosity = Poise
* charge = multiple of electron charge (1.0 is a proton)
* dipole = charge*Angstroms
* electric field = volts/Angstrom
* density = gram/cm^dim
For style *metal*\ , these are the units:
* mass = grams/mole
* distance = Angstroms
* time = picoseconds
* energy = eV
* velocity = Angstroms/picosecond
* force = eV/Angstrom
* torque = eV
* temperature = Kelvin
* pressure = bars
* dynamic viscosity = Poise
* charge = multiple of electron charge (1.0 is a proton)
* dipole = charge*Angstroms
* electric field = volts/Angstrom
* density = gram/cm^dim
For style *si*\ , these are the units:
* mass = kilograms
* distance = meters
* time = seconds
* energy = Joules
* velocity = meters/second
* force = Newtons
* torque = Newton-meters
* temperature = Kelvin
* pressure = Pascals
* dynamic viscosity = Pascal*second
* charge = Coulombs (1.6021765e-19 is a proton)
* dipole = Coulombs*meters
* electric field = volts/meter
* density = kilograms/meter^dim
For style *cgs*\ , these are the units:
* mass = grams
* distance = centimeters
* time = seconds
* energy = ergs
* velocity = centimeters/second
* force = dynes
* torque = dyne-centimeters
* temperature = Kelvin
* pressure = dyne/cm^2 or barye = 1.0e-6 bars
* dynamic viscosity = Poise
* charge = statcoulombs or esu (4.8032044e-10 is a proton)
* dipole = statcoul-cm = 10^18 debye
* electric field = statvolt/cm or dyne/esu
* density = grams/cm^dim
For style *electron*\ , these are the units:
* mass = atomic mass units
* distance = Bohr
* time = femtoseconds
* energy = Hartrees
* velocity = Bohr/atomic time units [1.03275e-15 seconds]
* force = Hartrees/Bohr
* temperature = Kelvin
* pressure = Pascals
* charge = multiple of electron charge (1.0 is a proton)
* dipole moment = Debye
* electric field = volts/cm
For style *micro*\ , these are the units:
* mass = picograms
* distance = micrometers
* time = microseconds
* energy = picogram-micrometer^2/microsecond^2
* velocity = micrometers/microsecond
* force = picogram-micrometer/microsecond^2
* torque = picogram-micrometer^2/microsecond^2
* temperature = Kelvin
* pressure = picogram/(micrometer-microsecond^2)
* dynamic viscosity = picogram/(micrometer-microsecond)
* charge = picocoulombs (1.6021765e-7 is a proton)
* dipole = picocoulomb-micrometer
* electric field = volt/micrometer
* density = picograms/micrometer^dim
For style *nano*\ , these are the units:
* mass = attograms
* distance = nanometers
* time = nanoseconds
* energy = attogram-nanometer^2/nanosecond^2
* velocity = nanometers/nanosecond
* force = attogram-nanometer/nanosecond^2
* torque = attogram-nanometer^2/nanosecond^2
* temperature = Kelvin
* pressure = attogram/(nanometer-nanosecond^2)
* dynamic viscosity = attogram/(nanometer-nanosecond)
* charge = multiple of electron charge (1.0 is a proton)
* dipole = charge-nanometer
* electric field = volt/nanometer
* density = attograms/nanometer^dim
The units command also sets the timestep size and neighbor skin
distance to default values for each style:
* For style *lj* these are dt = 0.005 tau and skin = 0.3 sigma.
* For style *real* these are dt = 1.0 fmsec and skin = 2.0 Angstroms.
* For style *metal* these are dt = 0.001 psec and skin = 2.0 Angstroms.
* For style *si* these are dt = 1.0e-8 sec and skin = 0.001 meters.
* For style *cgs* these are dt = 1.0e-8 sec and skin = 0.1 cm.
* For style *electron* these are dt = 0.001 fmsec and skin = 2.0 Bohr.
* For style *micro* these are dt = 2.0 microsec and skin = 0.1 micrometers.
* For style *nano* these are dt = 0.00045 nanosec and skin = 0.1 nanometers.
Restrictions
""""""""""""
This command cannot be used after the simulation box is defined by a
:doc:`read_data <read_data>` or :doc:`create_box <create_box>` command.
**Related commands:** none
Default
"""""""
.. parsed-literal::
units lj
.. _lws: http://lammps.sandia.gov
.. _ld: Manual.html
.. _lc: Section_commands.html#comm

View File

@ -1,406 +0,0 @@
<!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>units 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"/>
<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">
<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>
</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>units 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>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="units-command">
<span id="index-0"></span><h1>units command</h1>
<div class="section" id="syntax">
<h2>Syntax</h2>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">units</span> <span class="n">style</span>
</pre></div>
</div>
<ul class="simple">
<li>style = <em>lj</em> or <em>real</em> or <em>metal</em> or <em>si</em> or <em>cgs</em> or <em>electron</em> or <em>micro</em> or <em>nano</em></li>
</ul>
</div>
<div class="section" id="examples">
<h2>Examples</h2>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">units</span> <span class="n">metal</span>
<span class="n">units</span> <span class="n">lj</span>
</pre></div>
</div>
</div>
<div class="section" id="description">
<h2>Description</h2>
<p>This command sets the style of units used for a simulation. It
determines the units of all quantities specified in the input script
and data file, as well as quantities output to the screen, log file,
and dump files. Typically, this command is used at the very beginning
of an input script.</p>
<p>For all units except <em>lj</em>, LAMMPS uses physical constants from
www.physics.nist.gov. For the definition of Kcal in real units,
LAMMPS uses the thermochemical calorie = 4.184 J.</p>
<p>The choice you make for units simply sets some internal conversion
factors within LAMMPS. This means that any simulation you perform for
one choice of units can be duplicated with any other unit setting
LAMMPS supports. In this context &#8220;duplicate&#8221; means the particles will
have identical trajectories and all output generated by the simulation
will be identical. This will be the case for some number of timesteps
until round-off effects accumulate, since the conversion factors for
two different unit systems are not identical to infinite precision.</p>
<p>To perform the same simulation in a different set of units you must
change all the unit-based input parameters in your input script and
other input files (data file, potential files, etc) correctly to the
new units. And you must correctly convert all output from the new
units to the old units when comparing to the original results. That
is often not simple to do.</p>
<hr class="docutils" />
<p>For style <em>lj</em>, all quantities are unitless. Without loss of
generality, LAMMPS sets the fundamental quantities mass, sigma,
epsilon, and the Boltzmann constant = 1. The masses, distances,
energies you specify are multiples of these fundamental values. The
formulas relating the reduced or unitless quantity (with an asterisk)
to the same quantity with units is also given. Thus you can use the
mass &amp; sigma &amp; epsilon values for a specific material and convert the
results from a unitless LJ simulation into physical quantities.</p>
<ul class="simple">
<li>mass = mass or m</li>
<li>distance = sigma, where x* = x / sigma</li>
<li>time = tau, where t* = t (epsilon / m / sigma^2)^1/2</li>
<li>energy = epsilon, where E* = E / epsilon</li>
<li>velocity = sigma/tau, where v* = v tau / sigma</li>
<li>force = epsilon/sigma, where f* = f sigma / epsilon</li>
<li>torque = epsilon, where t* = t / epsilon</li>
<li>temperature = reduced LJ temperature, where T* = T Kb / epsilon</li>
<li>pressure = reduced LJ pressure, where P* = P sigma^3 / epsilon</li>
<li>dynamic viscosity = reduced LJ viscosity, where eta* = eta sigma^3 / epsilon / tau</li>
<li>charge = reduced LJ charge, where q* = q / (4 pi perm0 sigma epsilon)^1/2</li>
<li>dipole = reduced LJ dipole, moment where <a href="#id1"><span class="problematic" id="id2">*</span></a>mu = mu / (4 pi perm0 sigma^3 epsilon)^1/2</li>
<li>electric field = force/charge, where E* = E (4 pi perm0 sigma epsilon)^1/2 sigma / epsilon</li>
<li>density = mass/volume, where rho* = rho sigma^dim</li>
</ul>
<p>Note that for LJ units, the default mode of thermodyamic output via
the <a class="reference internal" href="thermo_style.html"><span class="doc">thermo_style</span></a> command is to normalize all
extensive quantities by the number of atoms. E.g. potential energy is
extensive because it is summed over atoms, so it is output as
energy/atom. Temperature is intensive since it is already normalized
by the number of atoms, so it is output as-is. This behavior can be
changed via the <a class="reference internal" href="thermo_modify.html"><span class="doc">thermo_modify norm</span></a> command.</p>
<p>For style <em>real</em>, these are the units:</p>
<ul class="simple">
<li>mass = grams/mole</li>
<li>distance = Angstroms</li>
<li>time = femtoseconds</li>
<li>energy = Kcal/mole</li>
<li>velocity = Angstroms/femtosecond</li>
<li>force = Kcal/mole-Angstrom</li>
<li>torque = Kcal/mole</li>
<li>temperature = Kelvin</li>
<li>pressure = atmospheres</li>
<li>dynamic viscosity = Poise</li>
<li>charge = multiple of electron charge (1.0 is a proton)</li>
<li>dipole = charge*Angstroms</li>
<li>electric field = volts/Angstrom</li>
<li>density = gram/cm^dim</li>
</ul>
<p>For style <em>metal</em>, these are the units:</p>
<ul class="simple">
<li>mass = grams/mole</li>
<li>distance = Angstroms</li>
<li>time = picoseconds</li>
<li>energy = eV</li>
<li>velocity = Angstroms/picosecond</li>
<li>force = eV/Angstrom</li>
<li>torque = eV</li>
<li>temperature = Kelvin</li>
<li>pressure = bars</li>
<li>dynamic viscosity = Poise</li>
<li>charge = multiple of electron charge (1.0 is a proton)</li>
<li>dipole = charge*Angstroms</li>
<li>electric field = volts/Angstrom</li>
<li>density = gram/cm^dim</li>
</ul>
<p>For style <em>si</em>, these are the units:</p>
<ul class="simple">
<li>mass = kilograms</li>
<li>distance = meters</li>
<li>time = seconds</li>
<li>energy = Joules</li>
<li>velocity = meters/second</li>
<li>force = Newtons</li>
<li>torque = Newton-meters</li>
<li>temperature = Kelvin</li>
<li>pressure = Pascals</li>
<li>dynamic viscosity = Pascal*second</li>
<li>charge = Coulombs (1.6021765e-19 is a proton)</li>
<li>dipole = Coulombs*meters</li>
<li>electric field = volts/meter</li>
<li>density = kilograms/meter^dim</li>
</ul>
<p>For style <em>cgs</em>, these are the units:</p>
<ul class="simple">
<li>mass = grams</li>
<li>distance = centimeters</li>
<li>time = seconds</li>
<li>energy = ergs</li>
<li>velocity = centimeters/second</li>
<li>force = dynes</li>
<li>torque = dyne-centimeters</li>
<li>temperature = Kelvin</li>
<li>pressure = dyne/cm^2 or barye = 1.0e-6 bars</li>
<li>dynamic viscosity = Poise</li>
<li>charge = statcoulombs or esu (4.8032044e-10 is a proton)</li>
<li>dipole = statcoul-cm = 10^18 debye</li>
<li>electric field = statvolt/cm or dyne/esu</li>
<li>density = grams/cm^dim</li>
</ul>
<p>For style <em>electron</em>, these are the units:</p>
<ul class="simple">
<li>mass = atomic mass units</li>
<li>distance = Bohr</li>
<li>time = femtoseconds</li>
<li>energy = Hartrees</li>
<li>velocity = Bohr/atomic time units [1.03275e-15 seconds]</li>
<li>force = Hartrees/Bohr</li>
<li>temperature = Kelvin</li>
<li>pressure = Pascals</li>
<li>charge = multiple of electron charge (1.0 is a proton)</li>
<li>dipole moment = Debye</li>
<li>electric field = volts/cm</li>
</ul>
<p>For style <em>micro</em>, these are the units:</p>
<ul class="simple">
<li>mass = picograms</li>
<li>distance = micrometers</li>
<li>time = microseconds</li>
<li>energy = picogram-micrometer^2/microsecond^2</li>
<li>velocity = micrometers/microsecond</li>
<li>force = picogram-micrometer/microsecond^2</li>
<li>torque = picogram-micrometer^2/microsecond^2</li>
<li>temperature = Kelvin</li>
<li>pressure = picogram/(micrometer-microsecond^2)</li>
<li>dynamic viscosity = picogram/(micrometer-microsecond)</li>
<li>charge = picocoulombs (1.6021765e-7 is a proton)</li>
<li>dipole = picocoulomb-micrometer</li>
<li>electric field = volt/micrometer</li>
<li>density = picograms/micrometer^dim</li>
</ul>
<p>For style <em>nano</em>, these are the units:</p>
<ul class="simple">
<li>mass = attograms</li>
<li>distance = nanometers</li>
<li>time = nanoseconds</li>
<li>energy = attogram-nanometer^2/nanosecond^2</li>
<li>velocity = nanometers/nanosecond</li>
<li>force = attogram-nanometer/nanosecond^2</li>
<li>torque = attogram-nanometer^2/nanosecond^2</li>
<li>temperature = Kelvin</li>
<li>pressure = attogram/(nanometer-nanosecond^2)</li>
<li>dynamic viscosity = attogram/(nanometer-nanosecond)</li>
<li>charge = multiple of electron charge (1.0 is a proton)</li>
<li>dipole = charge-nanometer</li>
<li>electric field = volt/nanometer</li>
<li>density = attograms/nanometer^dim</li>
</ul>
<p>The units command also sets the timestep size and neighbor skin
distance to default values for each style:</p>
<ul class="simple">
<li>For style <em>lj</em> these are dt = 0.005 tau and skin = 0.3 sigma.</li>
<li>For style <em>real</em> these are dt = 1.0 fmsec and skin = 2.0 Angstroms.</li>
<li>For style <em>metal</em> these are dt = 0.001 psec and skin = 2.0 Angstroms.</li>
<li>For style <em>si</em> these are dt = 1.0e-8 sec and skin = 0.001 meters.</li>
<li>For style <em>cgs</em> these are dt = 1.0e-8 sec and skin = 0.1 cm.</li>
<li>For style <em>electron</em> these are dt = 0.001 fmsec and skin = 2.0 Bohr.</li>
<li>For style <em>micro</em> these are dt = 2.0 microsec and skin = 0.1 micrometers.</li>
<li>For style <em>nano</em> these are dt = 0.00045 nanosec and skin = 0.1 nanometers.</li>
</ul>
</div>
<div class="section" id="restrictions">
<h2>Restrictions</h2>
<p>This command cannot be used after the simulation box is defined by a
<a class="reference internal" href="read_data.html"><span class="doc">read_data</span></a> or <a class="reference internal" href="create_box.html"><span class="doc">create_box</span></a> command.</p>
<p><strong>Related commands:</strong> none</p>
</div>
<div class="section" id="default">
<h2>Default</h2>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">units</span> <span class="n">lj</span>
</pre></div>
</div>
</div>
</div>
</div>
</div>
<footer>
<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>

View File

@ -1,221 +0,0 @@
"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
units command :h3
[Syntax:]
units style :pre
style = {lj} or {real} or {metal} or {si} or {cgs} or {electron} or {micro} or {nano} :ul
[Examples:]
units metal
units lj :pre
[Description:]
This command sets the style of units used for a simulation. It
determines the units of all quantities specified in the input script
and data file, as well as quantities output to the screen, log file,
and dump files. Typically, this command is used at the very beginning
of an input script.
For all units except {lj}, LAMMPS uses physical constants from
www.physics.nist.gov. For the definition of Kcal in real units,
LAMMPS uses the thermochemical calorie = 4.184 J.
The choice you make for units simply sets some internal conversion
factors within LAMMPS. This means that any simulation you perform for
one choice of units can be duplicated with any other unit setting
LAMMPS supports. In this context "duplicate" means the particles will
have identical trajectories and all output generated by the simulation
will be identical. This will be the case for some number of timesteps
until round-off effects accumulate, since the conversion factors for
two different unit systems are not identical to infinite precision.
To perform the same simulation in a different set of units you must
change all the unit-based input parameters in your input script and
other input files (data file, potential files, etc) correctly to the
new units. And you must correctly convert all output from the new
units to the old units when comparing to the original results. That
is often not simple to do.
:line
For style {lj}, all quantities are unitless. Without loss of
generality, LAMMPS sets the fundamental quantities mass, sigma,
epsilon, and the Boltzmann constant = 1. The masses, distances,
energies you specify are multiples of these fundamental values. The
formulas relating the reduced or unitless quantity (with an asterisk)
to the same quantity with units is also given. Thus you can use the
mass & sigma & epsilon values for a specific material and convert the
results from a unitless LJ simulation into physical quantities.
mass = mass or m
distance = sigma, where x* = x / sigma
time = tau, where t* = t (epsilon / m / sigma^2)^1/2
energy = epsilon, where E* = E / epsilon
velocity = sigma/tau, where v* = v tau / sigma
force = epsilon/sigma, where f* = f sigma / epsilon
torque = epsilon, where t* = t / epsilon
temperature = reduced LJ temperature, where T* = T Kb / epsilon
pressure = reduced LJ pressure, where P* = P sigma^3 / epsilon
dynamic viscosity = reduced LJ viscosity, where eta* = eta sigma^3 / epsilon / tau
charge = reduced LJ charge, where q* = q / (4 pi perm0 sigma epsilon)^1/2
dipole = reduced LJ dipole, moment where *mu = mu / (4 pi perm0 sigma^3 epsilon)^1/2
electric field = force/charge, where E* = E (4 pi perm0 sigma epsilon)^1/2 sigma / epsilon
density = mass/volume, where rho* = rho sigma^dim :ul
Note that for LJ units, the default mode of thermodyamic output via
the "thermo_style"_thermo_style.html command is to normalize all
extensive quantities by the number of atoms. E.g. potential energy is
extensive because it is summed over atoms, so it is output as
energy/atom. Temperature is intensive since it is already normalized
by the number of atoms, so it is output as-is. This behavior can be
changed via the "thermo_modify norm"_thermo_modify.html command.
For style {real}, these are the units:
mass = grams/mole
distance = Angstroms
time = femtoseconds
energy = Kcal/mole
velocity = Angstroms/femtosecond
force = Kcal/mole-Angstrom
torque = Kcal/mole
temperature = Kelvin
pressure = atmospheres
dynamic viscosity = Poise
charge = multiple of electron charge (1.0 is a proton)
dipole = charge*Angstroms
electric field = volts/Angstrom
density = gram/cm^dim :ul
For style {metal}, these are the units:
mass = grams/mole
distance = Angstroms
time = picoseconds
energy = eV
velocity = Angstroms/picosecond
force = eV/Angstrom
torque = eV
temperature = Kelvin
pressure = bars
dynamic viscosity = Poise
charge = multiple of electron charge (1.0 is a proton)
dipole = charge*Angstroms
electric field = volts/Angstrom
density = gram/cm^dim :ul
For style {si}, these are the units:
mass = kilograms
distance = meters
time = seconds
energy = Joules
velocity = meters/second
force = Newtons
torque = Newton-meters
temperature = Kelvin
pressure = Pascals
dynamic viscosity = Pascal*second
charge = Coulombs (1.6021765e-19 is a proton)
dipole = Coulombs*meters
electric field = volts/meter
density = kilograms/meter^dim :ul
For style {cgs}, these are the units:
mass = grams
distance = centimeters
time = seconds
energy = ergs
velocity = centimeters/second
force = dynes
torque = dyne-centimeters
temperature = Kelvin
pressure = dyne/cm^2 or barye = 1.0e-6 bars
dynamic viscosity = Poise
charge = statcoulombs or esu (4.8032044e-10 is a proton)
dipole = statcoul-cm = 10^18 debye
electric field = statvolt/cm or dyne/esu
density = grams/cm^dim :ul
For style {electron}, these are the units:
mass = atomic mass units
distance = Bohr
time = femtoseconds
energy = Hartrees
velocity = Bohr/atomic time units \[1.03275e-15 seconds\]
force = Hartrees/Bohr
temperature = Kelvin
pressure = Pascals
charge = multiple of electron charge (1.0 is a proton)
dipole moment = Debye
electric field = volts/cm :ul
For style {micro}, these are the units:
mass = picograms
distance = micrometers
time = microseconds
energy = picogram-micrometer^2/microsecond^2
velocity = micrometers/microsecond
force = picogram-micrometer/microsecond^2
torque = picogram-micrometer^2/microsecond^2
temperature = Kelvin
pressure = picogram/(micrometer-microsecond^2)
dynamic viscosity = picogram/(micrometer-microsecond)
charge = picocoulombs (1.6021765e-7 is a proton)
dipole = picocoulomb-micrometer
electric field = volt/micrometer
density = picograms/micrometer^dim :ul
For style {nano}, these are the units:
mass = attograms
distance = nanometers
time = nanoseconds
energy = attogram-nanometer^2/nanosecond^2
velocity = nanometers/nanosecond
force = attogram-nanometer/nanosecond^2
torque = attogram-nanometer^2/nanosecond^2
temperature = Kelvin
pressure = attogram/(nanometer-nanosecond^2)
dynamic viscosity = attogram/(nanometer-nanosecond)
charge = multiple of electron charge (1.0 is a proton)
dipole = charge-nanometer
electric field = volt/nanometer
density = attograms/nanometer^dim :ul
The units command also sets the timestep size and neighbor skin
distance to default values for each style:
For style {lj} these are dt = 0.005 tau and skin = 0.3 sigma.
For style {real} these are dt = 1.0 fmsec and skin = 2.0 Angstroms.
For style {metal} these are dt = 0.001 psec and skin = 2.0 Angstroms.
For style {si} these are dt = 1.0e-8 sec and skin = 0.001 meters.
For style {cgs} these are dt = 1.0e-8 sec and skin = 0.1 cm.
For style {electron} these are dt = 0.001 fmsec and skin = 2.0 Bohr.
For style {micro} these are dt = 2.0 microsec and skin = 0.1 micrometers.
For style {nano} these are dt = 0.00045 nanosec and skin = 0.1 nanometers. :ul
[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.
[Related commands:] none
[Default:]
units lj :pre