15 #include <OpenMS/OPENSWATHALGO/OpenSwathAlgoConfig.h>
31 typedef std::pair<unsigned int, unsigned int>
pos2D;
35 template <
class T1,
class T2>
37 auto h1 = std::hash<T1>{}(p.first);
38 auto h2 = std::hash<T2>{}(p.second);
48 std::vector<XCorrEntry>
data;
51 typedef std::vector<XCorrEntry>::iterator
iterator;
94 OPENSWATHALGO_DLLAPI
double SpectralAngle(
double x[],
double y[],
int n);
99 std::vector<double>& data2,
bool normalize);
104 std::vector<double>& data2,
const int maxdelay,
const int lag);
108 std::vector<double>& normalized_data2,
const int maxdelay,
const int lag);
112 const std::vector<double>& data2,
const int maxdelay,
const int lag);
124 OPENSWATHALGO_DLLAPI
unsigned int computeAndAppendRank(
const std::vector<double>& v, std::vector<unsigned int>& ranks);
127 OPENSWATHALGO_DLLAPI std::vector<unsigned int>
computeRankVector(
const std::vector<std::vector<double>>& intensity, std::vector<std::vector<unsigned int>>& ranks);
130 OPENSWATHALGO_DLLAPI
double rankedMutualInformation(std::vector<unsigned int>& ranked_data1, std::vector<unsigned int>& ranked_data2,
const unsigned int max_rank1,
const unsigned int max_rank2);
OPENSWATHALGO_DLLAPI XCorrArrayType calculateCrossCorrelation(const std::vector< double > &data1, const std::vector< double > &data2, const int maxdelay, const int lag)
Calculate crosscorrelation on std::vector data without normalization.
std::pair< unsigned int, unsigned int > pos2D
Definition: Scoring.h:31
OPENSWATHALGO_DLLAPI double RootMeanSquareDeviation(double x[], double y[], int n)
Calculate the RMSD (root means square deviation)
OPENSWATHALGO_DLLAPI std::vector< unsigned int > computeRankVector(const std::vector< std::vector< double >> &intensity, std::vector< std::vector< unsigned int >> &ranks)
OPENSWATHALGO_DLLAPI double rankedMutualInformation(std::vector< unsigned int > &ranked_data1, std::vector< unsigned int > &ranked_data2, const unsigned int max_rank1, const unsigned int max_rank2)
OPENSWATHALGO_DLLAPI double NormalizedManhattanDist(double x[], double y[], int n)
Calculate the normalized Manhattan distance between two arrays.
std::pair< int, double > XCorrEntry
Cross Correlation array contains (lag,correlation) pairs.
Definition: Scoring.h:44
OPENSWATHALGO_DLLAPI void standardize_data(std::vector< double > &data)
Standardize a vector (subtract mean, divide by standard deviation)
OPENSWATHALGO_DLLAPI double SpectralAngle(double x[], double y[], int n)
Calculate the Spectral angle (acosine of the normalized dotproduct)
OPENSWATHALGO_DLLAPI XCorrArrayType normalizedCrossCorrelationPost(std::vector< double > &normalized_data1, std::vector< double > &normalized_data2, const int maxdelay, const int lag)
Calculate crosscorrelation on std::vector data that is already normalized.
OPENSWATHALGO_DLLAPI XCorrArrayType::const_iterator xcorrArrayGetMaxPeak(const XCorrArrayType &array)
Find best peak in an cross-correlation (highest apex)
OPENSWATHALGO_DLLAPI XCorrArrayType normalizedCrossCorrelation(std::vector< double > &data1, std::vector< double > &data2, const int maxdelay, const int lag)
OPENSWATHALGO_DLLAPI XCorrArrayType calcxcorr_legacy_mquest_(std::vector< double > &data1, std::vector< double > &data2, bool normalize)
OPENSWATHALGO_DLLAPI void normalize_sum(double x[], unsigned int n)
Divide each element of x by the sum of the vector.
OPENSWATHALGO_DLLAPI unsigned int computeAndAppendRank(const std::vector< double > &v, std::vector< unsigned int > &ranks)
OPENSWATHALGO_DLLAPI void normalize(const std::vector< double > &intensities, double normalization_factor, std::vector< double > &normalized_intensities)
Normalize intensities in vector by normalization_factor.
std::vector< XCorrEntry >::const_iterator const_iterator
Definition: Scoring.h:52
const_iterator begin() const
Definition: Scoring.h:55
std::vector< XCorrEntry > data
Definition: Scoring.h:48
iterator end()
Definition: Scoring.h:56
const_iterator end() const
Definition: Scoring.h:57
std::vector< XCorrEntry >::iterator iterator
Definition: Scoring.h:51
iterator begin()
Definition: Scoring.h:54
Simple hash function for Scoring::pos2D.
Definition: Scoring.h:34
std::size_t operator()(const std::pair< T1, T2 > &p) const
Definition: Scoring.h:36