IMP Reference Guide
2.11.1
The Integrative Modeling Platform
|
Functionality for dealing with kinematic mechanical structures. More...
Functionality for dealing with kinematic mechanical structures.
Tools for handling the associated internal coordinates system are also provided.
Please note that this module is still at an experimental testing phase and should be used with caution.
This module provides a variety of functionality for defining and controlling kinematic structures (chains, trees and forests) over sets of rigid body particles. The IMP::kinematics::KinematicForest data structure provides the high-level interface to define the kinematic structure over a set of particles and to control their associated internal coordinates system. The basic building block of a kinematic structures is a kinematic joint (also known in the literature as a 'kinematic pair'), represented in the abstract class IMP::kinematics::Joint. A kinematic joint connects a pair of rigid bodies. See Wikipedia for some background theory about kinematic joints. The kinematics module supports different types of joints (prismatic / revolute / etc.) that differ in the constraints on the degrees of freedom of the joint. For instance, a prismatic joint or a slider (IMP::kinematics::PrismaticJoint) allows the two rigid bodies to slide along a shared axis among them (one degree of freedom), whereas a revolute joint (IMP::kinematics::RevoluteJoints) allows only rotation about the shared axis (one degree of freedom). The library also contains composite joints (IMP::kinematics::CompositeJoint) which allows composing several joints over the same pair of rigid bodies.
The name "Joint" is used to refer to a kinematic pair between two rigid bodies.
Sample protein conformations using rapidly exploring random tree (RRT).
Sample protein loop conformations using rapidly exploring random tree (RRT).
RMSD based clustering of conformations
For an example of using the rrt_sample
command line tool, see the manual.
Author(s): Dina Schneidman, Barak Raveh, Yannick Spill
Maintainer: duhovka
, barakr
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.
Classes | |
class | BondAngleRevoluteJoint |
Joint that is parameterized as a bond angle between three particles. More... | |
class | CCDLoopClosure |
CCD loop closure. More... | |
class | CompositeJoint |
Joint that combines several inner joints, acting on the same rigid body pair. More... | |
class | DihedralAngleRevoluteJoint |
Joint that is parameterized as a dihedral angle between two planes. More... | |
class | DirectionalDOF |
class | DOF |
Representation of one degree of freedom (DOF). More... | |
class | DOFsSampler |
Base class for sampling certain combinations of degrees of freedom. More... | |
class | DOFValues |
A class that holds DOF values for DOFs. More... | |
class | Joint |
Base class for joints between rigid bodies in a kinematic tree. More... | |
class | KinematicForest |
Define and manipulate a kinematic structure over a model. More... | |
class | KinematicForestScoreState |
class | KinematicNode |
A rigid body that is connected by a joint to other rigid bodies. More... | |
class | LocalPlanner |
class | PathLocalPlanner |
Local planner that samples conformations on a path between two nodes. More... | |
class | PrismaticJoint |
Joint in which two rigid bodies may slide along a line. More... | |
class | ProteinKinematics |
class | RevoluteJoint |
Abstract class for all revolute joints. More... | |
class | RevoluteJointMover |
Modify a set of joints using a normal distribution. More... | |
class | RRT |
Simple implementation of the Rapidly-exploring Random Trees algorithm. More... | |
class | TransformationJoint |
class | UniformBackboneSampler |
Sample uniformly over a set of backbone dihedral joints. More... | |
Functions | |
void | add_missing_bonds (IMP::ParticlesTemp &atoms, IMP::ParticlesTemp &bonds) |
IMP::atom::Bond | create_bond (IMP::atom::Atoms &as) |
IMP::atom::Atom | find_atom (const IMP::ParticlesTemp &atoms, int input_index) |
IMP::atom::Residue | find_residue (const IMP::ParticlesTemp &residues, int res_index, std::string chain) |
IMP::atom::Atom | get_ca_atom (const IMP::ParticlesTemp &atoms, int residue_index, std::string chain_id) |
void | read_angle_file (const std::string &file_name, const IMP::ParticlesTemp &residues, const IMP::ParticlesTemp &atoms, IMP::atom::Residues &flexible_residues, std::vector< IMP::atom::Atoms > &dihedral_angles) |
void | read_connect_chains_file (const std::string &file_name, const IMP::ParticlesTemp &atoms, std::vector< IMP::atom::Atoms > &connect_atoms) |
unsigned int | rmsd_clustering (const std::vector< IMP::algebra::Vector3Ds > &coords_vec, std::vector< int > &out_cluster_numbers, float rmsd_thr, bool compute_trans) |
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... | |
typedef IMP::Vector<IMP::Pointer< BondAngleRevoluteJoint > > IMP::kinematics::BondAngleRevolteJoints |
A vector of reference-counting object pointers.
Definition at line 306 of file revolute_joints.h.
typedef IMP::Vector<IMP::WeakPointer< BondAngleRevoluteJoint > > IMP::kinematics::BondAngleRevolteJointsTemp |
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 307 of file revolute_joints.h.
A vector of reference-counting object pointers.
Definition at line 117 of file CompositeJoint.h.
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 117 of file CompositeJoint.h.
typedef IMP::Vector<IMP::Pointer< DihedralAngleRevoluteJoint > > IMP::kinematics::DihedralAngleRevoluteJoints |
A vector of reference-counting object pointers.
Definition at line 305 of file revolute_joints.h.
typedef IMP::Vector<IMP::WeakPointer< DihedralAngleRevoluteJoint > > IMP::kinematics::DihedralAngleRevoluteJointsTemp |
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 306 of file revolute_joints.h.
A vector of reference-counting object pointers.
Definition at line 95 of file directional_DOFs.h.
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 95 of file directional_DOFs.h.
typedef IMP::Vector<IMP::Pointer< DOF > > IMP::kinematics::DOFs |
typedef IMP::Vector<IMP::Pointer< DOFsSampler > > IMP::kinematics::DOFsSamplers |
A vector of reference-counting object pointers.
Definition at line 79 of file DOFsSampler.h.
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 79 of file DOFsSampler.h.
typedef IMP::Vector<IMP::WeakPointer< DOF > > IMP::kinematics::DOFsTemp |
typedef IMP::Vector< DOFValues > IMP::kinematics::DOFValuesList |
Pass or store a set of DOFValues .
Definition at line 85 of file DOFValues.h.
typedef IMP::Vector<IMP::Pointer< Joint > > IMP::kinematics::Joints |
typedef IMP::Vector<IMP::WeakPointer< Joint > > IMP::kinematics::JointsTemp |
A vector of reference-counting object pointers.
Definition at line 290 of file KinematicForest.h.
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 290 of file KinematicForest.h.
A vector of reference-counting object pointers.
Definition at line 80 of file local_planners.h.
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 80 of file local_planners.h.
A vector of reference-counting object pointers.
Definition at line 80 of file local_planners.h.
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 81 of file local_planners.h.
A vector of reference-counting object pointers.
Definition at line 80 of file PrismaticJoint.h.
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 80 of file PrismaticJoint.h.
A vector of reference-counting object pointers.
Definition at line 224 of file ProteinKinematics.h.
typedef IMP::Vector<IMP::WeakPointer< ProteinKinematics > > IMP::kinematics::ProteinKinematicsListTemp |
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 224 of file ProteinKinematics.h.
A vector of reference-counting object pointers.
Definition at line 305 of file revolute_joints.h.
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 305 of file revolute_joints.h.
A vector of reference-counting object pointers.
Definition at line 44 of file TransformationJoint.h.
typedef IMP::Vector<IMP::WeakPointer< TransformationJoint > > IMP::kinematics::TransformationJointsTemp |
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 44 of file TransformationJoint.h.
typedef IMP::Vector<IMP::Pointer< UniformBackboneSampler > > IMP::kinematics::UniformBackboneSamplers |
A vector of reference-counting object pointers.
Definition at line 46 of file UniformBackboneSampler.h.
typedef IMP::Vector<IMP::WeakPointer< UniformBackboneSampler > > IMP::kinematics::UniformBackboneSamplersTemp |
A vector of weak (non reference-counting) pointers to specified objects.
Definition at line 46 of file UniformBackboneSampler.h.
std::string IMP::kinematics::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::kinematics::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.