15 #define UnknownAtom 0x00
16 #define HydrogenAtom 0x01
17 #define OxygenAtom 0x02
18 #define HBDonorAtom 0x04
19 #define HBAcceptorAtom 0x08
20 #define HBAntecedentAtom 0x10
21 #define HBHydrogenAtom 0x20
22 #define LonepairAtom 0x40
23 #define DrudeAtom 0x80
186 inline unsigned int circShift(
unsigned int h,
unsigned int by) {
187 const unsigned int intBits=8*
sizeof(
unsigned int);
189 return (h<<by)|(h>>(intBits-by));
300 fprintf(ofp,
"%d ",
offset[i]);
306 unsigned int codesz = 8 *
sizeof(int);
309 if (shift == 0) shift=1;
473 #define CMPSIGS(TUPLE) \
474 for(int i=0; i<sig.TUPLE##Cnt; i++){ \
475 if(!(TUPLE##Sigs[i]==sig.TUPLE##Sigs[i])) return 0; \
520 #if defined(NAMD_CUDA) || defined(NAMD_HIP)
528 #if defined(NAMD_CUDA) || defined(NAMD_HIP)
548 #if defined(NAMD_CUDA) || defined(NAMD_HIP)
561 #if defined(NAMD_CUDA) || defined(NAMD_HIP)
584 #if defined(NAMD_CUDA) || defined(NAMD_HIP)
610 void setOffsets(std::vector<int>& fullVec, std::vector<int>& modVec){
624 #if defined(NAMD_CUDA) || defined(NAMD_HIP)
656 unsigned int code = 0x12345678;
657 unsigned int codesz = 8 *
sizeof(int);
658 unsigned int shift = codesz / numOffset;
660 if (shift == 0) shift=1;
TupleSignature(const TupleSignature &oneSig)
struct atom_name_info AtomNameInfo
TupleSignature * improperSigs
int32 numhosts
Either 2 or 3 host atoms, depending on LP type.
int operator<(const Exclusion &o) const
void unpack(MIStream *msg)
TupleSignature * dihedralSigs
struct crossterm Crossterm
ExclusionSignature(const ExclusionSignature &sig)
TupleSignature * crosstermSigs
void unpack(MIStream *msg)
TupleSignature * allTuples
ExclusionSignature & operator=(const ExclusionSignature &sig)
struct atom_constants Atom
TupleSignature(int n, TupleSigType t, Index paramType, char ir=1)
TupleSignature * gromacsPairSigs
int32 atom1
First index is to the LP.
void setOffsets(int *offs)
int operator==(const TupleSignature &sig) const
int findOffset(int offset, int *fullOrMod)
AtomSignature & operator=(const AtomSignature &sig)
unsigned int circShift(unsigned int h, unsigned int by)
void removeEmptyTupleSigs()
TupleSignature * bondSigs
AtomSignature(const AtomSignature &sig)
void setOffsets(std::vector< int > &fullVec, std::vector< int > &modVec)
struct gromacsPair GromacsPair
struct drude_constants DrudeConst
void unpack(MIStream *msg)
int operator==(const ExclusionSignature &sig) const
int operator==(const AtomSignature &sig) const
Exclusion(int a1, int a2, int mod=0)
TupleSignature * angleSigs
TupleSignature & operator=(const TupleSignature &oneSig)
int operator==(const Exclusion &o) const