diff --git a/melhlprfns.cc b/melhlprfns.cc index 820b857373a7dda16f8a9cd1eaa310527443f54f..0ce17c03b5d785ca73f6d68fec05d80e4425f90b 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); }