]> git.donarmstrong.com Git - mothur.git/blobdiff - linearalgebra.h
added kruskal.wallis command. added worked on make.lefse. working of lefse command...
[mothur.git] / linearalgebra.h
index ecb635f70672c8a8928090935fa8af724a5a819b..5819ea85d8deefba15ca1c45ccf03efd21c9321a 100644 (file)
@@ -29,6 +29,8 @@ public:
        double calcPearson(vector<vector<double> >&, vector<vector<double> >&);
        double calcSpearman(vector<vector<double> >&, vector<vector<double> >&);
        double calcKendall(vector<vector<double> >&, vector<vector<double> >&);
+    double calcKruskalWallis(vector<spearmanRank>&, double&);
+    double calcWilcoxon(vector<double>&, vector<double>&, double&);
        
        double calcPearson(vector<double>&, vector<double>&, double&);
        double calcSpearman(vector<double>&, vector<double>&, double&);
@@ -38,6 +40,10 @@ public:
     double calcPearsonSig(double, double); //length, coeff.
     double calcKendallSig(double, double); //length, coeff.
     
+    vector<double> solveEquations(vector<vector<double> >, vector<double>);
+    vector<float> solveEquations(vector<vector<float> >, vector<float>);
+    vector<vector<double> > getInverse(vector<vector<double> >);
+    
     
 private:
        MothurOut* m;
@@ -46,11 +52,11 @@ private:
     double betacf(const double, const double, const double);
     double betai(const double, const double, const double);
     double gammln(const double);
-    double gammp(const double, const double);
     double gammq(const double, const double);
     double gser(double&, const double, const double, double&);
     double gcf(double&, const double, const double, double&);
     double erfcc(double);
+    double gammp(const double, const double);
     
     double ran0(int&); //for testing 
     double ran1(int&); //for testing
@@ -59,6 +65,13 @@ private:
     double ran4(int&); //for testing
     void psdes(unsigned long &, unsigned long &); //for testing
     
+    void ludcmp(vector<vector<double> >&, vector<int>&, double&);
+    void lubksb(vector<vector<double> >&, vector<int>&, vector<double>&);
+    
+    void ludcmp(vector<vector<float> >&, vector<int>&, float&);
+    void lubksb(vector<vector<float> >&, vector<int>&, vector<float>&);
+
+    
 };
 
 #endif