NAMD
PatchTypes.h
Go to the documentation of this file.
1 
7 #ifndef PATCHTYPES_H
8 #define PATCHTYPES_H
9 
10 #include "NamdTypes.h"
11 #include "Lattice.h"
12 
13 class Flags
14 {
15 public:
16  int step; // timestep number reported to user
17  // Same number may appear multiple times!
18  int sequence; // sequence number of compute call
19  // changes by 1 every time!
20  int doEnergy;
21  int doVirial;
24  int doMolly;
25  // BEGIN LA
27  // END LA
28  int doGBIS;// gbis
29  int doLCPO;//LCPO
31  int maxForceUsed; // may ignore slower force classes
32  int maxForceMerged; // add this and faster to normal
33 
34 #if defined(NAMD_NVTX_ENABLED) || defined(NAMD_CMK_TRACE_ENABLED) || defined(NAMD_ROCTX_ENABLED)
35  int event_on; // true or false to control NVTX profiling
36 #endif
37 
43 
44  Lattice lattice; // rather than shipping around separately
45 
46 #if defined(NAMD_NVTX_ENABLED) || defined(NAMD_CMK_TRACE_ENABLED) || defined(NAMD_ROCTX_ENABLED)
47  Flags() : event_on(0) { }
48 #endif
49 
50  inline Flags& operator= (const Flags &flags)
51  {
52  CmiMemcpy (this, &flags, sizeof(Flags));
53  return *this;
54  }
55 
56 };
57 
58 class Results
59 {
60 public:
61  enum { normal=0, nbond=1, slow=2, amdf=3,
62 #if defined(NAMD_CUDA) || defined(NAMD_HIP)
64 #else
65  nbond_virial=4, slow_virial=5, maxNumForces=6 };
66 #endif
67  Force *f[maxNumForces];
68 };
69 
70 #endif
71 
Definition: Vector.h:64
Flags & operator=(const Flags &flags)
Definition: PatchTypes.h:50
int savePairlists
Definition: PatchTypes.h:39
int usePairlists
Definition: PatchTypes.h:38
int doLoweAndersen
Definition: PatchTypes.h:26
int doEnergy
Definition: PatchTypes.h:20
int doFullElectrostatics
Definition: PatchTypes.h:23
int submitLoadStats
Definition: PatchTypes.h:30
int maxForceUsed
Definition: PatchTypes.h:31
int sequence
Definition: PatchTypes.h:18
int doNonbonded
Definition: PatchTypes.h:22
BigReal maxAtomMovement
Definition: PatchTypes.h:41
int doVirial
Definition: PatchTypes.h:21
int doLCPO
Definition: PatchTypes.h:29
Lattice lattice
Definition: PatchTypes.h:44
BigReal pairlistTolerance
Definition: PatchTypes.h:40
int doGBIS
Definition: PatchTypes.h:28
int maxForceMerged
Definition: PatchTypes.h:32
BigReal maxGroupRadius
Definition: PatchTypes.h:42
int doMolly
Definition: PatchTypes.h:24
double BigReal
Definition: common.h:114
int step
Definition: PatchTypes.h:16