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 Contributing authors: Eugen Rozic (University College London) 15 ------------------------------------------------------------------------- */ 16 17 #ifdef PAIR_CLASS 18 // clang-format off 19 PairStyle(cosine/squared, PairCosineSquared); 20 // clang-format on 21 #else 22 23 #ifndef LMP_PAIR_LJ_COS_SQ_H 24 #define LMP_PAIR_LJ_COS_SQ_H 25 26 #include "pair.h" 27 28 namespace LAMMPS_NS { 29 30 class PairCosineSquared : public Pair { 31 public: 32 PairCosineSquared(class LAMMPS *); 33 virtual ~PairCosineSquared(); 34 void settings(int, char **); 35 void coeff(int, char **); 36 // void init_style(); 37 double init_one(int, int); 38 void modify_params(int, char **); 39 void write_restart(FILE *); 40 void read_restart(FILE *); 41 void write_restart_settings(FILE *); 42 void read_restart_settings(FILE *); 43 void write_data(FILE *); 44 void write_data_all(FILE *); 45 virtual void compute(int, int); 46 double single(int, int, int, int, double, double, double, double &); 47 // void *extract(const char *, int &); 48 49 /* RESPA stuff not implemented... 50 void compute_inner(); 51 void compute_middle(); 52 void compute_outer(int, int); 53 */ 54 55 protected: 56 double cut_global; 57 double **epsilon, **sigma, **w, **cut; 58 int **wcaflag; 59 double **lj12_e, **lj6_e, **lj12_f, **lj6_f; 60 61 virtual void allocate(); 62 }; 63 64 } // namespace LAMMPS_NS 65 66 #endif 67 #endif 68 69 /* ERROR/WARNING messages: 70 71 E: Illegal ... command 72 73 Self-explanatory. Check the input script syntax and compare to the 74 documentation for the command. You can use -echo screen as a 75 command-line option when running LAMMPS to see the offending line. 76 77 E: Incorrect args for pair coefficients 78 79 Self-explanatory. Check the input script or data file. 80 81 E: Mixing not supported in pair_style cosine/squared 82 83 Self-explanatory. All coefficients need to be specified explicitly. 84 85 E: pair_modify mix not supported for pair_style cosine/squared 86 87 Same as above, only when calling "pair_modify" command 88 89 W: pair_modify shift/tail is meaningless for pair_style cosine/squared 90 91 This style by definition gets to zero at cutoff distance, so there is nothing 92 to shift and there is no tail contribution 93 94 W: Cosine/squared set to WCA only (cutoff = sigma) 95 96 If cutoff is equal to sigma (minimum) then this pair style basically 97 degenerates/reverts to only WCA. This is for convenience. 98 99 */ 100