diff --git a/doc/src/Commands_compute.rst b/doc/src/Commands_compute.rst index 6ad5ed4435..6309fe83e2 100644 --- a/doc/src/Commands_compute.rst +++ b/doc/src/Commands_compute.rst @@ -63,6 +63,7 @@ KOKKOS, o = OPENMP, t = OPT. * :doc:`event/displace ` * :doc:`fabric ` * :doc:`fep ` + * :doc:`fep/ta ` * :doc:`force/tally ` * :doc:`fragment/atom ` * :doc:`global/atom ` diff --git a/doc/src/compute.rst b/doc/src/compute.rst index 2768543179..a149a752b0 100644 --- a/doc/src/compute.rst +++ b/doc/src/compute.rst @@ -208,7 +208,8 @@ The individual style names on the :doc:`Commands compute ` pag * :doc:`erotate/sphere/atom ` - rotational energy for each spherical particle * :doc:`event/displace ` - detect event on atom displacement * :doc:`fabric ` - calculates fabric tensors from pair interactions -* :doc:`fep ` - +* :doc:`fep ` - compute free energies for alchemical transformation from perturbation theory +* :doc:`fep/ta ` - compute free energies for a test area perturbation * :doc:`force/tally ` - force between two groups of atoms via the tally callback mechanism * :doc:`fragment/atom ` - fragment ID for each atom * :doc:`global/atom ` - diff --git a/doc/src/compute_fep_ta.rst b/doc/src/compute_fep_ta.rst index 55f8fcfe09..ad6b1ede82 100644 --- a/doc/src/compute_fep_ta.rst +++ b/doc/src/compute_fep_ta.rst @@ -33,6 +33,7 @@ Examples Description """"""""""" + Define a computation that calculates the change in the free energy due to a test-area (TA) perturbation :ref:`(Gloor) `. The test-area approach can be used to determine the interfacial tension of the system @@ -43,9 +44,9 @@ in a single simulation: \gamma = \lim_{\Delta \mathcal{A} \to 0} \left( \frac{\Delta A_{0 \to 1 }}{\Delta \mathcal{A}}\right)_{N,V,T} = - \frac{kT}{\Delta \mathcal{A}} \ln \left< \exp(-(U_1 - U_0)/kT) \right>_0 -During the perturbation, both axes of *plane* are scaled by multiplying :math:`\sqrt{scale\_factor}`, -while the other axis divided by *scale_factor* such that the overall -volume of the system is maintained. +During the perturbation, both axes of *plane* are scaled by multiplying +:math:`\sqrt{scale\_factor}`, while the other axis divided by +*scale_factor* such that the overall volume of the system is maintained. The *tail* keyword controls the calculation of the tail correction to "van der Waals" pair energies beyond the cutoff, if this has been @@ -59,22 +60,25 @@ Output info """"""""""" This compute calculates a global vector of length 3 which contains the -energy difference ( :math:`U_1-U_0` ) as c_ID[1], the -Boltzmann factor :math:`\exp(-(U_1-U_0)/kT)`, as c_ID[2] and the -change in the *plane* area :math:`\Delta \mathcal{A}` as c_ID[3]. :math:`U_1` is the -potential energy of the perturbed state and -:math:`U_0` is the potential energy of the reference state. -The energies include kspace terms if these are used in the simulation. +energy difference ( :math:`U_1-U_0` ) as c_ID[1], the Boltzmann factor +:math:`\exp(-(U_1-U_0)/kT)`, as c_ID[2] and the change in the *plane* +area :math:`\Delta \mathcal{A}` as c_ID[3]. :math:`U_1` is the potential +energy of the perturbed state and :math:`U_0` is the potential energy of +the reference state. The energies include kspace terms if these are +used in the simulation. These output results can be used by any command that uses a global -scalar or vector from a compute as input. See the :doc:`Howto output ` page for an overview of LAMMPS output -options. For example, the computed values can be averaged using :doc:`fix ave/time `. +scalar or vector from a compute as input. See the :doc:`Howto output +` page for an overview of LAMMPS output options. For +example, the computed values can be averaged using :doc:`fix ave/time +`. Restrictions """""""""""" -This compute is distributed as the FEP package. It is only -enabled if LAMMPS was built with that package. See the :doc:`Build package ` page for more info. +This compute is distributed as the FEP package. It is only enabled if +LAMMPS was built with that package. See the :doc:`Build package +` page for more info. Related commands """""""""""""""" diff --git a/doc/utils/sphinx-config/false_positives.txt b/doc/utils/sphinx-config/false_positives.txt index 6799e62d24..3947e8a071 100644 --- a/doc/utils/sphinx-config/false_positives.txt +++ b/doc/utils/sphinx-config/false_positives.txt @@ -1177,6 +1177,7 @@ Gladky gld gle globbing +Gloor Glosli Glotzer gmail @@ -1425,6 +1426,7 @@ interal interatomic Interatomic interconvert +interfacial interial interlayer intermolecular diff --git a/src/.gitignore b/src/.gitignore index 8803d8a7e3..3305ec9e73 100644 --- a/src/.gitignore +++ b/src/.gitignore @@ -460,6 +460,8 @@ /compute_fabric.h /compute_fep.cpp /compute_fep.h +/compute_fep_ta.cpp +/compute_fep_ta.h /compute_force_tally.cpp /compute_force_tally.h /compute_gyration_shape.cpp diff --git a/src/FEP/Install.sh b/src/FEP/Install.sh index c6e7a53aa1..1d7a1c7a48 100755 --- a/src/FEP/Install.sh +++ b/src/FEP/Install.sh @@ -30,6 +30,8 @@ action () { action compute_fep.cpp action compute_fep.h +action compute_fep_ta.cpp +action compute_fep_ta.h action fix_adapt_fep.cpp action fix_adapt_fep.h action pair_coul_cut_soft.cpp