IMP  2.0.1
The Integrative Modeling Platform
AngleSingletonScore.h
Go to the documentation of this file.
1 /**
2  * \file IMP/atom/AngleSingletonScore.h
3  * \brief A score on the deviation of an angle from ideality.
4  *
5  * Copyright 2007-2013 IMP Inventors. All rights reserved.
6  */
7 
8 #ifndef IMPATOM_ANGLE_SINGLETON_SCORE_H
9 #define IMPATOM_ANGLE_SINGLETON_SCORE_H
10 
11 #include <IMP/atom/atom_config.h>
12 #include "bond_decorators.h"
13 #include <IMP/SingletonScore.h>
14 #include <IMP/singleton_macros.h>
15 #include <IMP/UnaryFunction.h>
16 #include <IMP/Pointer.h>
17 
18 IMPATOM_BEGIN_NAMESPACE
19 
20 //! Score the angle based on a UnaryFunction,
21 /** This scores the angle using information stored in its Angle decorator.
22  The score is based on the difference between the stored ideal
23  angle and the actual angle and scaled by the stiffness. That is
24  stiffness * (angle-ideal_value). The difference is in radians
25  between -pi and +pi; it is the shortest distance from one angle to the
26  other.
27 
28  \see CHARMMParameters::create_angles(), Angle.
29  */
30 class IMPATOMEXPORT AngleSingletonScore : public SingletonScore
31 {
32  IMP::OwnerPointer<UnaryFunction> f_;
33 public:
34  //! Use f to penalize deviations in angle
37 };
38 
40 
41 IMPATOM_END_NAMESPACE
42 
43 #endif /* IMPATOM_ANGLE_SINGLETON_SCORE_H */