From 58f4c67ba1f03ff198c02f21a79c421779b1e167 Mon Sep 17 00:00:00 2001 From: gmungoc Date: Fri, 23 Feb 2018 16:12:16 +0000 Subject: [PATCH] JAL-2599 corrected case-insensitive symbol indexing --- src/jalview/datamodel/HiddenMarkovModel.java | 2 +- test/jalview/datamodel/HiddenMarkovModelTest.java | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/jalview/datamodel/HiddenMarkovModel.java b/src/jalview/datamodel/HiddenMarkovModel.java index 36d32ed..c6545e2 100644 --- a/src/jalview/datamodel/HiddenMarkovModel.java +++ b/src/jalview/datamodel/HiddenMarkovModel.java @@ -676,7 +676,7 @@ public class HiddenMarkovModel char c = Character.toUpperCase(symbol); if ('A' <= c && c <= 'Z') { - return symbolIndexLookup[symbol - 'A']; + return symbolIndexLookup[c - 'A']; } return -1; } diff --git a/test/jalview/datamodel/HiddenMarkovModelTest.java b/test/jalview/datamodel/HiddenMarkovModelTest.java index d13b0bc..872aebf 100644 --- a/test/jalview/datamodel/HiddenMarkovModelTest.java +++ b/test/jalview/datamodel/HiddenMarkovModelTest.java @@ -59,6 +59,8 @@ public class HiddenMarkovModelTest { { double iep = hmm.getInsertEmissionProbability(2, 'A'); assertEquals(iep, Math.pow(Math.E, -2.68618), 0.0001d); + // symbol is not case-sensitive + assertEquals(iep, hmm.getInsertEmissionProbability(2, 'a')); iep = hmm.getInsertEmissionProbability(5, 'T'); assertEquals(iep, Math.pow(Math.E, -2.77519), 0.0001d); -- 1.7.10.2