KSpace style for hybrid/overlay table and dipole?

I’m trying to run lammps for a system subject to a custom short-range potential, that I have in a table, as well as the lammps lj/cut/dipole/long interaction (with LJ epsilon set to 0 because I do not want its contribution) with ewald summation. I need to provide a kspace_style for this in the input script, but I always get the error:

ERROR: KSpace style is incompatible with Pair style (src/kspace.cpp:201)

I tried ewald, ewald/dipole and ewald/disp, same error. I am using lammps-29Oct20.

I want to know if I need to add some tags or something to the hybrid/overlay command. I tried just the dipole interaction with the ewald/dipole kspace style, and it did not produce this error, so I figure it’s to do with either the table or the hybrid/overlay pair styles.

Here is my input script. Any input would be appreciated.

variable t index 50
units    lj
atom_style      hybrid dipole sphere

region          box1 block 0 5 0 5 0 5
create_box      2 box1
lattice         fcc 1.0
create_atoms    1 box

timestep         0.001000

set     group all charge 0.0
set     group all dipole 0.0 0.0 1.0

mass     1 1.0
pair_style       hybrid/overlay table spline 11000 ewald lj/long/dipole/long cut long 0 5

pair_coeff       * * lj/long/dipole/long 0.0 1.0

pair_coeff       * * table colloid.table colloid 2.5

kspace_style     ewald/dipole 1.0E-5

neighbor         0.3 bin
neigh_modify     delay 0 every 100 check no

dump     lmptest.xyz all xyz 50 lmptest.xyz
fix      1 all nvt temp 1.000000 1.000000 10
thermo   1
thermo_style     custom elapsed pe ke etotal press temp
run      $t

As far as I can tell, the problem is the lj/long/dipole/long pair style.
It doesn’t seem to turn off the requirement to have long-range support for LJ even though you have switched to a cutoff method. Have you tried using lj/cut/dipole/long instead?

1 Like

Just tried it, seems obvious now. Thank you, it worked just fine.