Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

Exception in banded refine alignment #2540

@mchaisso

Description

@mchaisso

Sorry the input is pretty large. The code below throws an exception in bandedChainAlignment. This is with 2.4.0.
To build:
minimalTest: MinimalTest.cpp
g++ -DSEQAN_ENABLE_TESTING -g MinimalTest.cpp -o $@ -Iseqan/include

Collapsed for readability
#include <iostream>
#include <string>
#include <sstream>
#include <algorithm>
#include <fstream>
#include <seqan/seeds.h>
#include <seqan/sequence.h>
#include <seqan/align.h>
#include <iostream>
#include <vector>
#include <unordered_map>
#include <map>


using namespace std;
using namespace seqan;
typedef Seed<Simple> TSeed;
typedef SeedSet<TSeed> TSeedSet;
typedef Iterator<TSeedSet>::Type TIterator;

                                                                                                                                                                     
typedef unsigned int kmer_t;                                                                                                                                         
typedef map<kmer_t, vector<int> > kmerMap_t;                                                                                                                         
unsigned int dnaStringToInt(char* dna, int k) {                                                                                                                      
    unsigned int result = 0;                                                                                                                                         
                                                                                                                                                                     
    // Iterate over the DNA string and convert each base to its 2-bit representation                                                                                 
    for (size_t i = 0; i < k; ++i) {                                                                                                                                 
        result <<= 2;  // Shift the result by 2 bits                                                                                                                 
        switch (dna[i]) {                                                                                                                                            
            case 'A': case 'a': result |= 0b00; break;  // A = 00                                                                                                    
            case 'C': case 'c': result |= 0b01; break;  // C = 01                                                                                                    
            case 'G': case 'g': result |= 0b10; break;  // G = 10                                                                                                    
            case 'T': case 't': result |= 0b11; break;  // T = 11                                                                                                    
        }                                                                                                                                                            
    }                                                                                                                                                                
                                                                                                                                                                     
    return result;                                                                                                                                             }                                                                                                                                                                    
void StoreKmerMatches( kmerMap_t &queryMap, kmerMap_t &targetMap, int k, TSeedSet &seedSet) {                                                                        
  for (auto it : queryMap) {                                                                                                                                         
    if (targetMap.find(it.first) != targetMap.end()) {                                                                                                               
      for (auto qp: queryMap[it.first]) {                                                                                                                            
        for (auto tp: targetMap[it.first]) {                                                                                                                         
          TSeed seed(qp,tp,k);                                                                                                                                       
          addSeed(seedSet, seed, Single());                                                                                                                          
        }                                                                                                                                                            
      }                                                                                                                                                              
    }                                                                                                                                                                
  }                                                                                                                                                                  
}                                                                                                                                                                           
void StoreKmerToPos(string &seq, int k, kmerMap_t &map) {
  for (int i=0; i + k  < seq.size(); i++) {          
    kmer_t kmer = dnaStringToInt(&seq[i], k);
    if (map.find(kmer) == map.end()) {
      map[kmer] = vector<int>();
    }
    map[kmer].push_back(i);
  }
}                                                                                                                                                                    
              

