ML_LCOUPLE
ML_LCOUPLE = [logical]
Default: ML_LCOUPLE = .FALSE.
Description: This tag specifies whether thermodynamic integration is activated in order to calculate the chemical potentials within the machine learning force field method.
In thermodynamic integration a coupling parameter [math]\displaystyle{ \lambda }[/math] is introduced to the Hamiltonian to smoothly switch between a "non-interacting" reference state and a "fully-interacting" state. The change of the free energy along this path is written as
[math]\displaystyle{ \Delta \mu = \int\limits_{0}^{1} \langle \frac{dH(\lambda)}{d\lambda} \rangle_{\lambda} d\lambda. }[/math]
Using machine learning force fields the Hamiltonian can be written as
[math]\displaystyle{ H (\lambda) = \sum\limits_{i=1}^{N_{a}} \frac{|\mathbf{p}_{i}|^2}{2m_{i}} + \sum\limits_{i \notin M} U_{i}(\lambda) + \lambda \sum\limits_{i \in M} U_{i}(\lambda) + \sum\limits_{i}^{N_{a}} U_{i,\mathbf{atom}}. }[/math]
where [math]\displaystyle{ N_{a} }[/math] denotes the number of atoms and [math]\displaystyle{ U_{i,\mathbf{atom}} }[/math] is an atomic reference energy for a single non interacting atom. The first term in the equation describes the potential energy and the second and third term describe the potential energy of an atom [math]\displaystyle{ i }[/math]. The index [math]\displaystyle{ M }[/math] denotes the atoms whose interaction is controlled by a coupling parameter. The interactions of the atoms are controlled by scaling the contributions to the atom density via the coupling parameter
[math]\displaystyle{ \rho (\mathbf{r},\lambda) = \sum\limits_{j\notin M} f_{\mathrm{cut}} \left( \left| \mathbf{r}_{j} - \mathbf{r}_{i} \right| \right) g \left[ \mathbf{r} - \left( \mathbf{r}_{j} - \mathbf{r}_{i} \right) \right] + \lambda \sum\limits_{j\in M} f_{\mathrm{cut}} \left( \left| \mathbf{r}_{j} - \mathbf{r}_{i} \right| \right) g \left[ \mathbf{r} - \left( \mathbf{r}_{j} - \mathbf{r}_{i} \right) \right]. }[/math]
Further details on the implementation can be found in reference [1].
For thermodynamic integration the following parameters have to be set:
ML_MODE = run
.ML_LCOUPLE = .TRUE.
.- The number of atoms for which a coupling parameter is introduced ([math]\displaystyle{ i \in M }[/math]): ML_NATOM_COUPLED.
- The list of atom indices that for that the coupling parameter is applied in the interaction: ML_ICOUPLE.
- The strength of the coupling parameter [math]\displaystyle{ \lambda }[/math] between 0 and 1: ML_RCOUPLE.
The derivative of the hamiltonian with respect to the coupling constant [math]\displaystyle{ dH/d\lambda }[/math] is written out at every MD step to the ML_LOGFILE. A sample output should look like this:
# DCOUPLE ################################ # DCOUPLE This line shows the derivative of the Hamiltonian with respect to coupling constant (dH/dlambda). # DCOUPLE # DCOUPLE nstep .......... MD time step or input structure counter # DCOUPLE der_H_lambda ... dH/dlambda # DCOUPLE ################################ # DCOUPLE nstep der_H_lambda # DCOUPLE 2 3 # DCOUPLE ################################ DCOUPLE 1 -1.08332135E+01 DCOUPLE 2 -1.08132321E+01 DCOUPLE 3 -1.07631992E+01 DCOUPLE 4 -1.06786675E+01 DCOUPLE 5 -1.05493088E+01 DCOUPLE 6 -1.03561161E+01 DCOUPLE 7 -1.00762443E+01 DCOUPLE 8 -9.69961878E+00 DCOUPLE 9 -9.25531640E+00 DCOUPLE 10 -8.82525354E+00 ...
References
Related tags and articles
ML_LMLFF, ML_NATOM_COUPLED, ML_ICOUPLE, ML_RCOUPLE