From 15151ac125194b2d822c47e26aab74b1f8b241c0 Mon Sep 17 00:00:00 2001 From: kiran Date: Fri, 3 Apr 2009 15:47:47 +0000 Subject: [PATCH] Corrected the use of the prior. git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@284 348d0f76-0448-11de-a6fe-93d51630548a --- .../sting/playground/fourbasecaller/BasecallingBaseModel.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/java/src/org/broadinstitute/sting/playground/fourbasecaller/BasecallingBaseModel.java b/java/src/org/broadinstitute/sting/playground/fourbasecaller/BasecallingBaseModel.java index 6debe4ed5..a817d9c7a 100755 --- a/java/src/org/broadinstitute/sting/playground/fourbasecaller/BasecallingBaseModel.java +++ b/java/src/org/broadinstitute/sting/playground/fourbasecaller/BasecallingBaseModel.java @@ -94,6 +94,8 @@ public class BasecallingBaseModel { } double[][] probdist = new double[4][4]; + double probPrev = (cycle == 0) ? 1.0 : QualityUtils.qualToProb(qualPrev); + int baseIndex = (cycle == 0) ? 0 : baseToBaseIndex(basePrev); for (int basePrevIndex = 0; basePrevIndex < ((cycle == 0) ? 1 : 4); basePrevIndex++) { for (int baseCurIndex = 0; baseCurIndex < 4; baseCurIndex++) { @@ -106,7 +108,7 @@ public class BasecallingBaseModel { DoubleMatrix1D Ax = alg.mult(inverseCovariances[basePrevIndex][baseCurIndex], sub); double exparg = -0.5*alg.mult(sub, Ax); - probdist[basePrevIndex][baseCurIndex] = norms[basePrevIndex][baseCurIndex]*Math.exp(exparg); + probdist[basePrevIndex][baseCurIndex] = (baseIndex == basePrevIndex ? probPrev : 1.0 - probPrev)*norms[basePrevIndex][baseCurIndex]*Math.exp(exparg); } }