IMP logo
Public Member Functions | Static Public Member Functions
IMP::atom::CHARMMPatch Class Reference

Detailed Description

A CHARMM patch residue.

Patch residues are similar to regular residues, except that they are used to modify an existing residue. Any atoms they contain replace or add to those in the residue; they can also remove atoms. Atom names are as for regular residues, except for patches that affect two residues (e.g. DISU, LINK) in which each atom contains a 1 or 2 prefix (plus an optional colon) to identify the residue which will be patched; for example, both 1:CA and 1CA identify the CA atom in the first residue.

+ Inheritance diagram for IMP::atom::CHARMMPatch:

List of all members.

Public Member Functions

 CHARMMPatch (std::string type)
 Construct a new, empty patch residue.
void add_removed_atom (std::string name)
void apply (CHARMMResidueTopology *res) const
 Apply the patch to the residue, modifying its topology accordingly.
void apply (CHARMMResidueTopology *res1, CHARMMResidueTopology *res2) const
 Apply the patch to the given pair of residues.
unsigned int get_number_of_removed_atoms () const
std::string get_removed_atom (unsigned int i) const
- Public Member Functions inherited from IMP::atom::CHARMMResidueTopologyBase
void add_angle (const CHARMMAngle &bond)
void add_atom (const CHARMMAtomTopology &atom)
void add_bond (const CHARMMBond &bond)
void add_dihedral (const CHARMMDihedral &bond)
void add_improper (const CHARMMDihedral &bond)
void add_internal_coordinate (const CHARMMInternalCoordinate &ic)
const CHARMMAngleget_angle (unsigned int index) const
const CHARMMAtomTopologyget_atom (unsigned int i) const
const CHARMMAtomTopologyget_atom (AtomType type) const
const CHARMMAtomTopologyget_atom (std::string name) const
const CHARMMBondget_bond (unsigned int index) const
const CHARMMDihedralget_dihedral (unsigned int index) const
const CHARMMDihedralget_improper (unsigned int index) const
const CHARMMInternalCoordinateget_internal_coordinate (unsigned int index) const
unsigned int get_number_of_angles () const
unsigned int get_number_of_atoms () const
unsigned int get_number_of_bonds () const
unsigned int get_number_of_dihedrals () const
unsigned int get_number_of_impropers () const
unsigned int get_number_of_internal_coordinates () const
std::string get_type () const
- Public Member Functions inherited from IMP::base::Object
std::size_t __hash__ () const
virtual std::string get_type_name () const =0
 Return a string identifying the type of the object.
virtual IMP::base::VersionInfo get_version_info () const =0
 Get information about the module and version of the object.
void set_check_level (CheckLevel l)
void set_log_level (LogLevel l)
 Set the logging level used in this object.
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)

Static Public Member Functions

static CHARMMPatchget_from (IMP::base::Object *o)

Additional Inherited Members

- Protected Member Functions inherited from IMP::atom::CHARMMResidueTopologyBase
 CHARMMResidueTopologyBase (std::string type)
- Protected Member Functions inherited from IMP::base::Object
 Object (std::string name)
- Protected Attributes inherited from IMP::atom::CHARMMResidueTopologyBase
CHARMMAngles angles_
base::Vector< CHARMMAtomTopologyatoms_
CHARMMBonds bonds_
CHARMMDihedrals dihedrals_
CHARMMDihedrals impropers_
CHARMMInternalCoordinates internal_coordinates_

Constructor & Destructor Documentation

IMP::atom::CHARMMPatch::CHARMMPatch ( std::string  type)

Construct a new, empty patch residue.

To get an existing patch, use CHARMMParameters::get_patch() instead.


Member Function Documentation

void IMP::atom::CHARMMPatch::apply ( CHARMMResidueTopology res) const

Apply the patch to the residue, modifying its topology accordingly.

Note:
Most CHARMM patches are designed to be applied in isolation; it is usually an error to try to apply two different patches to the same residue. Thus, by default IMP prohibits this. To allow an already-patched residue to be re-patched, first call CHARMMResidueTopology::set_patched(false).
void IMP::atom::CHARMMPatch::apply ( CHARMMResidueTopology res1,
CHARMMResidueTopology res2 
) const

Apply the patch to the given pair of residues.

This can only be used for special two-residue patches, such as DISU or LINK. In a two-residue patch, each atom has a 1: or 2: prefix to identify the residue it refers to.

Exceptions:
ValueExceptionif the patch is not a two-residue patch.

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

Generated on Tue May 22 2012 23:33:26 for IMP by doxygen 1.8.1