BALL
1.4.2
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
BALL
STRUCTURE
RMSDMinimizer.h
Go to the documentation of this file.
1
// -*- Mode: C++; tab-width: 2; -*-
2
// vi: set ts=2:
3
//
4
5
#ifndef BALL_STRUCTURE_RMSDMINIMIZER_H
6
#define BALL_STRUCTURE_RMSDMINIMIZER_H
7
8
#ifndef BALL_STRUCTURE_ATOMBIJECTION_H
9
# include <
BALL/STRUCTURE/atomBijection.h
>
10
#endif
11
12
#ifndef BALL_MATHS_MATRIX44_H
13
# include <
BALL/MATHS/matrix44.h
>
14
#endif
15
16
namespace
BALL
17
{
18
34
class
BALL_EXPORT
RMSDMinimizer
35
{
36
public
:
37
class
BALL_EXPORT
IncompatibleCoordinateSets
38
:
public
Exception::GeneralException
39
{
40
public
:
41
IncompatibleCoordinateSets
(
const
char
*,
int
,
Size
,
Size
);
42
};
43
44
class
BALL_EXPORT
TooFewCoordinates
45
:
public
Exception::GeneralException
46
{
47
public
:
48
TooFewCoordinates
(
const
char
*,
int
,
Size
);
49
};
50
51
typedef
std::vector<Vector3>
PointVector
;
52
typedef
std::pair<Matrix4x4, double>
Result
;
53
54
static
Result
computeTransformation(
const
AtomBijection
& ab)
55
throw
(
RMSDMinimizer::IncompatibleCoordinateSets
,
RMSDMinimizer::TooFewCoordinates
);
56
57
static
Result
computeTransformation(
const
PointVector
& X,
const
PointVector
& Y)
58
throw
(
RMSDMinimizer::IncompatibleCoordinateSets
,
RMSDMinimizer::TooFewCoordinates
);
59
60
static
double
minimizeRMSD(
AtomContainer
& a,
AtomContainer
& b)
61
throw
(
RMSDMinimizer::IncompatibleCoordinateSets
,
RMSDMinimizer::TooFewCoordinates
);
62
63
};
64
65
}
// namespace BALL
66
67
#endif // BALL_STRUCTURE_RMSDMINIMIZER_H
Generated by
1.8.3.1