]> git.donarmstrong.com Git - mothur.git/blobdiff - rarefact.cpp
changes while testing
[mothur.git] / rarefact.cpp
index ec77dd57f2ce811bcac6fa588ee715114eb10f1c..0454d9e253473b368af34f35021dabbc4a50ae1b 100644 (file)
@@ -24,7 +24,7 @@ int Rarefact::getCurve(float percentFreq = 0.01, int nIters = 1000){
                if (percentFreq < 1.0) {  increment = numSeqs * percentFreq;  }
                else { increment = percentFreq;  }      
                
-               #if defined (__APPLE__) || (__MACH__) || (linux) || (__linux)
+               #if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) || (__linux__) || (__unix__) || (__unix)
                                if(processors == 1){
                                        driver(rcd, increment, nIters); 
                                }else{
@@ -86,12 +86,12 @@ int Rarefact::driver(RarefactionCurveData* rcd, int increment, int nIters = 1000
                                lookup->set(binNumber, abundance);
                                rank->set(abundance, rank->get(abundance)+1);
 
-                               if((i == 0) || (i+1) % increment == 0){
+                               if((i == 0) || ((i+1) % increment == 0) || (ends.count(i+1) != 0)){
                                        rcd->updateRankData(rank);
                                }
                        }
        
-                       if(numSeqs % increment != 0){
+                       if((numSeqs % increment != 0) || (ends.count(numSeqs) != 0)){
                                rcd->updateRankData(rank);
                        }
 
@@ -114,9 +114,9 @@ int Rarefact::driver(RarefactionCurveData* rcd, int increment, int nIters = 1000
 
 int Rarefact::createProcesses(vector<int>& procIters, RarefactionCurveData* rcd, int increment) {
        try {
-#if defined (__APPLE__) || (__MACH__) || (linux) || (__linux)
+#if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) || (__linux__) || (__unix__) || (__unix)
                int process = 1;
-               int num = 0;
+               
                vector<int> processIDS;
                
                EstOutput results;
@@ -157,7 +157,7 @@ int Rarefact::createProcesses(vector<int>& procIters, RarefactionCurveData* rcd,
                        for(int j=0;j<displays.size();j++){
                                string s = toString(processIDS[i]) + toString(j) + ".rarefact.temp";
                                displays[j]->inputTempFiles(s);
-                               remove(s.c_str());
+                               m->mothurRemove(s);
                        }
                }
                
@@ -183,7 +183,7 @@ try {
                }
                
                //if jumble is false all iters will be the same
-               if (globaldata->jumble == false)  {  nIters = 1;  }
+               if (m->jumble == false)  {  nIters = 1;  }
                
                //convert freq percentage to number
                int increment = 1;
@@ -196,7 +196,7 @@ try {
                                displays[i]->init(label);                 
                        }
                        
-                       if (globaldata->jumble == true)  {
+                       if (m->jumble == true)  {
                                //randomize the groups
                                random_shuffle(lookup.begin(), lookup.end());
                        }