BALL 1.5.0
Loading...
Searching...
No Matches
charmm.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 class
6
7#ifndef BALL_MOLMEC_CHARMM_CHARMM_H
8#define BALL_MOLMEC_CHARMM_CHARMM_H
9
10#ifndef BALL_COMMON_H
11# include <BALL/common.h>
12#endif
13
14#ifndef BALL_MOLMEC_COMMON_FORCEFIELD_H
16#endif
17
18#ifndef BALL_KERNEL_SYSTEM_H
19# include <BALL/KERNEL/system.h>
20#endif
21
22
23namespace BALL
24{
30 : public ForceField
31 {
32 public:
33
37
41 {
46 static const char* FILENAME;
47
50 static const char* NONBONDED_CUTOFF;
51
54 static const char* VDW_CUTOFF;
55
58 static const char* VDW_CUTON;
59
62 static const char* ELECTROSTATIC_CUTOFF;
63
66 static const char* ELECTROSTATIC_CUTON;
67
70 static const char* SOLVATION_CUTOFF;
71
74 static const char* SOLVATION_CUTON;
75
78 static const char* SCALING_VDW_1_4;
79
82 static const char* USE_EEF1;
83
86 static const char* SCALING_ELECTROSTATIC_1_4;
87
90 static const char* DISTANCE_DEPENDENT_DIELECTRIC;
91
94 static const char* ASSIGN_CHARGES;
95
98 static const char* ASSIGN_TYPENAMES;
99
102 static const char* ASSIGN_TYPES;
103
106 static const char* OVERWRITE_CHARGES;
107
110 static const char* OVERWRITE_TYPENAMES;
111 };
112
116 {
119 static const char* FILENAME;
120
123 static const float NONBONDED_CUTOFF;
124
127 static const float VDW_CUTOFF;
128
131 static const float VDW_CUTON;
132
135 static const float ELECTROSTATIC_CUTOFF;
136
139 static const float ELECTROSTATIC_CUTON;
140
143 static const float SOLVATION_CUTOFF;
144
147 static const float SOLVATION_CUTON;
148
151 static const float SCALING_ELECTROSTATIC_1_4;
152
155 static const bool USE_EEF1;
156
159 static const float SCALING_VDW_1_4;
160
164
167 static const bool ASSIGN_CHARGES;
168
171 static const bool ASSIGN_TYPENAMES;
172
175 static const bool ASSIGN_TYPES;
176
179 static const bool OVERWRITE_CHARGES;
180
183 static const bool OVERWRITE_TYPENAMES;
184 };
185
187
190
192
193
196
199 CharmmFF(System& system);
200
203 CharmmFF(System& system, const Options& options);
204
207 CharmmFF(const CharmmFF& force_field);
208
211 virtual ~CharmmFF();
212
214
217
220 const CharmmFF& operator = (const CharmmFF& force_field)
221 ;
222
225 virtual void clear()
226 ;
227
229
232
236 virtual bool specificSetup();
237
239
242
245 double getStretchEnergy() const;
246
249 double getBendEnergy() const;
250
254 double getTorsionEnergy() const;
255
258 double getImproperTorsionEnergy() const;
259
262 double getProperTorsionEnergy() const;
263
267 double getNonbondedEnergy() const;
268
271 double getESEnergy() const;
272
275 double getVdWEnergy() const;
276
279 double getSolvationEnergy() const;
280
283 bool hasInitializedParameters() const;
284
286 virtual String getResults() const
287 ;
288
290
291 protected:
292
293 String filename_;
294
295 bool parameters_initialized_;
296
297 };
298} // namespace BALL
299
300#endif // BALL_MOLMEC_CHARMM_CHARMM_H
#define BALL_CREATE(name)
Definition create.h:62
static const char * ELECTROSTATIC_CUTOFF
Definition charmm.h:62
static const char * SOLVATION_CUTON
Definition charmm.h:74
static const char * OVERWRITE_TYPENAMES
Definition charmm.h:110
static const char * OVERWRITE_CHARGES
Definition charmm.h:106
static const char * SCALING_ELECTROSTATIC_1_4
Definition charmm.h:86
static const char * ASSIGN_CHARGES
Definition charmm.h:94
static const char * ASSIGN_TYPES
Definition charmm.h:102
static const char * SCALING_VDW_1_4
Definition charmm.h:78
static const char * USE_EEF1
Definition charmm.h:82
static const char * ELECTROSTATIC_CUTON
Definition charmm.h:66
static const char * FILENAME
Definition charmm.h:46
static const char * DISTANCE_DEPENDENT_DIELECTRIC
Definition charmm.h:90
static const char * SOLVATION_CUTOFF
Definition charmm.h:70
static const char * NONBONDED_CUTOFF
Definition charmm.h:50
static const char * VDW_CUTON
Definition charmm.h:58
static const char * VDW_CUTOFF
Definition charmm.h:54
static const char * ASSIGN_TYPENAMES
Definition charmm.h:98
static const bool ASSIGN_TYPES
Definition charmm.h:175
static const float SOLVATION_CUTON
Definition charmm.h:147
static const float VDW_CUTOFF
Definition charmm.h:127
static const char * FILENAME
Definition charmm.h:119
static const float VDW_CUTON
Definition charmm.h:131
static const float NONBONDED_CUTOFF
Definition charmm.h:123
static const bool DISTANCE_DEPENDENT_DIELECTRIC
Definition charmm.h:163
static const bool ASSIGN_TYPENAMES
Definition charmm.h:171
static const float ELECTROSTATIC_CUTOFF
Definition charmm.h:135
static const float SCALING_VDW_1_4
Definition charmm.h:159
static const bool OVERWRITE_TYPENAMES
Definition charmm.h:183
static const float ELECTROSTATIC_CUTON
Definition charmm.h:139
static const float SOLVATION_CUTOFF
Definition charmm.h:143
static const bool ASSIGN_CHARGES
Definition charmm.h:167
static const float SCALING_ELECTROSTATIC_1_4
Definition charmm.h:151
static const bool USE_EEF1
Definition charmm.h:155
static const bool OVERWRITE_CHARGES
Definition charmm.h:179
#define BALL_EXPORT