Dear LAMMPS users & developers,

We are interested in including long-range Coulomb to QEq shielded to enable the effect of an electric field generated by charged electrodes separated by several nanometers.

From our initial work, the separation between electrodes was limited by the QEq cutoff, short range in nature and traditionally set to be ~ 1 nm [The Journal of Chemical Physics 143, 054109 (2015); doi: 10.1063/1.4927562].

We therefore plan to modify QEq to include long-range effect on the charge calculation via Ewald such as the expressions proposed by Snurr [dx.doi.org/10.1021/jz3008485 | J. Phys. Chem. Lett. 2012, 3, 2506−2511]

I would like to know if this makes sense.

Thank you.

Nicolas

Hi Nicolas,

The Qeq formulation by Snurr et al (EQeq) is a different formulation but still consistent with the overall Qeq framework. You just have to code up the new formulation in a new style. IMHO, the trickiest part of the implementation is taking the derivative of Eq. 8.

To include dynamic charge transfer effects in an electrode system, you might have to follow the work of Liang, Sinnott et al: DOI: 10.1021/acs.jpca.7b06064.

Thanks,

Ray

Dear LAMMPS users & developers,

We are interested in including long-range Coulomb to QEq shielded to enable the effect of an electric field generated by charged electrodes separated by several nanometers.

From our initial work, the separation between electrodes was limited by the QEq cutoff, short range in nature and traditionally set to be ~ 1 nm [The Journal of Chemical Physics 143, 054109 (2015); doi: 10.1063/1.4927562].

We therefore plan to modify QEq to include long-range effect on the charge calculation via Ewald such as the expressions proposed by Snurr [dx.doi.org/10.1021/jz3008485 | J. Phys. Chem. Lett. 2012, 3, 2506−2511]

From my understanding, this modification, removing the Taper function and the addition of kspace Ewald in the input file should be consistent for the long-range treatment of electrostatics (assuming the QEq parameters were optimized with this new model).

I would like to know if this makes sense.

from how much (or rather how little) i know about the handling of

long-range electrostatics and QEQ in LAMMPS, i think there are two

major points to consider:

1) the way how you handle coulomb for force calculation and how QEQ is

implemented is essentially decoupled in LAMMPS. so *any* QEQ method is

compatible with *any* coulomb method. this means, that whatever is

needed to compute the equilibrated charges has to be completely

implemented inside the corresponding QEQ fix, which is run before

forces are computed. thus the way to implement this would be to derive

a new class from FixQEQ (to take advantage of shared functionality)

and implement the EQEQ scheme in there.

2) changing parameters like volume or charge or number of (charged)

atoms affects several parameters inside the kspace calculations, that

are by default assumed to be constant. at the minimum, this requires

to update the parameter q2, which is derived from Sum(q_i) and

Sum(q_i*q_i) via calling force->kspace->qsum_qsq() (as is done by the

existing QEQ fixes). however, this also requires that the g_ewald

parameter (or equivalent) is chosen to be beyond the (automatic,

minimal) convergence, but for all values of q2 that happen during a

simulation. in short, you either should set g_ewald manually, or have

to use a tighter convergence parameter and expect that the actual

accuracy will be less as the charges are changing. in the more

extreme case (or when more consistent accuracy is required), you may

need to occasionally re-initialize the kspace class instance. it is

probably a very good idea to do that a few times during equilibration

anyway (when the changes are expected to be the largest).

HTH,

axel.