10 #ifndef IMPISD_ATOMIC_CROSS_LINK_MSRESTRAINT_H
11 #define IMPISD_ATOMIC_CROSS_LINK_MSRESTRAINT_H
12 #include <IMP/isd/isd_config.h>
18 IMPISD_BEGIN_NAMESPACE
36 bool part_of_log_score=
false,
37 std::string name =
"AtomicCrossLinkMSRestraint%1%");
64 virtual double unprotected_evaluate(
67 void show(std::ostream &out)
const { out <<
"Atomic XL restraint with "
68 <<get_number_of_contributions()
70 void set_slope(
Float slope) { slope_=slope; }
71 void set_part_of_log_score(
bool hey) { part_of_log_score_=hey; }
78 bool part_of_log_score_;
Store a list of ParticleIndexes.
#define IMP_OBJECT_METHODS(Name)
Define the basic things needed by any Object.
Restrain atom pairs based on a set of crosslinks.
Macros to define containers of objects.
ParticleIndexPair get_contribution(int i) const
Get the particles in a contribution.
Class for storing model, its restraints, constraints, and particles.
ParticleIndex get_psi() const
Get the psi nuisance in a contribution.
std::ostream & show(Hierarchy h, std::ostream &out=std::cout)
Print the hierarchy using a given decorator to display each node.
double Float
Basic floating-point value (could be float, double...)
Abstract base class for all restraints.
ParticleIndexPair get_contribution_sigmas(int i) const
Get the sigma nuisances in a contribution.
unsigned int get_number_of_contributions() const
Get number of contributions added to the restraint.
virtual ModelObjectsTemp do_get_inputs() const =0
#define IMP_OVERRIDE
Cause a compile error if this method does not override a parent method.
Class for adding derivatives from restraints to the model.
A restraint is a term in an IMP ScoringFunction.