IMP  2.0.0
The Integrative Modeling Platform
IMP::atom::CHARMMPatch Class Reference

A CHARMM patch residue. More...

#include <IMP/atom/charmm_topology.h>

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

Public Member Functions

 CHARMMPatch (std::string type)
 Construct a new, empty patch residue. More...
 
void add_removed_atom (std::string name)
 
void apply (CHARMMResidueTopology *res) const
 Apply the patch to the residue, modifying its topology accordingly. More...
 
void apply (CHARMMResidueTopology *res1, CHARMMResidueTopology *res2) const
 Apply the patch to the given pair of residues. More...
 
virtual void do_show (std::ostream &out) const
 
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
virtual void clear_caches ()
 
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. More...
 
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)
 

Related Functions

(Note that these are not member functions.)

typedef IMP::base::Vector
< IMP::base::WeakPointer
< CHARMMPatch > > 
CHARMMPatchesTemp
 

Additional Inherited Members

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

Detailed Description

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.

Definition at line 373 of file charmm_topology.h.

Constructor & Destructor Documentation

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

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

Definition at line 379 of file charmm_topology.h.

Member Function Documentation

void IMP::atom::CHARMMPatch::apply ( CHARMMResidueTopology res) const
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

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.

Friends And Related Function Documentation

Pass a set of objects.

Definition at line 413 of file charmm_topology.h.


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