diff --git a/doc/Eqs/pair_eim1.jpg b/doc/Eqs/pair_eim1.jpg new file mode 100644 index 0000000000..9e4a560b1c Binary files /dev/null and b/doc/Eqs/pair_eim1.jpg differ diff --git a/doc/Eqs/pair_eim1.tex b/doc/Eqs/pair_eim1.tex new file mode 100644 index 0000000000..bfa5b6ebc4 --- /dev/null +++ b/doc/Eqs/pair_eim1.tex @@ -0,0 +1,9 @@ +\documentstyle[12pt]{article} + +\begin{document} + +$$ +E = \frac{1}{2} \sum_{i=1}^{N} \sum_{j=i_1}^{i_N} \phi_{ij} \left(r_{ij}\right) + \sum_{i=1}^{N}E_i\left(q_i,\sigma_i\right) +$$ + +\end{document} diff --git a/doc/Eqs/pair_eim2.jpg b/doc/Eqs/pair_eim2.jpg new file mode 100644 index 0000000000..accb638d99 Binary files /dev/null and b/doc/Eqs/pair_eim2.jpg differ diff --git a/doc/Eqs/pair_eim2.tex b/doc/Eqs/pair_eim2.tex new file mode 100644 index 0000000000..d8c4181342 --- /dev/null +++ b/doc/Eqs/pair_eim2.tex @@ -0,0 +1,11 @@ +\documentstyle[12pt]{article} + +\begin{document} + +\begin{eqnarray*} +q_i & = & \sum_{j=i_1}^{i_N} \eta_{ji}\left(r_{ij}\right) \\ +\sigma_i & = & \sum_{j=i_1}^{i_N} q_j \cdot \psi_{ij} \left(r_{ij}\right) \\ +E_i\left(q_i,\sigma_i\right) & = & \frac{1}{2} \cdot q_i \cdot \sigma_i +\end{eqnarray*} + +\end{document} diff --git a/doc/Eqs/pair_eim3.jpg b/doc/Eqs/pair_eim3.jpg new file mode 100644 index 0000000000..8e3b47d2a7 Binary files /dev/null and b/doc/Eqs/pair_eim3.jpg differ diff --git a/doc/Eqs/pair_eim3.tex b/doc/Eqs/pair_eim3.tex new file mode 100644 index 0000000000..84343c6acf --- /dev/null +++ b/doc/Eqs/pair_eim3.tex @@ -0,0 +1,25 @@ +\documentstyle[12pt]{article} + +\begin{document} + +\begin{eqnarray*} +\phi_{ij}\left(r\right) = \left\{ \begin{array}{lr} +\left[\frac{E_{b,ij}\beta_{ij}}{\beta_{ij}-\alpha_{ij}}\exp\left(-\alpha_{ij} \frac{r-r_{e,ij}}{r_{e,ij}}\right)-\frac{E_{b,ij}\alpha_{ij}}{\beta_{ij}-\alpha_{ij}}\exp\left(-\beta_{ij} \frac{r-r_{e,ij}}{r_{e,ij}}\right)\right]f_c\left(r,r_{e,ij},r_{c,\phi,ij}\right),& p_{ij}=1 \\ +\left[\frac{E_{b,ij}\beta_{ij}}{\beta_{ij}-\alpha_{ij}} \left(\frac{r_{e,ij}}{r}\right)^{\alpha_{ij}} -\frac{E_{b,ij}\alpha_{ij}}{\beta_{ij}-\alpha_{ij}} \left(\frac{r_{e,ij}}{r}\right)^{\beta_{ij}}\right]f_c\left(r,r_{e,ij},r_{c,\phi,ij}\right),& p_{ij}=2 +\end{array} +\right. +\end{eqnarray*} + +$$ +\eta_{ji} = A_{\eta,ij}\left(\chi_j-\chi_i\right)f_c\left(r,r_{s,\eta,ij},r_{c,\eta,ij}\right) +$$ + +$$ +\psi_{ij}\left(r\right) = A_{\psi,ij}\exp\left(-\zeta_{ij}r\right)f_c\left(r,r_{s,\psi,ij},r_{c,\psi,ij}\right) +$$ + +$$ +f_{c}\left(r,r_p,r_c\right) = 0.510204 erfc\left[\frac{1.64498\left(2r-r_p-r_c\right)}{r_c-r_p}\right] - 0.010204 +$$ + +\end{document} diff --git a/doc/Eqs/pair_tersoff_1.tex b/doc/Eqs/pair_tersoff_1.tex index dd0dce0c6d..7d34712491 100644 --- a/doc/Eqs/pair_tersoff_1.tex +++ b/doc/Eqs/pair_tersoff_1.tex @@ -19,6 +19,6 @@ g(\theta) & = & \gamma_{ijk} \left( 1 + \frac{c^2}{d^2} - \frac{c^2}{\left[ d^2 + (\cos \theta - \cos \theta_0)^2\right]} \right) -\end{eqnarray*} +\end{eqnarray*} \end{document} diff --git a/doc/Section_commands.html b/doc/Section_commands.html index afebefe7a4..3a95a5f681 100644 --- a/doc/Section_commands.html +++ b/doc/Section_commands.html @@ -379,17 +379,17 @@ potentials. Click on the style itself for a full description: <TR ALIGN="center"><TD ><A HREF = "pair_colloid.html">colloid</A></TD><TD ><A HREF = "pair_comb.html">comb</A></TD><TD ><A HREF = "pair_coul.html">coul/cut</A></TD><TD ><A HREF = "pair_coul.html">coul/debye</A></TD></TR> <TR ALIGN="center"><TD ><A HREF = "pair_coul.html">coul/long</A></TD><TD ><A HREF = "pair_dipole.html">dipole/cut</A></TD><TD ><A HREF = "pair_dpd.html">dpd</A></TD><TD ><A HREF = "pair_dpd.html">dpd/tstat</A></TD></TR> <TR ALIGN="center"><TD ><A HREF = "pair_dsmc.html">dsmc</A></TD><TD ><A HREF = "pair_eam.html">eam</A></TD><TD ><A HREF = "pair_eam.html">eam/opt</A></TD><TD ><A HREF = "pair_eam.html">eam/alloy</A></TD></TR> -<TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/alloy/opt</A></TD><TD ><A HREF = "pair_eam.html">eam/fs</A></TD><TD ><A HREF = "pair_eam.html">eam/fs/opt</A></TD><TD ><A HREF = "pair_gayberne.html">gayberne</A></TD></TR> -<TR ALIGN="center"><TD ><A HREF = "pair_gayberne.html">gayberne/gpu</A></TD><TD ><A HREF = "pair_gran.html">gran/hertz/history</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke/history</A></TD></TR> -<TR ALIGN="center"><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/implicit</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/opt</A></TD></TR> -<TR ALIGN="center"><TD ><A HREF = "pair_class2.html">lj/class2</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/cut</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/long</A></TD><TD ><A HREF = "pair_lj.html">lj/cut</A></TD></TR> -<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/opt</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye</A></TD></TR> -<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/long</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/tip4p</A></TD><TD ><A HREF = "pair_lj_expand.html">lj/expand</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs</A></TD></TR> -<TR ALIGN="center"><TD ><A HREF = "pair_gromacs.html">lj/gromacs/coul/gromacs</A></TD><TD ><A HREF = "pair_lj_smooth.html">lj/smooth</A></TD><TD ><A HREF = "pair_lj96_cut.html">lj96/cut</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate</A></TD></TR> -<TR ALIGN="center"><TD ><A HREF = "pair_meam.html">meam</A></TD><TD ><A HREF = "pair_morse.html">morse</A></TD><TD ><A HREF = "pair_morse.html">morse/opt</A></TD><TD ><A HREF = "pair_peri.html">peri/lps</A></TD></TR> -<TR ALIGN="center"><TD ><A HREF = "pair_peri.html">peri/pmb</A></TD><TD ><A HREF = "pair_reax.html">reax</A></TD><TD ><A HREF = "pair_resquared.html">resquared</A></TD><TD ><A HREF = "pair_soft.html">soft</A></TD></TR> -<TR ALIGN="center"><TD ><A HREF = "pair_sw.html">sw</A></TD><TD ><A HREF = "pair_table.html">table</A></TD><TD ><A HREF = "pair_tersoff.html">tersoff</A></TD><TD ><A HREF = "pair_tersoff_zbl.html">tersoff/zbl</A></TD></TR> -<TR ALIGN="center"><TD ><A HREF = "pair_yukawa.html">yukawa</A></TD><TD ><A HREF = "pair_yukawa_colloid.html">yukawa/colloid</A> +<TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/alloy/opt</A></TD><TD ><A HREF = "pair_eam.html">eam/fs</A></TD><TD ><A HREF = "pair_eam.html">eam/fs/opt</A></TD><TD ><A HREF = "pair_eim.html">eim</A></TD></TR> +<TR ALIGN="center"><TD ><A HREF = "pair_gayberne.html">gayberne</A></TD><TD ><A HREF = "pair_gayberne.html">gayberne/gpu</A></TD><TD ><A HREF = "pair_gran.html">gran/hertz/history</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke</A></TD></TR> +<TR ALIGN="center"><TD ><A HREF = "pair_gran.html">gran/hooke/history</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/implicit</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long</A></TD></TR> +<TR ALIGN="center"><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/opt</A></TD><TD ><A HREF = "pair_class2.html">lj/class2</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/cut</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/long</A></TD></TR> +<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/opt</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut</A></TD></TR> +<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/tip4p</A></TD><TD ><A HREF = "pair_lj_expand.html">lj/expand</A></TD></TR> +<TR ALIGN="center"><TD ><A HREF = "pair_gromacs.html">lj/gromacs</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/coul/gromacs</A></TD><TD ><A HREF = "pair_lj_smooth.html">lj/smooth</A></TD><TD ><A HREF = "pair_lj96_cut.html">lj96/cut</A></TD></TR> +<TR ALIGN="center"><TD ><A HREF = "pair_lubricate.html">lubricate</A></TD><TD ><A HREF = "pair_meam.html">meam</A></TD><TD ><A HREF = "pair_morse.html">morse</A></TD><TD ><A HREF = "pair_morse.html">morse/opt</A></TD></TR> +<TR ALIGN="center"><TD ><A HREF = "pair_peri.html">peri/lps</A></TD><TD ><A HREF = "pair_peri.html">peri/pmb</A></TD><TD ><A HREF = "pair_reax.html">reax</A></TD><TD ><A HREF = "pair_resquared.html">resquared</A></TD></TR> +<TR ALIGN="center"><TD ><A HREF = "pair_soft.html">soft</A></TD><TD ><A HREF = "pair_sw.html">sw</A></TD><TD ><A HREF = "pair_table.html">table</A></TD><TD ><A HREF = "pair_tersoff.html">tersoff</A></TD></TR> +<TR ALIGN="center"><TD ><A HREF = "pair_tersoff_zbl.html">tersoff/zbl</A></TD><TD ><A HREF = "pair_yukawa.html">yukawa</A></TD><TD ><A HREF = "pair_yukawa_colloid.html">yukawa/colloid</A> </TD></TR></TABLE></DIV> <P>These are pair styles contributed by users, which can be used if diff --git a/doc/Section_commands.txt b/doc/Section_commands.txt index c48f25cecd..a527a4768d 100644 --- a/doc/Section_commands.txt +++ b/doc/Section_commands.txt @@ -551,6 +551,7 @@ potentials. Click on the style itself for a full description: "eam/alloy/opt"_pair_eam.html, "eam/fs"_pair_eam.html, "eam/fs/opt"_pair_eam.html, +"eim"_pair_eim.html, "gayberne"_pair_gayberne.html, "gayberne/gpu"_pair_gayberne.html, "gran/hertz/history"_pair_gran.html, diff --git a/doc/Section_intro.html b/doc/Section_intro.html index 4129f7e9eb..acbe342747 100644 --- a/doc/Section_intro.html +++ b/doc/Section_intro.html @@ -137,7 +137,7 @@ commands) </P> <UL><LI> pairwise potentials: Lennard-Jones, Buckingham, Morse, Yukawa, soft, class 2 (COMPASS), tabulated <LI> charged pairwise potentials: Coulombic, point-dipole -<LI> manybody potentials: EAM, Finnis/Sinclair EAM, modified EAM (MEAM), Stillinger-Weber, Tersoff, AI-REBO, ReaxFF, COMB +<LI> manybody potentials: EAM, Finnis/Sinclair EAM, modified EAM (MEAM), embedded ion method (EIM), Stillinger-Weber, Tersoff, AI-REBO, ReaxFF, COMB <LI> coarse-grained potentials: DPD, GayBerne, REsquared, colloidal, DLVO <LI> mesoscopic potentials: granular, Peridynamics <LI> bond potentials: harmonic, FENE, Morse, nonlinear, class 2, quartic (breakable) diff --git a/doc/Section_intro.txt b/doc/Section_intro.txt index 65cbae4965..daf1b6bf8b 100644 --- a/doc/Section_intro.txt +++ b/doc/Section_intro.txt @@ -134,7 +134,7 @@ commands) Yukawa, soft, class 2 (COMPASS), tabulated charged pairwise potentials: Coulombic, point-dipole manybody potentials: EAM, Finnis/Sinclair EAM, modified EAM (MEAM), \ - Stillinger-Weber, Tersoff, AI-REBO, ReaxFF, COMB + embedded ion method (EIM), Stillinger-Weber, Tersoff, AI-REBO, ReaxFF, COMB coarse-grained potentials: DPD, GayBerne, REsquared, colloidal, DLVO mesoscopic potentials: granular, Peridynamics bond potentials: harmonic, FENE, Morse, nonlinear, class 2, \ diff --git a/doc/pair_coeff.html b/doc/pair_coeff.html index 85bb19b861..de26f20bbf 100644 --- a/doc/pair_coeff.html +++ b/doc/pair_coeff.html @@ -106,6 +106,7 @@ the pair_style command, and coefficients specified by the associated <LI><A HREF = "pair_eam.html">pair_style eam/alloy/opt</A> - optimized version of alloy EAM <LI><A HREF = "pair_eam.html">pair_style eam/fs</A> - Finnis-Sinclair EAM <LI><A HREF = "pair_eam.html">pair_style eam/fs/opt</A> - optimized version of Finnis-Sinclair EAM +<LI><A HREF = "pair_eim.html">pair_style eim</A> - embedded ion method (EIM) <LI><A HREF = "pair_gayberne.html">pair_style gayberne</A> - Gay-Berne ellipsoidal potential <LI><A HREF = "pair_gayberne.html">pair_style gayberne/gpu</A> - GPU-enabled Gay-Berne ellipsoidal potential <LI><A HREF = "pair_gran.html">pair_style gran/hertz/history</A> - granular potential with Hertzian interactions diff --git a/doc/pair_coeff.txt b/doc/pair_coeff.txt index e925a3d7b1..9fb12c8342 100644 --- a/doc/pair_coeff.txt +++ b/doc/pair_coeff.txt @@ -103,6 +103,7 @@ the pair_style command, and coefficients specified by the associated "pair_style eam/alloy/opt"_pair_eam.html - optimized version of alloy EAM "pair_style eam/fs"_pair_eam.html - Finnis-Sinclair EAM "pair_style eam/fs/opt"_pair_eam.html - optimized version of Finnis-Sinclair EAM +"pair_style eim"_pair_eim.html - embedded ion method (EIM) "pair_style gayberne"_pair_gayberne.html - Gay-Berne ellipsoidal potential "pair_style gayberne/gpu"_pair_gayberne.html - GPU-enabled Gay-Berne ellipsoidal potential "pair_style gran/hertz/history"_pair_gran.html - granular potential with Hertzian interactions diff --git a/doc/pair_eim.html b/doc/pair_eim.html new file mode 100644 index 0000000000..cfeead5d92 --- /dev/null +++ b/doc/pair_eim.html @@ -0,0 +1,153 @@ +<HTML> +<CENTER><A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A> +</CENTER> + + + + + + +<HR> + +<H3>pair_style eim command +</H3> +<P><B>Syntax:</B> +</P> +<PRE>pair_style style +</PRE> +<UL><LI>style = <I>eim</I> +</UL> +<P><B>Examples:</B> +</P> +<PRE>pair_style eim +pair_coeff * * Na Cl ../potentials/ffield.eim Na Cl +pair_coeff * * Na Cl ffield.eim Na Na Na Cl +pair_coeff * * Na Cl ../potentials/ffield.eim Cl NULL Na +</PRE> +<P><B>Description:</B> +</P> +<P>Style <I>eim</I> computes pairwise interactions for ionic compounds +using embedded-ion method (EIM) potentials <A HREF = "#Zhou">(Zhou)</A>. The +energy of the system E is given by +</P> +<CENTER><IMG SRC = "Eqs/pair_eim1.jpg"> +</CENTER> +<P>The first term is a double pairwise sum over the J neighbors of all I +atoms, where phi_ij is a pair potential. The second term sums over +the embedding energy E_i of atom I, which is a function of its charge +q_i and the electrical potential sigma_i at its location. E_i, q_i, +and sigma_i are calculated as +</P> +<CENTER><IMG SRC = "Eqs/pair_eim2.jpg"> +</CENTER> +<P>where eta_ji is a pairwise function describing electron flow from atom +I to atom J, and psi_ij is another pairwise function. The multi-body +nature of the EIM potential is a result of the embedding energy term. +A complete list of all the pair functions used in EIM is summarized +below +</P> +<CENTER><IMG SRC = "Eqs/pair_eim3.jpg"> +</CENTER> +<P>Here E_b, r_e, r_(c,phi), alpha, beta, A_(psi), zeta, r_(s,psi), +r_(c,psi), A_(eta), r_(s,eta), r_(c,eta), chi, and pair function type +p are parameters, with subscripts ij indicating the two species of +atoms in the atomic pair. +</P> +<P>IMPORTANT NOTE: Even though the EIM potential is treating atoms as +charged ions, you should not use a LAMMPS <A HREF = "atom_style.html">atom_style</A> +that stores a charge on each atom and thus requires you to assign a +charge to each atom, e.g. the <I>charge</I> or <I>full</I> atom styles. This is +because the EIM potential infers the charge on an atom from the +equation above for q_i; you do not assign charges explicitly. +</P> +<HR> + +<P>All the EIM parameters are listed in a potential file which is +specified by the <A HREF = "pair_coeff.html">pair_coeff</A> command. This is an +ASCII text file in a format described below. The "ffield.eim" file +included in the "potentials" directory of the LAMMPS distribution +currently includes nine elements Li, Na, K, Rb, Cs, F, Cl, Br, and I. +A system with any combination of these elements can be modeled. This +file is parameterized in terms of LAMMPS <A HREF = "units.html">metal units</A>. +</P> +<P>Note that unlike other potentials, cutoffs for EIM potentials are not +set in the pair_style or pair_coeff command; they are specified in the +EIM potential file itself. Likewise, the EIM potential file lists +atomic masses; thus you do not need to use the <A HREF = "mass.html">mass</A> +command to specify them. +</P> +<P>Only a single pair_coeff command is used with the <I>eim</I> style which +specifies an EIM potential file and the element(s) to extract +information for. The EIM elements are mapped to LAMMPS atom types by +specifying N additional arguments after the filename in the pair_coeff +command, where N is the number of LAMMPS atom types: +</P> +<UL><LI>Elem1, Elem2, ... +<LI>EIM potential file +<LI>N element names = mapping of EIM elements to atom types +</UL> +<P>As an example like one of those above, suppose you want to model a +system with Na and Cl atoms. If your LAMMPS simulation has 4 atoms +types and you want the 1st 3 to be Na, and the 4th to be Cl, you would +use the following pair_coeff command: +</P> +<PRE>pair_coeff * * Na Cl ffield.eim Na Na Na Cl +</PRE> +<P>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. +The filename is the EIM potential file. The Na and Cl arguments +(before the file name) are the two elements for which info will be +extracted from the potentail file. The first three trailing Na +arguments map LAMMPS atom types 1,2,3 to the EIM Na element. The +final Cl argument maps LAMMPS atom type 4 to the EIM Cl element. +</P> +<P>If a mapping value is specified as NULL, the mapping is not performed. +This can be used when an <I>eim</I> potential is used as part of the +<I>hybrid</I> pair style. The NULL values are placeholders for atom types +that will be used with other potentials. +</P> +<P>The ffield.eim file in the <I>potentials</I> directory of the LAMMPS +distribution is formated as follows: +</P> +<P>Lines starting with # are comments and are ignored by LAMMPS. Lines +starting with "global:" include three global values. The first value +divides the cations from anions, i.e., any elements with +electronegativity above this value are viewed as anions, and any +elements with electronegativity below this value are viewed as +cations. The second and third values are related to the cutoff +function - i.e. the 0.510204, 1.64498, and 0.010204 shown in the above +equation can be derived from these values. +</P> +<P>Lines starting with "element:" are formatted as follows: name of +element, atomic number, atomic mass, electronic negativity, atomic +radius (LAMMPS ignores it), ionic radius (LAMMPS ignores it), cohesive +energy (LAMMPS ignores it), and q0 (must be 0). +</P> +<P>Lines starting with "pair:" are entered as: element 1, element 2, +r_(c,phi), r_(c,phi) (redundant for historical reasons), E_b, r_e, +alpha, beta, r_(c,eta), A_(eta), r_(s,eta), r_(c,psi), A_(psi), zeta, +r_(s,psi), and p. +</P> +<P>The lines in the file can be in any order; LAMMPS extracts the info it +needs. +</P> +<HR> + +<P><B>Restrictions:</B> +</P> +<P>This style is part of the "manybody" package. It is only enabled if +LAMMPS was built with that package (which it is by default). +</P> +<P><B>Related commands:</B> +</P> +<P><A HREF = "pair_coeff.html">pair_coeff</A> +</P> +<P><B>Default:</B> none +</P> +<HR> + +<A NAME = "Zhou"></A> + +<P><B>(Zhou)</B> Zhou, submitted for publication (2010). Please contact +Xiaowang Zhou (Sandia) for details via email at xzhou at sandia.gov. +</P> +</HTML> diff --git a/doc/pair_eim.txt b/doc/pair_eim.txt new file mode 100644 index 0000000000..411f64c254 --- /dev/null +++ b/doc/pair_eim.txt @@ -0,0 +1,147 @@ +"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 + +pair_style eim command :h3 + +[Syntax:] + +pair_style style :pre + +style = {eim} :ul + +[Examples:] + +pair_style eim +pair_coeff * * Na Cl ../potentials/ffield.eim Na Cl +pair_coeff * * Na Cl ffield.eim Na Na Na Cl +pair_coeff * * Na Cl ../potentials/ffield.eim Cl NULL Na :pre + +[Description:] + +Style {eim} computes pairwise interactions for ionic compounds +using embedded-ion method (EIM) potentials "(Zhou)"_#Zhou. The +energy of the system E is given by + +:c,image(Eqs/pair_eim1.jpg) + +The first term is a double pairwise sum over the J neighbors of all I +atoms, where phi_ij is a pair potential. The second term sums over +the embedding energy E_i of atom I, which is a function of its charge +q_i and the electrical potential sigma_i at its location. E_i, q_i, +and sigma_i are calculated as + +:c,image(Eqs/pair_eim2.jpg) + +where eta_ji is a pairwise function describing electron flow from atom +I to atom J, and psi_ij is another pairwise function. The multi-body +nature of the EIM potential is a result of the embedding energy term. +A complete list of all the pair functions used in EIM is summarized +below + +:c,image(Eqs/pair_eim3.jpg) + +Here E_b, r_e, r_(c,phi), alpha, beta, A_(psi), zeta, r_(s,psi), +r_(c,psi), A_(eta), r_(s,eta), r_(c,eta), chi, and pair function type +p are parameters, with subscripts ij indicating the two species of +atoms in the atomic pair. + +IMPORTANT NOTE: Even though the EIM potential is treating atoms as +charged ions, you should not use a LAMMPS "atom_style"_atom_style.html +that stores a charge on each atom and thus requires you to assign a +charge to each atom, e.g. the {charge} or {full} atom styles. This is +because the EIM potential infers the charge on an atom from the +equation above for q_i; you do not assign charges explicitly. + +:line + +All the EIM parameters are listed in a potential file which is +specified by the "pair_coeff"_pair_coeff.html command. This is an +ASCII text file in a format described below. The "ffield.eim" file +included in the "potentials" directory of the LAMMPS distribution +currently includes nine elements Li, Na, K, Rb, Cs, F, Cl, Br, and I. +A system with any combination of these elements can be modeled. This +file is parameterized in terms of LAMMPS "metal units"_units.html. + +Note that unlike other potentials, cutoffs for EIM potentials are not +set in the pair_style or pair_coeff command; they are specified in the +EIM potential file itself. Likewise, the EIM potential file lists +atomic masses; thus you do not need to use the "mass"_mass.html +command to specify them. + +Only a single pair_coeff command is used with the {eim} style which +specifies an EIM potential file and the element(s) to extract +information for. The EIM elements are mapped to LAMMPS atom types by +specifying N additional arguments after the filename in the pair_coeff +command, where N is the number of LAMMPS atom types: + +Elem1, Elem2, ... +EIM potential file +N element names = mapping of EIM elements to atom types :ul + +As an example like one of those above, suppose you want to model a +system with Na and Cl atoms. If your LAMMPS simulation has 4 atoms +types and you want the 1st 3 to be Na, and the 4th to be Cl, you would +use the following pair_coeff command: + +pair_coeff * * Na Cl ffield.eim Na Na Na Cl :pre + +The 1st 2 arguments must be * * so as to span all LAMMPS atom types. +The filename is the EIM potential file. The Na and Cl arguments +(before the file name) are the two elements for which info will be +extracted from the potentail file. The first three trailing Na +arguments map LAMMPS atom types 1,2,3 to the EIM Na element. The +final Cl argument maps LAMMPS atom type 4 to the EIM Cl element. + +If a mapping value is specified as NULL, the mapping is not performed. +This can be used when an {eim} potential is used as part of the +{hybrid} pair style. The NULL values are placeholders for atom types +that will be used with other potentials. + +The ffield.eim file in the {potentials} directory of the LAMMPS +distribution is formated as follows: + +Lines starting with # are comments and are ignored by LAMMPS. Lines +starting with "global:" include three global values. The first value +divides the cations from anions, i.e., any elements with +electronegativity above this value are viewed as anions, and any +elements with electronegativity below this value are viewed as +cations. The second and third values are related to the cutoff +function - i.e. the 0.510204, 1.64498, and 0.010204 shown in the above +equation can be derived from these values. + +Lines starting with "element:" are formatted as follows: name of +element, atomic number, atomic mass, electronic negativity, atomic +radius (LAMMPS ignores it), ionic radius (LAMMPS ignores it), cohesive +energy (LAMMPS ignores it), and q0 (must be 0). + +Lines starting with "pair:" are entered as: element 1, element 2, +r_(c,phi), r_(c,phi) (redundant for historical reasons), E_b, r_e, +alpha, beta, r_(c,eta), A_(eta), r_(s,eta), r_(c,psi), A_(psi), zeta, +r_(s,psi), and p. + +The lines in the file can be in any order; LAMMPS extracts the info it +needs. + +:line + +[Restrictions:] + +This style is part of the "manybody" package. It is only enabled if +LAMMPS was built with that package (which it is by default). + +[Related commands:] + +"pair_coeff"_pair_coeff.html + +[Default:] none + +:line + +:link(Zhou) +[(Zhou)] Zhou, submitted for publication (2010). Please contact +Xiaowang Zhou (Sandia) for details via email at xzhou at sandia.gov. diff --git a/doc/pair_style.html b/doc/pair_style.html index c1002bb0e4..88957d663f 100644 --- a/doc/pair_style.html +++ b/doc/pair_style.html @@ -108,6 +108,7 @@ the pair_style command, and coefficients specified by the associated <LI><A HREF = "pair_eam.html">pair_style eam/alloy/opt</A> - optimized version of alloy EAM <LI><A HREF = "pair_eam.html">pair_style eam/fs</A> - Finnis-Sinclair EAM <LI><A HREF = "pair_eam.html">pair_style eam/fs/opt</A> - optimized version of Finnis-Sinclair EAM +<LI><A HREF = "pair_eim.html">pair_style eim</A> - embedded ion method (EIM) <LI><A HREF = "pair_gayberne.html">pair_style gayberne</A> - Gay-Berne ellipsoidal potential <LI><A HREF = "pair_gayberne.html">pair_style gayberne/gpu</A> - GPU-enabled Gay-Berne ellipsoidal potential <LI><A HREF = "pair_gran.html">pair_style gran/hertz/history</A> - granular potential with Hertzian interactions diff --git a/doc/pair_style.txt b/doc/pair_style.txt index b81009646f..fb2bac99f1 100644 --- a/doc/pair_style.txt +++ b/doc/pair_style.txt @@ -105,6 +105,7 @@ the pair_style command, and coefficients specified by the associated "pair_style eam/alloy/opt"_pair_eam.html - optimized version of alloy EAM "pair_style eam/fs"_pair_eam.html - Finnis-Sinclair EAM "pair_style eam/fs/opt"_pair_eam.html - optimized version of Finnis-Sinclair EAM +"pair_style eim"_pair_eim.html - embedded ion method (EIM) "pair_style gayberne"_pair_gayberne.html - Gay-Berne ellipsoidal potential "pair_style gayberne/gpu"_pair_gayberne.html - GPU-enabled Gay-Berne ellipsoidal potential "pair_style gran/hertz/history"_pair_gran.html - granular potential with Hertzian interactions