Syntax:
kspace_style style value
none value = none ewald value = precision precision = desired accuracy pppm value = precision precision = desired accuracy pppm/tip4p value = precision precision = desired accuracy ewald/n value = precision precision = desired accuracy pppm/gpu/single value = precision precision = desired accuracy pppm/gpu/double value = precision precision = desired accuracy
Examples:
kspace_style pppm 1.0e-4 kspace_style none
Description:
Define a K-space solver for LAMMPS to use each timestep to compute long-range Coulombic interactions or long-range 1/r^N interactions. When such a solver is used in conjunction with an appropriate pair style, the cutoff for Coulombic or other 1/r^N interactions is effectively infinite; each charge in the system interacts with charges in an infinite array of periodic images of the simulation domain.
The ewald style performs a standard Ewald summation as described in any solid-state physics text.
The pppm style invokes a particle-particle particle-mesh solver (Hockney) which maps atom charge to a 3d mesh, uses 3d FFTs to solve Poisson's equation on the mesh, then interpolates electric fields on the mesh points back to the atoms. It is closely related to the particle-mesh Ewald technique (PME) (Darden) used in AMBER and CHARMM. The cost of traditional Ewald summation scales as N^(3/2) where N is the number of atoms in the system. The PPPM solver scales as Nlog(N) due to the FFTs, so it is almost always a faster choice (Pollock).
The pppm/tip4p style is identical to the pppm style except that it adds a charge at the massless 4th site in each TIP4P water molecule. It should be used with pair styles with a long/tip4p in their style name.
The ewald/n style augments ewald by adding long-range dispersion sum capabilities for 1/r^N potentials and is useful for simulation of interfaces (Veld). It also performs standard coulombic Ewald summations, but in a more efficient manner than the ewald style. The 1/r^N capability means that Lennard-Jones or Buckingham potentials can be used with ewald/n without a cutoff, i.e. they become full long-range potentials.
Currently, only the ewald/n style can be used with non-orthogonal (triclinic symmetry) simulation boxes.
When a kspace style is used, a pair style that includes the short-range correction to the pairwise Coulombic or other 1/r^N forces must also be selected. For Coulombic interactions, these styles are ones that have a coul/long in their style name. For 1/r^6 dispersion forces in a Lennard-Jones or Buckingham potential, see the pair_style lj/coul or pair_style buck/coul commands.
A precision value of 1.0e-4 means one part in 10000. This setting is used in conjunction with the pairwise cutoff to determine the number of K-space vectors for style ewald or the FFT grid size for style pppm.
See the kspace_modify command for additional options of the K-space solvers that can be set.
Styles with a cuda, gpu/single, gpu/double, or opt suffix are functionally the same as the corresponding style without the suffix. They have been optimized to run faster, depending on your available hardware, as discussed in this section of the manual. The accelerated styles take the same arguments and should produce the same results, except for round-off and precision issues.
More specifically, the pppm/gpu/single style performs single precision charge assignment and force interpolation calculations on the GPU. The pppm/gpu/double style performs the mesh calculations on the GPU in double precision. In both cases, FFT solves are calculated on the CPU. If either pppm/gpu/single or pppm/gpu/double are used with a GPU-enabled pair style, part of the PPPM calculation can be performed concurrently on the GPU while other calculations for non-bonded and bonded force calculation are performed on the CPU.
These accelerated styles are part of the "user-cuda", "gpu", and "opt" packages respectively. They are only enabled if LAMMPS was built with those packages. See the Making LAMMPS section for more info.
See this section of the manual for more instructions on how to use the accelerated styles effectively.
Restrictions:
A simulation must be 3d and periodic in all dimensions to use an Ewald or PPPM solver. The only exception is if the slab option is set with kspace_modify, in which case the xy dimensions must be periodic and the z dimension must be non-periodic.
Kspace styles are part of the "kspace" package. They are only enabled if LAMMPS was built with that package. See the Making LAMMPS section for more info.
The ewald/n style is part of the "user-ewaldn" package. It is only enabled if LAMMPS was built with that package. See the Making LAMMPS section for more info.
When using a long-range pairwise TIP4P potential, you must use kspace style pppm/tip4p and vice versa.
Related commands:
kspace_modify, pair_style lj/cut/coul/long, pair_style lj/charmm/coul/long, pair_style lj/coul, pair_style buck/coul/long
Default:
kspace_style none
(Darden) Darden, York, Pedersen, J Chem Phys, 98, 10089 (1993).
(Hockney) Hockney and Eastwood, Computer Simulation Using Particles, Adam Hilger, NY (1989).
(Pollock) Pollock and Glosli, Comp Phys Comm, 95, 93 (1996).
(Veld) In 't Veld, Ismail, Grest, J Chem Phys, in press (2007).