aboutsummaryrefslogtreecommitdiff
path: root/mp.h
blob: 996da876ebfa55b114887ee2445e64a5758da1e6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
#include <armadillo>

namespace mp {

static const double EPSILON = 1e-3;
double euclidean(const arma::rowvec &x1, const arma::rowvec &x2);
arma::mat dist(const arma::mat &X, double (*distCalc)(const arma::rowvec &, const arma::rowvec &) = euclidean);
arma::mat lamp(const arma::mat &X, const arma::uvec &sampleIndices, const arma::mat &Ys);
void lamp(const arma::mat &X, const arma::uvec &sampleIndices, const arma::mat &Ys, arma::mat &Y);
arma::mat forceScheme(const arma::mat &D, arma::mat &Y, size_t maxIter = 20, double tol = 1e-3, double fraction = 8);

} // namespace mp