lammps/doc/pair_mgpt.html

378 lines
18 KiB
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>pair_style mgpt 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>pair_style mgpt 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="pair-style-mgpt-command">
<span id="index-0"></span><h1>pair_style mgpt command<a class="headerlink" href="#pair-style-mgpt-command" title="Permalink to this headline"></a></h1>
<div class="section" id="syntax">
<h2>Syntax<a class="headerlink" href="#syntax" title="Permalink to this headline"></a></h2>
<div class="highlight-python"><div class="highlight"><pre>pair_style mgpt
</pre></div>
</div>
</div>
<div class="section" id="examples">
<h2>Examples<a class="headerlink" href="#examples" title="Permalink to this headline"></a></h2>
<div class="highlight-python"><div class="highlight"><pre>pair_style mgpt
pair_coeff * * Ta6.8x.mgpt.parmin Ta6.8x.mgpt.potin Omega
cp ~/lammps/potentials/Ta6.8x.mgpt.parmin parmin
cp ~/lammps/potentials/Ta6.8x.mgpt.potin potin
pair_coeff * * parmin potin Omega volpress yes nbody 1234 precision double
pair_coeff * * parmin potin Omega volpress yes nbody 12
</pre></div>
</div>
</div>
<div class="section" id="description">
<h2>Description<a class="headerlink" href="#description" title="Permalink to this headline"></a></h2>
<p>Within DFT quantum mechanics, generalized pseudopotential theory (GPT)
(<a class="reference internal" href="#moriarty1"><span>Moriarty1</span></a>) provides a first-principles approach to
multi-ion interatomic potentials in d-band transition metals, with a
volume-dependent, real-space total-energy functional for the N-ion
elemental bulk material in the form</p>
<img alt="_images/pair_mgpt.jpg" class="align-center" src="_images/pair_mgpt.jpg" />
<p>where the prime on each summation sign indicates the exclusion of all
self-interaction terms from the summation. The leading volume term
E_vol as well as the two-ion central-force pair potential v_2 and the
three- and four-ion angular-force potentials, v_3 and v_4, depend
explicitly on the atomic volume Omega, but are structure independent
and transferable to all bulk ion configurations, either ordered or
disordered, and with of without the presence of point and line
defects. The simplified model GPT or MGPT (<a class="reference internal" href="#moriarty2"><span>Moriarty2</span></a>,
<a class="reference internal" href="#moriarty3"><span>Moriarty3</span></a>), which retains the form of E_tot and permits
more efficient large-scale atomistic simulations, derives from the GPT
through a series of systematic approximations applied to E_vol and the
potentials v_n that are valid for mid-period transition metals with
nearly half-filled d bands.</p>
<p>Both analytic (<a class="reference internal" href="#moriarty2"><span>Moriarty2</span></a>) and matrix
(<a class="reference internal" href="#moriarty3"><span>Moriarty3</span></a>) representations of MGPT have been developed.
In the more general matrix representation, which can also be applied
to f-band actinide metals and permits both canonical and non-canonical
d/f bands, the multi-ion potentials are evaluated on the fly during a
simulation through d- or f-state matrix multiplication, and the forces
that move the ions are determined analytically. Fast matrix-MGPT
algorithms have been developed independently by Glosli
(<a class="reference internal" href="#glosli"><span>Glosli</span></a>, <a class="reference internal" href="#moriarty3"><span>Moriarty3</span></a>) and by Oppelstrup
(<a class="reference internal" href="#oppelstrup"><span>Oppelstrup</span></a>)</p>
<p>The <em>mgpt</em> pair style calculates forces, energies, and the total
energy per atom, E_tot/N, using the Oppelstrup matrix-MGPT algorithm.
Input potential and control data are entered through the
<a class="reference internal" href="pair_coeff.html"><em>pair_coeff</em></a> command. Each material treated requires
input parmin and potin potential files, as shown in the above
examples, as well as specification by the user of the initial atomic
volume Omega through pair_coeff. At the beginning of a time step in
any simulation, the total volume of the simulation cell V should
always be equal to Omega*N, where N is the number of metal ions
present, taking into account the presence of any vacancies and/or
interstitials in the case of a solid. In a constant-volume
simulation, which is the normal mode of operation for the <em>mgpt</em> pair
style, Omega, V and N all remain constant throughout the simulation
and thus are equal to their initial values. In a constant-stress
simulation, the cell volume V will change (slowly) as the simulation
proceeds. After each time step, the atomic volume should be updated
by the code as Omega = V/N. In addition, the volume term E_vol and
the potentials v_2, v_3 and v_4 have to be removed at the end of the
time step, and then respecified at the new value of Omega. In all
smulations, Omega must remain within the defined volume range for
E_vol and the potentials for the given material.</p>
<p>The default option volpress yes in the <a class="reference internal" href="pair_coeff.html"><em>pair_coeff</em></a>
command includes all volume derivatives of E_tot required to calculate
the stress tensor and pressure correctly. The option volpress no
disregards the pressure contribution resulting from the volume term
E_vol, and can be used for testing and analysis purposes. The
additional optional variable nbody controls the specific terms in
E_tot that are calculated. The default option and the normal option
for mid-period transition and actinide metals is nbody 1234 for which
all four terms in E_tot are retained. The option nbody 12, for
example, retains only the volume term and the two-ion pair potential
term and can be used for GPT series-end transition metals that can be
well described without v_3 and v_4. The nbody option can also be used
to test or analyze the contribution of any of the four terms in E_tot
to a given calculated property.</p>
<p>The <em>mgpt</em> pair style makes extensive use of matrix algebra and
includes optimized kernels for the BlueGene/Q architecture and the
Intel/AMD (x86) architectures. When compiled with the appropriate
compiler and compiler switches (-msse3 on x86, and using the IBM XL
compiler on BG/Q), these optimized routines are used automatically.
For BG/Q machines, building with the default Makefile for that
architecture (e.g., &#8220;make bgq&#8221;) should enable the optimized algebra
routines. For x-86 machines, the here provided Makefile.mpi_fastmgpt
(build with &#8220;make mpi_fastmgpt&#8221;) enables the fast algebra routines.
The user will be informed in the output files of the matrix kernels in
use. To further improve speed, on x86 the option precision single can
be added to the <a class="reference internal" href="pair_coeff.html"><em>pair_coeff</em></a> command line, which
improves speed (up to a factor of two) at the cost of doing matrix
calculations with 7 digit precision instead of the default 16. For
consistency the default option can be specified explicitly by the
option precision double.</p>
<p>All remaining potential and control data are contained with the parmin
and potin files, including cutoffs, atomic mass, and other basic MGPT
variables. Specific MGPT potential data for the transition metals
tantalum (Ta4 and Ta6.8x potentials), molybdenum (Mo5.2 potentials),
and vanadium (V6.1 potentials) are contained in the LAMMPS potentials
directory. The stored files are, respectively, Ta4.mgpt.parmin,
Ta4.mgpt.potin, Ta6.8x.mgpt.parmin, Ta6.8x.mgpt.potin,
Mo5.2.mgpt.parmin, Mo5.2.mgpt.potin, V6.1.mgpt.parmin, and
V6.1.mgpt.potin . Useful corresponding informational &#8220;README&#8221; files
on the Ta4, Ta6.8x, Mo5.2 and V6.1 potentials are also included in the
potentials directory. These latter files indicate the volume mesh and
range for each potential and give appropriate references for the
potentials. It is expected that MGPT potentials for additional
materials will be added over time.</p>
<p>Useful example MGPT scripts are given in the examples/USER/mgpt
directory. These scripts show the necessary steps to perform
constant-volume calculations and simulations. It is strongly
recommended that the user work through and understand these examples
before proceeding to more complex simulations.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">For good performance, LAMMPS should be built with the compiler
flags &#8220;-O3 -msse3 -funroll-loops&#8221; when including this pair style. The
src/MAKE/OPTIONS/Makefile.mpi_fastmgpt is an example machine Makefile
with these options included as part of a standard MPI build. Note
that as-is it will build with whatever low-level compiler (g++, icc,
etc) is the default for your MPI installation.</p>
</div>
<hr class="docutils" />
<p><strong>Mixing, shift, table tail correction, restart</strong>:</p>
<p>This pair style does not support the <a class="reference internal" href="pair_modify.html"><em>pair_modify</em></a>
mix, shift, table, and tail options.</p>
<p>This pair style does not write its information to <a class="reference internal" href="restart.html"><em>binary restart files</em></a>, since it is stored in potential files. Thus, you
needs to re-specify the pair_style and pair_coeff commands in an input
script that reads a restart file.</p>
<p>This pair style can only be used via the <em>pair</em> keyword of the
<a class="reference internal" href="run_style.html"><em>run_style respa</em></a> command. It does not support the
<em>inner</em>, <em>middle</em>, <em>outer</em> keywords.</p>
</div>
<hr class="docutils" />
<div class="section" id="restrictions">
<h2>Restrictions<a class="headerlink" href="#restrictions" title="Permalink to this headline"></a></h2>
<p>This pair style is part of the USER-MGPT package and is only enabled
if LAMMPS is built with that package. See the <a class="reference internal" href="Section_start.html#start-3"><span>Making LAMMPS</span></a> section for more info.</p>
<p>The MGPT potentials require the <a class="reference internal" href="newton.html"><em>newtion</em></a> setting to be
&#8220;on&#8221; for pair style interactions.</p>
<p>The stored parmin and potin potential files provided with LAMMPS in
the &#8220;potentials&#8221; directory are written in Rydberg atomic units, with
energies in Rydbergs and distances in Bohr radii. The <em>mgpt</em> pair
style converts Rydbergs to Hartrees to make the potential files
compatible with LAMMPS electron <a class="reference internal" href="units.html"><em>units</em></a>.</p>
<p>The form of E_tot used in the <em>mgpt</em> pair style is only appropriate
for elemental bulk solids and liquids. This includes solids with
point and extended defects such as vacancies, interstitials, grain
boundaries and dislocations. Alloys and free surfaces, however,
require significant modifications, which are not included in the
<em>mgpt</em> pair style. Likewise, the <em>hybrid</em> pair style is not allowed,
where MGPT would be used for some atoms but not for others.</p>
<p>Electron-thermal effects are not included in the standard MGPT
potentials provided in the &#8220;potentials&#8221; directory, where the
potentials have been constructed at zero electron temperature.
Physically, electron-thermal effects may be important in 3d (e.g., V)
and 4d (e.g., Mo) transition metals at high temperatures near melt and
above. It is expected that temperature-dependent MGPT potentials for
such cases will be added over time.</p>
</div>
<div class="section" id="related-commands">
<h2>Related commands<a class="headerlink" href="#related-commands" title="Permalink to this headline"></a></h2>
<p><a class="reference internal" href="pair_coeff.html"><em>pair_coeff</em></a></p>
</div>
<div class="section" id="default">
<h2>Default<a class="headerlink" href="#default" title="Permalink to this headline"></a></h2>
<p>The options defaults for the <a class="reference internal" href="pair_coeff.html"><em>pair_coeff</em></a> command are
volpress yes, nbody 1234, and precision double.</p>
<hr class="docutils" />
<p id="moriarty1"><strong>(Moriarty1)</strong> Moriarty, Physical Review B, 38, 3199 (1988).</p>
<p id="moriarty2"><strong>(Moriarty2)</strong> Moriarty, Physical Review B, 42, 1609 (1990).
Moriarty, Physical Review B 49, 12431 (1994).</p>
<p id="moriarty3"><strong>(Moriarty3)</strong> Moriarty, Benedict, Glosli, Hood, Orlikowski, Patel, Soderlind, Streitz, Tang, and Yang,
Journal of Materials Research, 21, 563 (2006).</p>
<p id="glosli"><strong>(Glosli)</strong> Glosli, unpublished, 2005.
Streitz, Glosli, Patel, Chan, Yates, de Supinski, Sexton and Gunnels, Journal of Physics: Conference
Series, 46, 254 (2006).</p>
<p id="oppelstrup"><strong>(Oppelstrup)</strong> Oppelstrup, unpublished, 2015.
Oppelstrup and Moriarty, to be published.</p>
</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>