Integer alpha = 0;
final int AMINO = 0;
final int DNA = 1;
+ final int RNA = 2;
if ("amino".equals(hmm.getAlphabetType()))
{
alpha = AMINO;
{
alpha = DNA;
}
+ else if ("RNA".equals(hmm.getAlphabetType()))
+ {
+ alpha = RNA;
+ }
int size = 0;
.getCharAt(hmm.getNodeAlignmentColumn(l));
character = Character.toUpperCase(character);
- boolean containedN;
+ boolean containedD;
+ boolean containedR;
boolean containedA;
- containedN = ResidueProperties.nucleotideBackgroundFrequencies
+ containedD = ResidueProperties.dnaBackgroundFrequencies
.containsKey(character);
containedA = ResidueProperties.aminoBackgroundFrequencies
.containsKey(character);
+ containedR = ResidueProperties.rnaBackgroundFrequencies
+ .containsKey(character);
if (!Comparison.isGap(character)
- && ((alpha == DNA && containedN)
+ && ((alpha == DNA && containedD)
|| (alpha == AMINO && containedA)))
{
size++;
character = Character.toUpperCase(character);
boolean containedN;
boolean containedA;
+ boolean containedR;
- containedN = ResidueProperties.nucleotideBackgroundFrequencies
+ containedN = ResidueProperties.dnaBackgroundFrequencies
.containsKey(character);
containedA = ResidueProperties.aminoBackgroundFrequencies
.containsKey(character);
+ containedR = ResidueProperties.rnaBackgroundFrequencies
+ .containsKey(character);
if (!Comparison.isGap(character)
&& ((alpha == DNA && containedN)
}
if (alpha == DNA)
{
- freq = ResidueProperties.nucleotideBackgroundFrequencies
+ freq = ResidueProperties.dnaBackgroundFrequencies
+ .get(character);
+ }
+ if (alpha == RNA)
+ {
+ freq = ResidueProperties.rnaBackgroundFrequencies
.get(character);
}
Double doubleValue = Math.log(prob / freq);