Class Specialization
ProfileSeq Score
Score for profile-to-sequence alignments.
Using this Score specialization, you can use profiles for the horizontal and sequences for the vertical sequence in the pairwise DP alignment functions.
Scoring works as follows. The integer SEQAN_CONSENSUS_UNITY and fractions thereof are used to express scores. Gap opens in the profile are scored proportional to the number of gaps in the profile with two times unity, gap extends with one times unity at the position. Gap opens in the sequence are scored with two times unity, gap extends in the sequence with unity. Alignments of profile characters to sequence characters are scored with the fraction of profile characters that match the sequence characters times unity.
Score
ProfileSeq Score
class Score<TValue, ProfileSeqScore>;
Include Headers
seqan/align_profile.h
Parameters
TValue
The integer type to use for representing scores.
Specialization of
Metafunctions
DefaultFindBeginPatternSpecType of the default findBegin pattern specialization, given a score. (Score)
SequenceEntryForScoreReturns representation type for a character of a position in a sequence. (Score)
ValueType of the items in the container or behind an iterator. (Score)
Member Functions
ScoreConstructor (Score)
Functions
alignmentEvaluationGiven a multiple alignment, this function calculates all kinds of alignment statistics. (Score)
assignProfileAssign profile to ProfileSeg Score.
bandedChainAlignmentComputes the best global pairwise alignment between two sequences given a non-empty seed chain. (Score)
buildAlignmentGraphBuilds an Alignment Graph from a set of input alignments. (Score)
globalAlignmentComputes the best global pairwise alignment. (Score)
globalAlignmentScoreComputes the best global pairwise alignment score. (Score)
globalMsaAlignmentComputes a global multiple alignment. (Score)
localAlignmentComputes the best pairwise local alignment using the Smith-Waterman algorithm. (Score)
matchRefinementRefines (i.e. cuts into smaller parts) a set of pairwise segment matches in such a way that none of the segments partly overlap. They are either identical (fully overlapping) or non-overlapping. (Score)
scoreReturns the score for aligning the entries entryH and entryV. (Score)
scoreGapScore for gaps. (Score)
scoreGapExtendScore for extending gaps. (Score)
scoreGapExtendHorizontalReturns the score for extending a gap in horizontal direction. (Score)
scoreGapExtendVerticalReturns the score for extending a gap in vertical direction. (Score)
scoreGapHorizontalReturns the score for a gap in horizontal direction. (Score)
scoreGapOpenScore for opening a gap. (Score)
scoreGapOpenHorizontalReturns the score for opening a gap in horizontal direction. (Score)
scoreGapOpenVerticalReturns the score for opening a gap in vertical direction. (Score)
scoreGapVerticalReturns the score for a gap in vertical direction. (Score)
scoreMatchMatch score. (Score)
scoreMismatchMismatch score. (Score)
sequenceEntryForScoreHelper function for element access, depending on score type. (Score)
setScoreGapSet gap opening and extension score. (Score)
setScoreGapExtendSet gap extension score. (Score)
setScoreGapOpenSet gap opening score. (Score)
setScoreMatchSet match score. (Score)
setScoreMismatchSet mismatch score. (Score)
splitAlignmentCompute split alignments. (Score)
sumOfPairsScoreGiven a multiple alignment, this function calculates the sum-of-pairs score. (Score)
Examples
The following example uses the ProfileSeq Score to align a sequence against a profile. Note that we print the gap state for each position since profiles cannot be printed to one stdout character.
1#include <iostream>
2#include <seqan/align_profile.h>
3
4int main()
5{
6    typedef seqan::ProfileChar<seqan::Dna, int> TDnaProfile;
7    typedef seqan::String<TDnaProfile> TProfileString;
8
9    TProfileString profile = "CGAT";
10    seqan::DnaString seq = "CGGAAT";
11
12    seqan::Gaps<TProfileString> gapsH(profile);
13    seqan::Gaps<seqan::DnaString> gapsV(seq);
14
15    seqan::Score<int, seqan::ProfileSeqScore> sScheme(profile);
16
17    int val = globalAlignment(gapsH, gapsV, sScheme, seqan::NeedlemanWunsch());
18    std::cout << "score value = " << val << "\n";
19
20    std::cout << "gaps in profile/sequence\n"
21              << "pos\tG\tS\n";
22    for (unsigned i = 0; i < length(gapsH); ++i)
23        std::cerr << i << "\t" << isGap(gapsH, i) << "\t" << isGap(gapsV, i) << "\n";
24
25    return 0;
26}
score value = -2097152
gaps in profile/sequence
pos G   S
0   0   0
1   1   0
2   0   0
3   1   0
4   0   0
5   0   0
SeqAn - Sequence Analysis Library - www.seqan.de
 

Page built @2014/10/13 16:13:00