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