BALL  1.5.0
MMFF94OutOfPlaneBend.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 // $Id: MMFF94OutOfPlaneBend.h,v 1.1.8.1 2007/03/25 21:25:17 oliver Exp $
5 //
6 
7 #ifndef BALL_MOLMEC_MMFF94_MMFF94OUTOFPLANEBEND_H
8 #define BALL_MOLMEC_MMFF94_MMFF94OUTOFPLANEBEND_H
9 
10 #ifndef BALL_MOLMEC_COMMON_FORCEFIELDCOMPONENT_H
12 #endif
13 
14 #ifndef BALL_MOLMEC_COMMON_FORCEFIELD_H
16 #endif
17 
18 #ifndef BALL_MOLMEC_MMFF94_MMFF94PARAMETERS_H
20 #endif
21 
22 namespace BALL
23 {
28  : public ForceFieldComponent
29  {
30  public:
31 
33  {
34  Atom *i, *j, *k, *l;
35  double k_oop;
36  // debug
37  double energy;
38  };
39 
41  #define MMFF94_OUTOFPLANE_ENABLED "enable OutOfPlane"
42 
43  BALL_CREATE(MMFF94OutOfPlaneBend)
44 
45 
47 
50 
53 
56 
60  virtual bool setup();
61 
63  virtual double updateEnergy();
64 
66  virtual void updateForces();
67 
69  const vector<OutOfPlaneBend>& getOutOfPlaneBends() const { return bends_;}
70 
71  // Add a double precision TVector3 to a single precision Vector3
72  inline void AddDV3_(Vector3& f3, const TVector3<double> d3);
73 
74  private:
75  vector<OutOfPlaneBend> bends_;
76  MMFF94PlaneParameters parameters_;
77  };
78 
79 } // namespace BALL
80 
81 #endif // BALL_MOLMEC_MMFF94_MMFF94OUTOFPLANEBEND_H
BALL_EXPORT
#define BALL_EXPORT
Definition: COMMON/global.h:50
MMFF94Parameters.h
forceField.h
BALL::Atom
Definition: atom.h:90
BALL::MMFF94OutOfPlaneBend::OutOfPlaneBend::l
Atom * l
Definition: MMFF94OutOfPlaneBend.h:34
BALL::MMFF94OutOfPlaneBend::OutOfPlaneBend::k_oop
double k_oop
Definition: MMFF94OutOfPlaneBend.h:35
BALL::MMFF94OutOfPlaneBend::OutOfPlaneBend
Definition: MMFF94OutOfPlaneBend.h:33
BALL::MMFF94PlaneParameters
Definition: MMFF94Parameters.h:416
BALL
Definition: constants.h:13
BALL::MMFF94OutOfPlaneBend::OutOfPlaneBend::energy
double energy
Definition: MMFF94OutOfPlaneBend.h:37
BALL::TVector3< float >
BALL::ForceFieldComponent
Definition: forceFieldComponent.h:35
forceFieldComponent.h
BALL_CREATE
#define BALL_CREATE(name)
Definition: create.h:62
BALL::Constants::k
BALL_EXTERN_VARIABLE const double k
Definition: constants.h:93
BALL::ForceField
Definition: forceField.h:86
BALL::MMFF94OutOfPlaneBend
Definition: MMFF94OutOfPlaneBend.h:29
BALL::MMFF94OutOfPlaneBend::AddDV3_
void AddDV3_(Vector3 &f3, const TVector3< double > d3)