1 /* -*- c++ -*- ---------------------------------------------------------- 2 LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator 3 https://www.lammps.org/ Sandia National Laboratories 4 Steve Plimpton, sjplimp@sandia.gov 5 6 Copyright (2003) Sandia Corporation. Under the terms of Contract 7 DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains 8 certain rights in this software. This software is distributed under 9 the GNU General Public License. 10 11 See the README file in the top-level LAMMPS directory. 12 ------------------------------------------------------------------------- */ 13 14 #ifdef KSPACE_CLASS 15 // clang-format off 16 KSpaceStyle(pppm/dielectric,PPPMDielectric); 17 // clang-format on 18 #else 19 20 #ifndef LMP_PPPM_DIELECTRIC_H 21 #define LMP_PPPM_DIELECTRIC_H 22 23 #include "pppm.h" 24 25 namespace LAMMPS_NS { 26 27 class PPPMDielectric : public PPPM { 28 public: 29 PPPMDielectric(class LAMMPS *); 30 virtual ~PPPMDielectric(); 31 virtual void compute(int, int); 32 33 double **efield; 34 double *phi; 35 int potflag; // 1/0 if per-atom electrostatic potential phi is needed 36 37 void qsum_qsq(); 38 39 protected: 40 void slabcorr(); 41 42 void fieldforce_ik(); 43 void fieldforce_ad(); 44 45 class AtomVecDielectric *avec; 46 }; 47 48 } // namespace LAMMPS_NS 49 50 #endif 51 #endif 52 53 /* ERROR/WARNING messages: 54 55 E: Illegal ... command 56 57 Self-explanatory. Check the input script syntax and compare to the 58 documentation for the command. You can use -echo screen as a 59 command-line option when running LAMMPS to see the offending line. 60 61 */ 62