git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@16053 f3b2605a-c512-4ea7-a41b...
[lammps.git] / doc / src / fix_qeq.txt
blobe9769ed33bec87c0c21f873d10c85b20fb3b0082
1 "LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
3 :link(lws,http://lammps.sandia.gov)
4 :link(ld,Manual.html)
5 :link(lc,Section_commands.html#comm)
7 :line
9 fix qeq/point command :h3
10 fix qeq/shielded command :h3
11 fix qeq/slater command :h3
12 fix qeq/dynamic command :h3
13 fix qeq/fire command :h3
15 [Syntax:]
17 fix ID group-ID style Nevery cutoff tolerance maxiter qfile keyword ... :pre
19 ID, group-ID are documented in "fix"_fix.html command :ulb,l
20 style = {qeq/point} or {qeq/shielded} or {qeq/slater} or {qeq/dynamic} or {qeq/fire} :l
21 Nevery = perform charge equilibration every this many steps :l
22 cutoff = global cutoff for charge-charge interactions (distance unit) :l
23 tolerance = precision to which charges will be equilibrated :l
24 maxiter = maximum iterations to perform charge equilibration :l
25 qfile = a filename with QEq parameters :l
27 zero or more keyword/value pairs may be appended :l
28 keyword = {alpha} or {qdamp} or {qstep} :l
29   {alpha} value = Slater type orbital exponent (qeq/slater only)
30   {qdamp} value = damping factor for damped dynamics charge solver (qeq/dynamic and qeq/fire only)
31   {qstep} value = time step size for damped dynamics charge solver (qeq/dynamic and qeq/fire only) :pre
33 :ule
35 [Examples:]
37 fix 1 all qeq/point 1 10 1.0e-6 200 param.qeq1
38 fix 1 qeq qeq/shielded 1 8 1.0e-6 100 param.qeq2
39 fix 1 all qeq/slater 5 10 1.0e-6 100 params alpha 0.2
40 fix 1 qeq qeq/dynamic 1 12 1.0e-3 100 my_qeq
41 fix 1 all qeq/fire 1 10 1.0e-3 100 my_qeq qdamp 0.2 qstep 0.1 :pre
43 [Description:]
45 Perform the charge equilibration (QEq) method as described in "(Rappe
46 and Goddard)"_#Rappe and formulated in "(Nakano)"_#Nakano (also known
47 as the matrix inversion method) and in "(Rick and Stuart)"_#Rick (also
48 known as the extended Lagrangian method) based on the
49 electronegativity equilization principle.
51 These fixes can be used with any "pair style"_pair_style.html in
52 LAMMPS, so long as per-atom charges are defined.  The most typical
53 use-case is in conjunction with a "pair style"_pair_style.html that
54 performs charge equilibration periodically (e.g. every timestep), such
55 as the ReaxFF or Streitz-Mintmire potential.
56 But these fixes can also be used with
57 potentials that normally assume per-atom charges are fixed, e.g. a
58 "Buckingham"_pair_buck.html or "LJ/Coulombic"_pair_lj.html potential.
60 Because the charge equilibration calculation is effectively
61 independent of the pair style, these fixes can also be used to perform
62 a one-time assignment of charges to atoms.  For example, you could
63 define the QEq fix, perform a zero-timestep run via the "run"_run.html
64 command without any pair style defined which would set per-atom
65 charges (based on the current atom configuration), then remove the fix
66 via the "unfix"_unfix.html command before performing further dynamics.
68 NOTE: Computing and using charge values different from published
69 values defined for a fixed-charge potential like Buckingham or CHARMM
70 or AMBER, can have a strong effect on energies and forces, and
71 produces a different model than the published versions.
73 NOTE: The "fix qeq/comb"_fix_qeq_comb.html command must still be used
74 to perform charge equliibration with the "COMB
75 potential"_pair_comb.html.  The "fix qeq/reax"_fix_qeq_reax.html
76 command can be used to perform charge equilibration with the "ReaxFF
77 force field"_pair_reax_c.html, although fix qeq/shielded yields the
78 same results as fix qeq/reax if {Nevery}, {cutoff}, and {tolerance}
79 are the same.  Eventually the fix qeq/reax command will be deprecated.
81 The QEq method minimizes the electrostatic energy of the system (or
82 equalizes the derivative of energy with respect to charge of all the
83 atoms) by adjusting the partial charge on individual atoms based on
84 interactions with their neighbors within {cutoff}.  It reqires a few
85 parameters, in {metal} units, for each atom type which provided in a
86 file specified by {qfile}.  The file has the following format
88 1 chi eta gamma zeta qcore
89 2 chi eta gamma zeta qcore
90 ...
91 Ntype chi eta gamma zeta qcore :pre
93 There is one line per atom type with the following parameters.
94 Only a subset of the parameters is used by each QEq style as descibed
95 below, thus the others can be set to 0.0 if desired.
97 {chi} = electronegativity in energy units
98 {eta} = self-Coulomb potential in energy units
99 {gamma} = shielded Coulomb constant defined by "ReaxFF force field"_#vanDuin in distance units
100 {zeta} = Slater type orbital exponent defined by the "Streitz-Mintmire"_#Streitz potential in reverse distance units
101 {qcore} = charge of the nucleus defined by the "Streitz-Mintmire potential"_#Streitz potential in charge units :ul
103 The {qeq/point} style describes partial charges on atoms as point
104 charges.  Interaction between a pair of charged particles is 1/r,
105 which is the simplest description of the interaction between charges.
106 Only the {chi} and {eta} parameters from the {qfile} file are used.
107 Note that Coulomb catastrophe can occur if repulsion between the pair
108 of charged particles is too weak.  This style solves partial charges
109 on atoms via the matrix inversion method.  A tolerance of 1.0e-6 is
110 usually a good number.
112 The {qeq/shielded} style describes partial charges on atoms also as
113 point charges, but uses a shielded Coulomb potential to describe the
114 interaction between a pair of charged particles.  Interaction through
115 the shielded Coulomb is given by equation (13) of the "ReaxFF force
116 field"_#vanDuin paper.  The shielding accounts for charge overlap
117 between charged particles at small separation.  This style is the same
118 as "fix qeq/reax"_fix_qeq_reax.html, and can be used with "pair_style
119 reax/c"_pair_reax_c.html.  Only the {chi}, {eta}, and {gamma}
120 parameters from the {qfile} file are used.  This style solves partial
121 charges on atoms via the matrix inversion method.  A tolerance of
122 1.0e-6 is usually a good number.
124 The {qeq/slater} style describes partial charges on atoms as spherical
125 charge densities centered around atoms via the Slater 1{s} orbital, so
126 that the interaction between a pair of charged particles is the
127 product of two Slater 1{s} orbitals.  The expression for the Slater
128 1{s} orbital is given under equation (6) of the
129 "Streitz-Mintmire"_#Streitz paper.  Only the {chi}, {eta}, {zeta}, and
130 {qcore} parameters from the {qfile} file are used.  This style solves
131 partial charges on atoms via the matrix inversion method.  A tolerance
132 of 1.0e-6 is usually a good number.  Keyword {alpha} can be used to
133 change the Slater type orbital exponent.
135 The {qeq/dynamic} style describes partial charges on atoms as point
136 charges that interact through 1/r, but the extended Lagrangian method
137 is used to solve partial charges on atoms.  Only the {chi} and {eta}
138 parameters from the {qfile} file are used.  Note that Coulomb
139 catastrophe can occur if repulsion between the pair of charged
140 particles is too weak.  A tolerance of 1.0e-3 is usually a good
141 number.  Keyword {qdamp} can be used to change the damping factor, while
142 keyword {qstep} can be used to change the time step size.
144 The "{qeq/fire}"_#Shan style describes the same charge model and charge
145 solver as the {qeq/dynamic} style, but employs a FIRE minimization
146 algorithm to solve for equilibrium charges.
147 Keyword {qdamp} can be used to change the damping factor, while
148 keyword {qstep} can be used to change the time step size.
150 Note that {qeq/point}, {qeq/shielded}, and {qeq/slater} describe
151 different charge models, whereas the matrix inversion method and the
152 extended Lagrangian method ({qeq/dynamic} and {qeq/fire}) are
153 different solvers.
155 Note that {qeq/point}, {qeq/dynamic} and {qeq/fire} styles all describe
156 charges as point charges that interact through 1/r relationship, but
157 solve partial charges on atoms using different solvers.  These three
158 styles should yield comparable results if
159 the QEq parameters and {Nevery}, {cutoff}, and {tolerance} are the
160 same.  Style {qeq/point} is typically faster, {qeq/dynamic} scales
161 better on larger sizes, and {qeq/fire} is faster than {qeq/dynamic}.
163 NOTE: To avoid the evaluation of the derivative of charge with respect
164 to position, which is typically ill-defined, the system should have a
165 zero net charge.
167 NOTE: Developing QEq parameters (chi, eta, gamma, zeta, and qcore) is
168 non-trivial.  Charges on atoms are not guaranteed to equilibrate with
169 arbitrary choices of these parameters.  We do not develop these QEq
170 paramters.  See the examples/qeq directory for some examples.
172 [Restart, fix_modify, output, run start/stop, minimize info:]
174 No information about these fixes is written to "binary restart
175 files"_restart.html.  No global scalar or vector or per-atom
176 quantities are stored by these fixes for access by various "output
177 commands"_Section_howto.html#howto_15.  No parameter of these fixes
178 can be used with the {start/stop} keywords of the "run"_run.html
179 command.
181 Thexe fixes are invoked during "energy minimization"_minimize.html.
183 [Restrictions:]
185 These fixes are part of the QEQ package.  They are only enabled if
186 LAMMPS was built with that package.  See the "Making
187 LAMMPS"_Section_start.html#start_3 section for more info.
189 [Related commands:]
191 "fix qeq/reax"_fix_qeq_reax.html, "fix qeq/comb"_fix_qeq_comb.html
193 [Default:] none
195 :line
197 :link(Rappe)
198 [(Rappe and Goddard)] A. K. Rappe and W. A. Goddard III, J Physical
199 Chemistry, 95, 3358-3363 (1991).
201 :link(Nakano)
202 [(Nakano)] A. Nakano, Computer Physics Communications, 104, 59-69 (1997).
204 :link(Rick)
205 [(Rick and Stuart)] S. W. Rick, S. J. Stuart, B. J. Berne, J Chemical Physics
206 101, 16141 (1994).
208 :link(Streitz)
209 [(Streitz-Mintmire)] F. H. Streitz, J. W. Mintmire, Physical Review B, 50,
210 16, 11996 (1994)
212 :link(vanDuin)
213 [(ReaxFF)] A. C. T. van Duin, S. Dasgupta, F. Lorant, W. A. Goddard III, J
214 Physical Chemistry, 105, 9396-9049 (2001)
216 :link(Shan)
217 [(QEq/Fire)] T.-R. Shan, A. P. Thompson, S. J. Plimpton, in preparation