+ }else if (globaldata->helpRequest == "libshuff") {
+ cout << "The libshuff command can only be executed after a successful read.dist command." << "\n";
+ cout << "The libshuff command parameters are groups, iters, step, form and cutoff. No parameters are required." << "\n";
+ cout << "The groups parameter allows you to specify which of the groups in your groupfile you would like analyzed. You must enter at least 2 valid groups." << "\n";
+ cout << "The group names are separated by dashes. The iters parameter allows you to specify how many random matrices you would like compared to your matrix." << "\n";
+ cout << "The step parameter allows you to specify change in distance you would like between each output if you are using the discrete form." << "\n";
+ cout << "The form parameter allows you to specify if you would like to analyze your matrix using the discrete or integral form. Your options are integral or discrete." << "\n";
+ cout << "The libshuff command should be in the following format: libshuff(groups=yourGroups, iters=yourIters, cutOff=yourCutOff, form=yourForm, step=yourStep)." << "\n";
+ cout << "Example libshuff(groups=A-B-C, iters=500, form=discrete, step=0.01, cutOff=2.0)." << "\n";
+ cout << "The default value for groups is all the groups in your groupfile, iters is 10000, cutoff is 1.0, form is integral and step is 0.01." << "\n";
+ cout << "The libshuff command output two files: .coverage and .slsummary their descriptions are in the manual." << "\n";
+ cout << "Note: No spaces between parameter labels (i.e. iters), '=' and parameters (i.e.yourIters)." << "\n" << "\n";
+ }else if (globaldata->helpRequest == "heatmap") {
+ cout << "The heatmap command can only be executed after a successful read.otu command." << "\n";
+ cout << "The heatmap command parameters are groups, sorted, scale, line and label. No parameters are required, but you may not use line and label at the same time." << "\n";
+ cout << "The groups parameter allows you to specify which of the groups in your groupfile you would like included in your heatmap." << "\n";
+ cout << "The sorted parameter allows you to choose to see the file with the shared otus at the top or the otus in the order they appear in your input file. " << "\n";
+ cout << "The scale parameter allows you to choose the range of color your bin information will be displayed with." << "\n";
+ cout << "The group names are separated by dashes. The line and label allow you to select what distance levels you would like a heatmap created for, and are also separated by dashes." << "\n";
+ cout << "The heatmap command should be in the following format: heatmap(groups=yourGroups, sorted=yourSorted, line=yourLines, label=yourLabels)." << "\n";
+ cout << "Example heatmap(groups=A-B-C, line=1-3-5, sorted=F, scale=log10)." << "\n";
+ cout << "The default value for groups is all the groups in your groupfile, and all lines in your inputfile will be used." << "\n";
+ cout << "The default value for sorted is T meaning you want the shared otus on top, you may change it to F meaning the exact representation of your input file." << "\n";
+ cout << "The default value for scale is log10; your other options are log2 and linear." << "\n";
+ cout << "The heatmap command outputs a .svg file for each line or label you specify." << "\n";
+ cout << "Note: No spaces between parameter labels (i.e. groups), '=' and parameters (i.e.yourGroups)." << "\n" << "\n";
+ }else if (globaldata->helpRequest == "venn") {
+ cout << "The venn command can only be executed after a successful read.otu command." << "\n";
+ cout << "The venn command parameters are groups, calc, line and label. No parameters are required, but you may not use line and label at the same time." << "\n";
+ cout << "The groups parameter allows you to specify which of the groups in your groupfile you would like included in your venn diagram, you may only use a maximum of 4 groups." << "\n";
+ cout << "The group names are separated by dashes. The line and label allow you to select what distance levels you would like a venn diagram created for, and are also separated by dashes." << "\n";
+ cout << "The venn command should be in the following format: venn(groups=yourGroups, calc=yourCalcs, line=yourLines, label=yourLabels)." << "\n";
+ cout << "Example venn(groups=A-B-C, line=1-3-5, calc=sharedsobs-sharedchao)." << "\n";
+ cout << "The default value for groups is all the groups in your groupfile up to 4, and all lines in your inputfile will be used." << "\n";
+ cout << "The default value for calc is sobs if you have only read a list file or if you have selected only one group, and sharedsobs if you have multiple groups." << "\n";
+ cout << "The default available estimators for calc are sobs, chao and ace if you have only read a list file, and sharedsobs, sharedchao and sharedace if you have read a list and group file or a shared file." << "\n";
+ cout << "The only estmiator available four 4 groups is sharedsobs." << "\n";
+ cout << "The venn command outputs a .svg file for each calculator you specify at each distance you choose." << "\n";
+ cout << "Note: No spaces between parameter labels (i.e. groups), '=' and parameters (i.e.yourGroups)." << "\n" << "\n";
+ }else if (globaldata->helpRequest == "tree.shared") {
+ cout << "The tree.shared command can only be executed after a successful read.otu command." << "\n";
+ cout << "The tree.shared command parameters are groups, calc, line and label. The calc parameter is required, and you may not use line and label at the same time." << "\n";
+ cout << "The groups parameter allows you to specify which of the groups in your groupfile you would like included used." << "\n";
+ cout << "The group names are separated by dashes. The line and label allow you to select what distance levels you would like trees created for, and are also separated by dashes." << "\n";
+ cout << "The tree.shared command should be in the following format: tree.shared(groups=yourGroups, calc=yourCalcs, line=yourLines, label=yourLabels)." << "\n";
+ cout << "Example tree.shared(groups=A-B-C, line=1-3-5, calc=jabund-sorabund)." << "\n";
+ cout << "The default value for groups is all the groups in your groupfile." << "\n";
+ cout << "There is no default value for calc." << "\n";
+ validCalcs->printCalc("treegroup", cout);
+ cout << "The tree.shared command outputs a .tre file for each calculator you specify at each distance you choose." << "\n";
+ cout << "Note: No spaces between parameter labels (i.e. groups), '=' and parameters (i.e.yourGroups)." << "\n" << "\n";
+ }else if (globaldata->helpRequest == "bootstrap.shared") {
+ cout << "The bootstrap.shared command can only be executed after a successful read.otu command." << "\n";
+ cout << "The bootstrap.shared command parameters are groups, calc, iters, line and label. The calc parameter is required, and you may not use line and label at the same time." << "\n";
+ cout << "The groups parameter allows you to specify which of the groups in your groupfile you would like included used." << "\n";
+ cout << "The group names are separated by dashes. The line and label allow you to select what distance levels you would like trees created for, and are also separated by dashes." << "\n";
+ cout << "The bootstrap.shared command should be in the following format: bootstrap.shared(groups=yourGroups, calc=yourCalcs, line=yourLines, label=yourLabels, iters=yourIters)." << "\n";
+ cout << "Example bootstrap.shared(groups=A-B-C, line=1-3-5, calc=jabund-sorabund, iters=100)." << "\n";
+ cout << "The default value for groups is all the groups in your groupfile." << "\n";
+ cout << "There is no default value for calc. The default for iters is 1000." << "\n";
+ validCalcs->printCalc("boot", cout);
+ cout << "The bootstrap.shared command outputs a .tre file for each calculator you specify at each distance you choose containing iters number of trees." << "\n";
+ cout << "Note: No spaces between parameter labels (i.e. groups), '=' and parameters (i.e.yourGroups)." << "\n" << "\n";
+ }else if (globaldata->helpRequest == "concensus") {
+ cout << "The concensus command can only be executed after a successful read.tree command." << "\n";
+ cout << "The concensus command has no parameters." << "\n";
+ cout << "The concensus command should be in the following format: concensus()." << "\n";
+ cout << "The concensus command output two files: .concensus.tre and .concensuspairs." << "\n";
+ cout << "The .concensus.tre file contains the concensus tree of the trees in your input file." << "\n";
+ cout << "The branch lengths are the percentage of trees in your input file that had the given pair." << "\n";
+ cout << "The .concensuspairs file contains a list of the internal nodes in your tree. For each node, the pair that was used in the concensus tree " << "\n";
+ cout << "is reported with its percentage, as well as the other pairs that were seen for that node but not used and their percentages." << "\n" << "\n";
+ }else if (globaldata->helpRequest == "bin.seqs") {
+ cout << "The bin.seqs command can only be executed after a successful read.otu command of a list file." << "\n";
+ cout << "The bin.seqs command parameters are fasta, name, line and label. The fasta parameter is required, and you may not use line and label at the same time." << "\n";
+ cout << "The line and label allow you to select what distance levels you would like a output files created for, and are separated by dashes." << "\n";
+ cout << "The bin.seqs command should be in the following format: bin.seqs(fasta=yourFastaFile, name=yourNamesFile, line=yourLines, label=yourLabels)." << "\n";
+ cout << "Example bin.seqs(fasta=amazon.fasta, line=1-3-5, name=amazon.names)." << "\n";
+ cout << "The default value for line and label are all lines in your inputfile." << "\n";
+ cout << "The bin.seqs command outputs a .fasta file for each distance you specify appending the OTU number to each name." << "\n";
+ cout << "Note: No spaces between parameter labels (i.e. fasta), '=' and parameters (i.e.yourFastaFile)." << "\n" << "\n";
+ }else if (globaldata->helpRequest == "get.oturep") {
+ cout << "The get.oturep command can only be executed after a successful read.dist command." << "\n";
+ cout << "The get.oturep command parameters are list, fasta, name, line and label. The fasta and list parameters are required, and you may not use line and label at the same time." << "\n";
+ cout << "The line and label allow you to select what distance levels you would like a output files created for, and are separated by dashes." << "\n";
+ cout << "The get.oturep command should be in the following format: get.oturep(fasta=yourFastaFile, list=yourListFile, name=yourNamesFile, line=yourLines, label=yourLabels)." << "\n";
+ cout << "Example get.oturep(fasta=amazon.fasta, list=amazon.fn.list, line=1-3-5, name=amazon.names)." << "\n";
+ cout << "The default value for line and label are all lines in your inputfile." << "\n";
+ cout << "The get.oturep command outputs a .fastarep file for each distance you specify, selecting one OTU representative for each bin." << "\n";
+ cout << "Note: No spaces between parameter labels (i.e. fasta), '=' and parameters (i.e.yourFastaFile)." << "\n" << "\n";