BALL  1.5.0
quadraticAngleBend.h
Go to the documentation of this file.
1 // -*- Mode: C++; tab-width: 2; -*-
2 // vi: set ts=2:
3 //
4 
5 #ifndef BALL_MOLMEC_PARAMETER_QUADRATICANGLEBEND_H
6 #define BALL_MOLMEC_PARAMETER_QUADRATICANGLEBEND_H
7 
8 #ifndef BALL_FORMAT_PARAMETERSECTION_H
10 #endif
11 
12 #ifndef BALL_MOLMEC_PARAMETER_ATOMTYPES_H
14 #endif
15 
16 #ifndef BALL_KERNEL_ATOM_H
17 # include <BALL/KERNEL/atom.h>
18 #endif
19 
20 namespace BALL
21 {
29  : public ParameterSection
30  {
31  public:
32 
33  enum
34  {
36  };
37 
39  {
40  float theta0;
41  float k;
42  };
43 
45  {
50  };
51 
52 
56 
59  virtual ~QuadraticAngleBend() ;
60 
63  virtual void clear() ;
64 
70  virtual bool extractSection(ForceFieldParameters& parameters, const String& section_name);
71  virtual bool extractSection(Parameters& parameters, const String& section_name);
72 
75  bool hasParameters(Atom::Type I, Atom::Type J, Atom::Type K) const;
76 
79  QuadraticAngleBend::Values getParameters
80  (Atom::Type I, Atom::Type J, Atom::Type K) const;
81 
86  bool assignParameters
87  (QuadraticAngleBend::Values& parameters,
88  Atom::Type I, Atom::Type J, Atom::Type K) const;
89 
90  protected:
91 
93 
94  vector<Values> values_;
95 
96  vector<Index> value_index_;
97  };
98 } // namespace BALL
99 
100 #endif // BALL_MOLMEC_PARAMETER_QUADRATICBONDSTRETCH_H
BALL_EXPORT
#define BALL_EXPORT
Definition: COMMON/global.h:50
BALL::QuadraticAngleBend::Data::atom2
Atom * atom2
Definition: quadraticAngleBend.h:47
parameterSection.h
BALL::QuadraticAngleBend::number_of_atom_types_
Size number_of_atom_types_
Definition: quadraticAngleBend.h:92
BALL_SIZE_TYPE
BALL::QuadraticAngleBend::Values
Definition: quadraticAngleBend.h:38
BALL::QuadraticAngleBend::Data::values
Values values
Definition: quadraticAngleBend.h:49
BALL::Atom
Definition: atom.h:87
BALL
Definition: constants.h:12
BALL::ForceFieldParameters
Definition: forceFieldParameters.h:29
BALL::String
Definition: string.h:56
BALL::QuadraticAngleBend::value_index_
vector< Index > value_index_
Definition: quadraticAngleBend.h:96
BALL::ParameterSection
Definition: parameterSection.h:39
BALL::QuadraticAngleBend::Data
Definition: quadraticAngleBend.h:44
atom.h
BALL::QuadraticAngleBend::Values::k
float k
Definition: quadraticAngleBend.h:41
BALL::Parameters
Definition: parameters.h:24
UNKNOWN
UNKNOWN
Definition: result.h:27
BALL::QuadraticAngleBend::Data::atom3
Atom * atom3
Definition: quadraticAngleBend.h:48
BALL::QuadraticAngleBend::Data::atom1
Atom * atom1
Definition: quadraticAngleBend.h:46
BALL::QuadraticAngleBend::values_
vector< Values > values_
Definition: quadraticAngleBend.h:94
BALL::QuadraticAngleBend
Definition: quadraticAngleBend.h:28
BALL::QuadraticAngleBend::Values::theta0
float theta0
Definition: quadraticAngleBend.h:40
atomTypes.h
BALL::Atom::Type
short Type
Definition: atom.h:103