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 REGION_CLASS 15 // clang-format off 16 RegionStyle(cone,RegCone); 17 // clang-format on 18 #else 19 20 #ifndef LMP_REGION_CONE_H 21 #define LMP_REGION_CONE_H 22 23 #include "region.h" 24 25 namespace LAMMPS_NS { 26 27 class RegCone : public Region { 28 public: 29 RegCone(class LAMMPS *, int, char **); 30 ~RegCone(); 31 int inside(double, double, double); 32 int surface_interior(double *, double); 33 int surface_exterior(double *, double); 34 35 private: 36 char axis; 37 double c1, c2; 38 double radiuslo, radiushi; 39 double lo, hi; 40 double maxradius; 41 42 double closest(double *, double *, double *, double); 43 }; 44 45 } // namespace LAMMPS_NS 46 47 #endif 48 #endif 49 50 /* ERROR/WARNING messages: 51 52 E: Invalid region cone open setting 53 54 UNDOCUMENTED 55 56 E: Illegal ... command 57 58 Self-explanatory. Check the input script syntax and compare to the 59 documentation for the command. You can use -echo screen as a 60 command-line option when running LAMMPS to see the offending line. 61 62 E: Cannot use region INF or EDGE when box does not exist 63 64 Regions that extend to the box boundaries can only be used after the 65 create_box command has been used. 66 67 */ 68