Merge branch 'ilp-tmd-update' of github.com:oywg11/lammps into collected-small-fixes
This commit is contained in:
@ -22,12 +22,12 @@ Examples
|
|||||||
.. code-block:: LAMMPS
|
.. code-block:: LAMMPS
|
||||||
|
|
||||||
pair_style hybrid/overlay ilp/tmd 16.0 1
|
pair_style hybrid/overlay ilp/tmd 16.0 1
|
||||||
pair_coeff * * ilp/tmd MoS2.ILP Mo S S
|
pair_coeff * * ilp/tmd TMD.ILP Mo S S
|
||||||
|
|
||||||
pair_style hybrid/overlay sw/mod sw/mod ilp/tmd 16.0
|
pair_style hybrid/overlay sw/mod sw/mod ilp/tmd 16.0
|
||||||
pair_coeff * * sw/mod 1 tmd.sw.mod Mo S S NULL NULL NULL
|
pair_coeff * * sw/mod 1 tmd.sw.mod Mo S S NULL NULL NULL
|
||||||
pair_coeff * * sw/mod 2 tmd.sw.mod NULL NULL NULL Mo S S
|
pair_coeff * * sw/mod 2 tmd.sw.mod NULL NULL NULL W Se Se
|
||||||
pair_coeff * * ilp/tmd MoS2.ILP Mo S S Mo S S
|
pair_coeff * * ilp/tmd TMD.ILP Mo S S W Se Se
|
||||||
|
|
||||||
Description
|
Description
|
||||||
"""""""""""
|
"""""""""""
|
||||||
@ -36,7 +36,7 @@ Description
|
|||||||
|
|
||||||
The *ilp/tmd* style computes the registry-dependent interlayer
|
The *ilp/tmd* style computes the registry-dependent interlayer
|
||||||
potential (ILP) potential for transition metal dichalcogenides (TMD)
|
potential (ILP) potential for transition metal dichalcogenides (TMD)
|
||||||
as described in :ref:`(Ouyang7) <Ouyang7>`.
|
as described in :ref:`(Ouyang7) <Ouyang7>` and :ref:`(Jiang) <Jiang>`.
|
||||||
|
|
||||||
.. math::
|
.. math::
|
||||||
|
|
||||||
@ -69,7 +69,7 @@ calculating the normals.
|
|||||||
each atom `i`, its six nearest neighboring atoms belonging to the same
|
each atom `i`, its six nearest neighboring atoms belonging to the same
|
||||||
sub-layer are chosen to define the normal vector `{\bf n}_i`.
|
sub-layer are chosen to define the normal vector `{\bf n}_i`.
|
||||||
|
|
||||||
The parameter file (e.g. MoS2.ILP), is intended for use with *metal*
|
The parameter file (e.g. TMD.ILP), is intended for use with *metal*
|
||||||
:doc:`units <units>`, with energies in meV. Two additional parameters,
|
:doc:`units <units>`, with energies in meV. Two additional parameters,
|
||||||
*S*, and *rcut* are included in the parameter file. *S* is designed to
|
*S*, and *rcut* are included in the parameter file. *S* is designed to
|
||||||
facilitate scaling of energies. *rcut* is designed to build the neighbor
|
facilitate scaling of energies. *rcut* is designed to build the neighbor
|
||||||
@ -77,7 +77,7 @@ list for calculating the normals for each atom pair.
|
|||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
The parameters presented in the parameter file (e.g. MoS2.ILP),
|
The parameters presented in the parameter file (e.g. TMD.ILP),
|
||||||
are fitted with taper function by setting the cutoff equal to 16.0
|
are fitted with taper function by setting the cutoff equal to 16.0
|
||||||
Angstrom. Using different cutoff or taper function should be careful.
|
Angstrom. Using different cutoff or taper function should be careful.
|
||||||
These parameters provide a good description in both short- and long-range
|
These parameters provide a good description in both short- and long-range
|
||||||
@ -133,10 +133,10 @@ if LAMMPS was built with that package. See the :doc:`Build package
|
|||||||
This pair style requires the newton setting to be *on* for pair
|
This pair style requires the newton setting to be *on* for pair
|
||||||
interactions.
|
interactions.
|
||||||
|
|
||||||
The MoS2.ILP potential file provided with LAMMPS (see the potentials
|
The TMD.ILP potential file provided with LAMMPS (see the potentials
|
||||||
directory) are parameterized for *metal* units. You can use this
|
directory) are parameterized for *metal* units. You can use this
|
||||||
potential with any LAMMPS units, but you would need to create your own
|
potential with any LAMMPS units, but you would need to create your own
|
||||||
custom MoS2.ILP potential file with coefficients listed in the appropriate
|
custom TMD.ILP potential file with coefficients listed in the appropriate
|
||||||
units, if your simulation does not use *metal* units.
|
units, if your simulation does not use *metal* units.
|
||||||
|
|
||||||
Related commands
|
Related commands
|
||||||
@ -164,3 +164,7 @@ tap_flag = 1
|
|||||||
.. _Ouyang7:
|
.. _Ouyang7:
|
||||||
|
|
||||||
**(Ouyang7)** W. Ouyang, et al., J. Chem. Theory Comput. 17, 7237 (2021).
|
**(Ouyang7)** W. Ouyang, et al., J. Chem. Theory Comput. 17, 7237 (2021).
|
||||||
|
|
||||||
|
.. _Jiang:
|
||||||
|
|
||||||
|
**(Jiang)** W. Jiang, et al., J. Phys. Chem. A, 127, 46, 9820–9830 (2023).
|
||||||
|
|||||||
@ -1 +0,0 @@
|
|||||||
../../../../potentials/MoS2.ILP
|
|
||||||
1
examples/PACKAGES/interlayer/ilp_tmds/TMD.ILP
Symbolic link
1
examples/PACKAGES/interlayer/ilp_tmds/TMD.ILP
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
../../../../potentials/TMD.ILP
|
||||||
@ -12,7 +12,7 @@ mass 4 95.94
|
|||||||
pair_style hybrid/overlay sw/mod sw/mod ilp/tmd 16.0
|
pair_style hybrid/overlay sw/mod sw/mod ilp/tmd 16.0
|
||||||
pair_coeff * * sw/mod 1 tmd.sw.mod Mo S S NULL NULL NULL
|
pair_coeff * * sw/mod 1 tmd.sw.mod Mo S S NULL NULL NULL
|
||||||
pair_coeff * * sw/mod 2 tmd.sw.mod NULL NULL NULL Mo S S
|
pair_coeff * * sw/mod 2 tmd.sw.mod NULL NULL NULL Mo S S
|
||||||
pair_coeff * * ilp/tmd MoS2.ILP Mo S S Mo S S
|
pair_coeff * * ilp/tmd TMD.ILP Mo S S Mo S S
|
||||||
|
|
||||||
# Calculate the pair potential
|
# Calculate the pair potential
|
||||||
compute 0 all pair ilp/tmd
|
compute 0 all pair ilp/tmd
|
||||||
|
|||||||
25
potentials/TMD.ILP
Normal file
25
potentials/TMD.ILP
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
# DATE: 2021-12-02 UNITS: metal CONTRIBUTOR: Wengen Ouyang w.g.ouyang@gmail.com
|
||||||
|
# CITATION: W. Ouyang, et al., J. Chem. Theory Comput. 17, 7237 (2021).
|
||||||
|
# CITATION: W. Jiang, et al., J. Phys. Chem. A, 127, 46, 9820–9830 (2023).
|
||||||
|
# Interlayer Potential (ILP) for bilayer and bulk Group-VI Transition Metal Dichalcogenides.
|
||||||
|
# The parameters below are fitted against the HSE + MBD-NL DFT reference data.
|
||||||
|
#
|
||||||
|
# -------------------- Repulsion Potential -------------------++++++++++++++++ Vdw Potential ++++++++++++++++*********
|
||||||
|
# beta(A) alpha delta(A) epsilon(meV) C(meV) d sR reff(A) C6(meV*A^6) S rcut
|
||||||
|
Mo Mo 5.579450 9.377662 2.027222 144.151775 97.978570 89.437597 2.059031 5.122055 491850.316195 1.0 4.0
|
||||||
|
W W 5.530854 6.624992 1.983208 0.271792 140.174059 107.392585 1.356333 4.437591 691850.243962 1.0 4.0
|
||||||
|
S S 3.161402 8.093263 1.953140 4.586764 118.065466 58.809416 0.215367 4.299600 148811.243409 1.0 4.0
|
||||||
|
Se Se 3.938627 10.515924 2.415783 3.012583 22.400612 116.864517 0.151121 5.884241 112506.195626 1.0 4.0
|
||||||
|
Mo W 5.412298 8.647128 2.108665 51.177950 184.342860 201.281256 2.547743 2.492287 99996.913401 1.0 4.0
|
||||||
|
Mo S 3.627152 19.971375 7.585031 76.101931 3.317496 45.720328 0.947470 4.410425 150597.857716 1.0 4.0
|
||||||
|
Mo Se 6.196447 4.844134 14.362005 7.407221 0.058823 27.156223 0.976771 3.979186 786029.840651 1.0 4.0
|
||||||
|
W S 3.680136 11.163004 32.254117 110.019679 79.381335 138.340438 0.900750 8.875776 250600.809034 1.0 4.0
|
||||||
|
W Se 3.559392 20.638856 1.202717 20.478669 197.422484 10.005271 1.052738 3.815817 288321.561114 1.0 4.0
|
||||||
|
S Se 2.820092 7.491151 1.933323 141.532559 293.127817 90.470904 0.390492 4.170885 117688.987069 1.0 4.0
|
||||||
|
# Symmetric Atom Pair
|
||||||
|
W Mo 5.412298 8.647128 2.108665 51.177950 184.342860 201.281256 2.547743 2.492287 99996.913401 1.0 4.0
|
||||||
|
S Mo 3.627152 19.971375 7.585031 76.101931 3.317496 45.720328 0.947470 4.410425 150597.857716 1.0 4.0
|
||||||
|
Se Mo 6.196447 4.844134 14.362005 7.407221 0.058823 27.156223 0.976771 3.979186 786029.840651 1.0 4.0
|
||||||
|
S W 3.680136 11.163004 32.254117 110.019679 79.381335 138.340438 0.900750 8.875776 250600.809034 1.0 4.0
|
||||||
|
Se W 3.559392 20.638856 1.202717 20.478669 197.422484 10.005271 1.052738 3.815817 288321.561114 1.0 4.0
|
||||||
|
Se S 2.820092 7.491151 1.933323 141.532559 293.127817 90.470904 0.390492 4.170885 117688.987069 1.0 4.0
|
||||||
@ -210,7 +210,7 @@ void PairILPTMD::calc_FRep(int eflag, int /* vflag */)
|
|||||||
delki[1] = x[k][1] - x[i][1];
|
delki[1] = x[k][1] - x[i][1];
|
||||||
delki[2] = x[k][2] - x[i][2];
|
delki[2] = x[k][2] - x[i][2];
|
||||||
if (evflag)
|
if (evflag)
|
||||||
ev_tally_xyz(k, j, nlocal, newton_pair, 0.0, 0.0, fk[0], fk[1], fk[2], delki[0],
|
ev_tally_xyz(k, i, nlocal, newton_pair, 0.0, 0.0, fk[0], fk[1], fk[2], delki[0],
|
||||||
delki[1], delki[2]);
|
delki[1], delki[2]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -590,7 +590,7 @@ void PairKolmogorovCrespiFull::calc_FRep(int eflag, int /* vflag */)
|
|||||||
delki[1] = x[k][1] - x[i][1];
|
delki[1] = x[k][1] - x[i][1];
|
||||||
delki[2] = x[k][2] - x[i][2];
|
delki[2] = x[k][2] - x[i][2];
|
||||||
if (evflag)
|
if (evflag)
|
||||||
ev_tally_xyz(k, j, nlocal, newton_pair, 0.0, 0.0, fk[0], fk[1], fk[2], delki[0],
|
ev_tally_xyz(k, i, nlocal, newton_pair, 0.0, 0.0, fk[0], fk[1], fk[2], delki[0],
|
||||||
delki[1], delki[2]);
|
delki[1], delki[2]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user