BALL  1.4.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vanDerWaals.h
Go to the documentation of this file.
1 // $Id: vanDerWaals.h,v 1.3 2006/05/21 17:35:26 anker Exp $
2 // Molecular Mechanics: SLICK force field, modified van-der-Waals term
3 
4 #ifndef BALL_SCORING_COMPONENTS_VANDERWAALS_H
5 #define BALL_SCORING_COMPONENTS_VANDERWAALS_H
6 
12 
13 namespace BALL
14 {
19  : public ScoringComponent
20  {
21 
22  public:
23 
26  {
29 
32 
35 
36  };
37 
38 
40  struct Option
41  {
42 
44  static const String VERBOSITY;
45 
47  static const String VDW_METHOD;
48 
50  static const String VDW_CUT_ON;
51 
53  static const String VDW_CUT_OFF;
54 
57 
59  static const String LENNARD_JONES_FILE;
60 
61  };
62 
63 
64  struct Default
65  {
66 
68  static const Size VERBOSITY;
69 
71  static const Size VDW_METHOD;
72 
74  static const float VDW_CUT_ON;
75 
77  static const float VDW_CUT_OFF;
78 
80  static const float VDW_SOFTENING_LIMIT;
81 
83  static const String LENNARD_JONES_FILE;
84 
85  };
86 
87 
88 
90  VanDerWaals()
91  ;
92 
95  ;
96 
99  ;
100 
102  virtual ~VanDerWaals()
103  ;
104 
106  virtual void clear()
107  ;
108 
110  virtual bool setup()
111  ;
112 
114  virtual double calculateScore()
115  ;
116 
117 
118  protected:
119 
120  //_
121  std::vector<LennardJones::Data> non_bonded_;
122 
123  //_
124  std::vector<bool> is_hydrogen_bond_;
125 
128 
131 
132 
133  private:
134 
135  //_
137 
138  //_
140 
141  //_
143 
144  //_
146 
147  //_
148  float cut_on_vdw_;
149 
150  //_
152 
153  //_
155 
156  //_
158 
159  //_
160  double calculateVDWEnergy_(const AtomVector& atom_vector)
161  ;
162 
163  //_
164  Size createNonBondedList_(const ForceField::PairVector& atom_pair_vector)
165  ;
166 
167  //_ Verbosity of the code
169 
170  };
171 
172 }
173 
174 #endif // BALL_SCORING_COMPONENTS_VANDERWAALS_H