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 DIHEDRAL_CLASS 15 // clang-format off 16 DihedralStyle(hybrid,DihedralHybrid); 17 // clang-format on 18 #else 19 20 #ifndef LMP_DIHEDRAL_HYBRID_H 21 #define LMP_DIHEDRAL_HYBRID_H 22 23 #include "dihedral.h" 24 25 namespace LAMMPS_NS { 26 27 class DihedralHybrid : public Dihedral { 28 public: 29 int nstyles; // # of different dihedral styles 30 Dihedral **styles; // class list for each Dihedral style 31 char **keywords; // keyword for each dihedral style 32 33 DihedralHybrid(class LAMMPS *); 34 ~DihedralHybrid(); 35 void compute(int, int); 36 void settings(int, char **); 37 void coeff(int, char **); 38 void init_style(); 39 void write_restart(FILE *); 40 void read_restart(FILE *); 41 double memory_usage(); 42 43 private: 44 int *map; // which style each dihedral type points to 45 46 int *ndihedrallist; // # of dihedrals in sub-style dihedrallists 47 int *maxdihedral; // max # of dihedrals sub-style lists can store 48 int ***dihedrallist; // dihedrallist for each sub-style 49 50 void allocate(); 51 }; 52 53 } // namespace LAMMPS_NS 54 55 #endif 56 #endif 57 58 /* ERROR/WARNING messages: 59 60 E: Illegal ... command 61 62 Self-explanatory. Check the input script syntax and compare to the 63 documentation for the command. You can use -echo screen as a 64 command-line option when running LAMMPS to see the offending line. 65 66 E: Dihedral style hybrid cannot use same dihedral style twice 67 68 Self-explanatory. 69 70 E: Dihedral style hybrid cannot have hybrid as an argument 71 72 Self-explanatory. 73 74 E: Dihedral style hybrid cannot have none as an argument 75 76 Self-explanatory. 77 78 E: Dihedral coeff for hybrid has invalid style 79 80 Dihedral style hybrid uses another dihedral style as one of its 81 coefficients. The dihedral style used in the dihedral_coeff command 82 or read from a restart file is not recognized. 83 84 */ 85