int main() {
  string query("GTGCCGTTCTTTTTTTTTTTTTTTTTTTTTTTATTATACTCTAAGTTTTAGGGTACATGTGCACATTGTACAGGTTAGTTACATATGTATACATGTGACATGCTGGTGCGCTGCACCCACTAACGTGTCATCTAGCATTAGGTATATCTCCCAATGCTATCCCTCCCCCCTCCCCCGACCCCACCACAGTCCCCAGAGTGTGATATTCCCCTTCCTGTGTCCAAGTGATCTCATTGTTCAATTCCCACTTATGAGTGACAATATGCGGTGTTTGGTTTTTTGTTCTTGCGATAGTTTACTGAGAATGATGGTTTCCAATTTCATCCATGTCCCTACAAAGGACATGAACTCATCATTTTTTATGGCTATGTAGTATTCCATGGTGTATATGTGCCACATTTTCTTAATCCAGTCTATCATTGTTGGACATTTGGGTTGGTTCCAAGTCTTTGCTATTGTGAATAGTGCCGCAATAAACATACGTGTGCATGTGTCTTTTTAGCAGCATGATTTATAGTCCTTTGGGTATATACCCAGTAATGGGATGGCTGGGTCAAATGGTATTTCTAGTTCTAGATCCCTGAGGAATCGCCACACTGACTTCCACAATGGTTGAACTAGTTTACAGTCCCACCAACAGTGTAAAAGTGTTCCTATTTCTCCACATCCTCTCCAGCACCTGTTGTTTCCTGACTTTTTAATGATTGCCATTCTAACTGGTGTGAGATGATATCTCATAGTGGTTTTGATTTGCATTTCTCTGATGGCCAGTGATGATGAGCATTTCTTCATGTGTTTTTTGGCTGCATAAATGTCTTCTTTTGAGAAGTGTCTGTTCATGTCCTTTGCCCACTTTTTGATGGGGTTGTTTGTTTTTTTCTTGTAAATTTGTTTGAGTTCATTGTAGATTCTGGATATTAGCCCTTTGTCAGATGAGTAGGTTGCGAAAATTTTCTCCCATGTTGTAGGTTGCCTGTTCACTCTGATGGTAGTTTCTTTTGCTGTGCAGAAGCTCTTTAGTTTAATTAGATCCCATTTGTCAATTTTGGCTTTTGTTGCCATTGCTTTTGGTGTTTTGGACGTGAAGTCCTTGCCCACGCCTATGTCCTGAATGGTAATGCCTAGGTTTTCTTCTAGGGTTTTTATGGTTTTAGGTCTAACGTTTAAATCTTTAATCCATCTTGAATTGATTTTTGTATAAGGTGTAAGGAAGGGATCCAGTTTCAGCTTTCTACATATGGCTAGCCAGTTTTCCCAGCACCATTTATTAAATAGGGAATCCTTTCCCCATTGCTTGTTTTTCTCAGGTTTGTCAAAGATCAGATAGTTGTAGGTAAGCGGCGTTATTTCTGAGGGCTCTGTTCTGTTCCATTGATCTATATCTCTGTTTTGGTACCAGTACCATGCTGTTTTGGTTACTGTAGCCTTGTAGTATAGTTTGAAGTCAGGTAGTGTGATGCCTCCAGCTTTGTTCTTTTGGCTTAGGATTGACTTGGCGATGCGGGCTCTTTTTTGGTTCCATATGAACTTTAAAGTAGTTTTTTCCAATTCTGTGAAGAAAGTCATTGGTAGCTTGATGGGGATGGCATTGAATCTGTAAATTACCTTGGGCAGTATGGCCATTTTCACGATATTGATTCTTCCTACCCATGAGCATGGAATGTTCTTCCATTTGTTTGTGTCCTCTTTTATTTCCTTGAGCAGTGGTTTGTAGTTCTCCTTGAAGAGGTCCTTCACATCCCTTGTAAGTTGGATTCCTAGGTATTTTATTCTCTTTGAAGCAATTGTGAATGGGAGTTCACTCATGATTTGGCTCTCTGTTTGTCTGTTGTTGGTGTATAAGAATGCTTGTGATTTTTGTACATTGATTTTGTATCCTGAGACTTTGCTGAAGTTGCTTATCAGCTTAAGGAGATTTTGGGCTGAGACGATGGGGTTTTCTAGATAAACAATCATGTCGTCTGCAAACAGGGACAATTTGACTTCCTCTTTTCCTAATTGAATACCCTTTATTTCCTTTTCCTTCCTGATTGCCCTGGCCAGAACTTCCAACACTATGTTGAATAGGAGTGGTGAGAGAGGGCATCCCTGTCTTGTGCCAGTTTTCAAAGGGAATGCTTCCAGTTTTTGCCTATTCAGTATGATATTGGCTGTGGGTTTGTCATAGATAGCTCTTATTATTTTGAAATACGTCCCATCAATACCTAATTTATTGAGAGTTTTTAGCATGAAGGGTTGTTGAATTTTGTCAAAGGCTTCTTCTGCATCTATTGAGATAATCATGTGGTTTTTGTCTTTGGCTCTGTTTATATGCTGGATTACATTTATTGATTTGCGTATATTGAACCAGCCTTGCATCCCAGGGATGAAGCCCACTTGATCATGGTGGATAAGCTTTTTGATGTGCTGCTGGATTCGGTTTGCCAGTATTTTATTGAGGATTTTTGCATCAATGTTCATCAAGGATATTGGTCTAAAATTCTCTTTTTTGGTTGTGTCTCTGCCCGGCTTTGGTATCAGAATGATGCTGGCCTCATAAAATGAGTTAGGGAGGATTCCCTCTTTTTCTATTGATTGGAATAGTTTCAGAAGGAATGGTACCAGTTCCTCCTTGTACCTCTGGTAGAATTCGGCTGTGAATCCATCTGGTCCTGGACTCTTTTTGGTTGGTAAACTATTGATTATTGCCACAATTTCAGAGCCTGTTATTGGTCTATTCAGAGATTCAACTTCTTCCTGGTTTAGTCTTGGGAGAGTGTATGTGTCGAGGAATGTATCCATTTCTTCTAGATTTTCTAGTTTATTTGCGTAGAGGTGTTTGTAGTATTCTCTGATGGTAGTTTGTATTTCTGTGGGATCGGTGGTGATATCCCCTTTATCATTTTTTATTGTGTCTATTTGATTCTTCTCTCTTTTTTTCTTTATTAGTCTTGCTAGCGGTCTATCAATTTTGTTGATCCTTTCAAAAAACCAGCTCCTGGATTCATTGATTTTTTGAAGGGTTTTTTGTGTCTCTATTTCCTTCAGTTCTGCTCTGATTTTAGTTATTTCTTGCCTTCTGCTAGCTTTTGAATGTGTTTGCTCTTGCTTTTCTAGTTCTTTTAATTGTGATGTTAGGGTGTCAATTTTGGATCTTTCCTGCTTTCTCTTGTAGGCATTTAGTGCTATATATTTCCCTCTACACACTGCTTTGAATGCGTCCCAGAGATTCTGGTATGTGGTGTCTTTGTTCTCGTTGGTTTCAAAGAACATCTTTATTTCTGCCTTCGTTATGTACCCAGTAGTCATTCAGTAGCAGGTTGTTCAGTTTCCATGTAGTTGAGCGGCTTTGAGTGAGATTCTTAATCCTGAGTTCTAGTTTGATTGCACTGTGGTCTGAGAGATAGTTTGTTATAATTTCTGTTCTTTTACATTTGCTGAGGAGAGCTTTACTTCCAACTATTTGGTCAATTTTGGAATAGGTGTGGTGTGGTGCTGAAAAAAATGTATATTCTGTTGATTTGGGGTGGAGAGTTCTGTAGATGTCTATTAGGTCTGCTTGGTGCAGAGCTGAGTTCAATTCCTGGGTATCCTTGTTGACTTTCTGTCTCATTGATCTGTCTAATGTTGACAGTGGGGTGTTAAAGTCTCCCACTTTAATGTGTGGGAGTCTAAGTCTCCTTGTAGGTCACTCAGGACTTGCTTTATGAATCTGGGTGCTCCTGTATTGGGTGCATAAATATTTAGGATAGTTAGCTCCTCTTGTTGAATTGATCCCTTTACCATTATGTAATGGCCTTCTTTGTCTCTTTTGATCTTTGTTGGTTTAAAGTCTGTTTTATCAGAGACTAGGATTGCAAACCCTGCCTTTTTTTGTTTTCCATTGGCTTGGTAGATCTTCCTCCATCCTTTTATTTTGAGCCTATGTGTGTCTCTGCACGTGAGATGGGTTTCCTGAATACAGCACACTGATGGGTCTTGACTCTTTATCCAACTTGCCAGTCTGTGTCTTTTAATTGCAGAATTTAGTCCATTTATATTTAAAGTTAATATTGTTATGTGTGAATTTGATCCTGTCATTATGATGTTAGCTGGTGATTTTGCTCATTAGTTGATGCAGTTTCTTCCTAGTCTCGATGGTCTTTACATTTTGGCATGATTTTGCAGCGGCTGGTACCGGTTGTTCCTTTCCATGTTTAGTGCTTCCTTCAGGAGCTCTTTTAGGGCAGGCCTGGTGGTGACAAAATCTCTCAGCATTTGCTTGTCTATAAAGTATTTTATTTCTCCTTCACTTATGAAGCTTAGTTTGGCTGGATATGAAATTCTGGGTTGAAAATTCTTTTCTTTAAGAATGTTGAATATTGGCCCCCACTCTCTTCTGGCTTGTAGGGTTTCTGCCGAGAGATCCGCTGTTAGTCTGATGGGCTTTCCTTTGAGGGTAACCCGACCTTTCTCTCTGGCTGCCCTTAACATTTTTTCCTTCACTTCAACTTTGGTGAATCTGACAATTATGTGTCTTGGAGTTGCTCTTCTCGAGGAGTATCTTTGTGGCGTTCTCTGTATTTCCTGAATCTGAACGTTGGCCTGCCTTGCTAGATTGGGGAAGTTCTCCTGGATAATATCCTGCAGAGTGTTTTCCAACTTGGTTCCATGCTCCACATCACTTTCAGGTACACCAATCAGATGTAGATTTGGTCTTTTCACATAGTCCCATATTTCTTGGAGGCTTTGCTCATTTCTTTTTATTCTTTTTTCTCTAAACTTCCCTTCTCGCTTCATTTCATTCATTTCATCTTCCATCGCTGATACTCTTTCTTCCAGTTGATCACATCGGCTCCTGAGGCTTCTGCATTCTTCACGTAGTTCTCGAGCCTTGGTTTTCAGCTCCATCAGCTCCTTTAAGCACTTCTCTGTATTGGTTATTCTAGTTATACATTCTTCTAAATGTTTTTCAAAGTTTTCAACTTCTTTGCCTTTGGTTTGAATGTCCTCCCGTAGCTCAGAGTAATTTGATCGTCTGAAGCCTTCTTCTCTCAGCTCGTCAAAATCATTCTCCATCCAGCTTTGTTCTGTTGCTGGTGAGGAACTGCGTTCCTTTGGAGGAGGAGAGGCGCTCTGCGTTTTAGAGTTTCCAGTTTTTCTGTTCTGTTTTTTCCCCATCTTTGTGGTTTTATCTACTTTTGGTCTTTGATGATGGTGATGTACAGATGGGTTTTCGGTGTAGATGTCCTTTCTGGTTGTTAGTTTTCCTTCTAACAGACAGGACCCTCAGCTGCAGGTCTGTTGGAATACCCTGCCGTGTGAGGTATCAGTGTGCCCCTGCTGGGGGGTGCCTCCCAGTTAGGCTGCTCGGGGGTCAGGGGTCAGGGACCCACTTGAGGAGGCAGTCTGCCCGTTCTCAGATCTCCAGCTGCGTGCTGGGAGAACCACTGCTCTCTTCAAAGCTGTCAGACAGGGACACTTAAGTCTGCAGAGGTTACTGCTGTCTTTTTGTTTGTCTGTGCCCTGCCCCCAGAGGTGGAGCCTACAGAGGCAGTCAGGCCTCCTTGAGCTGTGGTGGGCTCCACCCAGTTCGAGCTTCCCGGCTGCTTTGTTTACCTAAGCAAGCCTGGGCAATGGCGGGCCCCCCTCCCCCAGCCTCGTTGCCGCCTTGCAGTTTGATCTCAGACTGCTGTGCTAGCAATCAGCGAGATTCCATGGGCGTAGGACCCTCTGAGCCAGGTGTGGGATATAGTCTCGTGGTGCGCCGTTTCTTAACCCGTCTGAAAAGCGCAATATTCGGGTGGGAGTGACCCAATTTTCCAGGTGCGTCCGTCACCCCTTTCTTTGACTCGGAAAGGGAACTCCCTGACCCCTTGCGCCTCCCAGGTGAGGCAATGCCTCGCCCTGCTTCGGCTCGCGCACAGTGCGCACACACACTGGCCTGCGCCCACTGTCTGGCACTCCCTAGTGAGATGAACCCGGTACCTCAGATGGAAATGCAGAAATCACCCGTCTTCTGCGTCGCTCACACTGGGAGCTGTAGACCGGAGCTGTTCCTATTCGGCCATCTTGGCTCCTCCCCCAC");
  string ref("TTATACTTTAGACACAAGTTGAGTTAAAATAAAATGTTTTCAAAAACCTAGCACTGTGTGAATTTAATCTATGTTTCATTTATCACTTTACATTGTATTAGTTATCTCCACATTTTATAAACTATATAAATTATAATATCTCTCACTATGACATTAAAACACACCTTTTTACGTGCTTTTCTTTTCTTGCATGTAAATCTCTTTATTTTATTTTATTTTATTATTATTATACTTTAAGTTTTAGGGTACTTGTGCACAATGTGCAGGTTAGTTACACATGTATACATGTGCCATGCTGGTGTGCTGCACCCATTAACTCGTCATTTAGCATTAGGTATATCTCCTAAAGCTATCCCTCCCCCCTCCCCCCACCCCACAACAGTCCCCAGAGTGTGATGTTCCCCTTCCTGTGTCCATGTGTTCTCATTATTCAATTCCCACCTATGAGTGAGAATATGCGGTGTTTGGTTTTTTGTTCTTGCGATAGTTTACTGAGAATGATGATTTCCAATTTCATCCATGTCCCTACAAAGGACATGAACTCATCATTTTTTATGGCTGCATAGTATTCCATGGTGTATATGTGCCAAATTTTCTTAATCCAGTCTATAATTGTTGGACATTTGGGTTGGTTCCAAGTCTTTGCTATTGTGAATAGTGCCGCAATAAACATGCGTGTGCATGTGTCTTTATAGCAGCATGATTTATAGTCCATTGGGTATATACCCAGTAATGGGATGGCTGGGTCAAATGGTATTTCTAGTTCTAGATCCCTGAGGAACCGCCACACTGACTTCCAAAAGGGTTGAACTAGTTTACAGTCCCACCAACAGTGTAAAAGTGTTCCTATTTCTCCACATCCTCTCCAGCACCTGTTGTTTCCCGACTTTTTAATGATCGCCATTCTAACTGGTGTGAGATGGTATCTCATTGTGGTTTTGATTTGCATTTCTCTGATGGCCAGTGATGGTGAGCATTTTTTCATGTGTTTTTTGGCTGCATAAATGTCTTCTTTTGCAAAGTGTCTGTTCATGTCCTTTGCCCACTTTTTGATGGGGTTGTTTGTTTTTTTCCTGTAAATTTGTTTGAGTTCATTGTAGATTCTGGATATTAGCCGTTTGTCAGATGAGTAGGTTGAGACAATTTTCTCCCATTTTGTAAGTTGCCTGTTCACTCTGATGGTAGTTTCTTTTGCTGTGCAGAAGCTCTTTAGTTTAATTAGATCCCATTTGTCTATTTTGGCTTTTGTTGCCATTGCTTTTGGTGTTTTAGACATGAAGTCCTTGCCCATGCCTATGTCCTGAATGGCAAAGCCTAGGTTTTCTTCTAGGGTTTTTATGGTTTTAGGTCTAACATTTAAGTCTTTAATCCATCTCGAATTAATTTTTGTATAAGATGTAAGGAAGGGATCCAGTTTCAGCTTTCTACATATGACTAGCCAGTTTTCCCAGCACCATTTATTAAATAGGGAATCCTTTCCCCATTGCTTGTTTTTCTCAGGTTTGTCAAAGATCAGATAGTTGTCGATATGTGGCCTTATTTCTGAGGGCTGTGTTCTGTTCCATTGATCTATATCTCTGTTTTGGTACCAGTACCATGCTGTTTTGGTTACTGTAGCCTTGTAGTATAGTTTGAAGTCAGGTAGCGTGATGCCTCCAGCTTTGTTCTTTTGGCTTAGGATTGACTAGGCGATGTGGGCTCTTTTTTGGTTCCACATGAACTTTAAAGGAGTTTTTTCCAATTCTGTGAAGAAAGTCATTGGTAGCTTGATGGGGATGGCATTGAATCTATAAATTACCTTGGGCAGTATGGCCATTTTCACGGTATTGATTCTTCCTATCCATGAGCATGGAATGTTCTTCCATTTGTTTGTATCCTCTTTTATTTCACTGAGCAGTGGTTTGTAGTTCTCCTTGAAGAGGTCCTTCACATCCCTTGTAAGTTGGATTCCTAGGTATTTTATTCTCTTTGAAGCAATTGTGAATGGGAGTTCACTCATGATTTGGCTCTCTGTTTGTCTGTTATTGGTGTATAAGAATGCTTGTGATTTTTGTACATTGATTTTGTATCCTGAGACTTTGCTGAAGTTGCTTATCAGCTTAAGGAGATTTTGGGCTGAGACAATGGGGTTTTCTAGATATACAATCATGTCGTCTGCAAACAGGGACAATTTGACTTCCTCTTTTCCTAATTGAATACCCTTTATTTCCTTCTCCTGCCTGATTGCCCTGGCCAGAACTTCCAACACTATGTTGAATAGGAGTGGTGAGAGAGGGCATCCCTGTCTTGTGCCAGTTTTCAAAGGGAATGCTTCCAGTTTTTGCCCATTCAGTATGATATTGGCTGTGGGTTTGTCATAGATAGCTCTTATTATTTTGAGATACATCCCATCAATACCTAATTTATTGAGAGTTTTTAGCATGAAGGGTTGTTGAATTTTGTCAAAGGCCTTTTCTGCATCTGCTGAGATAATCAGGTGGTTTTTGTCTTTGGTTCTGTTTATATGCTGGATTACATTTATTGATTTGCATATATTGAACCAGCCTTGCATCCCAGGGATGAAGCCCACTTGATCATGCTGGATAAGCTTTTTGATGTGCTGCTGGATTCAGTTTGCCAGTATTTTATTGAGGATTTTTGCATCAATGTTCATCAAGGATATTGGTCTAAAATTCTCTTTTTTTGTTGTGTCTCTGCCCAGCTTTGGTATCAGGATGATGCTGGCCTCATAAAATGAGTTAGGGAGGATTCCCTCTTTTTCTATTGATTGGAATAGTTTCAGAAGGAAGGGTAACAGTTCCTCCTTGTACCTCTGGTAGAATTTGGCTGTGAATCCATCTGGTCCTGGACTCTTTTTGGTTGGTAAACTATTGATTATTGCCACAATTTCAGAGCCTGTTATTGGTTTATTCAGAGATTCAATTTCTTCCTGGTTTAGTCTTGGGAGGGTGTATGTGTCAAGGAATTTATACATTTCTTCTAGATTTTCTAGTTTATTTGCGTAGAGGTGTTTGTAGTATTCTCTGATGGTAGTTTGTATTTCTGTGGGATTGGTGGTGATATCCCCTTTATCATTTTTTATTGCACCTATTTGATTCTTCTCTCTTTTCTTCTTTATTAGTTTTGCTAGCAGTCTATCAATTTTGTTGATCCTTTCAAAAAACCAGCTCCTGGATTCATTAATTTTTTGAAGGGTTTTTTGTGTCTCTATTTCCTTCAGTTCTGCTCTGATTTTAGTTATTTCCTGCCTTCTGCTAGCTTTTGAATGTGTTTTCTCTTGCTTTTCTAGTTCTTTTAATTGTGATGTTAGGGTGTCAATTTTGGATCTTTCCTGCTTTCTCTTGTGGGCATTTAGTGCTATAAATTTCCCTCTACACACTGCTTTGAATGTGTCCCAGAGATTCTGGTATGTTGTGTCTTTGTTCTCCTTGGTTTCAAAGAACATCTTTATTTCTGCCTTCATTTCGTTATGTACCCAGTAGTCATTCAGGAGCAGGTTGCTCAGTTTCCATGTAGTTGAGCAGTTTTGAGTGAGTTTCTTAATCCTGAGTTCTAGTTTGATTGCACTGTGGTCTGAGAGACAGTTTGTTATAATTTCTGTTCTTTTACATTTGCTGAGGAGAGCTTTACTTCCAACTATGTGGTCAATTTTGGAATAGGTGTGGTGTGGTGCTGAAGAAAATGTATATTCTGTTGATTTGGGGTGGAGAGTTCTGTAGATATCTATTAGGTCTGCTTGGGGCAGAGCTGAGTTCAATTCCTGGGTATCCTTGTTAACTTTCTGTCTCATTGATCTGTCTAATGTTGACAGTGGAGTGTTAAAGTCTCCCATTATTATTGTGTGGGAGTGTAAGTCTCTTTGTAGGTCACTCAGGACTTGCTTTATGAATCTGGGTGCTCCTGTATTGGGTGCATATATATTTAGGATAGTTAGCTCTTCTTGTTGAATTGATCCCTTTATCATTATGTAATGGCCTTCTTTGTCTCTTTTGATCTTTGTTTGTTTAAAGTCTGTTTTATCAGAGATTAGGATTGCAACCCCTGCCTTTTTTTGTTTTCCATTTGCTTGGTAGATCTTCCTCCATCCTTTTATTTTGAGCCTATGTGTGTCTCTGCACGTGAGATGGGTTTCCTGAATACAGCACACTGATGGGTCTTGACTCTTTATCCAGTTTGCCAGTCTGTGTCTTTTAATTGGAGCATTTAGTCCATTTACCTTTAAAGTTAATATTGTTATGTGTGAATTTGATCCTGTCATTATGATGTTAGCTGGTGATTTTGCTCGTTAGTTGATGCAGTTTCTTCCTAGCCTTGATGGTCTTTACAATTTGGCATGATTTTGCGGTGGCTGGTACCGGTTGTTCCTTTCCATGTTTAGTGCTTCCTTCAGGAGCTCTTTTAGGGCAGGCCTGGTGGTGACAAAATCTCTCAGCATTTGCTTGTCTGAAAAGTATTTTATTTCTCCTTCACTTATGAAGCTTAGTTTGACTGGATATGAAATTCTGGGTTGAAAATTATTTTCTTTAAGAATGTTGGATATTGGCCCCCACTCTCTTCTGGCTTGTAGAATTTCTGCTGAGAGATCCGCTGTTAGTCTGATGGGCTTCCCTTTGTGGGTAACCTGACCTTTCTCTCTGGCTGCCCTTAACATTTTTTCCTTCACTTCAACTTTGGTGAATCTGACAATTATGTGTCTTGGAGTTGCTCTTCTCGAGGAGTATCTTTGTGGCATTCTCTGTATTTCCTGAATCTGAATGTTGGCCTGCCTTGCTAGATTGGGGAAGTTCTCCTGGATAATATCCTGCAGAGTGTTTTCCAACTTGGTTCCATTCTCCCCGTCCCTTTCAGGTACACCAATCAGCCGTAGATTTGGTCTTTTCACATAGTCCCATATTTCTTGGAGGCTTTGTTCATTTCTTTTTATTCTTTTTTCTCTAAGCTTCCCTTCTCGCTTCATTTCATTCATTTCATCTTCCATCACTGATACCCTTTCTTCCAGTTGATCGCATCAGCTCCTGAGGCTTCTGCATTCTTCACGTAGTTCTCGAGTCTTGGCTTTCAGCTCCATTAGCTCCTTTAAGCACTTCTCTGTATTGGTTATTCCAGTTATACATTCGTCTAAATTTTTTTCAAAGTTTTCAACTTCTTTGCCTTTGGTTTGAATTTCCTCCTGTAGCTCGGAGTACTTTGATCCTCTGAAGCCTTCTTCTCTCAGCTCGTCAAAGTCATTCTCCGTCCAGTTTTGTTCCGTTGCTGGTGAGGAGCTGTGTTCCTTTGGAGGAGGAGAGGCGCTCTGGTTTTTAGAGTTTCCAGTTTTTCTACTCTGTTTTTTCCCCATCTTTGTGGTTTTATCTACTTTTGGTCTTTGATGATGGTGATGTACAGATGGGTTTTTGGTGTGGATGTCCTTTCTGTTTGTTAGTTTTCCTTCTAACAGACAGGACCCTCAGCTGCAGGTCTGTTGGAGTTTGCTAGAGGTCCACTCCAGACCCTGTTTGCCTGGGTACCAGCAGCGGTGGCTGCAGAACAGCGGATTTTCATGAACCACGAATGCTGCTGTCTGATCATTCCTCTGGAAGTTTTGTCTCAGAGGAGTACCCAGCCGTGTGAGGTGTCAGTCTGCCCCTACTGGGGGGTGCCTCCCAGTTAGGCTGCTTGGGGGTCAGGGGTCAGGGACCCACTTGAGGAGGCAGTCTGCCCATTCTCAGATCTCCAGCTGCGTGGTGAGAGAACCACTGCTCTCTTCAAAGCTGTCAGACAGGGACATTTAAGTCTGCAGAGGTTACTGTTGTCTTTTTGTTTGTCTGTGCCCTGCCCTCAGAGGTGGAGCCTACAGAGGCAGGCAGGCCTTCTTGAGCTGTGGTGGGCTCCACCCAGTTGGAGCTTCCTGGCTGCTTTGTTTACCTAAGCAAGCCTGGGCAATGGCAGGTGCCCCTCCCCCAGCCTCGCTGCCGCCTTGCAGTTTGATCTCAGACTGCTGTGCTAGCAATCAGCAAGACTCCTTGGGCGTAGGACCCTCTGAGCCAGGTGCGGGATATAATCTCGTGGTGTGCCGTTCTTTAAGCCCATTGGAAAAGCACAGTATTCGGGTGGGAGTGACCCGATTTTCCAGGTGCTGTCTGTCACCCCTTTCTTTGACTAGGAAAGGGAACTCCCTGACCCCTTGCGCTTCCCGAGTGAGGCAATGCCTCACCCTGCTTCAGCTCATGCATGGTGCGCTGCACCCACTGTCCTGCGCCCTCTGTCTGGCACTCCCTAGTGAGATGAACCCGGAACCTCAGATGGAAATGCAGAAATCACCCGTCTTCTGCGTCGCTCACGCTGGGAGCTGTAGACCGGAGCTGTTCCTATTTGGCCATCTTGGCTCCAGCCCCTTTTTACATGCTTAAAACACATGTATAACCCATTTATATTTTAAATTTTTTTATATTGTTGTATGTATAATTTTCCAGCAAGTACAATAATTTGAAATGAAGCAGCAATCTGTAAGCACTAGTTACAGGATTAAAATAATGTAATCCTTATTACAGTTGCACACTTTTAATACCATGTGTGAGCTCAAAGACATTTAGTGATAAATCCCAAATGAAATTGCTGGGCAACTCTGAAGGTTCCGGTGGAAAATGCATTTAGTAAGTGTTCAAAGTTAGAAAACCATGAAGAATTGAAATTTACCTTTGATGCTGCTCTGCAGGGTGCTGGCAGTCAGGTAAAAGGCAAGCAGAGCCTGTGGTCGTCACATTCGGAGGCTGCGCATTGCAGAGCCATTACTGGACACTGACTCTGGTTGGTTTTTTTCTCAATTAGATTTGCTTCAATAGAAGAACAGGAAATGTTTCTCGAATAAACTGAATGCTTTTATAAATTAAAACCTCATGTATAAGTAGTTCAAGAAACTCAACTGTATTTCTTTTATTTTTTTATTTTTTATTTTTGAGACAAGGTGTTGCTCTGTTGCCCAGACTGGAGTACAGCAGTGCGATCACAGCTCACTTCAGTCTTGACCTCTTGGATTCAGGTGATCCTCCCACCTCAGCCTCCTGTGTAGTTAGGACTATAGGTAGGTGCAGTACGCCTGGCTAATGTTTTCTATTTTTTGTAGAGATGGGGTTTCACCATGTTGCTCAGGCTAATCTTGAATTCCTGACTTCAAGTGATTCACCTGCCTCAGGCTTCCAAGGTGATTATAGATGTGAGTCTCTACACTGGTCTCAACTTCATTTATTTAATTGAATGTTTAGAGGGAGCAACTTAACTCTCAGCAAATTAAGATCTGCCAAATATGTATGTACACACATACACACATAATTTCACATATAATAGTCTGCTATATATGTTTCTGGTTCAAACTTCTTTGTGGATCCCTTTTGGATGGTCAAGAAGTATTTTAAACCCTCAATTAAATTAAACAGTGTCTTTGTTTTAAATTAGCTTCTTCTTGGTCAATTCAGTCTCTTTTGTCTAAATGCTCAGGTTTGTCTTTTTAATTGAAAAAAATTATTATTTTAGTGTATCTACACAATCATTCCTCTCAAGATAGCATTTGAGTACAAAGAAAAACAATGTGTGCTCTGTTAATGACTGAGTCTCAAGTCCAGGCTTAAGTTTTTTGCTGTTTCCTGCACCCTTTAATCATCCACGCCATGCCTGGACTATCCCTTACCACACTTGATCTCTCATAAACCTTCTGGCATCAACTGATGGAGCCACTTCTGGTAAACTTGTTTCTCTCAACATCGGCCATGAGCAATGTTTTCAATCTCCCCAGCCAACGAGTGTCACTTTGCTCTTGCTGGAGTATAACATCTATGGGGCTGGGTGCGGTGGCTCATGCCTGTAATCCCAGCACTTTGGGAGGCCAAGGCGAGTGCATCACCTGAGGTCAGGAGTTTGAGACCAGCCTGATTAACACGGTGAAACCCAGTCTCTACTAAAAATACAAAATTAGCCAGGGGTGGTGGCGCATGCCTGTAATCCCAACTACTTGGGAGACTGAGGCAGGAGAATCATTTGAACCAGGGAGGCAGAGGTTGCAGTGCAACAAGAGCAAAACTATGTTTCAGAAACAAAAAAACAAGACAACAACAATAGCAACATCTATGGGGCTCCGTGGACCCCTGTACCTGGCCCCTGGCTTGAGTATTCTACCCTTTGGCTTCTAGGGGGCAATGTCACCCCTCATAAAGGAATCTTCTTACAGCCCTTCTGGGTCACTTGTTACTTTTCACATCCCCCATTAAGAATGCTCAGTAACTTCTAGATCCCAGTAGGTTCTCTCCTCACGTCCCTTGTGCTGGTGCAGGGAAGGGACATCGTGCAAGACACTTCCGTTCAGAGACCAAAACAGGAAGCGGGACAGGAGACCTCTGTGTTCAGCATCAGTCTCAACATAGCTGGGATGTCTCTACCTTACTCCTTCAAGTTTTAGCTCTGTTTGAGGCCCCTACTATTGGGTGCCTTGCTTTCTTCTTTGATTTCCCTCACTATTTCATAAGATCCTCTTTCCCTTTCCTGTCTGGTAGAAACACTCCTATATCATGTCCCCCTTCTCCTTACCCTGTATACTTTCTGGGTTTTAGATAGTACCTCCTTTTTTTCTTTGCAGGAGCACTAAACTTCAAGCTTAGTCTTAATGGTGAATGAGGTACAGGCAATTTAATTTATAATGAAAATACGGCCGGGCACAGTGGCTCACGCCTGTAATCCCAGCACTTTGGGAGGCTGAGGTGGGTGGATCACCTGAGGTCAGGAATTTGAAAACAGCCTGGCCAACATGGTGAAACCTTGTCTCCACTAAAAATACAAAAATTAGCTGAGCATGGTGGTGGGTGCCTGTAATCCCAGCTACTTGGGAGGCTGAGGCACAGGAATCGCTTGAACCCAGGAGGTGGAGGTTGTGGTAAGCGGAGATCGCACCACTGCACTCCAGCCTGGGCGACAAAGCGAGACTTGGTCTCAAAAAAATAAATAAATAAATAAAAATAAATTGTTTTTATGTTTTCAAAATATACTCTGGGTTGCACTATAAAGTGCTGTGTTTAGTGGCTTCTGCCTTGTGCTCATCACATGGAAGTGTGAGCAAGTGTCTTGAGCCATTCTCTAAACTCATCATTCCGTAATGCCTCTACCATTCAGTTTATAAGATGACATTTTCTTAACACACTCTTCCTAAGATCATCCCACTGCTCTTACCTTATCATTCACTTTCCTAGGCAAGGCCTTTCTGTTTTGGACTTACATCTGCCGTATGAATATGAAAGGCGGAATAACAGGCTGGGTGCTGGAAAAAGATTTCCTGGTGTCAAAATTCTTACCTAATTATGGGAAGTAAGACAAATCATTTAATGTCTCCGTGCTTCAGTTTTCTTATCTTTAGTCATGAGTGTAATAACAGTTGTTGTGACAATTAAATGAGGTAATGCATAGAAAATGCTTAGAAAATGCACAGGACCTGGCATGGGATTCGTGCCCTGTGCATTTTAGCTGTTATTACGATAGAATCAAAGCATCTCAGGTGTGGAAAGATGGTAGGTACAACCTTGCAGTGTTTGAAACTGCCTTTAACATTCCTGTAAAATATTTATACAACTTCTCCTTGAATGCCTCAAGTAAAAGGAGACTCGATACCTTCTAAGGTAATTCATTCTTTCATTGGAGAAGTCTGGCTATTATAATGTTCTCCTTTACCTCAAGTAAATATCTATCCCCCTGAAATATCTATTTATTATTCCTAGAAAGGTTTCTTGGGGCCATTTAAAATAAATCTAATTTTACTTTTATTTGAGAGTCCTTTTAATATTTGAGCATAGTCAGCATGCCTGTTTCTTTTTCATATTGCATTTCCTCATGAGCTGAACAGTCAGGTATCTCTAATTGGTCCTCTTACAATATGGTTTAAGTCCCTTTACCATCTGGGCATGGGAGGTCATGTAAGCTATCACAACTGCAGCAAGATCCTGTTATCCTGACAACAAATGGATTAGGGACAACTATGTTTCTTAAAATCAGACTAGAAGCATCCTTTAGCTCTTTGGAAATTATAGTCCACATGCAAGCATGGTAATTCTCCTTTTATCCAATGTCACATAGAAATCAGGTGCTCTACAGTTGAGAGTTTTCCAAATAATATTAACCCTTTAAGCACCAAATTTTTGGGGGGTAGCAAGTGTGATACTTCCCCAATTCTACAATCTTATGGTAGATTTTGTCAGTGCATACAAAGTTATAGAATATACAGTGAATCCCAAACTTGACAGTTTAAAATTTGGAAAGTCAGAGGTAACGCATGCCTACAAATCACTGTAGAGCTTGGCAGTAGTGAACCATGTCAATTAGAATAACTCTGAGAATGCGCTGCAAGTTTAGAGGTGGGGGAGATCACCTCCATCAGGTGTGGTCAGGAGTGAAGATCAGGTGTGATCAGGAGTGAGGATCAGGTGTGGTCGGGAGTGGGGATCAGGTGTGGCCAAGAGTGAGGATCAGGTGTGGTCAGGAGCGAGTGGGGAGGACTTCATGGTCAAGCGGGAAGACAGAATGGCCCTTCAGAATGGCTAGAGTTTTAAGAGGTAGAAATGTCAAGTATAACATTACAGGAGAAATTGCACTGAAGTGCTGGGGGGGGTATGTACAAGAAGTGAGGGAGCACAAAGTGAAATCAGGAAGCAGTGGAACAGCAGGCTTCCATTCAGCAATAAAAATTAAAGTGCACCTGCGCAATCCAGATCTTGCAGTGTTGAACATGGACAAGTCATTTCAGGCCTGATGGTGTTTATAGATTGTTGGGACAGAGAAATAGAAAGCAAATAACACAAATAAATGAAACAATTATAATTCTGATATTTCAATAAAGGAAAGATACAAAATGTGGTGAGAATATATAACAATAAGTCCCTGTGAGTTCAGAGATGGCTTTCTGGGATTGACATTTAAGCTGGGAAGTAGAAGTAGAAGTTCCCTGGGTAATATGGAAAGCTGGAAATTAAGAAACTTTACAAACACCAGGAATCACATGGATAAAGCCCCAGAGGCAGGATGGGGTGTATATTATTGGAGGAACTTGGAGTGGTTAGAGTTCAGAGAGTAAGGAAGAGACAAGCAAGAGATGGGGGAGGGAGGTCTGACGTTTCAGGTTAATCCTGACAGCAATAGAATTGCCAGGCTTTGAGCACACACTGACAGGGGCAGATTTGCATTTGTAAATGAAAGGCAATGAATTGAAGGGACATGATGGATTTGCCATCCAAGTAGATGAGCTTGCCTAGAGAACGAGTGTGGCACCAAGGAAAGATCACCTAACATTGAACCATTAAAAATGCCAGCATTAGAACATCAGAGAGTGGGAGAGAAGCTAATTAAGAAGATTCTGAGAGACTAGGGATCATAAGGACCACACACTTTAATCAACAAGTCAAGAAGTGATTTTGACCTCTTGGTCCAACTCTAAGACAACCATCCTAACAAAAATTTTCCAAATCCATGGAGCAAACAGTCACTTCTTCATCCCCAAAAACGGCCATAATATTTATTTTTCTTTTCCTTCCTGTCACTCTCTACCCTGAAACATATTTATTTATCTATTTATTTATTTTTAAGACAGAATCTCATTCTGTTGCCCGGGCTGGAGTGCAGTGGTACAATCTCAGCTCACCTCAACCTCCACCTCCCAAGTTCAAGCAATTCTCCTGCATCAACCTTCTGAGTAGCTTGGATTACAAGCGCGCACCACCACGCCCGGTGAATTTTTGCATTTTTAGTAGAGACAGGGTTTTGCCATGTTGGCCAGGCTGGTCTCGAACTCCTGACCTGAGATGATCCACCCGCCTCGGCCTCCCAAAGTGCTGGGATTACAGGCATGAGCCACCGCGCCTGACCAGAAATATAGTTGTTTACAAACACATCCTTTCTATAGACTAAAAGCTTTCAATGTCAGAATCTATTTTTTGTTCATCTTTGAATCACTCAAAGAACTGAACAGAGAGATTTGTACATGAGTACTCAGTTTTTTATTGAATTAAAAAAATGGTCTAATTTGTGAAACAGGAAGATGAATGGTAGATGTGGTTATGCACAGGAGAGATTGCTGAGGAGAGAGA");
  Align<DnaString, ArrayGaps> alignment;
  resize(rows(alignment), 2);
  assignSource(row(alignment, 0), query);
  assignSource(row(alignment, 1), ref);
  int k=7;
  map<kmer_t, vector<int> > queryMap, refMap;
  StoreKmerToPos(query, k, queryMap);
  StoreKmerToPos(ref, k, refMap); 
  TSeedSet queryMatches;
  StoreKmerMatches(queryMap, refMap, k, queryMatches);
  String<Seed<Simple> > chain;           
  chainSeedsGlobally(chain, queryMatches, SparseChaining());                                                                                                       
  int result;
  AlignConfig<false, true, true, false> alignConfig;
    
  Score<int, Simple> scoringScheme(2, -1, -2);
  result = bandedChainAlignment(alignment, chain, scoringScheme, scoringScheme,  alignConfig);
	  

}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions