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 COMPUTE_CLASS 15 // clang-format off 16 ComputeStyle(hexorder/atom,ComputeHexOrderAtom); 17 // clang-format on 18 #else 19 20 #ifndef LMP_COMPUTE_HEXORDER_ATOM_H 21 #define LMP_COMPUTE_HEXORDER_ATOM_H 22 23 #include "compute.h" 24 25 namespace LAMMPS_NS { 26 27 class ComputeHexOrderAtom : public Compute { 28 public: 29 ComputeHexOrderAtom(class LAMMPS *, int, char **); 30 ~ComputeHexOrderAtom(); 31 void init(); 32 void init_list(int, class NeighList *); 33 void compute_peratom(); 34 double memory_usage(); 35 36 private: 37 int nmax, maxneigh, ncol, nnn, ndegree; 38 double cutsq; 39 class NeighList *list; 40 double *distsq; 41 int *nearest; 42 43 double **qnarray; 44 45 void calc_qn_complex(double, double, double &, double &); 46 void calc_qn_trig(double, double, double &, double &); 47 void select2(int, int, double *, int *); 48 }; 49 50 } // namespace LAMMPS_NS 51 52 #endif 53 #endif 54 55 /* ERROR/WARNING messages: 56 57 E: Illegal ... command 58 59 Self-explanatory. Check the input script syntax and compare to the 60 documentation for the command. You can use -echo screen as a 61 command-line option when running LAMMPS to see the offending line. 62 63 E: Compute hexorder/atom requires a pair style be defined 64 65 Self-explanatory. 66 67 E: Compute hexorder/atom cutoff is longer than pairwise cutoff 68 69 Cannot compute order parameter beyond cutoff. 70 71 W: More than one compute hexorder/atom 72 73 It is not efficient to use compute hexorder/atom more than once. 74 75 */ 76