8 * Created by westcott on 1/7/11.
9 * Copyright 2011 Schloss Lab. All rights reserved.
13 #include "mothurout.h"
19 LinearAlgebra() { m = MothurOut::getInstance(); }
22 vector<vector<double> > matrix_mult(vector<vector<double> >, vector<vector<double> >);
23 void recenter(double, vector<vector<double> >, vector<vector<double> >&);
24 int tred2(vector<vector<double> >&, vector<double>&, vector<double>&);
25 int qtli(vector<double>&, vector<double>&, vector<vector<double> >&);
26 vector< vector<double> > calculateEuclidianDistance(vector<vector<double> >&, int); //pass in axes and number of dimensions
27 vector< vector<double> > calculateEuclidianDistance(vector<vector<double> >&); //pass in axes
28 vector<vector<double> > getObservedEuclideanDistance(vector<vector<double> >&);
29 double calcPearson(vector<vector<double> >&, vector<vector<double> >&);
30 double calcSpearman(vector<vector<double> >&, vector<vector<double> >&);
31 double calcKendall(vector<vector<double> >&, vector<vector<double> >&);
33 double calcPearson(vector<double>&, vector<double>&, double&);
34 double calcSpearman(vector<double>&, vector<double>&, double&);
35 double calcKendall(vector<double>&, vector<double>&, double&);
37 double calcSpearmanSig(double, double, double, double); //length, f^3 - f where f is the number of ties in x, f^3 - f where f is the number of ties in y, sum of squared diffs in ranks. - designed to find the sif of one score.
38 double calcPearsonSig(double, double); //length, coeff.
39 double calcKendallSig(double, double); //length, coeff.
41 vector<double> solveEquations(vector<vector<double> >, vector<double>);
42 vector<float> solveEquations(vector<vector<float> >, vector<float>);
43 vector<vector<double> > getInverse(vector<vector<double> >);
49 double pythag(double, double);
50 double betacf(const double, const double, const double);
51 double betai(const double, const double, const double);
52 double gammln(const double);
53 double gammp(const double, const double);
54 double gammq(const double, const double);
55 double gser(double&, const double, const double, double&);
56 double gcf(double&, const double, const double, double&);
59 double ran0(int&); //for testing
60 double ran1(int&); //for testing
61 double ran2(int&); //for testing
62 double ran3(int&); //for testing
63 double ran4(int&); //for testing
64 void psdes(unsigned long &, unsigned long &); //for testing
66 void ludcmp(vector<vector<double> >&, vector<int>&, double&);
67 void lubksb(vector<vector<double> >&, vector<int>&, vector<double>&);
69 void ludcmp(vector<vector<float> >&, vector<int>&, float&);
70 void lubksb(vector<vector<float> >&, vector<int>&, vector<float>&);