]> git.donarmstrong.com Git - mothur.git/blobdiff - slayer.cpp
modified chimera.slayer bootstrap to bump up to 1000 on borderline bootstrap values
[mothur.git] / slayer.cpp
index 88f9c1c63a80217d548ea7f7ba561df7027ba6a7..0ef795309a3f758c4f20e47e2e7504386aeaeb80 100644 (file)
@@ -67,26 +67,14 @@ string Slayer::getResults(Sequence* query, vector<Sequence*> refSeqs) {
                                                
                                                //are we within 10 points of the bootstrap cutoff?
                                                if ((divs[k].bsMax >= (minBS-10)) && (iters < 1000)) {
-                                                       snpsLeft = getSNPS(divs[k].parentA.getAligned(), divs[k].querySeq.getAligned(), divs[k].parentB.getAligned(), divs[k].winLStart, divs[k].winLEnd);
-                                                       snpsRight = getSNPS(divs[k].parentA.getAligned(), divs[k].querySeq.getAligned(), divs[k].parentB.getAligned(), divs[k].winRStart, divs[k].winREnd);
-                                                       
-                                                       if (m->control_pressed) { delete q; delete leftParent; delete rightParent; return "no"; }
-                                                       
-                                                       numSNPSLeft = snpsLeft.size();
-                                                       numSNPSRight = snpsRight.size();
-                                                       
-                                                       //require at least 4 SNPs on each side of the break
-                                                       if ((numSNPSLeft >= 4) && (numSNPSRight >= 4)) {
-                                                               float BS_A, BS_B;
-                                                               bootstrapSNPS(snpsLeft, snpsRight, BS_A, BS_B, 1000);
+                                                       bootstrapSNPS(snpsLeft, snpsRight, BS_A, BS_B, 1000);
                                                                
-                                                               if (m->control_pressed) { return "no"; }
+                                                       if (m->control_pressed) { delete q; delete leftParent; delete rightParent; return "no"; }
                                                                
-                                                               divs[k].bsa = BS_A;
-                                                               divs[k].bsb = BS_B;
-                                                               divs[k].bsMax = max(BS_A, BS_B);
-                                                               divs[k].chimeraMax = max(divs[k].qla_qrb, divs[k].qlb_qra);
-                                                       }
+                                                       divs[k].bsa = BS_A;
+                                                       divs[k].bsb = BS_B;
+                                                       divs[k].bsMax = max(BS_A, BS_B);
+                                                       divs[k].chimeraMax = max(divs[k].qla_qrb, divs[k].qlb_qra);
                                                }
                                                
                                                //so results reflect orignal alignment