]> git.donarmstrong.com Git - mothur.git/blobdiff - calculator.h
modified some calculators and other stuff - pds
[mothur.git] / calculator.h
index 8c935af9cac59cf8be4723eb5d1bbc3aac37cfab..4cc32806ff7536908c5f75a233e255dd321dd72a 100644 (file)
@@ -4,7 +4,6 @@
 using namespace std;
 
 #include "mothur.h"
-#include "utilities.hpp"
 #include "sabundvector.hpp"
 #include "sharedsabundvector.h"
 #include "rabundvector.hpp"
@@ -47,14 +46,18 @@ class VecCalc
 {
        // The methods seen in the order here is how they are ordered throughout the class.
        public:
+               VecCalc(){};
                void printElements(vector<double>); //This prints the values of the vector on one line with a space between each value.
                void printElements(vector<string>); //This prints the values of the vector on one line with a space between each value.
                int findString(vector<string>, string);//This returns the index of the given string in the given <string> vector, if the string does not exist in the vector it returns -1.
                double mean(vector<double>); //This returns the mean value of the vector.
                double stError(vector<double>); //This returns the standard error of the vector.
+               int sumElements(vector<int>, int);
+               int sumElements(vector<int>);
                double sumElements(vector<double>); //This returns the sum of all the values in the vector.
                double sumElements(vector<double>, int); //This returns the sum of all the values in the vector excluding those whose index is before the given index.  
                double findMax(vector<double>); //This returns the maximum value in the vector.
+               int numNZ(vector<int>); //This returns the number of non-zero values in the vector.
                double numNZ(vector<double>); //This returns the number of non-zero values in the vector.
                double numPos(vector<double>); //This returns the number of positive values in the vector.
                double findMaxDiff(vector<double>, vector<double>); //This returns the absolute value of the maximum difference between the two vectors.
@@ -76,27 +79,6 @@ class VecCalc
                vector<string> getSData(char[]);//This takes a file name as a parameter and reads all of the data in the file into a <string> vector.
 };
 
-/**************************************************************************************************/
-/*This Class contains methods that return the B Diverstiy of two sets
-of data. The four methods are the Whittaker's measure, the Marczewski-Stainhaus distance,
-the Sorensen quantitative index, and the Morisita-Horn index.
-The main method takes a number of columns of data and performs all 4 methods on each
-combination of columns. It prints a table for every method that shows the B Diverstiy for 
-each combination. It also calculates the overall diversity for Whittaker's measure and 
-the Marczewski-Steinhaus distance.*/
-
-
-class BDiversity
-{
-       public:
-               void doBD(vector<double>, double);//Main method
-               double getWhitt(vector<double>,vector<double>);//Whittacker's measure
-               double getMS(vector<double>, vector<double>);//Marczewski-Stainhaus distance
-               double getSor(vector<double>, vector<double>);//Sorensen quantitative index
-               double getMor(vector<double>, vector<double>);//Morisita-Horn index
-               void printD(vector<vector<double> >, int);//This prints a table that represents the given 2D vector, the second paramter specifies which method is to be used (1 for Whitt, 2 for MS, 3 for Sor, and 4 for Mor)
-};
-
 /**************************************************************************************************/
 
 /*This Class is similar to the GeometricSeries.h class. It calculates
@@ -115,11 +97,11 @@ class BrokenStick
 It prints the D-Statistic and the critical values for the Kolmogorov-Smirnov
 1-sample test at the 95% confidence interval.*/
 
-class GeometricSeries
+/*class GeometricSeries
 {
        public:
                void doGeomTest(vector<double>);
-};
+};*/
 
 /**************************************************************************************************/
 //This Class calculates the jackknifed estimate of the data and
@@ -140,16 +122,6 @@ class KS2SampleTest
        public:
                void doKSTest(vector<double>, vector<double>);
 };
-/**************************************************************************************************/
-/*This Class calculates the Log Series Distribution for the data.
-It then generates a D-Statistic and prints the D-Statistic and
-the critical values for the Kolmogorov-Smirnov 1 sample test.*/
-
-class LogSD
-{
-       public:
-               void doLogSD(vector<double>, vector<double>);
-};
 
 /**************************************************************************************************/
 //This Class calculates and prints the Q-Statistic for the data.
@@ -175,6 +147,14 @@ class TDTable
                double getConfLimit(int,int);
 };
 
+/**************************************************************************************************/
+//This Class stores the table of the confidence limits of the One-Sample Kolmogorov-Smirnov Test.
+class KOSTable
+{
+       public:
+               double getConfLimit(int);
+};
+
 /**************************************************************************************************/
 /*This Class calculates the truncated lognormal for the data.
 It then prints the D-Statistic and the critical values for the