BALL  1.4.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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
10 #endif
11 
12 #ifndef BALL_MATHS_MATRIX44_H
13 # include <BALL/MATHS/matrix44.h>
14 #endif
15 
16 namespace BALL
17 {
18 
35  {
36  public:
39  {
40  public:
41  IncompatibleCoordinateSets(const char*, int, Size, Size);
42  };
43 
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)
56 
57  static Result computeTransformation(const PointVector& X, const PointVector& Y)
59 
60  static double minimizeRMSD(AtomContainer& a, AtomContainer& b)
62 
63  };
64 
65 } // namespace BALL
66 
67 #endif // BALL_STRUCTURE_RMSDMINIMIZER_H