16#include "rxdock/Config.h"
91 eType operator()(
Atom *anAtom)
const;
92 std::string Type2Str(eType)
const;
93 eType Str2Type(
const std::string &)
const;
96 void SetupTypeNames();
97 std::vector<std::string> m_typeNames;
101typedef std::vector<HHSType::eType> HHSTypeList;
102typedef HHSTypeList::iterator HHSTypeListIter;
103typedef HHSTypeList::const_iterator HHSTypeListConstIter;
114 static const double r_s;
115 static const double d_s;
116 static const double Pij_12;
117 static const double Pij_13;
118 static const double Pij_14;
125 double GetA_i(
void)
const {
return A_i; }
126 double GetS_i(
void)
const {
return S_i; }
127 double GetP_i(
void)
const {
return p_i; }
128 double GetR_i(
void)
const {
return r_i; }
129 double GetSigma(
void)
const {
return sigma; }
130 HHSType::eType GetHHSType()
const {
return hhsType; }
131 Atom *GetAtom()
const {
return atom; }
132 inline double GetArea()
const {
return S_i * A_i; }
133 inline double GetEnergy()
const {
return E_i * A_i; }
141 inline void Save() { A_inv = A_i; };
145 inline void Restore() { A_i = A_inv; };
152 const std::vector<HHS_Solvation *> &GetVariable()
const {
return m_prt; }
153 int GetNumVariable()
const {
return m_prt.size(); }
158 void OverlapVariable();
160 void OverlapVariableEnabledOnly();
164 void Partition(
double d = 0.0);
174 double PI_r_i_plus_r_s;
177 HHSType::eType hhsType;
179 std::vector<HHS_Solvation *> m_var;
180 std::vector<HHS_Solvation *>
184typedef std::vector<HHS_Solvation *> HHS_SolvationRList;
185typedef HHS_SolvationRList::iterator HHS_SolvationRListIter;
186typedef HHS_SolvationRList::const_iterator HHS_SolvationRListConstIter;
188typedef std::vector<HHS_SolvationRList>
189 HHS_SolvationListMap;
190typedef HHS_SolvationListMap::iterator HHS_SolvationListMapIter;
191typedef HHS_SolvationListMap::const_iterator HHS_SolvationListMapConstIter;
194typedef std::vector<HHS_SolvationPtr>
196typedef HHS_SolvationList::iterator HHS_SolvationListIter;
197typedef HHS_SolvationList::const_iterator HHS_SolvationListConstIter;
225 void operator()(
HHS_Solvation *pHHS) { pHHS->OverlapVariable(); }
233 void operator()(
HHS_Solvation *pHHSj) { pHHSi->Overlap(pHHSj, p_ij); }
243 return pHHS->GetHHSType() == t;
254inline double AccumHHSEnergy(
double val,
const HHS_Solvation *pHHS) {
255 return val + pHHS->GetEnergy();
Definition SmartPointer.h:48