A class that is intended to include or combine various optimal alignment algorithms.
More...
#include <OptimalAlignment.h>
|
| Kearsley * | mykearsley |
| | a pointer to the object that performs the optimal alignment via quaternions More...
|
| |
| std::vector< double > | displace |
| | displacement vector : a double that says if the coordinate should be used in calculating the RMSD/MSD More...
|
| |
| std::vector< double > | align |
| | alignment vector: a double that says if the atom has to be used in reset COM and makeing the alignment More...
|
| |
| std::vector< Vector > | p0 |
| | position of one frame (generally the MD) More...
|
| |
| std::vector< Vector > | p1 |
| | position of the reference frames More...
|
| |
| std::vector< Vector > | derrdp0 |
| | derivatives of the error respect to the p0 (MD running frame) More...
|
| |
| std::vector< Vector > | derrdp1 |
| | derivatives of the error respect to the p1 (static frame, do not remove: useful for SM) More...
|
| |
| Log * | log |
| | the pointer to the logfile More...
|
| |
| bool | fast |
| | a bool that decides to make the fast version (alignment vec= displacement vec) or the slower case More...
|
| |
A class that is intended to include or combine various optimal alignment algorithms.
| PLMD::OptimalAlignment::OptimalAlignment |
( |
const std::vector< double > & |
align, |
|
|
const std::vector< double > & |
displace, |
|
|
const std::vector< Vector > & |
p0, |
|
|
const std::vector< Vector > & |
p1, |
|
|
Log *& |
log |
|
) |
| |
| PLMD::OptimalAlignment::~OptimalAlignment |
( |
| ) |
|
the destructor: delete kearsley
| void PLMD::OptimalAlignment::assignAlign |
( |
const std::vector< double > & |
align | ) |
|
| void PLMD::OptimalAlignment::assignDisplace |
( |
const std::vector< double > & |
displace | ) |
|
| void PLMD::OptimalAlignment::assignP0 |
( |
const std::vector< Vector > & |
p0 | ) |
|
assignment of the running frame p0
| void PLMD::OptimalAlignment::assignP1 |
( |
const std::vector< Vector > & |
p1 | ) |
|
assignment to the reference frame p1
| double PLMD::OptimalAlignment::calculate |
( |
bool |
rmsd, |
|
|
std::vector< Vector > & |
derivatives |
|
) |
| |
this does the real calculation
TODO this interface really sucks since is strongly asymmetric should be re-engineered.
| double PLMD::OptimalAlignment::weightedAlignment |
( |
bool |
rmsd | ) |
|
this should perform the weighted alignment
this does the weighed alignment if the vector of alignment is different from displacement
just a shortcut
TODO : these two blocks can be calculated once forever after the initialization (exception for certain methods?)
clear derivatives
probably not really the way it should be
| double PLMD::OptimalAlignment::weightedFindiffTest |
( |
bool |
rmsd | ) |
|
| std::vector<double> PLMD::OptimalAlignment::align |
|
private |
alignment vector: a double that says if the atom has to be used in reset COM and makeing the alignment
| std::vector<Vector> PLMD::OptimalAlignment::derrdp0 |
|
private |
derivatives of the error respect to the p0 (MD running frame)
| std::vector<Vector> PLMD::OptimalAlignment::derrdp1 |
|
private |
derivatives of the error respect to the p1 (static frame, do not remove: useful for SM)
| std::vector<double> PLMD::OptimalAlignment::displace |
|
private |
displacement vector : a double that says if the coordinate should be used in calculating the RMSD/MSD
| bool PLMD::OptimalAlignment::fast |
|
private |
a bool that decides to make the fast version (alignment vec= displacement vec) or the slower case
| Log* PLMD::OptimalAlignment::log |
|
private |
the pointer to the logfile
| Kearsley* PLMD::OptimalAlignment::mykearsley |
|
private |
a pointer to the object that performs the optimal alignment via quaternions
| std::vector<Vector> PLMD::OptimalAlignment::p0 |
|
private |
position of one frame (generally the MD)
| std::vector<Vector> PLMD::OptimalAlignment::p1 |
|
private |
position of the reference frames
The documentation for this class was generated from the following files: