Add files via upload
This commit is contained in:
@ -1,6 +1,7 @@
|
||||
.. index:: fix qeq/point
|
||||
.. index:: fix qeq/shielded
|
||||
.. index:: fix qeq/slater
|
||||
.. index:: fix qeq/ctip
|
||||
.. index:: fix qeq/dynamic
|
||||
.. index:: fix qeq/fire
|
||||
|
||||
@ -13,6 +14,9 @@ fix qeq/shielded command
|
||||
fix qeq/slater command
|
||||
======================
|
||||
|
||||
fix qeq/ctip command
|
||||
======================
|
||||
|
||||
fix qeq/dynamic command
|
||||
=======================
|
||||
|
||||
@ -27,18 +31,20 @@ Syntax
|
||||
fix ID group-ID style Nevery cutoff tolerance maxiter qfile keyword ...
|
||||
|
||||
* ID, group-ID are documented in :doc:`fix <fix>` command
|
||||
* style = *qeq/point* or *qeq/shielded* or *qeq/slater* or *qeq/dynamic* or *qeq/fire*
|
||||
* style = *qeq/point* or *qeq/shielded* or *qeq/slater* or *qeq/ctip* or *qeq/dynamic* or *qeq/fire*
|
||||
* Nevery = perform charge equilibration every this many steps
|
||||
* cutoff = global cutoff for charge-charge interactions (distance unit)
|
||||
* tolerance = precision to which charges will be equilibrated
|
||||
* maxiter = maximum iterations to perform charge equilibration
|
||||
* qfile = a filename with QEq parameters or *coul/streitz* or *reaxff*
|
||||
* qfile = a filename with QEq parameters or *coul/streitz* or *coul/ctip* or *reaxff*
|
||||
* zero or more keyword/value pairs may be appended
|
||||
* keyword = *alpha* or *qdamp* or *qstep* or *warn*
|
||||
* keyword = *alpha* or *cdamp* or *maxrepeat* or *qdamp* or *qstep* or *warn*
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
*alpha* value = Slater type orbital exponent (qeq/slater only)
|
||||
*cdamp* value = damping parameter for Coulomb interactions (qeq/ctip only)
|
||||
*maxrepeat* value = number of equilibration cycles allowed to ensure no atoms cross charge bounds (qeq/ctip only)
|
||||
*qdamp* value = damping factor for damped dynamics charge solver (qeq/dynamic and qeq/fire only)
|
||||
*qstep* value = time step size for damped dynamics charge solver (qeq/dynamic and qeq/fire only)
|
||||
*warn* value = do (=yes) or do not (=no) print a warning when the maximum number of iterations is reached
|
||||
@ -51,6 +57,7 @@ Examples
|
||||
fix 1 all qeq/point 1 10 1.0e-6 200 param.qeq1
|
||||
fix 1 qeq qeq/shielded 1 8 1.0e-6 100 param.qeq2
|
||||
fix 1 all qeq/slater 5 10 1.0e-6 100 params alpha 0.2
|
||||
fix 1 all qeq/ctip 1 12 1.0e-8 100 coul/ctip cdamp 0.30 maxrepeat 10
|
||||
fix 1 qeq qeq/dynamic 1 12 1.0e-3 100 my_qeq
|
||||
fix 1 all qeq/fire 1 10 1.0e-3 100 my_qeq qdamp 0.2 qstep 0.1
|
||||
|
||||
@ -107,18 +114,18 @@ from a file specified by *qfile*\ . The file has the following format
|
||||
|
||||
.. parsed-literal::
|
||||
|
||||
1 chi eta gamma zeta qcore
|
||||
2 chi eta gamma zeta qcore
|
||||
1 chi eta gamma zeta qcore qmin qmax omega
|
||||
2 chi eta gamma zeta qcore qmin qmax omega
|
||||
...
|
||||
Ntype chi eta gamma zeta qcore
|
||||
Ntype chi eta gamma zeta qcore qmin qmax omega
|
||||
|
||||
There have to be parameters given for every atom type. Wildcard entries
|
||||
are possible using the same type range syntax as for "coeff" commands
|
||||
(i.e., n\*m, n\*, \*m, \*). Later entries will overwrite previous ones.
|
||||
Empty lines or any text following the pound sign (#) are ignored.
|
||||
Each line starts with the atom type followed by five parameters.
|
||||
Each line starts with the atom type followed by eight parameters.
|
||||
Only a subset of the parameters is used by each QEq style as described
|
||||
below, thus the others can be set to 0.0 if desired, but all five
|
||||
below, thus the others can be set to 0.0 if desired, but all eight
|
||||
entries per line are required.
|
||||
|
||||
* *chi* = electronegativity in energy units
|
||||
@ -126,6 +133,9 @@ entries per line are required.
|
||||
* *gamma* = shielded Coulomb constant defined by :ref:`ReaxFF force field <vanDuin>` in distance units
|
||||
* *zeta* = Slater type orbital exponent defined by the :ref:`Streitz-Mintmire <Streitz1>` potential in reverse distance units
|
||||
* *qcore* = charge of the nucleus defined by the :ref:`Streitz-Mintmire potential <Streitz1>` potential in charge units
|
||||
* *qmin* = lower bound on the allowed charge defined by the :ref:`CTIP <CTIP1>` potential in charge units
|
||||
* *qmax* = upper bound on the allowed charge defined by the :ref:`CTIP <CTIP1>` potential in charge units
|
||||
* *omega* = penalty parameter used to enforce charge bounds defined by the :ref:`CTIP <CTIP1>` potential in energy units
|
||||
|
||||
The fix qeq styles will print a warning if the charges are not
|
||||
equilibrated within *tolerance* by *maxiter* steps, unless the
|
||||
@ -171,6 +181,19 @@ on atoms via the matrix inversion method. A tolerance of 1.0e-6 is
|
||||
usually a good number. Keyword *alpha* can be used to change the Slater
|
||||
type orbital exponent.
|
||||
|
||||
The *qeq/ctip* style describes partial charges on atoms in the same way as
|
||||
style *qeq/shielded* but also enables the definition of charge bounds. Only
|
||||
the *chi*, *eta*, *gamma*, *qmin*, *qmax*, and *omega* parameters from the
|
||||
*qfile* file are used. When using the string *coul/ctip* as filename, these
|
||||
parameters are extracted directly from an active *coul/ctip* pair style.
|
||||
This style solves partial charges on atoms via the matrix inversion method.
|
||||
Keyword *cdamp* can be used to change the damping parameter used to calculate
|
||||
Coulomb interactions. Keyword *maxrepeat* can be used to adjust the number of
|
||||
equilibration cycles allowed to ensure no atoms have crossed the charge bounds.
|
||||
A value of 10 is usually a good choice. A tolerance between 1.0e-6 and 1.0e-8
|
||||
is usually a good choice but should be checked in conjunction with the timestep
|
||||
for adequate energy conservation during dynamic runs.
|
||||
|
||||
The *qeq/dynamic* style describes partial charges on atoms as point
|
||||
charges that interact through 1/r, but the extended Lagrangian method is
|
||||
used to solve partial charges on atoms. Only the *chi* and *eta*
|
||||
@ -186,7 +209,7 @@ minimization algorithm to solve for equilibrium charges. Keyword
|
||||
*qdamp* can be used to change the damping factor, while keyword *qstep*
|
||||
can be used to change the time step size.
|
||||
|
||||
Note that *qeq/point*, *qeq/shielded*, and *qeq/slater* describe
|
||||
Note that *qeq/point*, *qeq/shielded*, *qeq/slater*, and *qeq/ctip* describe
|
||||
different charge models, whereas the matrix inversion method and the
|
||||
extended Lagrangian method (\ *qeq/dynamic* and *qeq/fire*\ ) are
|
||||
different solvers.
|
||||
@ -266,6 +289,11 @@ Chemistry, 95, 3358-3363 (1991).
|
||||
**(Streitz-Mintmire)** F. H. Streitz, J. W. Mintmire, Physical Review B, 50,
|
||||
16, 11996 (1994)
|
||||
|
||||
.. _CTIP1:
|
||||
|
||||
**(CTIP)** G. Plummer, J. P. Tavenner, M. I. Mendelev, Z. Wu, J. W. Lawson,
|
||||
in preparation
|
||||
|
||||
.. _vanDuin:
|
||||
|
||||
**(ReaxFF)** A. C. T. van Duin, S. Dasgupta, F. Lorant, W. A. Goddard III, J
|
||||
|
||||
@ -20,6 +20,7 @@
|
||||
.. index:: pair_style coul/msm
|
||||
.. index:: pair_style coul/msm/omp
|
||||
.. index:: pair_style coul/streitz
|
||||
.. index:: pair_style coul/ctip
|
||||
.. index:: pair_style coul/wolf
|
||||
.. index:: pair_style coul/wolf/kk
|
||||
.. index:: pair_style coul/wolf/omp
|
||||
@ -64,6 +65,9 @@ Accelerator Variants: *coul/msm/omp*
|
||||
pair_style coul/streitz command
|
||||
===============================
|
||||
|
||||
pair_style coul/ctip command
|
||||
===============================
|
||||
|
||||
pair_style coul/wolf command
|
||||
============================
|
||||
|
||||
@ -92,6 +96,7 @@ Syntax
|
||||
pair_style coul/long cutoff
|
||||
pair_style coul/wolf alpha cutoff
|
||||
pair_style coul/streitz cutoff keyword alpha
|
||||
pair_style coul/ctip alpha cutoff
|
||||
pair_style tip4p/cut otype htype btype atype qdist cutoff
|
||||
pair_style tip4p/long otype htype btype atype qdist cutoff
|
||||
|
||||
@ -131,6 +136,9 @@ Examples
|
||||
pair_style coul/streitz 12.0 wolf 0.30
|
||||
pair_coeff * * AlO.streitz Al O
|
||||
|
||||
pair_style coul/ctip 0.30 12.0
|
||||
pair_coeff * * NiO.ctip Ni O
|
||||
|
||||
pair_style tip4p/cut 1 2 7 8 0.15 12.0
|
||||
pair_coeff * *
|
||||
|
||||
@ -262,6 +270,30 @@ Streitz-Mintmire parameterization for the material being modeled.
|
||||
|
||||
----------
|
||||
|
||||
Style *coul/ctip* computes the Coulomb interations as described in
|
||||
:ref:`Plummer <Plummer1>`. It uses the the damped shifted model as in
|
||||
style *coul/dsf* but is further extended to the second derivative of
|
||||
the potential and incorporates empirical charge shielding meant to
|
||||
approximate the more expensive Coulomb integrals used in style *coul/streitz*.
|
||||
More details can be found in the referenced paper. Like the style *coul/streitz*,
|
||||
style *coul/ctip* is a variable charge potential and must be hybridized
|
||||
with a short-range potential via the :doc:`pair_style hybrid/overlay <pair_hybrid>`
|
||||
command. Charge equilibration must be performed with the :doc:`fix qeq/ctip
|
||||
<fix_qeq>` command. For example:
|
||||
|
||||
.. code-block:: LAMMPS
|
||||
|
||||
pair_style hybrid/overlay eam/fs coul/ctip 0.30 12.0
|
||||
pair_coeff * * eam/fs NiO.eam.fs Ni O
|
||||
pair_coeff * * coul/ctip NiO.ctip Ni O
|
||||
fix 1 all qeq/ctip 1 12.0 1.0e-8 100 coul/ctip cdamp 0.30 maxrepeat 10
|
||||
|
||||
See the examples/ctip directory for an example input script using the CTIP
|
||||
potential. An Ni-O CTIP and EAM/FS parametrization are included for use with
|
||||
the example.
|
||||
|
||||
----------
|
||||
|
||||
Pair style *coul/cut/global* computes the same Coulombic interactions
|
||||
as style *coul/cut* except that it allows only a single global cutoff
|
||||
and thus makes it compatible for use in combination with long-range
|
||||
@ -412,6 +444,11 @@ Phys, 110, 8254 (1999).
|
||||
**(Streitz)** F. H. Streitz, J. W. Mintmire, Phys Rev B, 50, 11996-12003
|
||||
(1994).
|
||||
|
||||
.. _Plummer1:
|
||||
|
||||
**(Plummer)** G. Plummer, J. P. Tavenner, M. I. Mendelev, Z. Wu, J. W. Lawson,
|
||||
in preparation
|
||||
|
||||
.. _Jorgensen3:
|
||||
|
||||
**(Jorgensen)** Jorgensen, Chandrasekhar, Madura, Impey, Klein, J Chem
|
||||
|
||||
Reference in New Issue
Block a user