X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=pcoacommand.h;h=29957f1140e81517cc5a244a696eba7aaf1db49a;hp=22f288a7e768a74c939781df1302e42b92124600;hb=b206f634aae1b4ce13978d203247fb64757d5482;hpb=4956d362c5bc6a47cf7a6290258f0e763e3a406e diff --git a/pcoacommand.h b/pcoacommand.h index 22f288a..29957f1 100644 --- a/pcoacommand.h +++ b/pcoacommand.h @@ -1,8 +1,8 @@ -#ifndef PCACOMMAND_H -#define PCACOMMAND_H +#ifndef PCOACOMMAND_H +#define PCOACOMMAND_H /* - * pcacommand.h + * pcoacommand.h * Mothur * * Created by westcott on 1/4/10. @@ -11,39 +11,38 @@ */ #include "command.hpp" +#include "linearalgebra.h" /*****************************************************************/ -class PCACommand : public Command { +class PCOACommand : public Command { public: - PCACommand(string); - PCACommand(); - ~PCACommand(); - vector getRequiredParameters(); - vector getValidParameters(); - vector getRequiredFiles(); - map > getOutputFiles() { return outputTypes; } - int execute(); - void help(); + PCOACommand(string); + PCOACommand(); + ~PCOACommand(){} + + vector setParameters(); + string getCommandName() { return "pcoa"; } + string getCommandCategory() { return "Hypothesis Testing"; } + + string getHelpString(); + string getOutputPattern(string); + string getCitation() { return "McCune B, Grace JB, Urban DL (2002). Analysis of ecological communities. MjM Software Design: Gleneden Beach, OR. \nLegendre P, Legendre L (1998). Numerical Ecology. Elsevier: New York. \nhttp://www.mothur.org/wiki/Pcoa"; } + string getDescription() { return "pcoa"; } + + int execute(); + void help() { m->mothurOut(getHelpString()); } private: - bool abort; - string phylipfile, columnfile, namefile, format, filename, fbase, outputDir; - float cutoff, precision; + bool abort, metric; + string phylipfile, filename, fbase, outputDir; vector outputNames; - map > outputTypes; + LinearAlgebra linearCalc; void get_comment(istream&, char, char); - int read_phylip(istream&, int, vector&, vector >&); - void read(string, vector&, vector >&); - double pythag(double, double); - void matrix_mult(vector >, vector >, vector >&); - void recenter(double, vector >, vector >&); - void tred2(vector >&, vector&, vector&); - void qtli(vector&, vector&, vector >&); - void output(string, vector, vector >, vector); + void output(string, vector, vector >&, vector); };