| Example Program Global Alignments Computing an optimal global alignment between two sequences. A tutorial about global alignments.
| 1 | #include <iostream>
| | 2 | #include <seqan/align.h>
| | 3 | #include <seqan/graph_align.h>
| | 4 |
| | 5 | using namespace seqan;
| | 6 |
| | 7 | int main()
| | 8 | {
|
| 9 | typedef String<Dna> TSequence;
| | 10 | TSequence seq1 = "atcgaatgcgga";
| | 11 | TSequence seq2 = "actcgttgca";
|
| 12 | Score<int> score(0, -1, -1, -2);
|
| 13 | Align<TSequence, ArrayGaps> align;
| | 14 | resize(rows(align), 2);
| | 15 | assignSource(row(align, 0), seq1);
| | 16 | assignSource(row(align, 1), seq2);
| | 17 |
| | 18 | ::std::cout << "Score = " << globalAlignment(align, score) << ::std::endl;
| | 19 | ::std::cout << align << ::std::endl;
|
| 20 | ::std::cout << "Score = " << globalAlignment(align, score, MyersHirschberg()) << ::std::endl;
| | 21 | ::std::cout << align << ::std::endl;
|
| 22 | typedef StringSet<TSequence, Dependent<> > TStringSet;
| | 23 | typedef Graph<Alignment<TStringSet, void> > TAlignmentGraph;
| | 24 |
| | 25 | TStringSet string_set;
| | 26 | appendValue(string_set, seq1);
| | 27 | appendValue(string_set, seq2);
| | 28 | TAlignmentGraph alignment_graph(string_set);
| | 29 |
| | 30 | ::std::cout << "Score = " << globalAlignment(alignment_graph, score, Gotoh()) << ::std::endl;
| | 31 | ::std::cout << alignment_graph << ::std::endl;
| | 32 | return 0;
| | 33 | }
|
|