forked from lijiext/lammps
361 lines
19 KiB
HTML
361 lines
19 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>fix orient/fcc command — 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 & 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 & 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>
|
|
|
|
</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> »</li>
|
|
|
|
<li>fix orient/fcc 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="fix-orient-fcc-command">
|
|
<span id="index-0"></span><h1>fix orient/fcc command</h1>
|
|
</div>
|
|
<div class="section" id="fix-orient-bcc-command">
|
|
<h1>fix orient/bcc command</h1>
|
|
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">orient</span><span class="o">/</span><span class="n">fcc</span> <span class="n">nstats</span> <span class="nb">dir</span> <span class="n">alat</span> <span class="n">dE</span> <span class="n">cutlo</span> <span class="n">cuthi</span> <span class="n">file0</span> <span class="n">file1</span>
|
|
<span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">orient</span><span class="o">/</span><span class="n">bcc</span> <span class="n">nstats</span> <span class="nb">dir</span> <span class="n">alat</span> <span class="n">dE</span> <span class="n">cutlo</span> <span class="n">cuthi</span> <span class="n">file0</span> <span class="n">file1</span>
|
|
</pre></div>
|
|
</div>
|
|
<ul class="simple">
|
|
<li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li>
|
|
<li>nstats = print stats every this many steps, 0 = never</li>
|
|
<li>dir = 0/1 for which crystal is used as reference</li>
|
|
<li>alat = fcc/bcc cubic lattice constant (distance units)</li>
|
|
<li>dE = energy added to each atom (energy units)</li>
|
|
<li>cutlo,cuthi = values between 0.0 and 1.0, cutlo < cuthi</li>
|
|
<li>file0,file1 = files that specify orientation of each grain</li>
|
|
</ul>
|
|
<div class="section" id="examples">
|
|
<h2>Examples</h2>
|
|
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">gb</span> <span class="nb">all</span> <span class="n">orient</span><span class="o">/</span><span class="n">fcc</span> <span class="mi">0</span> <span class="mi">1</span> <span class="mf">4.032008</span> <span class="mf">0.001</span> <span class="mf">0.25</span> <span class="mf">0.75</span> <span class="n">xi</span><span class="o">.</span><span class="n">vec</span> <span class="n">chi</span><span class="o">.</span><span class="n">vec</span>
|
|
<span class="n">fix</span> <span class="n">gb</span> <span class="nb">all</span> <span class="n">orient</span><span class="o">/</span><span class="n">bcc</span> <span class="mi">0</span> <span class="mi">1</span> <span class="mf">2.882</span> <span class="mf">0.001</span> <span class="mf">0.25</span> <span class="mf">0.75</span> <span class="n">ngb</span><span class="o">.</span><span class="n">left</span> <span class="n">ngb</span><span class="o">.</span><span class="n">right</span>
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
<div class="section" id="description">
|
|
<h2>Description</h2>
|
|
<p>The fix applies an orientation-dependent force to atoms near a planar
|
|
grain boundary which can be used to induce grain boundary migration
|
|
(in the direction perpendicular to the grain boundary plane). The
|
|
motivation and explanation of this force and its application are
|
|
described in <a class="reference internal" href="#janssens"><span class="std std-ref">(Janssens)</span></a>. The adaptiation to bcc crystals
|
|
is described in <a class="reference internal" href="#wicaksono1"><span class="std std-ref">(Wicaksono1)</span></a>. The computed force is only
|
|
applied to atoms in the fix group.</p>
|
|
<p>The basic idea is that atoms in one grain (on one side of the
|
|
boundary) have a potential energy dE added to them. Atoms in the
|
|
other grain have 0.0 potential energy added. Atoms near the boundary
|
|
(whose neighbor environment is intermediate between the two grain
|
|
orientations) have an energy between 0.0 and dE added. This creates
|
|
an effective driving force to reduce the potential energy of atoms
|
|
near the boundary by pushing them towards one of the grain
|
|
orientations. For dir = 1 and dE > 0, the boundary will thus move so
|
|
that the grain described by file0 grows and the grain described by
|
|
file1 shrinks. Thus this fix is designed for simulations of two-grain
|
|
systems, either with one grain boundary and free surfaces parallel to
|
|
the boundary, or a system with periodic boundary conditions and two
|
|
equal and opposite grain boundaries. In either case, the entire
|
|
system can displace during the simulation, and such motion should be
|
|
accounted for in measuring the grain boundary velocity.</p>
|
|
<p>The potential energy added to atom I is given by these formulas</p>
|
|
<img alt="_images/fix_orient_fcc.jpg" class="align-center" src="_images/fix_orient_fcc.jpg" />
|
|
<p>which are fully explained in <a class="reference internal" href="#janssens"><span class="std std-ref">(Janssens)</span></a>. For fcc crystals
|
|
this order parameter Xi for atom I in equation (1) is a sum over the
|
|
12 nearest neighbors of atom I. For bcc crystals it is the
|
|
corresponding sum of the 8 nearest neighbors. Rj is the vector from
|
|
atom I to its neighbor J, and RIj is a vector in the reference
|
|
(perfect) crystal. That is, if dir = 0/1, then RIj is a vector to an
|
|
atom coord from file 0/1. Equation (2) gives the expected value of
|
|
the order parameter XiIJ in the other grain. Hi and lo cutoffs are
|
|
defined in equations (3) and (4), using the input parameters <em>cutlo</em>
|
|
and <em>cuthi</em> as thresholds to avoid adding grain boundary energy when
|
|
the deviation in the order parameter from 0 or 1 is small (e.g. due to
|
|
thermal fluctuations in a perfect crystal). The added potential
|
|
energy Ui for atom I is given in equation (6) where it is interpolated
|
|
between 0 and dE using the two threshold Xi values and the Wi value of
|
|
equation (5).</p>
|
|
<p>The derivative of this energy expression gives the force on each atom
|
|
which thus depends on the orientation of its neighbors relative to the
|
|
2 grain orientations. Only atoms near the grain boundary feel a net
|
|
force which tends to drive them to one of the two grain orientations.</p>
|
|
<p>In equation (1), the reference vector used for each neighbor is the
|
|
reference vector closest to the actual neighbor position. This means
|
|
it is possible two different neighbors will use the same reference
|
|
vector. In such cases, the atom in question is far from a perfect
|
|
orientation and will likely receive the full dE addition, so the
|
|
effect of duplicate reference vector usage is small.</p>
|
|
<p>The <em>dir</em> parameter determines which grain wants to grow at the
|
|
expense of the other. A value of 0 means the first grain will shrink;
|
|
a value of 1 means it will grow. This assumes that <em>dE</em> is positive.
|
|
The reverse will be true if <em>dE</em> is negative.</p>
|
|
<p>The <em>alat</em> parameter is the cubic lattice constant for the fcc or bcc
|
|
material and is only used to compute a cutoff distance of 1.57 * alat
|
|
/ sqrt(2) for finding the 12 or 8 nearest neighbors of each atom
|
|
(which should be valid for an fcc or bcc crystal). A longer/shorter
|
|
cutoff can be imposed by adjusting <em>alat</em>. If a particular atom has
|
|
less than 12 or 8 neighbors within the cutoff, the order parameter of
|
|
equation (1) is effectively multiplied by 12 or 8 divided by the
|
|
actual number of neighbors within the cutoff.</p>
|
|
<p>The <em>dE</em> parameter is the maximum amount of additional energy added to
|
|
each atom in the grain which wants to shrink.</p>
|
|
<p>The <em>cutlo</em> and <em>cuthi</em> parameters are used to reduce the force added
|
|
to bulk atoms in each grain far away from the boundary. An atom in
|
|
the bulk surrounded by neighbors at the ideal grain orientation would
|
|
compute an order parameter of 0 or 1 and have no force added.
|
|
However, thermal vibrations in the solid will cause the order
|
|
parameters to be greater than 0 or less than 1. The cutoff parameters
|
|
mask this effect, allowing forces to only be added to atoms with
|
|
order-parameters between the cutoff values.</p>
|
|
<p><em>File0</em> and <em>file1</em> are filenames for the two grains which each
|
|
contain 6 vectors (6 lines with 3 values per line) which specify the
|
|
grain orientations. Each vector is a displacement from a central atom
|
|
(0,0,0) to a nearest neighbor atom in an fcc lattice at the proper
|
|
orientation. The vector lengths should all be identical since an fcc
|
|
lattice has a coordination number of 12. Only 6 are listed due to
|
|
symmetry, so the list must include one from each pair of
|
|
equal-and-opposite neighbors. A pair of orientation files for a
|
|
Sigma=5 tilt boundary are shown below. A tutorial that can help for
|
|
writing the orientation files is given in <a class="reference internal" href="#wicaksono2"><span class="std std-ref">(Wicaksono2)</span></a></p>
|
|
</div>
|
|
<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info">
|
|
<h2>Restart, fix_modify, output, run start/stop, minimize info</h2>
|
|
<p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p>
|
|
<p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>energy</em> option is supported by this
|
|
fix to add the potential energy of atom interactions with the grain
|
|
boundary driving force to the system’s potential energy as part of
|
|
<a class="reference internal" href="thermo_style.html"><span class="doc">thermodynamic output</span></a>.</p>
|
|
<p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>respa</em> option is supported by these
|
|
fixes. This allows to set at which level of the <a class="reference internal" href="run_style.html"><span class="doc">r-RESPA</span></a>
|
|
integrator a fix is adding its forces. Default is the outermost level.</p>
|
|
<p>This fix calculates a global scalar which can be accessed by various
|
|
<a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. The scalar is the
|
|
potential energy change due to this fix. The scalar value calculated
|
|
by this fix is “extensive”.</p>
|
|
<p>This fix also calculates a per-atom array which can be accessed by
|
|
various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. The array
|
|
stores the order parameter Xi and normalized order parameter (0 to 1)
|
|
for each atom. The per-atom values can be accessed on any timestep.</p>
|
|
<p>No parameter of this fix can be used with the <em>start/stop</em> keywords of
|
|
the <a class="reference internal" href="run.html"><span class="doc">run</span></a> command. This fix is not invoked during <a class="reference internal" href="minimize.html"><span class="doc">energy minimization</span></a>.</p>
|
|
</div>
|
|
<div class="section" id="restrictions">
|
|
<h2>Restrictions</h2>
|
|
<p>This fix is part of the MISC package. It is only enabled if LAMMPS
|
|
was built with that package. See the <a class="reference internal" href="Section_start.html#start-3"><span class="std std-ref">Making LAMMPS</span></a> section for more info.</p>
|
|
<p>This fix should only be used with fcc or bcc lattices.</p>
|
|
</div>
|
|
<div class="section" id="related-commands">
|
|
<h2>Related commands</h2>
|
|
<p><a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a></p>
|
|
<p><strong>Default:</strong> none</p>
|
|
<hr class="docutils" />
|
|
<p id="janssens"><strong>(Janssens)</strong> Janssens, Olmsted, Holm, Foiles, Plimpton, Derlet, Nature
|
|
Materials, 5, 124-127 (2006).</p>
|
|
<p id="wicaksono1"><strong>(Wicaksono1)</strong> Wicaksono, Sinclair, Militzer, Computational Materials
|
|
Science, 117, 397-405 (2016).</p>
|
|
<p id="wicaksono2"><strong>(Wicaksono2)</strong> Wicaksono, figshare,
|
|
<a class="reference external" href="https://dx.doi.org/10.6084/m9.figshare.1488628.v1">https://dx.doi.org/10.6084/m9.figshare.1488628.v1</a> (2015).</p>
|
|
<hr class="docutils" />
|
|
<p>For illustration purposes, here are example files that specify a
|
|
Sigma=5 <100> tilt boundary. This is for a lattice constant of 3.5706
|
|
Angs.</p>
|
|
<p>file0:</p>
|
|
<div class="highlight-default"><div class="highlight"><pre><span></span> <span class="mf">0.798410432046075</span> <span class="mf">1.785300000000000</span> <span class="mf">1.596820864092150</span>
|
|
<span class="o">-</span><span class="mf">0.798410432046075</span> <span class="mf">1.785300000000000</span> <span class="o">-</span><span class="mf">1.596820864092150</span>
|
|
<span class="mf">2.395231296138225</span> <span class="mf">0.000000000000000</span> <span class="mf">0.798410432046075</span>
|
|
<span class="mf">0.798410432046075</span> <span class="mf">0.000000000000000</span> <span class="o">-</span><span class="mf">2.395231296138225</span>
|
|
<span class="mf">1.596820864092150</span> <span class="mf">1.785300000000000</span> <span class="o">-</span><span class="mf">0.798410432046075</span>
|
|
<span class="mf">1.596820864092150</span> <span class="o">-</span><span class="mf">1.785300000000000</span> <span class="o">-</span><span class="mf">0.798410432046075</span>
|
|
</pre></div>
|
|
</div>
|
|
<p>file1:</p>
|
|
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="o">-</span><span class="mf">0.798410432046075</span> <span class="mf">1.785300000000000</span> <span class="mf">1.596820864092150</span>
|
|
<span class="mf">0.798410432046075</span> <span class="mf">1.785300000000000</span> <span class="o">-</span><span class="mf">1.596820864092150</span>
|
|
<span class="mf">0.798410432046075</span> <span class="mf">0.000000000000000</span> <span class="mf">2.395231296138225</span>
|
|
<span class="mf">2.395231296138225</span> <span class="mf">0.000000000000000</span> <span class="o">-</span><span class="mf">0.798410432046075</span>
|
|
<span class="mf">1.596820864092150</span> <span class="mf">1.785300000000000</span> <span class="mf">0.798410432046075</span>
|
|
<span class="mf">1.596820864092150</span> <span class="o">-</span><span class="mf">1.785300000000000</span> <span class="mf">0.798410432046075</span>
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
</div>
|
|
<footer>
|
|
|
|
|
|
<hr/>
|
|
|
|
<div role="contentinfo">
|
|
<p>
|
|
© 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> |