X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=amovacommand.h;fp=amovacommand.h;h=50dc81a517dbbe89f39d9a4e1ca858ed3488a402;hb=0caf3fbabaa3ece404f8ce77f4c883dc5b1bf1dc;hp=0000000000000000000000000000000000000000;hpb=1b73ff67c83892a025e597dabd9df6fe7b58206a;p=mothur.git diff --git a/amovacommand.h b/amovacommand.h new file mode 100644 index 0000000..50dc81a --- /dev/null +++ b/amovacommand.h @@ -0,0 +1,50 @@ +#ifndef AMOVACOMMAND_H +#define AMOVACOMMAND_H + +/* + * amovacommand.h + * mothur + * + * Created by westcott on 2/7/11. + * Copyright 2011 Schloss Lab. All rights reserved. + * + */ + +#include "command.hpp" +class GroupMap; + +class AmovaCommand : public Command { + +public: + AmovaCommand(string); + AmovaCommand(); + ~AmovaCommand() {} + + vector setParameters(); + string getCommandName() { return "amova"; } + string getCommandCategory() { return "Hypothesis Testing"; } + string getHelpString(); + string getCitation() { return "Anderson MJ (2001). A new method for non-parametric multivariate analysis of variance. Austral Ecol 26: 32-46.\nhttp://www.mothur.org/wiki/Amova"; } + string getDescription() { return "analysis of molecular variance"; } + + int execute(); + void help() { m->mothurOut(getHelpString()); } + +private: + double runAMOVA(ofstream&, map >, double); + double calcSSWithin(map >&); + double calcSSTotal(map >&); + map > getRandomizedGroups(map >); + + bool abort; + vector outputNames; + + string outputDir, inputDir, designFileName, phylipFileName; + GroupMap* designMap; + vector< vector > distanceMatrix; + int iters; + double experimentwiseAlpha; +}; + +#endif +