/**************************************************************************************************/
-NeedlemanOverlap::NeedlemanOverlap(float gO, float m, float mm, int r) :// note that we don't have a gap extend
-gap(gO), match(m), mismatch(mm), Alignment(r) { // the gap openning penalty is assessed for
+NeedlemanOverlap::NeedlemanOverlap(float gO, float f, float mm, int r) :// note that we don't have a gap extend
+gap(gO), match(f), mismatch(mm), Alignment(r) { // the gap openning penalty is assessed for
try { // every gapped position
for(int i=1;i<nCols;i++){
alignment[0][i].prevCell = 'l'; // initialize first row by pointing all poiters to the left
}
catch(exception& e) {
- errorOut(e, "NeedlemanOverlap", "NeedlemanOverlap");
+ m->errorOut(e, "NeedlemanOverlap", "NeedlemanOverlap");
exit(1);
}
-
-
}
/**************************************************************************************************/
seqA = ' ' + A; lA = seqA.length(); // algorithm requires a dummy space at the beginning of each string
seqB = ' ' + B; lB = seqB.length(); // algorithm requires a dummy space at the beginning of each string
- if (lA > nRows) { mothurOut("Your one of your candidate sequences is longer than you longest template sequence."); mothurOutEndLine(); }
+ if (lA > nRows) { m->mothurOut("One of your candidate sequences is longer than you longest template sequence. Your longest template sequence is " + toString(nRows) + ". Your candidate is " + toString(lA) + "."); m->mothurOutEndLine(); }
for(int i=1;i<lB;i++){ // This code was largely translated from Perl code provided in Ex 3.1
for(int j=1;j<lA;j++){ // of the O'Reilly BLAST book. I found that the example output had a
}
}
}
+
Overlap over;
over.setOverlap(alignment, lA, lB, 0); // Fix gaps at the beginning and end of the sequences
traceBack(); // Traceback the alignment to populate seqAaln and seqBaln
-
+
}
catch(exception& e) {
- errorOut(e, "NeedlemanOverlap", "align");
+ m->errorOut(e, "NeedlemanOverlap", "align");
exit(1);
}