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 PAIR_CLASS
15 // clang-format off
16 PairStyle(gauss/gpu,PairGaussGPU);
17 // clang-format on
18 #else
19 
20 #ifndef LMP_PAIR_GAUSS_GPU_H
21 #define LMP_PAIR_GAUSS_GPU_H
22 
23 #include "pair_gauss.h"
24 
25 namespace LAMMPS_NS {
26 
27 class PairGaussGPU : public PairGauss {
28  public:
29   PairGaussGPU(LAMMPS *lmp);
30   ~PairGaussGPU();
31   void cpu_compute(int, int, int, int, int *, int *, int **);
32   void compute(int, int);
33   void init_style();
34   void reinit();
35   double memory_usage();
36 
37   enum { GPU_FORCE, GPU_NEIGH, GPU_HYB_NEIGH };
38 
39  private:
40   int gpu_mode;
41   double cpu_time;
42 };
43 
44 }    // namespace LAMMPS_NS
45 #endif
46 #endif
47 
48 /* ERROR/WARNING messages:
49 
50 E: Insufficient memory on accelerator
51 
52 There is insufficient memory on one of the devices specified for the gpu
53 package
54 
55 E: Cannot use newton pair with gauss/gpu pair style
56 
57 Self-explanatory.
58 
59 */
60