X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=libshuff.cpp;h=5f1bdefe6ea95e36c6b30800a690af2ceecb1fbb;hp=002cd52d2aff36d8ac70d4ed9b919d8a8d0a2033;hb=a8e2df1b96a57f5f29576b08361b86a96a8eff4f;hpb=510b1cfc25cd79391d6973ca20c5ec25fb1bb3b2 diff --git a/libshuff.cpp b/libshuff.cpp index 002cd52..5f1bdef 100644 --- a/libshuff.cpp +++ b/libshuff.cpp @@ -17,14 +17,14 @@ void swap(int& i,int& j){ int t = i; i = j; j = t; } Libshuff::Libshuff(FullMatrix* D, int it, float step, float co) : matrix(D), iters(it), stepSize(step), cutOff(co){ try{ + m = MothurOut::getInstance(); groupNames = matrix->getGroups(); groupSizes = matrix->getSizes(); numGroups = matrix->getNumGroups(); - initializeGroups(matrix); } catch(exception& e) { - errorOut(e, "Libshuff", "Libshuff"); + m->errorOut(e, "Libshuff", "Libshuff"); exit(1); } } @@ -43,13 +43,14 @@ void Libshuff::initializeGroups(FullMatrix* matrix){ } int index=0; for(int i=0;ierrorOut(e, "Libshuff", "initializeGroups"); exit(1); } } @@ -66,7 +67,8 @@ vector Libshuff::getMinX(int x){ try{ vector minX(groupSizes[x], 0); for(int i=0;i 1 ? (i==0 ? matrix->get(groups[x][0], groups[x][1]) : matrix->get(groups[x][i], groups[x][0])) : 0.0); + minX[i] = (groupSizes[x] > 1 ? (i==0 ? matrix->get(groups[x][0], groups[x][1]) : matrix->get(groups[x][i], groups[x][0])) : 0.0); //get the first value in row i of this block + //minX[i] = matrix->get(groups[x][i], groups[x][0]); for(int j=0;jget(groups[x][i], groups[x][j]); @@ -77,7 +79,7 @@ vector Libshuff::getMinX(int x){ return minX; } catch(exception& e) { - errorOut(e, "Libshuff", "getMinX"); + m->errorOut(e, "Libshuff", "getMinX"); exit(1); } } @@ -98,7 +100,7 @@ vector Libshuff::getMinXY(int x, int y){ return minXY; } catch(exception& e) { - errorOut(e, "Libshuff", "getMinXY"); + m->errorOut(e, "Libshuff", "getMinXY"); exit(1); } } @@ -124,7 +126,7 @@ void Libshuff::randomizeGroups(int x, int y){ for(int k=0;kerrorOut(e, "Libshuff", "randomizeGroups"); exit(1); } }