X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=sharedjest.cpp;h=237821a7d9d603c24aafbe44aca2fcdd5d668232;hp=ba62e3355085a726f989885e0354594d4a053713;hb=cf9987b67aa49777a4c91c2d21f96e58bf17aa82;hpb=20a2d0350a737a434c89f303662d64a8eeea7b05 diff --git a/sharedjest.cpp b/sharedjest.cpp index ba62e33..237821a 100644 --- a/sharedjest.cpp +++ b/sharedjest.cpp @@ -3,7 +3,7 @@ * Dotur * * Created by Sarah Westcott on 1/8/09. - * Copyright 2009 Schloss Lab Umass Amherst. All rights reserved. + * Copyright 2009 Schloss Lab UMASS Amherst. All rights reserved. * */ @@ -14,7 +14,7 @@ /***********************************************************************/ -EstOutput SharedJest::getValues(SharedRAbundVector* shared1, SharedRAbundVector* shared2) { +EstOutput Jest::getValues(vector shared) { try { EstOutput S1, S2, S12; S12.resize(1,0); @@ -32,28 +32,35 @@ EstOutput SharedJest::getValues(SharedRAbundVector* shared1, SharedRAbundVector* SAbundVector* chaoS1Sabund = new SAbundVector(); SAbundVector* chaoS2Sabund = new SAbundVector(); - *chaoS1Sabund = shared1->getSAbundVector(); - *chaoS2Sabund = shared2->getSAbundVector(); + *chaoS1Sabund = shared[0]->getSAbundVector(); + *chaoS2Sabund = shared[1]->getSAbundVector(); + + //chaoS1Sabund->print(cout); + //chaoS2Sabund->print(cout); - S12 = sharedChao->getValues(shared1, shared2); + S12 = sharedChao->getValues(shared); S1 = chaoS1->getValues(chaoS1Sabund); S2 = chaoS2->getValues(chaoS2Sabund); - - data[0] = S12[0] / (float)(S1[0] + S2[0] - S12[0]); + + //cout << S12[0] << '\t' << S1[0] << '\t' << S2[0] << endl; + + data[0] = 1.0 - S12[0] / (float)(S1[0] + S2[0] - S12[0]); + //cout << data[0] << endl; 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 SharedJest class Function getValues. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + m->errorOut(e, "Jest", "getValues"); exit(1); } - catch(...) { - cout << "An unknown error has occurred in the SharedJest class Function getValues. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; - exit(1); - } } -/***********************************************************************/ - +/***********************************************************************/