MDA
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups
Public Member Functions | List of all members
MDAT::HMM Class Reference

#include <HMM.hpp>

Public Member Functions

 HMM (char type)
 Constructor. More...
 
short num_states () const
 Returns the number of states. More...
 
short num_ins_states () const
 The number of insert states. More...
 
const Matrix< float > & trans_probs () const
 Returns the transition probabilities. More...
 
const std::vector< float > & ins_probs () const
 Returns the insertion probabilities. More...
 
const Matrix< float > & match_probs () const
 Returns the match probabilities. More...
 
const float * init_distribution () const
 Returns initial distribution. More...
 
template<typename DataType >
void calculate_insertion_probs (const DataType &aln, std::vector< float > &ins_probs)
 Calculates the insertion probabilities for an alignment. More...
 
template<typename DataType >
void calculate_insertion_probs_splitted (const DataType &aln_vec, std::vector< float > &ins_probs)
 Calculates the insertion probabilities for set of alignments. More...
 
template<typename DataType >
void calculate_match_probs (const DataType &aln1, const DataType &aln2, Matrix< float > &match_probs)
 Calculates the match probabilities for two alignments. More...
 
template<typename DataType >
void calculate_match_probs_splitted (const DataType &aln_vec1, const DataType &aln_vec2, Matrix< float > &match_probs, size_t start, size_t end)
 Calculates the match probabilities for two sets of alignments. More...
 

Detailed Description

The HMM class using probabilities from ProbCons.

Constructor & Destructor Documentation

MDAT::HMM::HMM ( char  type)

Constructor.

Parameters
typeThe probabilities to use.

Member Function Documentation

template<typename DataType >
void MDAT::HMM::calculate_insertion_probs ( const DataType &  aln,
std::vector< float > &  ins_probs 
)

Calculates the insertion probabilities for an alignment.

Template Parameters
DataTypeA SequenceSet.
Parameters
[in]alnThe alignment
[out]ins_probsThe insertion probabilities.
template<typename DataType >
void MDAT::HMM::calculate_insertion_probs_splitted ( const DataType &  aln_vec,
std::vector< float > &  ins_probs 
)

Calculates the insertion probabilities for set of alignments.

Parameters
[in]aln_vecThe set of alignments
[out]ins_probsThe insertion probabilities in a single vector.
template<typename DataType >
void MDAT::HMM::calculate_match_probs ( const DataType &  aln1,
const DataType &  aln2,
Matrix< float > &  match_probs 
)

Calculates the match probabilities for two alignments.

Template Parameters
DataTypeA SequenceSet.
Parameters
[in]aln1The first alignment.
[in]aln2The second alignment.
[out]match_probsThe resulting match probabilities.
template<typename DataType >
void MDAT::HMM::calculate_match_probs_splitted ( const DataType &  aln_vec1,
const DataType &  aln_vec2,
Matrix< float > &  match_probs,
size_t  start,
size_t  end 
)

Calculates the match probabilities for two sets of alignments.

Template Parameters
DataTypeA SequenceSet.
Parameters
[in]aln1The first alignment.
[in]aln2The second alignment.
[out]match_probsThe resulting match probabilities in a single matrix.
const float* MDAT::HMM::init_distribution ( ) const
inline

Returns initial distribution.

Returns
Initial distribution
const std::vector<float>& MDAT::HMM::ins_probs ( ) const
inline

Returns the insertion probabilities.

Returns
Insertion probabilities.
const Matrix<float>& MDAT::HMM::match_probs ( ) const
inline

Returns the match probabilities.

Returns
Match probabilities.
short MDAT::HMM::num_ins_states ( ) const
inline

The number of insert states.

Returns
The number of insert states.
short MDAT::HMM::num_states ( ) const
inline

Returns the number of states.

Returns
The number of states in the HMM.
const Matrix<float>& MDAT::HMM::trans_probs ( ) const
inline

Returns the transition probabilities.

Returns
Transition probabilities.