From: pschloss Date: Wed, 27 Apr 2011 10:22:58 +0000 (+0000) Subject: tracking down chimera.slayer issue X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=commitdiff_plain;h=77ac47e1ea0b5a0c6f55eb25e6bc7d7494ed3ad2 tracking down chimera.slayer issue --- diff --git a/chimeraslayercommand.cpp b/chimeraslayercommand.cpp index 40e074c..cf21995 100644 --- a/chimeraslayercommand.cpp +++ b/chimeraslayercommand.cpp @@ -27,7 +27,7 @@ vector ChimeraSlayerCommand::setParameters(){ CommandParameter pminbs("minbs", "Number", "", "90", "", "", "",false,false); parameters.push_back(pminbs); CommandParameter psearch("search", "Multiple", "kmer-blast-distance", "distance", "", "", "",false,false); parameters.push_back(psearch); CommandParameter pprocessors("processors", "Number", "", "1", "", "", "",false,false); parameters.push_back(pprocessors); - CommandParameter prealign("realign", "Boolean", "", "F", "", "", "",false,false); parameters.push_back(prealign); + CommandParameter prealign("realign", "Boolean", "", "T", "", "", "",false,false); parameters.push_back(prealign); CommandParameter ptrim("trim", "Boolean", "", "F", "", "", "",false,false); parameters.push_back(ptrim); CommandParameter psplit("split", "Boolean", "", "F", "", "", "",false,false); parameters.push_back(psplit); CommandParameter pnumwanted("numwanted", "Number", "", "15", "", "", "",false,false); parameters.push_back(pnumwanted); @@ -342,7 +342,7 @@ ChimeraSlayerCommand::ChimeraSlayerCommand(string option) { temp = validParameter.validFile(parameters, "parents", false); if (temp == "not found") { temp = "3"; } convert(temp, parents); - temp = validParameter.validFile(parameters, "realign", false); if (temp == "not found") { temp = "f"; } + temp = validParameter.validFile(parameters, "realign", true); if (temp == "not found") { temp = "t"; } realign = m->isTrue(temp); temp = validParameter.validFile(parameters, "trim", false); if (temp == "not found") { temp = "f"; } diff --git a/decalc.cpp b/decalc.cpp index 6725871..2a1736a 100644 --- a/decalc.cpp +++ b/decalc.cpp @@ -867,12 +867,14 @@ vector DeCalculator::findClosest(Sequence* querySeq, vectorgetName() << '\t' << dists[i].dist << endl; + if (db[dists[i].index]->getName() != querySeq->getName()) { Sequence* temp = new Sequence(db[dists[i].index]->getName(), db[dists[i].index]->getAligned()); //have to make a copy so you can trim and filter without stepping on eachother. seqsMatches.push_back(temp); indexes.push_back(dists[i].index); } + } return seqsMatches; diff --git a/maligner.cpp b/maligner.cpp index 5ea41fc..7d7145f 100644 --- a/maligner.cpp +++ b/maligner.cpp @@ -733,11 +733,13 @@ vector Maligner::getBlastSeqs(Sequence* q, int num) { //cout << q->getName() << " merged results size = " << mergedResults.size() << '\t' << "numwanted = " << numWanted << endl; for (int i = 0; i < numWanted; i++) { //cout << db[mergedResults[i]]->getName() << '\t' << mergedResults[i] << endl; - //if (db[mergedResults[i]]->getName() != q->getName()) { + + if (db[mergedResults[i]]->getName() != q->getName()) { Sequence* temp = new Sequence(db[mergedResults[i]]->getName(), db[mergedResults[i]]->getAligned()); refResults.push_back(temp); indexes.push_back(mergedResults[i]); - //} + } + //cout << mergedResults[i] << endl; } //cout << "done " << q->getName() << endl; diff --git a/slayer.cpp b/slayer.cpp index fab457b..ba1bf33 100644 --- a/slayer.cpp +++ b/slayer.cpp @@ -56,7 +56,8 @@ string Slayer::getResults(Sequence* query, vector refSeqs) { int numSNPSRight = snpsRight.size(); //require at least 3 SNPs on each side of the break - if ((numSNPSLeft >= 3) && (numSNPSRight >= 3)) { +// if ((numSNPSLeft >= 3) && (numSNPSRight >= 3)) { + if ((numSNPSLeft >= 4) && (numSNPSRight >= 4)) { //removed in 12/09 version of chimeraSlayer //int winSizeLeft = divs[k].winLEnd - divs[k].winLStart + 1;