IMP Reference Guide
develop.714915d50b,2024/12/07
The Integrative Modeling Platform
|
Python classes to represent, score, sample and analyze models. More...
Python classes to represent, score, sample and analyze models.
This module contains a variety of high-level Python classes to simplify the construction of a modeling protocol in IMP. One recent use of PMI is the modeling of the Nup84 subcomplex of the nuclear pore complex. Several other applications can be seen at the IMP systems page.
This module is still under heavy development, and should be considered experimental.
See also the PMI changelog.
The objective of PMI is to make it as easy as possible to use the powerful representation, scoring, and sampling tools within IMP (and to add some cool analysis functionality) for common modeling problems. Most PMI classes wrap multiple IMP classes and functions that are commonly combined. While this greatly improves usability, it can reduce flexibility. Let us know if you want to do something not currently supported.
The typical flow of a PMI modeling script is as follows:
Here are some examples to get you started
One can create multiple simultaneous representations in PMI. Here is a brief overview:
See a longer discussion of resolutions here.
Check out some examples or systems that use PMI.
Author(s): Riccardo Pellarin, Charles Greenberg, Daniel Saltzberg, Peter Cimermancic, Ben Webb, Daniel Russel, Elina Tjioe, Seung Joong Kim, Max Bonomi, Yannick Spill
Maintainers: Riccardo Pellarin, Charles Greenberg, Daniel Saltzberg
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:
Namespaces | |
alphabets | |
Mapping between FASTA one-letter codes and residue types. | |
analysis | |
Tools for clustering and cluster analysis. | |
dof | |
Create movers and set up constraints for PMI objects. | |
io | |
Utility classes and functions for reading and storing PMI files. | |
macros | |
Protocols for sampling structures and analyzing them. | |
mmcif | |
Support for the mmCIF file format. | |
output | |
Classes for writing output files and processing them. | |
restraints | |
Classes to handle different kinds of restraints. | |
samplers | |
Sampling of the system. | |
tools | |
Miscellaneous utilities. | |
topology | |
Set of Python classes to create a multi-state, multi-resolution IMP hierarchy. | |
Classes | |
class | CompositeRestraint |
A restraint for ambiguous cross-linking MS data and multiple state approach. More... | |
class | CrossLinkRestraintSet |
A RestraintSet subclass to track cross-link metadata. More... | |
class | MembraneRestraint |
Membrane Restraint. More... | |
class | MissingFileWarning |
Warning for an expected, but missing, file. More... | |
class | ParameterWarning |
Warning for probably incorrect input parameters. More... | |
class | Resolution |
Add resolution to a particle. More... | |
class | StructureWarning |
Warning related to handling of structures. More... | |
class | Symmetric |
Add symmetric attribute to a particle. More... | |
class | TransformMover |
Modify the transformation of a rigid body. More... | |
class | Uncertainty |
Add uncertainty to a particle. More... | |
Functions | |
RestraintSet * | create_elastic_network (const Particles &ps, Float dist_cutoff, Float strength) |
Create an elastic network restraint set. More... | |
Float | get_bipartite_minimum_sphere_distance (const IMP::core::XYZRs &m1, const IMP::core::XYZRs &m2) |
Float | get_dihedral_angle (const atom::Atom &p1, const atom::Atom &p2, const atom::Atom &p3, const atom::Atom &p4) |
Floats | get_list_of_bipartite_minimum_sphere_distance (const ParticlesTemps &pss) |
std::string | get_molecule_name_and_copy (atom::Hierarchy h) |
Walk up a PMI2 hierarchy/representations and get the "molname.copynum". More... | |
Standard module functions | |
All | |
std::string | get_module_version () |
Return the version of this module, as a string. More... | |
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... | |
RestraintSet* IMP::pmi::create_elastic_network | ( | const Particles & | ps, |
Float | dist_cutoff, | ||
Float | strength | ||
) |
Create an elastic network restraint set.
Definition at line 26 of file pmi/utilities.h.
std::string IMP::pmi::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::pmi::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.
std::string IMP::pmi::get_module_version | ( | ) |
Return the version of this module, as a string.
Definition at line 5 of file EMageFit/__init__.py.
std::string IMP::pmi::get_molecule_name_and_copy | ( | atom::Hierarchy | h | ) |
Walk up a PMI2 hierarchy/representations and get the "molname.copynum".
Definition at line 85 of file pmi/utilities.h.