## org.biojava.bio.program.hmmer
Class HmmerProfileHMM

    java.lang.Object
      org.biojava.utils.AbstractChangeable
          org.biojava.bio.dp.SimpleMarkovModel
              org.biojava.bio.dp.ProfileHMM
                  org.biojava.bio.program.hmmer.HmmerProfileHMM

All Implemented Interfaces:
  Serializable, MarkovModel, Changeable

    public class HmmerProfileHMM

extends ProfileHMM

This is a class for representing HMMER generated Profile HMM. It differs from the normal ProfileHMM only in the states which are connected: - there are no insert <-> delete transitions allowed - there is no iO initial insert state (between begin and initial match states) - there is not iN final insert state (between final match state and end state)

Author:
  Lachlan Coin
See Also:
  Serialized Form

Field Summary

Fields inherited from class org.biojava.bio.dp.SimpleMarkovModel
`serialVersionUID`

Fields inherited from interface org.biojava.bio.dp.MarkovModel
`ARCHITECTURE, PARAMETER`

Constructor Summary
`protected` `HmmerProfileHMM(Alphabet alpha, int columns, DistributionFactory matchFactory, DistributionFactory insertFactory, String name)`

Method Summary
`protected void` `connectModel()` This is called by constructor in setting up the allowed transitions in the model
`protected static double` `log2(double x)`
`protected EmissionState` `makeNewInsertState(String str, Annotation ann, int[] adv, Distribution dis)`
`protected EmissionState` `makeNewMatchState(String str, Annotation ann, int[] adv, Distribution dis)`
`double` `transScore(State from, State to, Symbol symFrom, Symbol symTo)`

Methods inherited from class org.biojava.bio.dp.ProfileHMM
`columns, getDelete, getInsert, getMatch`

Methods inherited from class org.biojava.bio.dp.SimpleMarkovModel
`addState, advance, containsTransition, createTransition, destroyTransition, emissionAlphabet, getChangeSupport, getWeights, heads, magicalState, removeState, setWeights, stateAlphabet, toString, transitionsFrom, transitionsTo`

Methods inherited from class org.biojava.utils.AbstractChangeable
`addChangeListener, addChangeListener, generateChangeSupport, hasListeners, hasListeners, isUnchanging, removeChangeListener, removeChangeListener`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.biojava.utils.Changeable
`addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener`

Constructor Detail

### HmmerProfileHMM

    protected HmmerProfileHMM(Alphabet alpha,
                              int columns,
                              DistributionFactory matchFactory,
                              DistributionFactory insertFactory,
                              String name)
                       throws IllegalSymbolException,
                              IllegalTransitionException,
                              IllegalAlphabetException

Throws:
  `IllegalSymbolException`
  `IllegalTransitionException`
  `IllegalAlphabetException`

Method Detail

### connectModel

    protected void connectModel()
                         throws ChangeVetoException,
                                IllegalSymbolException,
                                IllegalTransitionException,
                                IllegalAlphabetException

  This is called by constructor in setting up the allowed transitions in the model

  Overrides:
    `connectModel` in class `ProfileHMM`
  Throws:
    `ChangeVetoException`
    `IllegalSymbolException`
    `IllegalTransitionException`
    `IllegalAlphabetException`

### transScore

    public double transScore(State from,
                             State to,
                             Symbol symFrom,
                             Symbol symTo)
                      throws IllegalSymbolException

  Throws:
    `IllegalSymbolException`

### log2

    protected static double log2(double x)

### makeNewInsertState

    protected EmissionState makeNewInsertState(String str,
                                               Annotation ann,
                                               int[] adv,
                                               Distribution dis)

### makeNewMatchState

    protected EmissionState makeNewMatchState(String str,
                                              Annotation ann,
                                              int[] adv,
                                              Distribution dis)