IMP Reference Guide
2.10.1
The Integrative Modeling Platform
|
Example module. More...
Example module.
This module contains simple classes that span many parts of IMP functionality, so it can be used to see how to write a new class, export it to Python, document it, and provide tests and examples.
The overview section of the module page can contain any MarkDown or doxygen markup as well as references to IMP classes such as IMP::Model.
This is an example application (command line tool).
Author(s): Daniel Russel
Maintainer: benmwebb
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:
Classes | |
class | ExampleComplexRestraint |
Restrain the diameter of a set of points. More... | |
class | ExampleConstraint |
A trivial constraint that just increments a counter. More... | |
class | ExampleDecorator |
A simple decorator which adds a name to a particle. More... | |
class | ExampleObject |
An example simple object which is reference counted. More... | |
class | ExamplePairScore |
Apply a harmonic to the distance between two particles. More... | |
class | ExampleRestraint |
Restrain a particle to be in the x,y plane. More... | |
class | ExampleSingletonModifier |
An example singleton modifier. More... | |
class | ExampleSubsetFilterTable |
class | ExampleTemplateClassD |
A line segment templated on the dimension. More... | |
class | ExampleUnaryFunction |
A simple unary function. More... | |
class | PythonExampleConstraint |
An example Constraint written in Python. More... | |
class | PythonExamplePairScore |
An example PairScore written in Python. More... | |
class | PythonExampleRestraint |
An example restraint written in Python. More... | |
class | PythonExampleSingletonModifier |
An example SingletonModifier written in Python. More... | |
class | PythonExampleUnaryFunction |
An example UnaryFunction written in Python. More... | |
Typedefs | |
typedef IMP::Vector < ExampleDecorator > | ExampleDecorators |
typedef Vector< Pointer < ExampleObject > > | ExampleObjects |
typedef Vector< WeakPointer < ExampleObject > > | ExampleObjectsTemp |
typedef IMP::Vector < IMP::Pointer < ExamplePairScore > > | ExamplePairScores |
typedef IMP::Vector < IMP::WeakPointer < ExamplePairScore > > | ExamplePairScoresTemp |
typedef ExampleTemplateClassD< 3 > | ExampleTemplateClass3D |
typedef Vector < ExampleTemplateClassD< 3 > > | ExampleTemplateClass3Ds |
Functions | |
Restraint * | create_chain_restraint (Model *m, const ParticleIndexes &ps, double length_factor, double k, std::string name) |
Restraint * | create_excluded_volume (Model *m, const ParticleIndexes &ps, double k, std::string name) |
core::MonteCarloMover * | create_serial_mover (Model *m, const ParticleIndexes &pis) |
unsigned int | get_number_of_incidences (const ParticlesTemp &psa, const ParticlesTemp &psb, double point_distance) |
void | optimize_assembly (Model *m, const ParticleIndexes &components, const RestraintsTemp &interactions, const RestraintsTemp &other_restraints, const algebra::BoundingBox3D &bb, PairScore *ev, double cutoff, const PairPredicates &excluded=PairPredicates()) |
void | optimize_balls (Model *m, const ParticleIndexes &pis, const RestraintsTemp &rs=RestraintsTemp(), const PairPredicates &excluded=PairPredicates(), const OptimizerStates &opt_states=OptimizerStates(), LogLevel ll=DEFAULT) |
template<class ParticlesList , class BoundingVolume > | |
void | randomize_particles (const ParticlesList &ps, const BoundingVolume &bv) |
template<class RigidBody , class BoundingVolume > | |
void | randomize_rigid_body (RigidBody rbi, const BoundingVolume &bv) |
Standard module functions | |
All | |
std::string | get_module_version () |
std::string | get_module_name () |
std::string | get_data_path (std::string file_name) |
Return the full path to one of this module's data files. More... | |
std::string | get_example_path (std::string file_name) |
Return the full path to one of this module's example files. More... | |
A vector of reference-counting object pointers.
Definition at line 40 of file ExamplePairScore.h.
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 40 of file ExamplePairScore.h.
Restraint* IMP::example::create_chain_restraint | ( | Model * | m, |
const ParticleIndexes & | ps, | ||
double | length_factor, | ||
double | k, | ||
std::string | name | ||
) |
Restrain the passed particles to be connected in a chain. The distance between consecutive particles is length_factor*the sum of the radii.
Note, this assumes that all such chains will be disjoint and so you can use the container::ExclusiveConsecutivePairFilter if you want to filter out all pairs of particles connected by such chain restraints.
The restraint is not added to the model.
Definition at line 31 of file creating_restraints.h.
Restraint* IMP::example::create_excluded_volume | ( | Model * | m, |
const ParticleIndexes & | ps, | ||
double | k, | ||
std::string | name | ||
) |
Create an excluded-volume style ClosePairsContainer based score.
Definition at line 50 of file creating_restraints.h.
core::MonteCarloMover* IMP::example::create_serial_mover | ( | Model * | m, |
const ParticleIndexes & | pis | ||
) |
Create a serial mover from a list of core::XYZR particles.
std::string IMP::example::get_data_path | ( | std::string | file_name | ) |
Return the full path to one of this module's data files.
To read the data file "data_library" that was placed in the data
directory of this module, do something like
This will ensure that the code works both when IMP is installed or if used via the setup_environment.sh
script.
std::string IMP::example::get_example_path | ( | std::string | file_name | ) |
Return the full path to one of this module's example files.
To read the example file "example_protein.pdb" that was placed in the examples
directory of this module, do something like
This will ensure that the code works both when IMP is installed or if used via the setup_environment.sh
script.
unsigned int IMP::example::get_number_of_incidences | ( | const ParticlesTemp & | psa, |
const ParticlesTemp & | psb, | ||
double | point_distance | ||
) |
Return the number of times particles from one set are close to those from another set.
Definition at line 23 of file counting.h.
void IMP::example::optimize_assembly | ( | Model * | m, |
const ParticleIndexes & | components, | ||
const RestraintsTemp & | interactions, | ||
const RestraintsTemp & | other_restraints, | ||
const algebra::BoundingBox3D & | bb, | ||
PairScore * | ev, | ||
double | cutoff, | ||
const PairPredicates & | excluded = PairPredicates() |
||
) |
Provide an example of a more involved protocol for assembly a complex. The protocol adds the particles one at a time based on how well connected they are to the already added particles (in the interaction graph). After each addition, the assembly is optimized. The protocol seems to work at assembling the residues of a protein from a truncated distance matrix.
void IMP::example::optimize_balls | ( | Model * | m, |
const ParticleIndexes & | pis, | ||
const RestraintsTemp & | rs = RestraintsTemp() , |
||
const PairPredicates & | excluded = PairPredicates() , |
||
const OptimizerStates & | opt_states = OptimizerStates() , |
||
LogLevel | ll = DEFAULT |
||
) |
Take a set of core::XYZR particles and relax them relative to a set of restraints. Excluded volume is handle separately, so don't include it in the passed list of restraints.
void IMP::example::randomize_particles | ( | const ParticlesList & | ps, |
const BoundingVolume & | bv | ||
) |
Randomize the positions of a set of particles within a bounding volume. Rigid bodies have their orientation randomized too.
Definition at line 32 of file randomizing.h.