Loading...
Searching...
No Matches
BALL::StructureMapper Class Reference
Molecular Modeling » Molecular Structure » Mapping of molecular structures

`#include <BALL/STRUCTURE/structureMapper.h>`

Inheritance diagram for BALL::StructureMapper:

## Constructors and Destructors

AtomContainer * | A_
AtomContainer * | B_
AtomBijection | bijection_
double | rmsd_
| StructureMapper ()
| StructureMapper (AtomContainer &A, AtomContainer &B)
virtual | ~StructureMapper ()
void | set (AtomContainer &A, AtomContainer &B)
double | calculateRMSD ()
double | calculateRMSD (const AtomBijection &new_bijection)
bool | calculateTransformation ()
void | calculateDefaultBijection (bool limit_to_selection=false)
const AtomBijection & | getBijection () const
AtomBijection | calculateFragmentBijection (const vector< Fragment * > &A, const vector< Fragment * > &B)
bool | mapFragments (const vector< Fragment * > &A, const vector< Fragment * > &B, Matrix4x4 *transformation, double upper_bound=8.0, double lower_bound=2.5)
Size | mapResiduesByBackbone (const list< Residue * > &l1, const list< Residue * > &l2)
vector< vector< Fragment * > > & | searchPattern (vector< Fragment * > &pattern, AtomContainer &composite, double max_rmsd=4.0, double max_center_tolerance=2.0, double upper_bound=8.0, double lower_bound=4.0)
Matrix4x4 | mapProteins (Protein &P1, Protein &P2, std::map< String, Size > &type_map, Size &no_matched_ca, double &rmsd, double upper_bound=8.0, double lower_bound=4.0, double tolerance=0.6)
static Matrix4x4 | matchPoints (const Vector3 &w1, const Vector3 &w2, const Vector3 &w3, const Vector3 &v1, const Vector3 &v2, const Vector3 &v3)
static Matrix4x4 | matchBackboneAtoms (const Residue &r1, const Residue &r2)
Size | countFragments_ (const AtomContainer &ac) const

## Additional Inherited Members

Public Types inherited from BALL::UnaryFunctor< ArgumentType, ResultType >
typedef ResultType | result_type
typedef ArgumentType | argument_type
typedef ArgumentType & | argument_reference
typedef const ArgumentType & | const_argument_reference
typedef ArgumentType * | argument_pointer
typedef const ArgumentType * | const_argument_pointer
Public Member Functions inherited from BALL::TransformationProcessor
| TransformationProcessor ()
| TransformationProcessor (const Matrix4x4 &transformation)
void | setTransformation (const Matrix4x4 &transformation)
const Matrix4x4 & | getTransformation () const
virtual Processor::Result | operator() (Atom &atom)
| Applicator method.
Public Member Functions inherited from BALL::UnaryProcessor< Atom >
| UnaryProcessor ()
| UnaryProcessor (const UnaryProcessor &)
virtual | ~UnaryProcessor ()
virtual bool | start ()
virtual bool | finish ()
Protected Attributes inherited from BALL::TransformationProcessor
Matrix4x4 | transformation_

## Detailed Description

Structure mapping class.

Definition at line 49 of file structureMapper.h.

## Constructor & Destructor Documentation

## StructureMapper() [1/2]

BALL::StructureMapper::StructureMapper | ( |  | ) |

Default constructor

## StructureMapper() [2/2]

BALL::StructureMapper::StructureMapper | ( | AtomContainer & | A,
|  | AtomContainer & | B )

Constructor

## ~StructureMapper()

virtual BALL::StructureMapper::~StructureMapper | ( |  | ) |

virtual

Destructor

## Member Function Documentation

## calculateDefaultBijection()

void BALL::StructureMapper::calculateDefaultBijection | ( | bool | limit_to_selection = false | ) |

Calculate a reasonable bijection for the mapping of A and B

## calculateFragmentBijection()

AtomBijection BALL::StructureMapper::calculateFragmentBijection | ( | const vector< Fragment * > & | A,
|  | const vector< Fragment * > & | B )

Calculates a bijection to map two arrays of fragments onto each other.

## calculateRMSD() [1/2]

double BALL::StructureMapper::calculateRMSD | ( |  | ) |

Calculate the root mean squared deviation

## calculateRMSD() [2/2]

double BALL::StructureMapper::calculateRMSD | ( | const AtomBijection & | new_bijection | ) |

Calculate the root mean squared deviation given a AtomBijection

## calculateTransformation()

bool BALL::StructureMapper::calculateTransformation | ( |  | ) |

Calculate the transformation to map the first of two isomorphous AtomContainer objects onto the second

## countFragments_()

Size BALL::StructureMapper::countFragments_ | ( | const AtomContainer & | ac | ) | const

protected

## getBijection()

const AtomBijection & BALL::StructureMapper::getBijection | ( |  | ) | const

inline

Return the current bijection

Definition at line 95 of file structureMapper.h.

## mapFragments()

bool BALL::StructureMapper::mapFragments | ( | const vector< Fragment * > & | A,
|  | const vector< Fragment * > & | B,
|  | Matrix4x4 * | transformation,
|  | double | upper_bound = 8.0,
|  | double | lower_bound = 2.5 )

Maps two fragments onto each other

## mapProteins()

Matrix4x4 BALL::StructureMapper::mapProteins | ( | Protein & | P1,
|  | Protein & | P2,
|  | std::map< String, Size > & | type_map,
|  | Size & | no_matched_ca,
|  | double & | rmsd,
|  | double | upper_bound = 8.0,
|  | double | lower_bound = 4.0,
|  | double | tolerance = 0.6 )

Map two proteins onto each other.

## mapResiduesByBackbone()

Size BALL::StructureMapper::mapResiduesByBackbone | ( | const list< Residue * > & | l1,
|  | const list< Residue * > & | l2 )

## matchBackboneAtoms()

Matrix4x4 BALL::StructureMapper::matchBackboneAtoms | ( | const Residue & | r1,
|  | const Residue & | r2 )

static

## matchPoints()

Matrix4x4 BALL::StructureMapper::matchPoints | ( | const Vector3 & | w1,
|  | const Vector3 & | w2,
|  | const Vector3 & | w3,
|  | const Vector3 & | v1,
|  | const Vector3 & | v2,
|  | const Vector3 & | v3 )

static

Map three points onto each other. Computes a transformation that maps

- the point w1 onto the point v1,
- the point w2 onto the ray that starts in v1 and goes through v2,
- the point w3 into the plane generated by v1, v2, and v3.

## searchPattern()

vector< vector< Fragment * > > & BALL::StructureMapper::searchPattern | ( | vector< Fragment * > & | pattern,
|  | AtomContainer & | composite,
|  | double | max_rmsd = 4.0,
|  | double | max_center_tolerance = 2.0,
|  | double | upper_bound = 8.0,
|  | double | lower_bound = 4.0 )

## set()

void BALL::StructureMapper::set | ( | AtomContainer & | A,
|  | AtomContainer & | B )

Assign the two objects to be mapped

## Member Data Documentation

## A_

AtomContainer* BALL::StructureMapper::A_

protected

Definition at line 153 of file structureMapper.h.

## B_

AtomContainer* BALL::StructureMapper::B_

protected

Definition at line 157 of file structureMapper.h.

## bijection_

AtomBijection BALL::StructureMapper::bijection_

protected

Definition at line 162 of file structureMapper.h.

## rmsd_

double BALL::StructureMapper::rmsd_

protected

Definition at line 166 of file structureMapper.h.