X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=shen.cpp;fp=shen.cpp;h=dac12bd69e83fb635c5b1ab1433a776940332e8e;hb=0caf3fbabaa3ece404f8ce77f4c883dc5b1bf1dc;hp=0000000000000000000000000000000000000000;hpb=1b73ff67c83892a025e597dabd9df6fe7b58206a;p=mothur.git diff --git a/shen.cpp b/shen.cpp new file mode 100644 index 0000000..dac12bd --- /dev/null +++ b/shen.cpp @@ -0,0 +1,42 @@ +/* + * shen.cpp + * Mothur + * + * Created by Thomas Ryabin on 5/18/09. + * Copyright 2009Schloss Lab UMASS Amherst. All rights reserved. + * + */ + +#include "shen.h" +#include "ace.h" + + +/***********************************************************************/ +EstOutput Shen::getValues(SAbundVector* rank){ + + try { + + data.resize(1,0); + + double n = (double)rank->getNumSeqs(); + double f1 = (double)rank->get(1); + + Ace* calc = new Ace(abund); + EstOutput ace = calc->getValues(rank); + + double f0 = ace[0]-rank->getNumBins(); + + data[0] = f0 * (1 - pow(1 - f1/n/f0, f)); + + delete calc; + + return data; + } + catch(exception& e) { + m->errorOut(e, "Shen", "getValues"); + exit(1); + } +} + + +/***********************************************************************/