X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=shen.cpp;h=dac12bd69e83fb635c5b1ab1433a776940332e8e;hp=61291a62554a3ccfb0a1b35bd761fb5bfcf1e881;hb=cf9987b67aa49777a4c91c2d21f96e58bf17aa82;hpb=d873f7bf94309317a08c8757e0d0d60b06fbd473 diff --git a/shen.cpp b/shen.cpp index 61291a6..dac12bd 100644 --- a/shen.cpp +++ b/shen.cpp @@ -15,34 +15,28 @@ EstOutput Shen::getValues(SAbundVector* rank){ try { - globaldata = GlobalData::getInstance(); data.resize(1,0); double n = (double)rank->getNumSeqs(); double f1 = (double)rank->get(1); - int abund; - convert(globaldata->getAbund(), abund); - Ace* calc = new Ace(abund); EstOutput ace = calc->getValues(rank); - double f0 = n - ace[0]; + double f0 = ace[0]-rank->getNumBins(); + + data[0] = f0 * (1 - pow(1 - f1/n/f0, f)); + + delete calc; - data[0] = f0 * (1 - pow(1 - f1/n/f0, m)); - return data; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the Coverage class Function getValues. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "Shen", "getValues"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the Coverage class function getValues. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } -}; +} /***********************************************************************/