IMP Reference Guide  2.5.0 The Integrative Modeling Platform
IMP::domino::DiscreteSampler Class Referenceabstract

A base class for discrete samplers in Domino2. More...

#include <IMP/domino/DiscreteSampler.h>

Inheritance diagram for IMP::domino::DiscreteSampler:

## Detailed Description

A base class for discrete samplers in Domino2.

All the samplers derived from it share some common properties:

• each particle is allowed to have one of a discrete set of conformations, as stored in a ParticleStatesTable
• there is, optionally, one scoring function, accessed through the SubsetEvaluatorTable
• there can be many SubsetFilterTable objects which are used to prune the discrete space.

Defaults are provided for all the parameters:

Note
the restraint scores must be non-negative in general. If you are using restraints which can produce negative values, we can provide a restraint which wraps another and makes it non-negative. Ping us.
The discrete samplers enumerate all acceptable conformations. As a result, users should take care to remove uninteresting degrees of freedom (for example, remove rigid transformations of a complex). Techniques to do this can involve pinning one or more particles (by locking them to a single conformation or to a few degrees of freedom).

Definition at line 50 of file DiscreteSampler.h.

## Public Member Functions

DiscreteSampler (Model *m, ParticleStatesTable *pst, std::string name)

unsigned int get_maximum_number_of_assignments () const

Assignments get_sample_assignments (const Subset &s) const

void set_maximum_number_of_assignments (unsigned int mx)

void set_particle_states (Particle *p, ParticleStates *se)

Set the Restraints to use in the RestraintScoreSubsetFilterTable. More...

Public Member Functions inherited from IMP::Sampler
Sampler (Model *m, std::string name="Sampler %1%")

ConfigurationSetcreate_sample () const

Modelget_model () const

ScoringFunctionget_scoring_function () const

Public Member Functions inherited from IMP::Object
virtual void clear_caches ()

CheckLevel get_check_level () const

LogLevel get_log_level () const

virtual VersionInfo get_version_info () const
Get information about the module and version of the object. More...

void set_check_level (CheckLevel l)

void set_log_level (LogLevel l)
Set the logging level used in this object. More...

void set_was_used (bool tf) const

void show (std::ostream &out=std::cout) const

const std::string & get_name () const

void set_name (std::string name)

virtual std::string get_type_name () const

## Protected Member Functions

virtual Assignments do_get_sample_assignments (const Subset &all) const =0

virtual ConfigurationSetdo_sample () const

AssignmentsTableget_assignments_table_to_use (const SubsetFilterTables &sfts, unsigned int max=std::numeric_limits< int >::max()) const

RestraintsTemp get_restraints () const

SubsetFilterTables get_subset_filter_tables_to_use (const RestraintsTemp &rs, ParticleStatesTable *pst) const

Protected Member Functions inherited from IMP::Object
Object (std::string name)
Construct an object with the given name. More...

virtual void do_destroy ()

Default values are provided, you only need to replace these if you want to do something special. See the overview of the module for a general description.

void set_particle_states_table (ParticleStatesTable *cse)

void set_assignments_table (AssignmentsTable *sst)

ParticleStatesTableget_particle_states_table () const

void remove_subset_filter_table (SubsetFilterTable *d)

void remove_subset_filter_tables (const SubsetFilterTables &d)

void set_subset_filter_tables (const SubsetFilterTables &ps)

void set_subset_filter_tables_order (const SubsetFilterTables &objs)

void clear_subset_filter_tables ()

unsigned int get_number_of_subset_filter_tables () const

bool get_has_subset_filter_tables ()

SubsetFilterTableget_subset_filter_table (unsigned int i) const

SubsetFilterTables get_subset_filter_tables () const

void reserve_subset_filter_tables (unsigned int sz)

## Member Function Documentation

 Assignments IMP::domino::DiscreteSampler::get_sample_assignments ( const Subset & s ) const

Return the Assignment objects describing the subsets fitting the description.

Note
At the moment, Subset must be equal to Subset(ParticleStatesTable::get_particles()).
 void IMP::domino::DiscreteSampler::set_maximum_number_of_assignments ( unsigned int mx )

Limit the number of states that is ever produced for any set of particles.

Doing this can be useful to get some feedback when too many states would otherwise be produced. A warning will be emitted whenever the limit eliminates states.

Definition at line 135 of file DiscreteSampler.h.

 void IMP::domino::DiscreteSampler::set_particle_states ( Particle * p, ParticleStates * se )

Particle states can be set either using this method, or equivalently, by accessing the table itself using get_particle_states_table(). This method is provided for users who want to use the default values and want a simple interface.

Definition at line 101 of file DiscreteSampler.h.

 void IMP::domino::DiscreteSampler::set_restraints ( RestraintsAdaptor rs )

Set the Restraints to use in the RestraintScoreSubsetFilterTable.

The default RestraintScoreSubsetFilterTable filters based on a set of Restraints, which can be set here. (If not, the deprecated default behavior is to use all Restraints in the Model.)

Definition at line 91 of file DiscreteSampler.h.

The documentation for this class was generated from the following file: