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(pressure/cylinder,ComputePressureCyl);
17 // clang-format on
18 #else
19 
20 #ifndef LMP_COMPUTE_PRESSURE_CYLINDER
21 #define LMP_COMPUTE_PRESSURE_CYLINDER
22 
23 #include "compute.h"
24 
25 namespace LAMMPS_NS {
26 
27 class ComputePressureCyl : public Compute {
28  public:
29   ComputePressureCyl(class LAMMPS *, int, char **);
30   ~ComputePressureCyl();
31   void init();
32   void init_list(int, class NeighList *);
33   void compute_array();
34   double memory_usage();
35 
36  private:
37   int nbins, nphi, nzbins;
38   double *Pr_temp, *Pr_all, *Pz_temp, *Pz_all, *Pphi_temp, *Pphi_all;
39   double *R, *Rinv, *R2, *PrAinv, *PzAinv, PphiAinv;
40   double Rmax, bin_width, nktv2p;
41   double *R2kin, *density_temp, *invVbin, *density_all;
42   double *tangent, *ephi_x, *ephi_y;
43   double *binz;
44 
45   double zlo, zhi;
46 
47   class NeighList *list;
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: No pair style is defined for compute pressure/cylinder
64 
65 Self-explanatory.
66 
67 E: Pair style does not support compute pressure/cylinder
68 
69 The pair style does not have a single() function, so it can
70 not be invoked by compute pressure/cylinder.
71 
72 */
73