BALL  1.5.0
charmmImproperTorsion.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 
5 // Molecular Mechanics: Charmm force field, bond stretch component
6 
7 #ifndef BALL_MOLMEC_CHARMM_CHARMMIMPROPERTORSION_H
8 #define BALL_MOLMEC_CHARMM_CHARMMIMPROPERTORSION_H
9 
10 #ifndef BALL_COMMON_H
11 # include <BALL/common.h>
12 #endif
13 
14 #ifndef BALL_MOLMEC_PARAMETER_QUADRATICIMPROPERTORSION_H
16 #endif
17 
18 #ifndef BALL_MOLMEC_PARAMETER_RESIDUETORSIONS_H
20 #endif
21 
22 #ifndef BALL_MOLMEC_COMMON_FORCEFIELDCOMPONENT_H
24 #endif
25 
26 #ifndef BALL_MOLMEC_COMMON_FORCEFIELD_H
28 #endif
29 
30 namespace BALL
31 {
46  : public ForceFieldComponent
47  {
48  public:
49 
51  #define CHARMM_IMPROPER_TORSIONS_ENABLED "enable IT"
52 
56 
57  BALL_CREATE(CharmmImproperTorsion)
58 
59 
61  CharmmImproperTorsion();
62 
65  CharmmImproperTorsion(ForceField& force_field);
66 
69  CharmmImproperTorsion(const CharmmImproperTorsion& charmm_stretch);
70 
73  virtual ~CharmmImproperTorsion();
74 
76 
79 
83  virtual bool setup();
84 
86 
89 
92  virtual double updateEnergy();
93 
96  virtual void updateForces();
97 
99 
100  private:
101 
102  /*_ @name Private Attributes
103  */
104  //_@{
105 
106  /*_ array with the torsions
107  */
108  vector<QuadraticImproperTorsion::Data> impropers_;
109 
110  QuadraticImproperTorsion improper_parameters_;
111 
112  ResidueTorsions improper_atoms_;
113 
114  //_@}
115 
116  };
117 } // namespace BALL
118 
119 #endif // BALL_MOLMEC_CHARMM_CHARMMIMPROPERTORSION_H
residueTorsions.h
forceField.h
BALL
Definition: constants.h:12
BALL::ForceFieldComponent
Definition: forceFieldComponent.h:34
common.h
forceFieldComponent.h
BALL_CREATE
#define BALL_CREATE(name)
Definition: create.h:62
BALL::CharmmImproperTorsion
Definition: charmmImproperTorsion.h:45
BALL_EXPORT
#define BALL_EXPORT
Definition: COMMON/global.h:50
quadraticImproperTorsion.h