public static Alignment < NucleotideSequence > alignLeftAdded ( LinearGapAlignmentScoring scoring , NucleotideSequence seq1 , NucleotideSequence seq2 , int offset1 , int length1 , int addedNucleotides1 , int offset2 , int length2 , int addedNucleotides2 , int width ) { try { MutationsBuilder < NucleotideSequence > mutations = new MutationsBuilder <> ( NucleotideSequence . ALPHABET ) ; BandedSemiLocalResult result = alignLeftAdded0 ( scoring , seq1 , seq2 , offset1 , length1 , addedNucleotides1 , offset2 , length2 , addedNucleotides2 , width , mutations , AlignmentCache . get ( ) ) ; return new Alignment <> ( seq1 , mutations . createAndDestroy ( ) , new Range ( result . sequence1Stop , offset1 + length1 ) , new Range ( result . sequence2Stop , offset2 + length2 ) , result . score ) ; } finally { AlignmentCache . release ( ) ; } }
Semi - semi - global alignment with artificially added letters .