hmmprofalign

Align a query sequence to a profile using hidden Markov model based alignment

Syntax

Alignment = hmmprofalign(Model, Seq, 
                         'PropertyName', PropertyValue...)
[Alignment, Score] = hmmprofalign(Model, Seq)

hmmprofalign(..., 'ShowScore', ShowScoreValue)
hmmprofalign(..., 'Flanks', FlanksValue)
hmmprofalign(..., 'ScoreFlanks', ScoreFlanksValue)
hmmprofalign(..., 'ScoreNullTransitions', ScoreNullTransValue)

Arguments

Model

Hidden Markov model created with the function hmmprofstruc.

Seq

Amino acid or nucleotide sequence. You can also enter a structure with the field Sequence.

ShowScore

Property to control displaying the scoring space and the winning path. Enter either true or falase. The default value is false.

Flanks

Property to control include the symbols generated by the FLANKING INSERT states in the output sequence. Enter either true or false. The default value is false.

ScoreFlanksProperty to control including the transition probabilities for the flanking states in the raw score. Enter either true or false. Default value is false.
ScoreNullTransProperty to control adjusting the raw score using the null model for transitions (Model.NullX). Enter either true or false. The Default value is false.

Description

Alignment = hmmprofalign(Model, Seq, 'PropertyName', PropertyValue...) returns the score for the optimal alignment of the query amino acid or nucleotide sequence (Seq) to the profile hidden Markov model (Model). Scores are computed using log-odd ratios for emission probabilities and log probabilities for state transitions.

[Alignment, Score] = hmmprofalign(Model, Seq) returns a string showing the optimal profile alignment.

Uppercase letters and dashes correspond to MATCH and DELETE states respectively (the combined count is equal to the number of states in the model). Lowercase letters are emitted by the INSERT states. For more information about the HMM profile, see hmmprofstruct.

[Score, Alignment, Prointer] = hmmprofalign(Model, Seq) returns a vector of the same length as the profile model with indices pointing to the respective symbols of the query sequence. Null pointers (NaN) mean that such states did not emit a symbol in the aligned sequence because they represent model jumps from the BEGIN state of a MATCH state, model jumps from the from a MATCH state to the END state, or because the alignment passed through DELETE states.

hmmprofalign(..., 'ShowScore', ShowScoreValue)when ShowScore is true, displays the scoring space and the winning path .

hmmprofalign(..., 'Flanks', FlanksValue) when Flanks is true, includes the symbols generated by the FLANKING INSERT states in the output sequence.

hmmprofalign(..., 'ScoreFlanks', ScoreFlanksValue) when ScoreFlanks is true, includes the transition probabilities for the flanking states in the raw score.

hmmprofalign(..., 'ScoreNullTransitions', ScoreNullTransitionValue) when ScoreNullTransitions is true, adjusts the raw score using the null model for transitions (Model.NullX).

Examples

load('hmm_model_examples','model_7tm_2') % load a model example
load('hmm_model_examples','sequences')  % load a sequence example
SCCR_RABIT=sequences(2).Sequence; 
[a,s]=hmmprofalign(model_7tm_2,SCCR_RABIT,'showscore',true)

See Also

Bioinformatics Toolbox functions gethmmprof, hmmprofestimate, hmmprofgenerate, hmmprofmerge, hmmprofstruct, pfamhmmread, showhmmprof


© 1994-2005 The MathWorks, Inc.