diff --git a/doc/src/pair_tersoff.rst b/doc/src/pair_tersoff.rst index 7d73db494c..0f0750e9df 100644 --- a/doc/src/pair_tersoff.rst +++ b/doc/src/pair_tersoff.rst @@ -76,7 +76,7 @@ The *tersoff* style computes a 3-body Tersoff potential where :math:`f_R` is a two-body term and :math:`f_A` includes three-body interactions. The summations in the formula are over all neighbors J and K of atom I within a cutoff distance = R + D. :math:`\delta` is -an optional negative shift of the equilibrium bond length, as described below. +an optional negative shift of the equilibrium bond length, as described below. The *tersoff/table* style uses tabulated forms for the two-body, environment and angular functions. Linear interpolation is performed @@ -181,14 +181,14 @@ are often the same, due to the common use of symmetric mixing rules, but this is not always the case. For example, the beta and n parameters in Tersoff_2 :ref:`(Tersoff_2) ` are not symmetric. Similarly, the threebody parameters in entries such as SiCSi and SiSiC -are often the same, but this is not always the case, particularly -the value of R, which is sometimes typed on the -first and second elements, sometimes on the first and third elements. +are often the same, but this is not always the case, particularly +the value of R, which is sometimes typed on the +first and second elements, sometimes on the first and third elements. Hence the need to specify R and D explicitly for all element triples. For example, while Tersoff's notation in Tersoff_2 :ref:`(Tersoff_2) ` is ambiguous on this point, and properties of the zincblende lattice are the same for either choice, -Tersoff's results for rocksalt are consistent with typing on the first +Tersoff's results for rocksalt are consistent with typing on the first and third elements. :ref:`Albe et al. ` adopts the same convention. Conversely, the potential for B/N/C from the Cagin group uses the opposite convention, typing on the first and second elements. @@ -237,25 +237,30 @@ Many thanks to Rutuparna Narulkar, David Farrell, and Xiaowang Zhou for helping clarify how Tersoff parameters for alloys have been defined in various papers. -The *shift* keyword computes the energy E of a system of atoms, whose formula -is the same as the Tersoff potential. The only modification is that the original -equilibrium bond length ( :math:`r_0`) of the system is shifted to :math:`r_0-\delta`. -The minus sign arises because each radial distance :math:`r` is replaced by :math:`r+\delta`. +The *shift* keyword computes the energy E of a system of atoms, whose +formula is the same as the Tersoff potential. The only modification is +that the original equilibrium bond length ( :math:`r_0`) of the system +is shifted to :math:`r_0-\delta`. The minus sign arises because each +radial distance :math:`r` is replaced by :math:`r+\delta`. -The *shift* keyword is designed for simulations of closely matched van der Waals heterostructures. -For instance, consider the case of a system with few-layers graphene atop a thick hexagonal boron nitride (h-BN) -substrate simulated using periodic boundary conditions. The experimental lattice mismatch of ~1.8% between graphene -and h-BN is not well captured by the equilibrium lattice constants of available potentials, thus a small in-plane strain -will be introduced in the system when building a periodic supercell. To minimize the effect of strain on -simulation results, the *shift* keyword allows adjusting the equilibrium bond length -of one of the two materials (e.g., h-BN). Validation, benchmark tests, and applications of the -*shift* keyword can be found in :ref:`(Mandelli_1) ` and :ref:`(Ouyang_1) `. +The *shift* keyword is designed for simulations of closely matched van +der Waals heterostructures. For instance, consider the case of a system +with few-layers graphene atop a thick hexagonal boron nitride (h-BN) +substrate simulated using periodic boundary conditions. The experimental +lattice mismatch of ~1.8% between graphene and h-BN is not well captured +by the equilibrium lattice constants of available potentials, thus a +small in-plane strain will be introduced in the system when building a +periodic supercell. To minimize the effect of strain on simulation +results, the *shift* keyword allows adjusting the equilibrium bond +length of one of the two materials (e.g., h-BN). Validation, benchmark +tests, and applications of the *shift* keyword can be found in +:ref:`(Mandelli_1) ` and :ref:`(Ouyang_1) `. For the specific case discussed above, the force field can be defined as .. code-block:: LAMMPS - pair_style hybrid/overlay rebo tersoff shift -4.07e-3 ilp/graphene/hbn 16.0 coul/shield 16.0 + pair_style hybrid/overlay rebo tersoff shift -0.00407 ilp/graphene/hbn 16.0 coul/shield 16.0 pair_coeff * * rebo CH.rebo NULL NULL C pair_coeff * * tersoff BNC.tersoff B N NULL pair_coeff * * ilp/graphene/hbn BNCH.ILP B N C @@ -279,10 +284,10 @@ described above from values in the potential file. This pair style does not support the :doc:`pair_modify ` shift, table, and tail options. -This pair style does not write its information to :doc:`binary restart files `, -since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file. +This pair style does not write its information to :doc:`binary restart +files `, since it is stored in potential files. Thus, you need +to re-specify the pair_style and pair_coeff commands in an input script +that reads a restart file. This pair style can only be used via the *pair* keyword of the :doc:`run_style respa ` command. It does not support the @@ -293,22 +298,24 @@ This pair style can only be used via the *pair* keyword of the Restrictions """""""""""" -This pair style is part of the MANYBODY package. It is only enabled -if LAMMPS was built with that package. See the :doc:`Build package ` -doc page for more info. +This pair style is part of the MANYBODY package. It is only enabled if +LAMMPS was built with that package. See the :doc:`Build package +` doc page for more info. This pair style requires the :doc:`newton ` setting to be "on" for pair interactions. -The Tersoff potential files provided with LAMMPS (see the potentials -directory) are parameterized for metal :doc:`units `. You can -use the Tersoff potential with any LAMMPS units, but you would need to -create your own Tersoff potential file with coefficients listed in the -appropriate units if your simulation does not use "metal" units. +The *shift* keyword is not supported by the *tersoff/gpu*, +*tersoff/intel*, *tersoff/kk*, *tersoff/table* or *tersoff/table/omp* +variants. -The *shift* keyword is not supported by the -*tersoff/gpu*, *tersoff/intel*, *tersoff/kk*, or *tersoff/table* -variants. +The Tersoff potential files provided with LAMMPS (see the potentials +directory) are parameterized for :doc:`"metal" units `. In addition +the pair style supports converting potential parameters on-the-fly between +"metal" and "real" units. You can use the *tersoff* pair style variants +with any LAMMPS units setting, but you would need to +create your own Tersoff potential file with coefficients listed in the +appropriate units if your simulation does not use "metal" or "real" units. Related commands """""""""""""""" diff --git a/doc/src/pair_tersoff_mod.rst b/doc/src/pair_tersoff_mod.rst index cad9d88e50..e59005c2b0 100644 --- a/doc/src/pair_tersoff_mod.rst +++ b/doc/src/pair_tersoff_mod.rst @@ -70,8 +70,8 @@ E of a system of atoms as g_a(\theta) & = 1 + c_4 \exp \left[ -c_5 (h - \cos \theta)^2 \right] \\ where :math:`f_R` is a two-body term and :math:`f_A` includes three-body interactions. -:math:`\delta` is an optional negative shift of the -equilibrium bond length, as described below. +:math:`\delta` is an optional negative shift of the +equilibrium bond length, as described below. The summations in the formula are over all neighbors J and K of atom I within a cutoff distance = R + D. @@ -166,11 +166,11 @@ second atom and the bond is influenced by the third atom. Thus an entry for SiSiSi means Si bonded to a Si with another Si atom influencing the bond. The *shift* keyword computes the energy E of a system of atoms, whose formula -is the same as the Tersoff potential. The only modification is that the original +is the same as the Tersoff potential. The only modification is that the original equilibrium bond length ( :math:`r_0`) of the system is shifted to :math:`r_0-\delta`. The minus sign arises because each radial distance :math:`r` is replaced by :math:`r+\delta`. More information on this option is given on the main :doc:`pair_tersoff ` page. - + ---------- .. include:: accel_styles.rst @@ -202,9 +202,13 @@ if LAMMPS was built with that package. See the :doc:`Build package ` setting to be "on" for pair interactions. -The Tersoff/MOD potential files provided with LAMMPS (see the potentials +The *shift* keyword is not supported by the *tersoff/gpu*, +*tersoff/intel*, *tersoff/kk*, *tersoff/table* or *tersoff/table/omp* +variants. + +The *tersoff/mod* potential files provided with LAMMPS (see the potentials directory) are parameterized for metal :doc:`units `. You can -use the Tersoff/MOD potential with any LAMMPS units, but you would need to +use the *tersoff/mod* pair style with any LAMMPS units, but you would need to create your own Tersoff/MOD potential file with coefficients listed in the appropriate units if your simulation does not use "metal" units. diff --git a/doc/src/pair_tersoff_zbl.rst b/doc/src/pair_tersoff_zbl.rst index 10da2ffe84..345ebf3e03 100644 --- a/doc/src/pair_tersoff_zbl.rst +++ b/doc/src/pair_tersoff_zbl.rst @@ -42,7 +42,7 @@ system of atoms as .. math:: E & = \frac{1}{2} \sum_i \sum_{j \neq i} V_{ij} \\ - V_{ij} & = (1 - f_F(r_{ij} + \delta)) V^{ZBL}(r_{ij} + \delta) + V_{ij} & = (1 - f_F(r_{ij} + \delta)) V^{ZBL}(r_{ij} + \delta) + f_F(r_{ij} + \delta) V^{Tersoff}(r_{ij} + \delta) \\ f_F(r) & = \frac{1}{1 + e^{-A_F(r - r_C)}}\\ \\ @@ -89,8 +89,8 @@ includes three-body interactions. The summations in the formula are over all neighbors J and K of atom I within a cutoff distance = R + D. -:math:`\delta` is an optional negative shift of the -equilibrium bond length, as described below. +:math:`\delta` is an optional negative shift of the +equilibrium bond length, as described below. Only a single pair_coeff command is used with the *tersoff/zbl* style which specifies a Tersoff/ZBL potential file with parameters for all @@ -239,11 +239,13 @@ for helping clarify how Tersoff parameters for alloys have been defined in various papers. Also thanks to Ram Devanathan for providing the base ZBL implementation. -The *shift* keyword computes the energy E of a system of atoms, whose formula -is the same as the Tersoff potential. The only modification is that the original -equilibrium bond length ( :math:`r_0`) of the system is shifted to :math:`r_0-\delta`. -The minus sign arises because each radial distance :math:`r` is replaced by :math:`r+\delta`. -More information on this option is given on the main :doc:`pair_tersoff ` page. +The *shift* keyword computes the energy E of a system of atoms, whose +formula is the same as the Tersoff potential. The only modification is +that the original equilibrium bond length ( :math:`r_0`) of the system +is shifted to :math:`r_0-\delta`. The minus sign arises because each +radial distance :math:`r` is replaced by :math:`r+\delta`. More +information on this option is given on the main :doc:`pair_tersoff +` page. ---------- @@ -261,9 +263,10 @@ described above from values in the potential file. This pair style does not support the :doc:`pair_modify ` shift, table, and tail options. -This pair style does not write its information to :doc:`binary restart files `, since it is stored in potential files. Thus, you -need to re-specify the pair_style and pair_coeff commands in an input -script that reads a restart file. +This pair style does not write its information to :doc:`binary restart +files `, since it is stored in potential files. Thus, you need +to re-specify the pair_style and pair_coeff commands in an input script +that reads a restart file. This pair style can only be used via the *pair* keyword of the :doc:`run_style respa ` command. It does not support the @@ -274,18 +277,23 @@ This pair style can only be used via the *pair* keyword of the Restrictions """""""""""" -This pair style is part of the MANYBODY package. It is only enabled -if LAMMPS was built with that package. See the :doc:`Build package ` doc page for more info. +This pair style is part of the MANYBODY package. It is only enabled if +LAMMPS was built with that package. See the :doc:`Build package +` doc page for more info. This pair style requires the :doc:`newton ` setting to be "on" for pair interactions. -The Tersoff/ZBL potential files provided with LAMMPS (see the -potentials directory) are parameterized for metal :doc:`units `. -You can use the Tersoff potential with any LAMMPS units, but you would -need to create your own Tersoff potential file with coefficients -listed in the appropriate units if your simulation does not use "metal" -units. +The *shift* keyword is currently not supported for the *tersoff/gpu* and +*tersoff/kk* variants of this pair style. + +The tersoff/zbl potential files provided with LAMMPS (see the potentials +directory) are parameterized for :doc:`"metal" units `. Also the +pair style supports converting potential file parameters on-the-fly +between "metal" and "real" units. You can use the tersoff/zbl pair +style with any LAMMPS units, but you would need to create your own +tersoff/zbl potential file with coefficients listed in the appropriate +units if your simulation does not use "metal" or "real" units. Related commands """"""""""""""""