]> git.donarmstrong.com Git - mothur.git/blobdiff - decalc.cpp
fixed bug in cluster.split with classify method
[mothur.git] / decalc.cpp
index d4c4eb5e8b21e492df18d62af4226b6e8836a110..74cd8652909d17f0cd0e4e899b1472c6eea2ef93 100644 (file)
@@ -402,6 +402,8 @@ vector< vector<quanMember> > DeCalculator::getQuantiles(vector<Sequence*> seqs,
                                
                                Sequence* subject = new Sequence(seqs[j]->getName(), seqs[j]->getAligned());
                                
+                               if (m->control_pressed) { delete query; delete subject; return quan; }
+                               
                                map<int, int> trim;
                                map<int, int>::iterator it;
                                
@@ -426,7 +428,7 @@ vector< vector<quanMember> > DeCalculator::getQuantiles(vector<Sequence*> seqs,
                                float de = calcDE(obsi, exp);
                                                                
                                float dist = calcDist(query, subject, front, back); 
-       //o << i << '\t' <<  j << '\t' << dist << '\t' << de << endl;                   
+       //cout << i << '\t' <<  j << '\t' << dist << '\t' << de << endl;                        
                                dist = ceil(dist);
                                
                                quanMember newScore(de, i, j);
@@ -822,6 +824,8 @@ vector<Sequence*> DeCalculator::findClosest(Sequence* querySeq, vector<Sequence*
                        i++;
                }
 
+               if (numWanted > dists.size()) { m->mothurOut("numwanted is larger than the number of template sequences, adjusting numwanted."); m->mothurOutEndLine(); numWanted = dists.size(); }
+
 //cout << numWanted << endl;
                for (int i = 0; i < numWanted; i++) {
 //cout << dists[i].seq->getName() << '\t' << dists[i].dist << endl;