From 985d31b60c4fbbcad15b540bfc625e75099780fc Mon Sep 17 00:00:00 2001
From: Matthew Webster <mwebster@fmrib.ox.ac.uk>
Date: Tue, 22 Jun 2010 09:44:50 +0000
Subject: [PATCH] fixed uninit bug + some tidying

---
 melhlprfns.cc | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/melhlprfns.cc b/melhlprfns.cc
index 820b857..0ce17c0 100644
--- a/melhlprfns.cc
+++ b/melhlprfns.cc
@@ -514,15 +514,15 @@ namespace Melodic{
 
     RowVector eta(30*n1);
     float rangestepsize = (urange - lrange) / eta.Ncols(); 
-    for(int ctr_i = 0; ctr_i < eta.Ncols(); ctr_i++){ 
-      eta(ctr_i+1) = lrange + rangestepsize * (ctr_i);
+    for(int ctr_i = 1; ctr_i <= eta.Ncols(); ctr_i++){ 
+      eta(ctr_i) = lrange + rangestepsize * (ctr_i);
     }
 
     RowVector teta(10*n1);
     teta = 0;
     float stepsize = (bp - bm) / teta.Ncols();
-    for(int ctr_i = 0; ctr_i < teta.Ncols(); ctr_i++){ 
-      teta(ctr_i+1) = stepsize*(ctr_i);
+    for(int ctr_i = 1; ctr_i <= teta.Ncols(); ctr_i++){ 
+      teta(ctr_i) = stepsize*(ctr_i);
     }  
     
     RowVector feta(teta);
@@ -542,7 +542,8 @@ namespace Melodic{
     }
     
     RowVector Res(n1); //invert the CDF
-    for(int ctr_i = 1; ctr_i < eta.Ncols(); ctr_i++){
+    Res = 0;
+    for(int ctr_i = 1; ctr_i < eta.Ncols(); ctr_i++){ //Should this be <= instead of <?
       if(floor(claw(ctr_i))>floor(claw(ctr_i+1))){
 	Res(int(floor(claw(ctr_i)))) = eta(ctr_i);
       }
-- 
GitLab