IMP logo

IMP::domino Namespace Reference


Detailed Description

This module provides a framework for applying a divide-and-conquer sampling.

Author:
Keren Lasker
Version:
1.0
Overview:
DOMINO applies a divide-and-conquer approach to efficiently find solutions with the globally optimal score within a discrete sampling space. The idea is to decompose the set of variables into relatively uncoupled but potentially overlapping subsets that can be sampled independently of each other, and then to efficiently gather the subset solutions into the global minimum. The strength of this approach derives from the decomposition procedure that helps reduce the size of the search space from exponential in the number of components in the whole system to exponential in the number of components in the largest subset.
Examples
Examples can be found on the IMP.domino examples page.
License:
LGPL. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
Publications:
  • Daniel Russel, Keren Lasker, Ben Webb, Dina Schneidman, Javier Velazquez-Muriel, Andrej Sali, “Integrative assembly modeling using IMP”, submitted, 2010. This paper provides an overview of the key concepts in IMP and how to apply them to biological problems.
  • Frank Alber, Friedrich Foerster, Dmitry Korkin, Maya Topf, Andrej Sali, “Integrating diverse data for structure determination of macromolecular assemblies”, Annual Review of Biochemistry, 2008. This paper provides a review of the integrative structure determination methodology and various data sources that can be used.
  • Keren Lasker, Maya Topf, Andrej Sali, Haim J. Wolfson, “Inferential optimization for simultaneous fitting of multiple components into a cryoEM map of their assembly”, Journal of Molecular Biology, 2009.


Data Structures

class  CartesianProductSampler
 CartesianProductSampler. More...
class  CombState
 Holds a combination of states for each particle in the restraint graph. More...
class  DiscreteSampler
class  DominoOptimizer
 An exact inference optimizer. More...
class  JNode
 Handles all functionalities of a junction tree node. More...
class  JunctionTree
 Stores a junction tree. More...
class  MappedDiscreteSet
 MappedDiscreteSet. More...
class  PermutationSampler
 Permutation sampler. More...
class  RestraintEvaluator
 A direct restraint evaluator. More...
class  RestraintEvaluatorFromFile
 A read restraint values from precalculated files. More...
class  RestraintEvaluatorI
 Restraint Evaluator interface class. More...
class  RestraintGraph
 RestraintGraph. More...
class  SymmetrySampler
 SymmetrySampler. More...
class  Transformation
class  TransformationDiscreteSet
 Holds a set of transformations. More...
class  TransformationMappedDiscreteSet
 TransformationMappedDiscreteSet. More...
class  TransformationPermutationSampler
 Sample all permutations of transformations on particles. More...

Typedefs

typedef std::map< Particle
*, unsigned int > 
CombData
typedef std::map< std::string,
CombState * > 
Combinations
typedef std::map< std::string,
float > 
CombinationValues
typedef std::vector< CombState * > CombStates
typedef Decorators
< Transformation, Particles
Transformations

Functions

std::string get_data_path (std::string file_name)
 Return the path to installed data for this module.
std::string get_example_path (std::string file_name)
 Return the path to installed example data for this module.
std::string get_module_name ()
const VersionInfoget_module_version_info ()
ScoreStates get_used_score_states (const IMP::Particles &ps, Model *m)
 Get the scores states that work on the input set of particles.
StringKey node_name_key ()
 The key for the string Domino uses as a unique index.
void read_combinations (const std::string &filename, Combinations *combs, const Particles &ps)
 Read a file containing values of a restraint.
void read_junction_tree (const std::string &filename, JunctionTree *jt)
void write_combinations (const std::string &filename, const Combinations *combs, Particles &ps)

Function Documentation

std::string IMP::domino::get_data_path ( std::string  file_name  ) 

Return the path to installed data for this module.

Each module has its own data directory, so be sure to use the version of this function in the correct module. To read the data file "data_library" that was placed in the data directory of module "mymodule", do something like

    std::ifstream in(IMP::mymodule::get_data_path("data_library"));
This will ensure that the code works when IMP is installed or used via the tools/imppy.sh script.

std::string IMP::domino::get_example_path ( std::string  file_name  ) 

Return the path to installed example data for this module.

Each module has its own example directory, so be sure to use the version of this function in the correct module. For example to read the file example_protein.pdb located in the examples directory of the IMP::atom module, do

    IMP::atom::read_pdb(IMP::atom::get_example_path("example_protein.pdb", model));
This will ensure that the code works when IMP is installed or used via the tools/imppy.sh script.

ScoreStates IMP::domino::get_used_score_states ( const IMP::Particles ps,
Model *  m 
)

Get the scores states that work on the input set of particles.

get score states that: Work only on the input particles or a subset of them. Do not return scores states that work on particles that are not in the input set. For example, if ps=[A,B,C], then score states that will be returned are: [A,B],[A,C],[B,C],[A],[B],[C],[A,B,C] but a score state that work on : [A,D] will not be returned.

void IMP::domino::read_combinations ( const std::string &  filename,
Combinations *  combs,
const Particles &  ps 
)

Read a file containing values of a restraint.

/param[in] filename the name of the restraint file /param[out] combs to contain all of the combinations /param[out] ps the particles the restraint work on. Notice that the particles should be sorted by their name. /note The format of the combinations file is: A|B| (the header line, contains the names of the particles) 0|0|0.3 (data line: For A in state 0, B in state 0, the restraint score is 0.3) 0|1|1.6 1|0|2.9 1|1|3.1


Generated on Mon Mar 8 23:09:00 2010 for IMP by doxygen 1.5.8