10 #ifndef IMPISD_MARGINAL_NOE_RESTRAINT_H
11 #define IMPISD_MARGINAL_NOE_RESTRAINT_H
14 #include <IMP/isd/isd_config.h>
18 IMPISD_BEGIN_NAMESPACE
34 std::vector<double> volumes_;
36 void set_log_gammahat(
double loggammahat) {loggammahat_=loggammahat;}
38 void set_SS(
double SS) {SS_=SS;}
46 Restraint(m,
"MarginalNOERestraint%1%") {};
57 double get_log_gammahat()
const {
return loggammahat_;}
60 double get_SS()
const {
return SS_;}
62 unsigned get_number_of_contributions()
const {
return volumes_.size();}
65 double get_probability()
const
67 return exp(-unprotected_evaluate(
nullptr));
Class for adding derivatives from restraints to the model.
IMP::base::Vector< IMP::base::WeakPointer< kernel::ModelObject > > ModelObjectsTemp
A shared container for Pairs.
Import IMP/kernel/restraint_macros.h in the namespace.
IMP::base::Vector< IMP::base::Pointer< PairContainer > > PairContainers
Import IMP/kernel/PairContainer.h in the namespace.
Abstract base class for all restraints.
A restraint is a term in an IMP ScoringFunction.
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Class to handle individual model particles.
MarginalNOERestraint(kernel::Model *m)
Create the restraint.
Apply an NOE distance restraint between two particles.
Class for storing model, its restraints, constraints, and particles.