]> git.donarmstrong.com Git - mothur.git/blobdiff - sharedthetayc.cpp
fixes while testing 1.33.0
[mothur.git] / sharedthetayc.cpp
index ed18d9252ed52ef126355336f04bd04b67b0d7c3..864c6e63712cdc78d2cc0320ff2869c6deff196f 100644 (file)
@@ -29,14 +29,14 @@ EstOutput ThetaYC::getValues(vector<SharedRAbundVector*> shared) {
                double sumPsqQ = 0;
                
                //get the total values we need to calculate the theta denominator sums
-               for (int i = 0; i < shared[0]->size(); i++) {
+               for (int i = 0; i < shared[0]->getNumBins(); i++) {
                        //store in temps to avoid multiple repetitive function calls
                        Atotal += (double)shared[0]->getAbundance(i);
                        Btotal += (double)shared[1]->getAbundance(i);
                }
                
                //calculate the theta denominator sums
-               for (int j = 0; j < shared[0]->size(); j++) {
+               for (int j = 0; j < shared[0]->getNumBins(); j++) {
                        //store in temps to avoid multiple repetitive function calls
                        pi = shared[0]->getAbundance(j) / Atotal;
                        qi = shared[1]->getAbundance(j) / Btotal;
@@ -74,6 +74,11 @@ EstOutput ThetaYC::getValues(vector<SharedRAbundVector*> shared) {
                if (isnan(data[1]) || isinf(data[1])) { data[1] = 0; }
                if (isnan(data[2]) || isinf(data[2])) { data[2] = 0; }
                
+               data[0] = 1.0 - data[0];
+        double hold = data[1];
+        data[1] = 1.0 - data[2];
+        data[2] = 1.0 - hold;
+        
                return data;
        }
        catch(exception& e) {