X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=sharedsorest.cpp;h=b9ab0501bc5f8f7fa000b16b14f79bfad237b8cf;hp=4f44b910dfc3a8c61e8c3e9daff78df2322e371b;hb=df7e3ff9f68ef157b0328a2d353c3258c5d45d89;hpb=20a2d0350a737a434c89f303662d64a8eeea7b05 diff --git a/sharedsorest.cpp b/sharedsorest.cpp index 4f44b91..b9ab050 100644 --- a/sharedsorest.cpp +++ b/sharedsorest.cpp @@ -13,7 +13,7 @@ /***********************************************************************/ -EstOutput SharedSorEst::getValues(SharedRAbundVector* shared1, SharedRAbundVector* shared2) { +EstOutput SorEst::getValues(vector shared) { try { EstOutput S1, S2, S12; S12.resize(1,0); @@ -31,27 +31,29 @@ EstOutput SharedSorEst::getValues(SharedRAbundVector* shared1, SharedRAbundVecto SAbundVector* chaoS1Sabund = new SAbundVector(); SAbundVector* chaoS2Sabund = new SAbundVector(); - *chaoS1Sabund = shared1->getSAbundVector(); - *chaoS2Sabund = shared2->getSAbundVector(); + *chaoS1Sabund = shared[0]->getSAbundVector(); + *chaoS2Sabund = shared[1]->getSAbundVector(); - S12 = sharedChao->getValues(shared1, shared2); + S12 = sharedChao->getValues(shared); S1 = chaoS1->getValues(chaoS1Sabund); S2 = chaoS2->getValues(chaoS2Sabund); - data[0] = (2 * S12[0]) / (float)(S1[0] + S2[0]); + data[0] = 1.0-(2 * S12[0]) / (float)(S1[0] + S2[0]); if (isnan(data[0]) || isinf(data[0])) { data[0] = 0; } + delete sharedChao; + delete chaoS1; + delete chaoS2; + delete chaoS1Sabund; + delete chaoS2Sabund; + return data; } catch(exception& e) { - cout << "Standard Error: " << e.what() << " has occurred in the SharedSorEst class Function getValues. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "SorEst", "getValues"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the SharedSorEst class Function getValues. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } /***********************************************************************/