IMP  2.0.0
The Integrative Modeling Platform
saxs/RadiusOfGyrationRestraint.h
Go to the documentation of this file.
1 /**
2  * \file IMP/saxs/RadiusOfGyrationRestraint.h
3  * \brief Calculate score based on fit to SAXS profile.
4  *
5  * Copyright 2007-2013 IMP Inventors. All rights reserved.
6  *
7  */
8 
9 #ifndef IMPSAXS_RADIUS_OF_GYRATION_RESTRAINT_H
10 #define IMPSAXS_RADIUS_OF_GYRATION_RESTRAINT_H
11 
12 #include <IMP/saxs/saxs_config.h>
13 
14 #include <IMP/saxs/Profile.h>
15 
16 #include <IMP/Model.h>
17 #include <IMP/Restraint.h>
18 #include <IMP/VersionInfo.h>
19 
20 IMPSAXS_BEGIN_NAMESPACE
21 
22 //! Calculate score based on radius of gyration, taken from saxs profile
23 /** \ingroup exp_restraint
24 
25  */
26 class IMPSAXSEXPORT RadiusOfGyrationRestraint : public IMP::Restraint
27 {
28  public:
29  //! Constructor
30  /**
31  \param[in] particles The particles participating in the fitting score
32  \param[in] exp_profile The experimental profile used in the fitting score
33  */
34  RadiusOfGyrationRestraint(const Particles& particles,
35  const Profile& exp_profile, const double end_q_rg=1.3);
36 
38 
39  private:
40  Particles particles_; // non-rigid bodies particles
41  double exp_rg_; //radius of gyration from experimental profile
42 };
43 
44 IMPSAXS_END_NAMESPACE
45 
46 #endif /* IMPSAXS_RADIUS_OF_GYRATION_RESTRAINT_H */