]> git.donarmstrong.com Git - mothur.git/commitdiff
This contains Pat's bug fixes and updates. It represents mothur v.1.3.0
authorpschloss <pschloss>
Sun, 24 May 2009 16:39:16 +0000 (16:39 +0000)
committerpschloss <pschloss>
Sun, 24 May 2009 16:39:16 +0000 (16:39 +0000)
50 files changed:
Mothur.xcodeproj/project.pbxproj
boneh.cpp
bootstrap.h
chao1.h
distancecommand.cpp
distancecommand.h
eachgapdist.h
eachgapignore.h
efron.cpp
errorchecking.cpp
errorchecking.h
filterseqscommand.cpp
filterseqscommand.h
globaldata.cpp
globaldata.hpp
heatmap.cpp
helpcommand.cpp
ignoregaps.h
jackknife.h
matrixoutputcommand.cpp
npshannon.h
nseqs.h
onegapdist.h
onegapignore.h
rarecalc.h
sequence.cpp
shannon.h
sharedanderberg.h
sharedanderbergs.h
sharedbraycurtis.h
sharedchao1.cpp
sharedjabund.cpp
sharedjabund.h
sharedjclass.h
sharedjest.h
sharedkulczynski.h
sharedkulczynskicody.h
sharedlennon.h
sharedmorisitahorn.h
sharednseqs.h
sharedochiai.h
sharedsorabund.h
sharedsorclass.h
sharedsorest.h
sharedthetan.h
sharedthetayc.h
shen.cpp
simpson.h
validcommands.cpp
validparameter.cpp

index 1b52eee1d8149b7675c22cb6055b1ae2a04698db..6c867787cf4b3c7265c5eb999edfc203e9a9aa4d 100644 (file)
 /* End PBXCopyFilesBuildPhase section */
 
 /* Begin PBXFileReference section */
-               211C38300F961DD400FEE541 /* sharedutilities.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedutilities.cpp; sourceTree = "<group>"; };
-               211C38310F961DD400FEE541 /* sharedutilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedutilities.h; sourceTree = "<group>"; };
-               211C38360F961E1F00FEE541 /* treegroupscommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = treegroupscommand.cpp; sourceTree = "<group>"; };
-               211C38370F961E1F00FEE541 /* treegroupscommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = treegroupscommand.h; sourceTree = "<group>"; };
-               21DDC0190F97A8FE0060691C /* bootstrapsharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bootstrapsharedcommand.h; sourceTree = "<group>"; };
-               21DDC01A0F97A8FE0060691C /* bootstrapsharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bootstrapsharedcommand.cpp; sourceTree = "<group>"; };
-               21E859D60FC4632E005E1A48 /* matrixoutputcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = matrixoutputcommand.h; sourceTree = "<group>"; };
-               21E859D70FC4632E005E1A48 /* matrixoutputcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = matrixoutputcommand.cpp; sourceTree = "<group>"; };
-               370B88050F8A4EE4005AB382 /* getoturepcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = getoturepcommand.h; sourceTree = "<group>"; };
-               370B88060F8A4EE4005AB382 /* getoturepcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = getoturepcommand.cpp; sourceTree = "<group>"; };
-               372E126E0F26365B0095CF7E /* readotucommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readotucommand.h; sourceTree = "<group>"; };
-               372E126F0F26365B0095CF7E /* readotucommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readotucommand.cpp; sourceTree = "<group>"; };
-               372E12940F263D5A0095CF7E /* readdistcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readdistcommand.h; sourceTree = "<group>"; };
-               372E12950F263D5A0095CF7E /* readdistcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readdistcommand.cpp; sourceTree = "<group>"; };
-               372E12EC0F264D320095CF7E /* commandfactory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = commandfactory.cpp; sourceTree = "<group>"; };
-               373C68A00FC1C07D00137ACD /* alignment.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = alignment.cpp; sourceTree = "<group>"; };
-               373C68A10FC1C07D00137ACD /* alignment.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = alignment.hpp; sourceTree = "<group>"; };
-               373C68A20FC1C07D00137ACD /* alignmentcell.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = alignmentcell.cpp; sourceTree = "<group>"; };
-               373C68A30FC1C07D00137ACD /* alignmentcell.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = alignmentcell.hpp; sourceTree = "<group>"; };
-               373C68BA0FC1C1A600137ACD /* gotohoverlap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = gotohoverlap.cpp; sourceTree = "<group>"; };
-               373C68BB0FC1C1A600137ACD /* gotohoverlap.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = gotohoverlap.hpp; sourceTree = "<group>"; };
-               373C68C30FC1C25F00137ACD /* overlap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = overlap.cpp; sourceTree = "<group>"; };
-               373C68C40FC1C25F00137ACD /* overlap.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = overlap.hpp; sourceTree = "<group>"; };
-               373C68CD0FC1C2D900137ACD /* needlemanoverlap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = needlemanoverlap.cpp; sourceTree = "<group>"; };
-               373C68CE0FC1C2D900137ACD /* needlemanoverlap.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = needlemanoverlap.hpp; sourceTree = "<group>"; };
-               373C68DB0FC1C38D00137ACD /* blastalign.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = blastalign.cpp; sourceTree = "<group>"; };
-               373C68DC0FC1C38D00137ACD /* blastalign.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = blastalign.hpp; sourceTree = "<group>"; };
-               373C68E30FC1C4A500137ACD /* noalign.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = noalign.cpp; sourceTree = "<group>"; };
-               373C68E40FC1C4A500137ACD /* noalign.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = noalign.hpp; sourceTree = "<group>"; };
-               373C68F30FC1C6A800137ACD /* suffixdb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = suffixdb.cpp; sourceTree = "<group>"; };
-               373C68F40FC1C6A800137ACD /* suffixdb.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = suffixdb.hpp; sourceTree = "<group>"; };
-               373C68F50FC1C6A800137ACD /* suffixnodes.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = suffixnodes.cpp; sourceTree = "<group>"; };
-               373C68F60FC1C6A800137ACD /* suffixnodes.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = suffixnodes.hpp; sourceTree = "<group>"; };
-               373C68F70FC1C6A800137ACD /* suffixtree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = suffixtree.cpp; sourceTree = "<group>"; };
-               373C68F80FC1C6A800137ACD /* suffixtree.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = suffixtree.hpp; sourceTree = "<group>"; };
-               373C69160FC1C8AF00137ACD /* blastdb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = blastdb.cpp; sourceTree = "<group>"; };
-               373C69170FC1C8AF00137ACD /* blastdb.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = blastdb.hpp; sourceTree = "<group>"; };
-               373C691D0FC1C98600137ACD /* nast.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = nast.cpp; sourceTree = "<group>"; };
-               373C691E0FC1C98600137ACD /* nast.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = nast.hpp; sourceTree = "<group>"; };
-               373C69290FC1C9EB00137ACD /* nastreport.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = nastreport.cpp; sourceTree = "<group>"; };
-               373C692A0FC1C9EB00137ACD /* nastreport.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = nastreport.hpp; sourceTree = "<group>"; };
-               373C69940FC1E63600137ACD /* boneh.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = boneh.cpp; sourceTree = "<group>"; };
-               373C69950FC1E63600137ACD /* boneh.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = boneh.h; sourceTree = "<group>"; };
-               373C69960FC1E63600137ACD /* efron.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = efron.cpp; sourceTree = "<group>"; };
-               373C69970FC1E63600137ACD /* efron.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = efron.h; sourceTree = "<group>"; };
-               373C69980FC1E63600137ACD /* solow.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = solow.cpp; sourceTree = "<group>"; };
-               373C69990FC1E63600137ACD /* solow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = solow.h; sourceTree = "<group>"; };
-               374610760F40645300460C57 /* unifracweightedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unifracweightedcommand.h; sourceTree = "<group>"; };
-               374610770F40645300460C57 /* unifracweightedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = unifracweightedcommand.cpp; sourceTree = "<group>"; };
-               3746107C0F4064D100460C57 /* weighted.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = weighted.h; sourceTree = "<group>"; };
-               3746107D0F4064D100460C57 /* weighted.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = weighted.cpp; sourceTree = "<group>"; };
-               374610810F40652400460C57 /* unweighted.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unweighted.h; sourceTree = "<group>"; };
-               374610820F40652400460C57 /* unweighted.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = unweighted.cpp; sourceTree = "<group>"; };
-               3746109B0F40657600460C57 /* unifracunweightedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unifracunweightedcommand.h; sourceTree = "<group>"; };
-               3746109C0F40657600460C57 /* unifracunweightedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = unifracunweightedcommand.cpp; sourceTree = "<group>"; };
-               37519A690F80E6EB00FED5E8 /* sharedanderbergs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedanderbergs.h; sourceTree = "<group>"; };
-               37519A6A0F80E6EB00FED5E8 /* sharedanderbergs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedanderbergs.cpp; sourceTree = "<group>"; };
-               37519A9F0F810D0200FED5E8 /* venncommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = venncommand.h; sourceTree = "<group>"; };
-               37519AA00F810D0200FED5E8 /* venncommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = venncommand.cpp; sourceTree = "<group>"; };
-               37519AB30F810FAE00FED5E8 /* venn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = venn.h; sourceTree = "<group>"; };
-               37519AB40F810FAE00FED5E8 /* venn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = venn.cpp; sourceTree = "<group>"; };
-               375873EA0F7D64520040F377 /* fullmatrix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fullmatrix.h; sourceTree = "<group>"; };
-               375873EB0F7D64520040F377 /* fullmatrix.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fullmatrix.cpp; sourceTree = "<group>"; };
-               375873ED0F7D646F0040F377 /* heatmap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = heatmap.h; sourceTree = "<group>"; };
-               375873EE0F7D646F0040F377 /* heatmap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = heatmap.cpp; sourceTree = "<group>"; };
-               375873F00F7D64800040F377 /* heatmapcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = heatmapcommand.cpp; sourceTree = "<group>"; };
-               375873F10F7D64800040F377 /* heatmapcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = heatmapcommand.h; sourceTree = "<group>"; };
-               375873F30F7D648F0040F377 /* libshuffcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = libshuffcommand.cpp; sourceTree = "<group>"; };
-               375873F40F7D648F0040F377 /* libshuffcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = libshuffcommand.h; sourceTree = "<group>"; };
-               375873F60F7D649C0040F377 /* nocommands.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = nocommands.cpp; sourceTree = "<group>"; };
-               375873F70F7D649C0040F377 /* nocommands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = nocommands.h; sourceTree = "<group>"; };
-               375873F90F7D64AB0040F377 /* nseqs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = nseqs.h; sourceTree = "<group>"; };
-               375873FB0F7D64DA0040F377 /* sharedbraycurtis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedbraycurtis.h; sourceTree = "<group>"; };
-               375873FC0F7D64DA0040F377 /* sharedbraycurtis.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedbraycurtis.cpp; sourceTree = "<group>"; };
-               375873FE0F7D64EF0040F377 /* sharedkulczynski.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedkulczynski.cpp; sourceTree = "<group>"; };
-               375873FF0F7D64EF0040F377 /* sharedlennon.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedlennon.cpp; sourceTree = "<group>"; };
-               375874000F7D64EF0040F377 /* sharedkulczynski.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedkulczynski.h; sourceTree = "<group>"; };
-               375874010F7D64EF0040F377 /* sharedlennon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedlennon.h; sourceTree = "<group>"; };
-               375874020F7D64EF0040F377 /* sharedkulczynskicody.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedkulczynskicody.cpp; sourceTree = "<group>"; };
-               375874030F7D64EF0040F377 /* sharedkulczynskicody.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedkulczynskicody.h; sourceTree = "<group>"; };
-               375874070F7D64FC0040F377 /* sharedmorisitahorn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedmorisitahorn.h; sourceTree = "<group>"; };
-               375874080F7D64FC0040F377 /* sharedmorisitahorn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedmorisitahorn.cpp; sourceTree = "<group>"; };
-               375874090F7D64FC0040F377 /* sharedochiai.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedochiai.h; sourceTree = "<group>"; };
-               3758740A0F7D64FC0040F377 /* sharednseqs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharednseqs.h; sourceTree = "<group>"; };
-               3758740B0F7D64FC0040F377 /* sharedochiai.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedochiai.cpp; sourceTree = "<group>"; };
-               375AA1330F9E433D008EF9B8 /* readcolumn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readcolumn.cpp; sourceTree = "<group>"; };
-               375AA1340F9E433D008EF9B8 /* readcolumn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readcolumn.h; sourceTree = "<group>"; };
-               375AA1350F9E433D008EF9B8 /* readotu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readotu.cpp; sourceTree = "<group>"; };
-               375AA1360F9E433D008EF9B8 /* readotu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readotu.h; sourceTree = "<group>"; };
-               375AA1370F9E433D008EF9B8 /* readphylip.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readphylip.cpp; sourceTree = "<group>"; };
-               375AA1380F9E433D008EF9B8 /* readphylip.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readphylip.h; sourceTree = "<group>"; };
-               377326630FAF16E0007ABB8B /* concensuscommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = concensuscommand.cpp; sourceTree = "<group>"; };
-               377326640FAF16E0007ABB8B /* concensuscommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = concensuscommand.h; sourceTree = "<group>"; };
-               378C1AEE0FB0644D004D63F5 /* filterseqscommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = filterseqscommand.cpp; sourceTree = "<group>"; };
-               378C1AEF0FB0644D004D63F5 /* filterseqscommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = filterseqscommand.h; sourceTree = "<group>"; };
-               378C1AF00FB0644D004D63F5 /* goodscoverage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = goodscoverage.cpp; sourceTree = "<group>"; };
-               378C1AF10FB0644D004D63F5 /* goodscoverage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = goodscoverage.h; sourceTree = "<group>"; };
-               378C1AF20FB0644D004D63F5 /* readclustal.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readclustal.cpp; sourceTree = "<group>"; };
-               378C1AF30FB0644D004D63F5 /* readclustal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readclustal.h; sourceTree = "<group>"; };
-               378C1AF40FB0644D004D63F5 /* readfasta.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readfasta.cpp; sourceTree = "<group>"; };
-               378C1AF50FB0644D004D63F5 /* readfasta.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readfasta.h; sourceTree = "<group>"; };
-               378C1AF60FB0644D004D63F5 /* readnexus.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readnexus.cpp; sourceTree = "<group>"; };
-               378C1AF70FB0644D004D63F5 /* readnexus.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readnexus.h; sourceTree = "<group>"; };
-               378C1AF80FB0644D004D63F5 /* readnexusal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readnexusal.h; sourceTree = "<group>"; };
-               378C1AFB0FB0644D004D63F5 /* readseqsphylip.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readseqsphylip.cpp; sourceTree = "<group>"; };
-               378C1AFC0FB0644D004D63F5 /* readseqsphylip.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readseqsphylip.h; sourceTree = "<group>"; };
-               378C1AFD0FB0644D004D63F5 /* sequencedb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sequencedb.cpp; sourceTree = "<group>"; };
-               378C1AFE0FB0644D004D63F5 /* sequencedb.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sequencedb.h; sourceTree = "<group>"; };
-               378C1AFF0FB0644D004D63F5 /* sharedjackknife.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjackknife.cpp; sourceTree = "<group>"; };
-               378C1B000FB0644D004D63F5 /* sharedjackknife.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjackknife.h; sourceTree = "<group>"; };
-               378C1B010FB0644D004D63F5 /* sharedmarczewski.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedmarczewski.cpp; sourceTree = "<group>"; };
-               378C1B020FB0644D004D63F5 /* sharedmarczewski.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedmarczewski.h; sourceTree = "<group>"; };
-               378DC5CD0FBDE1C8003B8607 /* aligncommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aligncommand.h; sourceTree = "<group>"; };
-               378DC5CE0FBDE1C8003B8607 /* aligncommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = aligncommand.cpp; sourceTree = "<group>"; };
-               379293C10F2DE73400B9034A /* treemap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = treemap.h; sourceTree = "<group>"; };
-               379293C20F2DE73400B9034A /* treemap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = treemap.cpp; sourceTree = "<group>"; };
-               3792946E0F2E191800B9034A /* parsimonycommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = parsimonycommand.h; sourceTree = "<group>"; };
-               3792946F0F2E191800B9034A /* parsimonycommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = parsimonycommand.cpp; sourceTree = "<group>"; };
-               379294880F2E258500B9034A /* parsimony.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = parsimony.h; sourceTree = "<group>"; };
-               379294890F2E258500B9034A /* parsimony.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = parsimony.cpp; sourceTree = "<group>"; };
-               3792948D0F2E271100B9034A /* treecalculator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = treecalculator.h; sourceTree = "<group>"; };
-               379643EB0FB9B5A80081FDB6 /* readseqs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readseqs.cpp; sourceTree = "<group>"; };
-               379643EC0FB9B5A80081FDB6 /* readseqs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readseqs.h; sourceTree = "<group>"; };
-               37AD4CE20F28AEA300AA2D49 /* sharedlistvector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedlistvector.h; sourceTree = "<group>"; };
-               37AD4CE30F28AEA300AA2D49 /* sharedlistvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedlistvector.cpp; sourceTree = "<group>"; };
-               37AD4DB90F28E2FE00AA2D49 /* tree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = tree.h; sourceTree = "<group>"; };
-               37AD4DBA0F28E2FE00AA2D49 /* tree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = tree.cpp; sourceTree = "<group>"; };
-               37AD4DC80F28F3DD00AA2D49 /* readtree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readtree.h; sourceTree = "<group>"; };
-               37AD4DC90F28F3DD00AA2D49 /* readtree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readtree.cpp; sourceTree = "<group>"; };
-               37AFC71D0F445386005F492D /* sharedsobscollectsummary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsobscollectsummary.h; sourceTree = "<group>"; };
-               37AFC71E0F445386005F492D /* sharedsobscollectsummary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsobscollectsummary.cpp; sourceTree = "<group>"; };
-               37B28F660F27590100808A62 /* deconvolutecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = deconvolutecommand.h; sourceTree = "<group>"; };
-               37B28F670F27590100808A62 /* deconvolutecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = deconvolutecommand.cpp; sourceTree = "<group>"; };
-               37C1D9710F86506E0059E3F0 /* binsequencecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = binsequencecommand.h; sourceTree = "<group>"; };
-               37C1D9720F86506E0059E3F0 /* binsequencecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = binsequencecommand.cpp; sourceTree = "<group>"; };
-               37C753CC0FB3415200DBD02E /* distancecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = distancecommand.h; sourceTree = "<group>"; };
-               37C753CD0FB3415200DBD02E /* distancecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = distancecommand.cpp; sourceTree = "<group>"; };
-               37C753DF0FB3492400DBD02E /* dist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = dist.h; sourceTree = "<group>"; };
-               37C753ED0FB34A5700DBD02E /* ignoregaps.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ignoregaps.h; sourceTree = "<group>"; };
-               37C753F00FB34AE800DBD02E /* eachgapdist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = eachgapdist.h; sourceTree = "<group>"; };
-               37C753F10FB34B4700DBD02E /* onegapdist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = onegapdist.h; sourceTree = "<group>"; };
-               37C753F30FB34BBF00DBD02E /* onegapignore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = onegapignore.h; sourceTree = "<group>"; };
-               37C753F40FB34C0300DBD02E /* eachgapignore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = eachgapignore.h; sourceTree = "<group>"; };
-               37D927B80F21331F001D4494 /* ace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ace.cpp; sourceTree = "<group>"; };
-               37D927B90F21331F001D4494 /* ace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ace.h; sourceTree = "<group>"; };
-               37D927BA0F21331F001D4494 /* averagelinkage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = averagelinkage.cpp; sourceTree = "<group>"; };
-               37D927BB0F21331F001D4494 /* bootstrap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bootstrap.cpp; sourceTree = "<group>"; };
-               37D927BC0F21331F001D4494 /* bootstrap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bootstrap.h; sourceTree = "<group>"; };
-               37D927BD0F21331F001D4494 /* calculator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = calculator.cpp; sourceTree = "<group>"; };
-               37D927BE0F21331F001D4494 /* calculator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = calculator.h; sourceTree = "<group>"; };
-               37D927BF0F21331F001D4494 /* chao1.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = chao1.cpp; sourceTree = "<group>"; };
-               37D927C00F21331F001D4494 /* chao1.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = chao1.h; sourceTree = "<group>"; };
-               37D927C10F21331F001D4494 /* cluster.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cluster.cpp; sourceTree = "<group>"; };
-               37D927C20F21331F001D4494 /* cluster.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = cluster.hpp; sourceTree = "<group>"; };
-               37D927C30F21331F001D4494 /* clustercommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = clustercommand.cpp; sourceTree = "<group>"; };
-               37D927C40F21331F001D4494 /* clustercommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = clustercommand.h; sourceTree = "<group>"; };
-               37D927C50F21331F001D4494 /* collect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = collect.cpp; sourceTree = "<group>"; };
-               37D927C60F21331F001D4494 /* collect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collect.h; sourceTree = "<group>"; };
-               37D927C70F21331F001D4494 /* collectcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = collectcommand.cpp; sourceTree = "<group>"; };
-               37D927C80F21331F001D4494 /* collectcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectcommand.h; sourceTree = "<group>"; };
-               37D927C90F21331F001D4494 /* collectdisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectdisplay.h; sourceTree = "<group>"; };
-               37D927CA0F21331F001D4494 /* collectorscurvedata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectorscurvedata.h; sourceTree = "<group>"; };
-               37D927CB0F21331F001D4494 /* collectsharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = collectsharedcommand.cpp; sourceTree = "<group>"; };
-               37D927CC0F21331F001D4494 /* collectsharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectsharedcommand.h; sourceTree = "<group>"; };
-               37D927CD0F21331F001D4494 /* command.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = command.hpp; sourceTree = "<group>"; };
-               37D927CF0F21331F001D4494 /* commandfactory.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = commandfactory.hpp; sourceTree = "<group>"; };
-               37D927D00F21331F001D4494 /* commandoptionparser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = commandoptionparser.cpp; sourceTree = "<group>"; };
-               37D927D10F21331F001D4494 /* commandoptionparser.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = commandoptionparser.hpp; sourceTree = "<group>"; };
-               37D927D20F21331F001D4494 /* completelinkage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = completelinkage.cpp; sourceTree = "<group>"; };
-               37D927D30F21331F001D4494 /* database.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = database.cpp; sourceTree = "<group>"; };
-               37D927D40F21331F001D4494 /* database.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = database.hpp; sourceTree = "<group>"; };
-               37D927D50F21331F001D4494 /* datavector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = datavector.hpp; sourceTree = "<group>"; };
-               37D927D60F21331F001D4494 /* display.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = display.h; sourceTree = "<group>"; };
-               37D927D70F21331F001D4494 /* engine.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = engine.cpp; sourceTree = "<group>"; };
-               37D927D80F21331F001D4494 /* engine.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = engine.hpp; sourceTree = "<group>"; };
-               37D927D90F21331F001D4494 /* errorchecking.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = errorchecking.cpp; sourceTree = "<group>"; };
-               37D927DA0F21331F001D4494 /* errorchecking.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = errorchecking.h; sourceTree = "<group>"; };
-               37D927DB0F21331F001D4494 /* fastamap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fastamap.cpp; sourceTree = "<group>"; };
-               37D927DC0F21331F001D4494 /* fastamap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fastamap.h; sourceTree = "<group>"; };
-               37D927DD0F21331F001D4494 /* fileoutput.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fileoutput.cpp; sourceTree = "<group>"; };
-               37D927DE0F21331F001D4494 /* fileoutput.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fileoutput.h; sourceTree = "<group>"; };
-               37D927DF0F21331F001D4494 /* globaldata.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = globaldata.cpp; sourceTree = "<group>"; };
-               37D927E00F21331F001D4494 /* globaldata.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = globaldata.hpp; sourceTree = "<group>"; };
-               37D927E10F21331F001D4494 /* groupmap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = groupmap.cpp; sourceTree = "<group>"; };
-               37D927E20F21331F001D4494 /* groupmap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = groupmap.h; sourceTree = "<group>"; };
-               37D927E30F21331F001D4494 /* helpcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = helpcommand.cpp; sourceTree = "<group>"; };
-               37D927E40F21331F001D4494 /* helpcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = helpcommand.h; sourceTree = "<group>"; };
-               37D927E50F21331F001D4494 /* inputdata.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = inputdata.cpp; sourceTree = "<group>"; };
-               37D927E60F21331F001D4494 /* inputdata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = inputdata.h; sourceTree = "<group>"; };
-               37D927E70F21331F001D4494 /* jackknife.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = jackknife.cpp; sourceTree = "<group>"; };
-               37D927E80F21331F001D4494 /* jackknife.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jackknife.h; sourceTree = "<group>"; };
-               37D927E90F21331F001D4494 /* kmer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = kmer.cpp; sourceTree = "<group>"; };
-               37D927EA0F21331F001D4494 /* kmer.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = kmer.hpp; sourceTree = "<group>"; };
-               37D927EB0F21331F001D4494 /* kmerdb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = kmerdb.cpp; sourceTree = "<group>"; };
-               37D927EC0F21331F001D4494 /* kmerdb.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = kmerdb.hpp; sourceTree = "<group>"; };
-               37D927ED0F21331F001D4494 /* listvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = listvector.cpp; sourceTree = "<group>"; };
-               37D927EE0F21331F001D4494 /* listvector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = listvector.hpp; sourceTree = "<group>"; };
-               37D927EF0F21331F001D4494 /* mothur.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = mothur.cpp; sourceTree = "<group>"; };
-               37D927F00F21331F001D4494 /* nameassignment.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = nameassignment.cpp; sourceTree = "<group>"; };
-               37D927F10F21331F001D4494 /* nameassignment.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = nameassignment.hpp; sourceTree = "<group>"; };
-               37D927F40F21331F001D4494 /* npshannon.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = npshannon.cpp; sourceTree = "<group>"; };
-               37D927F50F21331F001D4494 /* npshannon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = npshannon.h; sourceTree = "<group>"; };
-               37D927F60F21331F001D4494 /* observable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = observable.h; sourceTree = "<group>"; };
-               37D927F70F21331F001D4494 /* ordervector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ordervector.cpp; sourceTree = "<group>"; };
-               37D927F80F21331F001D4494 /* ordervector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = ordervector.hpp; sourceTree = "<group>"; };
-               37D927F90F21331F001D4494 /* parselistcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = parselistcommand.cpp; sourceTree = "<group>"; };
-               37D927FA0F21331F001D4494 /* parselistcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = parselistcommand.h; sourceTree = "<group>"; };
-               37D927FB0F21331F001D4494 /* progress.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = progress.cpp; sourceTree = "<group>"; };
-               37D927FC0F21331F001D4494 /* progress.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = progress.hpp; sourceTree = "<group>"; };
-               37D927FD0F21331F001D4494 /* quitcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = quitcommand.cpp; sourceTree = "<group>"; };
-               37D927FE0F21331F001D4494 /* quitcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = quitcommand.h; sourceTree = "<group>"; };
-               37D927FF0F21331F001D4494 /* rabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rabundvector.cpp; sourceTree = "<group>"; };
-               37D928000F21331F001D4494 /* rabundvector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = rabundvector.hpp; sourceTree = "<group>"; };
-               37D928010F21331F001D4494 /* rarecalc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarecalc.cpp; sourceTree = "<group>"; };
-               37D928020F21331F001D4494 /* rarecalc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarecalc.h; sourceTree = "<group>"; };
-               37D928030F21331F001D4494 /* raredisplay.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = raredisplay.cpp; sourceTree = "<group>"; };
-               37D928040F21331F001D4494 /* raredisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = raredisplay.h; sourceTree = "<group>"; };
-               37D928050F21331F001D4494 /* rarefact.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarefact.cpp; sourceTree = "<group>"; };
-               37D928060F21331F001D4494 /* rarefact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefact.h; sourceTree = "<group>"; };
-               37D928070F21331F001D4494 /* rarefactcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarefactcommand.cpp; sourceTree = "<group>"; };
-               37D928080F21331F001D4494 /* rarefactcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefactcommand.h; sourceTree = "<group>"; };
-               37D928090F21331F001D4494 /* rarefactioncurvedata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefactioncurvedata.h; sourceTree = "<group>"; };
-               37D9280A0F21331F001D4494 /* rarefactsharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarefactsharedcommand.cpp; sourceTree = "<group>"; };
-               37D9280B0F21331F001D4494 /* rarefactsharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefactsharedcommand.h; sourceTree = "<group>"; };
-               37D928130F21331F001D4494 /* readmatrix.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = readmatrix.hpp; sourceTree = "<group>"; };
-               37D9281A0F21331F001D4494 /* sabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sabundvector.cpp; sourceTree = "<group>"; };
-               37D9281B0F21331F001D4494 /* sabundvector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = sabundvector.hpp; sourceTree = "<group>"; };
-               37D9281C0F21331F001D4494 /* sequence.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sequence.cpp; sourceTree = "<group>"; };
-               37D9281D0F21331F001D4494 /* sequence.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = sequence.hpp; sourceTree = "<group>"; };
-               37D9281E0F21331F001D4494 /* shannon.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = shannon.cpp; sourceTree = "<group>"; };
-               37D9281F0F21331F001D4494 /* shannon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shannon.h; sourceTree = "<group>"; };
-               37D928200F21331F001D4494 /* shared.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = shared.cpp; sourceTree = "<group>"; };
-               37D928210F21331F001D4494 /* shared.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shared.h; sourceTree = "<group>"; };
-               37D928220F21331F001D4494 /* sharedace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedace.cpp; sourceTree = "<group>"; };
-               37D928230F21331F001D4494 /* sharedace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedace.h; sourceTree = "<group>"; };
-               37D928240F21331F001D4494 /* sharedchao1.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedchao1.cpp; sourceTree = "<group>"; };
-               37D928250F21331F001D4494 /* sharedchao1.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedchao1.h; sourceTree = "<group>"; };
-               37D928260F21331F001D4494 /* sharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedcommand.cpp; sourceTree = "<group>"; };
-               37D928270F21331F001D4494 /* sharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedcommand.h; sourceTree = "<group>"; };
-               37D928280F21331F001D4494 /* sharedjabund.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjabund.cpp; sourceTree = "<group>"; };
-               37D928290F21331F001D4494 /* sharedjabund.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjabund.h; sourceTree = "<group>"; };
-               37D9282A0F21331F001D4494 /* sharedjclass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjclass.cpp; sourceTree = "<group>"; };
-               37D9282B0F21331F001D4494 /* sharedjclass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjclass.h; sourceTree = "<group>"; };
-               37D9282C0F21331F001D4494 /* sharedjest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjest.cpp; sourceTree = "<group>"; };
-               37D9282D0F21331F001D4494 /* sharedjest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjest.h; sourceTree = "<group>"; };
-               37D9282E0F21331F001D4494 /* sharedordervector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedordervector.cpp; sourceTree = "<group>"; };
-               37D9282F0F21331F001D4494 /* sharedordervector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedordervector.h; sourceTree = "<group>"; };
-               37D928300F21331F001D4494 /* sharedrabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedrabundvector.cpp; sourceTree = "<group>"; };
-               37D928310F21331F001D4494 /* sharedrabundvector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedrabundvector.h; sourceTree = "<group>"; };
-               37D928320F21331F001D4494 /* sharedsabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsabundvector.cpp; sourceTree = "<group>"; };
-               37D928330F21331F001D4494 /* sharedsabundvector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsabundvector.h; sourceTree = "<group>"; };
-               37D928340F21331F001D4494 /* sharedsobs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsobs.cpp; sourceTree = "<group>"; };
-               37D928350F21331F001D4494 /* sharedsobs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsobs.h; sourceTree = "<group>"; };
-               37D928360F21331F001D4494 /* sharedsorabund.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsorabund.cpp; sourceTree = "<group>"; };
-               37D928370F21331F001D4494 /* sharedsorabund.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsorabund.h; sourceTree = "<group>"; };
-               37D928380F21331F001D4494 /* sharedsorclass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsorclass.cpp; sourceTree = "<group>"; };
-               37D928390F21331F001D4494 /* sharedsorclass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsorclass.h; sourceTree = "<group>"; };
-               37D9283A0F21331F001D4494 /* sharedsorest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsorest.cpp; sourceTree = "<group>"; };
-               37D9283B0F21331F001D4494 /* sharedsorest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsorest.h; sourceTree = "<group>"; };
-               37D9283C0F21331F001D4494 /* sharedthetan.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedthetan.cpp; sourceTree = "<group>"; };
-               37D9283D0F21331F001D4494 /* sharedthetan.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedthetan.h; sourceTree = "<group>"; };
-               37D9283E0F21331F001D4494 /* sharedthetayc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedthetayc.cpp; sourceTree = "<group>"; };
-               37D9283F0F21331F001D4494 /* sharedthetayc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedthetayc.h; sourceTree = "<group>"; };
-               37D928400F21331F001D4494 /* simpson.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = simpson.cpp; sourceTree = "<group>"; };
-               37D928410F21331F001D4494 /* simpson.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = simpson.h; sourceTree = "<group>"; };
-               37D928420F21331F001D4494 /* singlelinkage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = singlelinkage.cpp; sourceTree = "<group>"; };
-               37D928430F21331F001D4494 /* sobs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sobs.h; sourceTree = "<group>"; };
-               37D928440F21331F001D4494 /* sparsematrix.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sparsematrix.cpp; sourceTree = "<group>"; };
-               37D928450F21331F001D4494 /* sparsematrix.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = sparsematrix.hpp; sourceTree = "<group>"; };
-               37D928460F21331F001D4494 /* summarycommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = summarycommand.cpp; sourceTree = "<group>"; };
-               37D928470F21331F001D4494 /* summarycommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarycommand.h; sourceTree = "<group>"; };
-               37D928480F21331F001D4494 /* summarydata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarydata.h; sourceTree = "<group>"; };
-               37D928490F21331F001D4494 /* summarydisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarydisplay.h; sourceTree = "<group>"; };
-               37D9284A0F21331F001D4494 /* summarysharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = summarysharedcommand.cpp; sourceTree = "<group>"; };
-               37D9284B0F21331F001D4494 /* summarysharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarysharedcommand.h; sourceTree = "<group>"; };
-               37D9284D0F21331F001D4494 /* uvest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = uvest.cpp; sourceTree = "<group>"; };
-               37D9284E0F21331F001D4494 /* uvest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = uvest.h; sourceTree = "<group>"; };
-               37D9284F0F21331F001D4494 /* validcalculator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = validcalculator.cpp; sourceTree = "<group>"; };
-               37D928500F21331F001D4494 /* validcalculator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = validcalculator.h; sourceTree = "<group>"; };
-               37D928510F21331F001D4494 /* validcommands.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = validcommands.cpp; sourceTree = "<group>"; };
-               37D928520F21331F001D4494 /* validcommands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = validcommands.h; sourceTree = "<group>"; };
-               37D928530F21331F001D4494 /* validparameter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = validparameter.cpp; sourceTree = "<group>"; };
-               37D928540F21331F001D4494 /* validparameter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = validparameter.h; sourceTree = "<group>"; };
-               37E3ED800F4D9D0D00B5DF02 /* mothur.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mothur.h; sourceTree = "<group>"; };
-               37E5F3E10F29FD4200F8D827 /* treenode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = treenode.h; sourceTree = "<group>"; };
-               37E5F3E20F29FD4200F8D827 /* treenode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = treenode.cpp; sourceTree = "<group>"; };
-               37E5F4900F2A3DA800F8D827 /* readtreecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readtreecommand.h; sourceTree = "<group>"; };
-               37E5F4910F2A3DA800F8D827 /* readtreecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readtreecommand.cpp; sourceTree = "<group>"; };
-               7E412F420F8D213C00381DD0 /* libshuff.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = libshuff.h; sourceTree = "<group>"; };
-               7E412F470F8D21B600381DD0 /* slibshuff.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = slibshuff.h; sourceTree = "<group>"; };
-               7E412F480F8D21B600381DD0 /* slibshuff.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = slibshuff.cpp; sourceTree = "<group>"; };
-               7E412FE90F8D3E2C00381DD0 /* libshuff.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = libshuff.cpp; sourceTree = "<group>"; };
-               7E4130F60F8E58FA00381DD0 /* dlibshuff.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = dlibshuff.cpp; sourceTree = "<group>"; };
-               7E4130F70F8E58FA00381DD0 /* dlibshuff.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = dlibshuff.h; sourceTree = "<group>"; };
-               7EC3D4500FA0FFF900338DA5 /* coverage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = coverage.cpp; sourceTree = "<group>"; };
-               7EC3D4510FA0FFF900338DA5 /* coverage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = coverage.h; sourceTree = "<group>"; };
-               7EC3D4520FA0FFF900338DA5 /* sharedanderberg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedanderberg.h; sourceTree = "<group>"; };
-               7EC3D4530FA0FFF900338DA5 /* whittaker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = whittaker.cpp; sourceTree = "<group>"; };
-               7EC3D4540FA0FFF900338DA5 /* whittaker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = whittaker.h; sourceTree = "<group>"; };
+               211C38300F961DD400FEE541 /* sharedutilities.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedutilities.cpp; sourceTree = SOURCE_ROOT; };
+               211C38310F961DD400FEE541 /* sharedutilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedutilities.h; sourceTree = SOURCE_ROOT; };
+               211C38360F961E1F00FEE541 /* treegroupscommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = treegroupscommand.cpp; sourceTree = SOURCE_ROOT; };
+               211C38370F961E1F00FEE541 /* treegroupscommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = treegroupscommand.h; sourceTree = SOURCE_ROOT; };
+               21DDC0190F97A8FE0060691C /* bootstrapsharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bootstrapsharedcommand.h; sourceTree = SOURCE_ROOT; };
+               21DDC01A0F97A8FE0060691C /* bootstrapsharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bootstrapsharedcommand.cpp; sourceTree = SOURCE_ROOT; };
+               21E859D60FC4632E005E1A48 /* matrixoutputcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = matrixoutputcommand.h; sourceTree = SOURCE_ROOT; };
+               21E859D70FC4632E005E1A48 /* matrixoutputcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = matrixoutputcommand.cpp; sourceTree = SOURCE_ROOT; };
+               370B88050F8A4EE4005AB382 /* getoturepcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = getoturepcommand.h; sourceTree = SOURCE_ROOT; };
+               370B88060F8A4EE4005AB382 /* getoturepcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = getoturepcommand.cpp; sourceTree = SOURCE_ROOT; };
+               372E126E0F26365B0095CF7E /* readotucommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readotucommand.h; sourceTree = SOURCE_ROOT; };
+               372E126F0F26365B0095CF7E /* readotucommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readotucommand.cpp; sourceTree = SOURCE_ROOT; };
+               372E12940F263D5A0095CF7E /* readdistcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readdistcommand.h; sourceTree = SOURCE_ROOT; };
+               372E12950F263D5A0095CF7E /* readdistcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readdistcommand.cpp; sourceTree = SOURCE_ROOT; };
+               372E12EC0F264D320095CF7E /* commandfactory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = commandfactory.cpp; sourceTree = SOURCE_ROOT; };
+               373C68A00FC1C07D00137ACD /* alignment.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = alignment.cpp; sourceTree = SOURCE_ROOT; };
+               373C68A10FC1C07D00137ACD /* alignment.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = alignment.hpp; sourceTree = SOURCE_ROOT; };
+               373C68A20FC1C07D00137ACD /* alignmentcell.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = alignmentcell.cpp; sourceTree = SOURCE_ROOT; };
+               373C68A30FC1C07D00137ACD /* alignmentcell.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = alignmentcell.hpp; sourceTree = SOURCE_ROOT; };
+               373C68BA0FC1C1A600137ACD /* gotohoverlap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = gotohoverlap.cpp; sourceTree = SOURCE_ROOT; };
+               373C68BB0FC1C1A600137ACD /* gotohoverlap.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = gotohoverlap.hpp; sourceTree = SOURCE_ROOT; };
+               373C68C30FC1C25F00137ACD /* overlap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = overlap.cpp; sourceTree = SOURCE_ROOT; };
+               373C68C40FC1C25F00137ACD /* overlap.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = overlap.hpp; sourceTree = SOURCE_ROOT; };
+               373C68CD0FC1C2D900137ACD /* needlemanoverlap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = needlemanoverlap.cpp; sourceTree = SOURCE_ROOT; };
+               373C68CE0FC1C2D900137ACD /* needlemanoverlap.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = needlemanoverlap.hpp; sourceTree = SOURCE_ROOT; };
+               373C68DB0FC1C38D00137ACD /* blastalign.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = blastalign.cpp; sourceTree = SOURCE_ROOT; };
+               373C68DC0FC1C38D00137ACD /* blastalign.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = blastalign.hpp; sourceTree = SOURCE_ROOT; };
+               373C68E30FC1C4A500137ACD /* noalign.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = noalign.cpp; sourceTree = SOURCE_ROOT; };
+               373C68E40FC1C4A500137ACD /* noalign.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = noalign.hpp; sourceTree = SOURCE_ROOT; };
+               373C68F30FC1C6A800137ACD /* suffixdb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = suffixdb.cpp; sourceTree = SOURCE_ROOT; };
+               373C68F40FC1C6A800137ACD /* suffixdb.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = suffixdb.hpp; sourceTree = SOURCE_ROOT; };
+               373C68F50FC1C6A800137ACD /* suffixnodes.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = suffixnodes.cpp; sourceTree = SOURCE_ROOT; };
+               373C68F60FC1C6A800137ACD /* suffixnodes.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = suffixnodes.hpp; sourceTree = SOURCE_ROOT; };
+               373C68F70FC1C6A800137ACD /* suffixtree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = suffixtree.cpp; sourceTree = SOURCE_ROOT; };
+               373C68F80FC1C6A800137ACD /* suffixtree.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = suffixtree.hpp; sourceTree = SOURCE_ROOT; };
+               373C69160FC1C8AF00137ACD /* blastdb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = blastdb.cpp; sourceTree = SOURCE_ROOT; };
+               373C69170FC1C8AF00137ACD /* blastdb.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = blastdb.hpp; sourceTree = SOURCE_ROOT; };
+               373C691D0FC1C98600137ACD /* nast.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = nast.cpp; sourceTree = SOURCE_ROOT; };
+               373C691E0FC1C98600137ACD /* nast.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = nast.hpp; sourceTree = SOURCE_ROOT; };
+               373C69290FC1C9EB00137ACD /* nastreport.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = nastreport.cpp; sourceTree = SOURCE_ROOT; };
+               373C692A0FC1C9EB00137ACD /* nastreport.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = nastreport.hpp; sourceTree = SOURCE_ROOT; };
+               373C69940FC1E63600137ACD /* boneh.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = boneh.cpp; sourceTree = SOURCE_ROOT; };
+               373C69950FC1E63600137ACD /* boneh.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = boneh.h; sourceTree = SOURCE_ROOT; };
+               373C69960FC1E63600137ACD /* efron.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = efron.cpp; sourceTree = SOURCE_ROOT; };
+               373C69970FC1E63600137ACD /* efron.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = efron.h; sourceTree = SOURCE_ROOT; };
+               373C69980FC1E63600137ACD /* solow.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = solow.cpp; sourceTree = SOURCE_ROOT; };
+               373C69990FC1E63600137ACD /* solow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = solow.h; sourceTree = SOURCE_ROOT; };
+               374610760F40645300460C57 /* unifracweightedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unifracweightedcommand.h; sourceTree = SOURCE_ROOT; };
+               374610770F40645300460C57 /* unifracweightedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = unifracweightedcommand.cpp; sourceTree = SOURCE_ROOT; };
+               3746107C0F4064D100460C57 /* weighted.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = weighted.h; sourceTree = SOURCE_ROOT; };
+               3746107D0F4064D100460C57 /* weighted.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = weighted.cpp; sourceTree = SOURCE_ROOT; };
+               374610810F40652400460C57 /* unweighted.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unweighted.h; sourceTree = SOURCE_ROOT; };
+               374610820F40652400460C57 /* unweighted.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = unweighted.cpp; sourceTree = SOURCE_ROOT; };
+               3746109B0F40657600460C57 /* unifracunweightedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unifracunweightedcommand.h; sourceTree = SOURCE_ROOT; };
+               3746109C0F40657600460C57 /* unifracunweightedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = unifracunweightedcommand.cpp; sourceTree = SOURCE_ROOT; };
+               37519A690F80E6EB00FED5E8 /* sharedanderbergs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedanderbergs.h; sourceTree = SOURCE_ROOT; };
+               37519A6A0F80E6EB00FED5E8 /* sharedanderbergs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedanderbergs.cpp; sourceTree = SOURCE_ROOT; };
+               37519A9F0F810D0200FED5E8 /* venncommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = venncommand.h; sourceTree = SOURCE_ROOT; };
+               37519AA00F810D0200FED5E8 /* venncommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = venncommand.cpp; sourceTree = SOURCE_ROOT; };
+               37519AB30F810FAE00FED5E8 /* venn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = venn.h; sourceTree = SOURCE_ROOT; };
+               37519AB40F810FAE00FED5E8 /* venn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = venn.cpp; sourceTree = SOURCE_ROOT; };
+               375873EA0F7D64520040F377 /* fullmatrix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fullmatrix.h; sourceTree = SOURCE_ROOT; };
+               375873EB0F7D64520040F377 /* fullmatrix.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fullmatrix.cpp; sourceTree = SOURCE_ROOT; };
+               375873ED0F7D646F0040F377 /* heatmap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = heatmap.h; sourceTree = SOURCE_ROOT; };
+               375873EE0F7D646F0040F377 /* heatmap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = heatmap.cpp; sourceTree = SOURCE_ROOT; };
+               375873F00F7D64800040F377 /* heatmapcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = heatmapcommand.cpp; sourceTree = SOURCE_ROOT; };
+               375873F10F7D64800040F377 /* heatmapcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = heatmapcommand.h; sourceTree = SOURCE_ROOT; };
+               375873F30F7D648F0040F377 /* libshuffcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = libshuffcommand.cpp; sourceTree = SOURCE_ROOT; };
+               375873F40F7D648F0040F377 /* libshuffcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = libshuffcommand.h; sourceTree = SOURCE_ROOT; };
+               375873F60F7D649C0040F377 /* nocommands.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = nocommands.cpp; sourceTree = SOURCE_ROOT; };
+               375873F70F7D649C0040F377 /* nocommands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = nocommands.h; sourceTree = SOURCE_ROOT; };
+               375873F90F7D64AB0040F377 /* nseqs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = nseqs.h; sourceTree = SOURCE_ROOT; };
+               375873FB0F7D64DA0040F377 /* sharedbraycurtis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedbraycurtis.h; sourceTree = SOURCE_ROOT; };
+               375873FC0F7D64DA0040F377 /* sharedbraycurtis.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedbraycurtis.cpp; sourceTree = SOURCE_ROOT; };
+               375873FE0F7D64EF0040F377 /* sharedkulczynski.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedkulczynski.cpp; sourceTree = SOURCE_ROOT; };
+               375873FF0F7D64EF0040F377 /* sharedlennon.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedlennon.cpp; sourceTree = SOURCE_ROOT; };
+               375874000F7D64EF0040F377 /* sharedkulczynski.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedkulczynski.h; sourceTree = SOURCE_ROOT; };
+               375874010F7D64EF0040F377 /* sharedlennon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedlennon.h; sourceTree = SOURCE_ROOT; };
+               375874020F7D64EF0040F377 /* sharedkulczynskicody.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedkulczynskicody.cpp; sourceTree = SOURCE_ROOT; };
+               375874030F7D64EF0040F377 /* sharedkulczynskicody.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedkulczynskicody.h; sourceTree = SOURCE_ROOT; };
+               375874070F7D64FC0040F377 /* sharedmorisitahorn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedmorisitahorn.h; sourceTree = SOURCE_ROOT; };
+               375874080F7D64FC0040F377 /* sharedmorisitahorn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedmorisitahorn.cpp; sourceTree = SOURCE_ROOT; };
+               375874090F7D64FC0040F377 /* sharedochiai.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedochiai.h; sourceTree = SOURCE_ROOT; };
+               3758740A0F7D64FC0040F377 /* sharednseqs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharednseqs.h; sourceTree = SOURCE_ROOT; };
+               3758740B0F7D64FC0040F377 /* sharedochiai.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedochiai.cpp; sourceTree = SOURCE_ROOT; };
+               375AA1330F9E433D008EF9B8 /* readcolumn.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readcolumn.cpp; sourceTree = SOURCE_ROOT; };
+               375AA1340F9E433D008EF9B8 /* readcolumn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readcolumn.h; sourceTree = SOURCE_ROOT; };
+               375AA1350F9E433D008EF9B8 /* readotu.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readotu.cpp; sourceTree = SOURCE_ROOT; };
+               375AA1360F9E433D008EF9B8 /* readotu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readotu.h; sourceTree = SOURCE_ROOT; };
+               375AA1370F9E433D008EF9B8 /* readphylip.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readphylip.cpp; sourceTree = SOURCE_ROOT; };
+               375AA1380F9E433D008EF9B8 /* readphylip.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readphylip.h; sourceTree = SOURCE_ROOT; };
+               377326630FAF16E0007ABB8B /* concensuscommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = concensuscommand.cpp; sourceTree = SOURCE_ROOT; };
+               377326640FAF16E0007ABB8B /* concensuscommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = concensuscommand.h; sourceTree = SOURCE_ROOT; };
+               378C1AEE0FB0644D004D63F5 /* filterseqscommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = filterseqscommand.cpp; sourceTree = SOURCE_ROOT; };
+               378C1AEF0FB0644D004D63F5 /* filterseqscommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = filterseqscommand.h; sourceTree = SOURCE_ROOT; };
+               378C1AF00FB0644D004D63F5 /* goodscoverage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = goodscoverage.cpp; sourceTree = SOURCE_ROOT; };
+               378C1AF10FB0644D004D63F5 /* goodscoverage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = goodscoverage.h; sourceTree = SOURCE_ROOT; };
+               378C1AF20FB0644D004D63F5 /* readclustal.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readclustal.cpp; sourceTree = SOURCE_ROOT; };
+               378C1AF30FB0644D004D63F5 /* readclustal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readclustal.h; sourceTree = SOURCE_ROOT; };
+               378C1AF40FB0644D004D63F5 /* readfasta.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readfasta.cpp; sourceTree = SOURCE_ROOT; };
+               378C1AF50FB0644D004D63F5 /* readfasta.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readfasta.h; sourceTree = SOURCE_ROOT; };
+               378C1AF60FB0644D004D63F5 /* readnexus.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readnexus.cpp; sourceTree = SOURCE_ROOT; };
+               378C1AF70FB0644D004D63F5 /* readnexus.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readnexus.h; sourceTree = SOURCE_ROOT; };
+               378C1AF80FB0644D004D63F5 /* readnexusal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readnexusal.h; sourceTree = SOURCE_ROOT; };
+               378C1AFB0FB0644D004D63F5 /* readseqsphylip.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readseqsphylip.cpp; sourceTree = SOURCE_ROOT; };
+               378C1AFC0FB0644D004D63F5 /* readseqsphylip.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readseqsphylip.h; sourceTree = SOURCE_ROOT; };
+               378C1AFD0FB0644D004D63F5 /* sequencedb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sequencedb.cpp; sourceTree = SOURCE_ROOT; };
+               378C1AFE0FB0644D004D63F5 /* sequencedb.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sequencedb.h; sourceTree = SOURCE_ROOT; };
+               378C1AFF0FB0644D004D63F5 /* sharedjackknife.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjackknife.cpp; sourceTree = SOURCE_ROOT; };
+               378C1B000FB0644D004D63F5 /* sharedjackknife.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjackknife.h; sourceTree = SOURCE_ROOT; };
+               378C1B010FB0644D004D63F5 /* sharedmarczewski.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedmarczewski.cpp; sourceTree = SOURCE_ROOT; };
+               378C1B020FB0644D004D63F5 /* sharedmarczewski.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedmarczewski.h; sourceTree = SOURCE_ROOT; };
+               378DC5CD0FBDE1C8003B8607 /* aligncommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aligncommand.h; sourceTree = SOURCE_ROOT; };
+               378DC5CE0FBDE1C8003B8607 /* aligncommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = aligncommand.cpp; sourceTree = SOURCE_ROOT; };
+               379293C10F2DE73400B9034A /* treemap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = treemap.h; sourceTree = SOURCE_ROOT; };
+               379293C20F2DE73400B9034A /* treemap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = treemap.cpp; sourceTree = SOURCE_ROOT; };
+               3792946E0F2E191800B9034A /* parsimonycommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = parsimonycommand.h; sourceTree = SOURCE_ROOT; };
+               3792946F0F2E191800B9034A /* parsimonycommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = parsimonycommand.cpp; sourceTree = SOURCE_ROOT; };
+               379294880F2E258500B9034A /* parsimony.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = parsimony.h; sourceTree = SOURCE_ROOT; };
+               379294890F2E258500B9034A /* parsimony.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = parsimony.cpp; sourceTree = SOURCE_ROOT; };
+               3792948D0F2E271100B9034A /* treecalculator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = treecalculator.h; sourceTree = SOURCE_ROOT; };
+               379643EB0FB9B5A80081FDB6 /* readseqs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readseqs.cpp; sourceTree = SOURCE_ROOT; };
+               379643EC0FB9B5A80081FDB6 /* readseqs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readseqs.h; sourceTree = SOURCE_ROOT; };
+               37AD4CE20F28AEA300AA2D49 /* sharedlistvector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedlistvector.h; sourceTree = SOURCE_ROOT; };
+               37AD4CE30F28AEA300AA2D49 /* sharedlistvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedlistvector.cpp; sourceTree = SOURCE_ROOT; };
+               37AD4DB90F28E2FE00AA2D49 /* tree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = tree.h; sourceTree = SOURCE_ROOT; };
+               37AD4DBA0F28E2FE00AA2D49 /* tree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = tree.cpp; sourceTree = SOURCE_ROOT; };
+               37AD4DC80F28F3DD00AA2D49 /* readtree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readtree.h; sourceTree = SOURCE_ROOT; };
+               37AD4DC90F28F3DD00AA2D49 /* readtree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readtree.cpp; sourceTree = SOURCE_ROOT; };
+               37AFC71D0F445386005F492D /* sharedsobscollectsummary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsobscollectsummary.h; sourceTree = SOURCE_ROOT; };
+               37AFC71E0F445386005F492D /* sharedsobscollectsummary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsobscollectsummary.cpp; sourceTree = SOURCE_ROOT; };
+               37B28F660F27590100808A62 /* deconvolutecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = deconvolutecommand.h; sourceTree = SOURCE_ROOT; };
+               37B28F670F27590100808A62 /* deconvolutecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = deconvolutecommand.cpp; sourceTree = SOURCE_ROOT; };
+               37C1D9710F86506E0059E3F0 /* binsequencecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = binsequencecommand.h; sourceTree = SOURCE_ROOT; };
+               37C1D9720F86506E0059E3F0 /* binsequencecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = binsequencecommand.cpp; sourceTree = SOURCE_ROOT; };
+               37C753CC0FB3415200DBD02E /* distancecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = distancecommand.h; sourceTree = SOURCE_ROOT; };
+               37C753CD0FB3415200DBD02E /* distancecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = distancecommand.cpp; sourceTree = SOURCE_ROOT; };
+               37C753DF0FB3492400DBD02E /* dist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = dist.h; sourceTree = SOURCE_ROOT; };
+               37C753ED0FB34A5700DBD02E /* ignoregaps.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ignoregaps.h; sourceTree = SOURCE_ROOT; };
+               37C753F00FB34AE800DBD02E /* eachgapdist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = eachgapdist.h; sourceTree = SOURCE_ROOT; };
+               37C753F10FB34B4700DBD02E /* onegapdist.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = onegapdist.h; sourceTree = SOURCE_ROOT; };
+               37C753F30FB34BBF00DBD02E /* onegapignore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = onegapignore.h; sourceTree = SOURCE_ROOT; };
+               37C753F40FB34C0300DBD02E /* eachgapignore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = eachgapignore.h; sourceTree = SOURCE_ROOT; };
+               37D927B80F21331F001D4494 /* ace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ace.cpp; sourceTree = SOURCE_ROOT; };
+               37D927B90F21331F001D4494 /* ace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ace.h; sourceTree = SOURCE_ROOT; };
+               37D927BA0F21331F001D4494 /* averagelinkage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = averagelinkage.cpp; sourceTree = SOURCE_ROOT; };
+               37D927BB0F21331F001D4494 /* bootstrap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bootstrap.cpp; sourceTree = SOURCE_ROOT; };
+               37D927BC0F21331F001D4494 /* bootstrap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bootstrap.h; sourceTree = SOURCE_ROOT; };
+               37D927BD0F21331F001D4494 /* calculator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = calculator.cpp; sourceTree = SOURCE_ROOT; };
+               37D927BE0F21331F001D4494 /* calculator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = calculator.h; sourceTree = SOURCE_ROOT; };
+               37D927BF0F21331F001D4494 /* chao1.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = chao1.cpp; sourceTree = SOURCE_ROOT; };
+               37D927C00F21331F001D4494 /* chao1.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = chao1.h; sourceTree = SOURCE_ROOT; };
+               37D927C10F21331F001D4494 /* cluster.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cluster.cpp; sourceTree = SOURCE_ROOT; };
+               37D927C20F21331F001D4494 /* cluster.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = cluster.hpp; sourceTree = SOURCE_ROOT; };
+               37D927C30F21331F001D4494 /* clustercommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = clustercommand.cpp; sourceTree = SOURCE_ROOT; };
+               37D927C40F21331F001D4494 /* clustercommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = clustercommand.h; sourceTree = SOURCE_ROOT; };
+               37D927C50F21331F001D4494 /* collect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = collect.cpp; sourceTree = SOURCE_ROOT; };
+               37D927C60F21331F001D4494 /* collect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collect.h; sourceTree = SOURCE_ROOT; };
+               37D927C70F21331F001D4494 /* collectcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = collectcommand.cpp; sourceTree = SOURCE_ROOT; };
+               37D927C80F21331F001D4494 /* collectcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectcommand.h; sourceTree = SOURCE_ROOT; };
+               37D927C90F21331F001D4494 /* collectdisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectdisplay.h; sourceTree = SOURCE_ROOT; };
+               37D927CA0F21331F001D4494 /* collectorscurvedata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectorscurvedata.h; sourceTree = SOURCE_ROOT; };
+               37D927CB0F21331F001D4494 /* collectsharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = collectsharedcommand.cpp; sourceTree = SOURCE_ROOT; };
+               37D927CC0F21331F001D4494 /* collectsharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectsharedcommand.h; sourceTree = SOURCE_ROOT; };
+               37D927CD0F21331F001D4494 /* command.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = command.hpp; sourceTree = SOURCE_ROOT; };
+               37D927CF0F21331F001D4494 /* commandfactory.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = commandfactory.hpp; sourceTree = SOURCE_ROOT; };
+               37D927D00F21331F001D4494 /* commandoptionparser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = commandoptionparser.cpp; sourceTree = SOURCE_ROOT; };
+               37D927D10F21331F001D4494 /* commandoptionparser.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = commandoptionparser.hpp; sourceTree = SOURCE_ROOT; };
+               37D927D20F21331F001D4494 /* completelinkage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = completelinkage.cpp; sourceTree = SOURCE_ROOT; };
+               37D927D30F21331F001D4494 /* database.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = database.cpp; sourceTree = SOURCE_ROOT; };
+               37D927D40F21331F001D4494 /* database.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = database.hpp; sourceTree = SOURCE_ROOT; };
+               37D927D50F21331F001D4494 /* datavector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = datavector.hpp; sourceTree = SOURCE_ROOT; };
+               37D927D60F21331F001D4494 /* display.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = display.h; sourceTree = SOURCE_ROOT; };
+               37D927D70F21331F001D4494 /* engine.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = engine.cpp; sourceTree = SOURCE_ROOT; };
+               37D927D80F21331F001D4494 /* engine.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = engine.hpp; sourceTree = SOURCE_ROOT; };
+               37D927D90F21331F001D4494 /* errorchecking.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = errorchecking.cpp; sourceTree = SOURCE_ROOT; };
+               37D927DA0F21331F001D4494 /* errorchecking.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = errorchecking.h; sourceTree = SOURCE_ROOT; };
+               37D927DB0F21331F001D4494 /* fastamap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fastamap.cpp; sourceTree = SOURCE_ROOT; };
+               37D927DC0F21331F001D4494 /* fastamap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fastamap.h; sourceTree = SOURCE_ROOT; };
+               37D927DD0F21331F001D4494 /* fileoutput.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fileoutput.cpp; sourceTree = SOURCE_ROOT; };
+               37D927DE0F21331F001D4494 /* fileoutput.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fileoutput.h; sourceTree = SOURCE_ROOT; };
+               37D927DF0F21331F001D4494 /* globaldata.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = globaldata.cpp; sourceTree = SOURCE_ROOT; };
+               37D927E00F21331F001D4494 /* globaldata.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = globaldata.hpp; sourceTree = SOURCE_ROOT; };
+               37D927E10F21331F001D4494 /* groupmap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = groupmap.cpp; sourceTree = SOURCE_ROOT; };
+               37D927E20F21331F001D4494 /* groupmap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = groupmap.h; sourceTree = SOURCE_ROOT; };
+               37D927E30F21331F001D4494 /* helpcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = helpcommand.cpp; sourceTree = SOURCE_ROOT; };
+               37D927E40F21331F001D4494 /* helpcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = helpcommand.h; sourceTree = SOURCE_ROOT; };
+               37D927E50F21331F001D4494 /* inputdata.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = inputdata.cpp; sourceTree = SOURCE_ROOT; };
+               37D927E60F21331F001D4494 /* inputdata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = inputdata.h; sourceTree = SOURCE_ROOT; };
+               37D927E70F21331F001D4494 /* jackknife.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = jackknife.cpp; sourceTree = SOURCE_ROOT; };
+               37D927E80F21331F001D4494 /* jackknife.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jackknife.h; sourceTree = SOURCE_ROOT; };
+               37D927E90F21331F001D4494 /* kmer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = kmer.cpp; sourceTree = SOURCE_ROOT; };
+               37D927EA0F21331F001D4494 /* kmer.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = kmer.hpp; sourceTree = SOURCE_ROOT; };
+               37D927EB0F21331F001D4494 /* kmerdb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = kmerdb.cpp; sourceTree = SOURCE_ROOT; };
+               37D927EC0F21331F001D4494 /* kmerdb.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = kmerdb.hpp; sourceTree = SOURCE_ROOT; };
+               37D927ED0F21331F001D4494 /* listvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = listvector.cpp; sourceTree = SOURCE_ROOT; };
+               37D927EE0F21331F001D4494 /* listvector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = listvector.hpp; sourceTree = SOURCE_ROOT; };
+               37D927EF0F21331F001D4494 /* mothur.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = mothur.cpp; sourceTree = SOURCE_ROOT; };
+               37D927F00F21331F001D4494 /* nameassignment.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = nameassignment.cpp; sourceTree = SOURCE_ROOT; };
+               37D927F10F21331F001D4494 /* nameassignment.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = nameassignment.hpp; sourceTree = SOURCE_ROOT; };
+               37D927F40F21331F001D4494 /* npshannon.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = npshannon.cpp; sourceTree = SOURCE_ROOT; };
+               37D927F50F21331F001D4494 /* npshannon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = npshannon.h; sourceTree = SOURCE_ROOT; };
+               37D927F60F21331F001D4494 /* observable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = observable.h; sourceTree = SOURCE_ROOT; };
+               37D927F70F21331F001D4494 /* ordervector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ordervector.cpp; sourceTree = SOURCE_ROOT; };
+               37D927F80F21331F001D4494 /* ordervector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = ordervector.hpp; sourceTree = SOURCE_ROOT; };
+               37D927F90F21331F001D4494 /* parselistcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = parselistcommand.cpp; sourceTree = SOURCE_ROOT; };
+               37D927FA0F21331F001D4494 /* parselistcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = parselistcommand.h; sourceTree = SOURCE_ROOT; };
+               37D927FB0F21331F001D4494 /* progress.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = progress.cpp; sourceTree = SOURCE_ROOT; };
+               37D927FC0F21331F001D4494 /* progress.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = progress.hpp; sourceTree = SOURCE_ROOT; };
+               37D927FD0F21331F001D4494 /* quitcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = quitcommand.cpp; sourceTree = SOURCE_ROOT; };
+               37D927FE0F21331F001D4494 /* quitcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = quitcommand.h; sourceTree = SOURCE_ROOT; };
+               37D927FF0F21331F001D4494 /* rabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rabundvector.cpp; sourceTree = SOURCE_ROOT; };
+               37D928000F21331F001D4494 /* rabundvector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = rabundvector.hpp; sourceTree = SOURCE_ROOT; };
+               37D928010F21331F001D4494 /* rarecalc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarecalc.cpp; sourceTree = SOURCE_ROOT; };
+               37D928020F21331F001D4494 /* rarecalc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarecalc.h; sourceTree = SOURCE_ROOT; };
+               37D928030F21331F001D4494 /* raredisplay.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = raredisplay.cpp; sourceTree = SOURCE_ROOT; };
+               37D928040F21331F001D4494 /* raredisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = raredisplay.h; sourceTree = SOURCE_ROOT; };
+               37D928050F21331F001D4494 /* rarefact.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarefact.cpp; sourceTree = SOURCE_ROOT; };
+               37D928060F21331F001D4494 /* rarefact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefact.h; sourceTree = SOURCE_ROOT; };
+               37D928070F21331F001D4494 /* rarefactcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarefactcommand.cpp; sourceTree = SOURCE_ROOT; };
+               37D928080F21331F001D4494 /* rarefactcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefactcommand.h; sourceTree = SOURCE_ROOT; };
+               37D928090F21331F001D4494 /* rarefactioncurvedata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefactioncurvedata.h; sourceTree = SOURCE_ROOT; };
+               37D9280A0F21331F001D4494 /* rarefactsharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarefactsharedcommand.cpp; sourceTree = SOURCE_ROOT; };
+               37D9280B0F21331F001D4494 /* rarefactsharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefactsharedcommand.h; sourceTree = SOURCE_ROOT; };
+               37D928130F21331F001D4494 /* readmatrix.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = readmatrix.hpp; sourceTree = SOURCE_ROOT; };
+               37D9281A0F21331F001D4494 /* sabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sabundvector.cpp; sourceTree = SOURCE_ROOT; };
+               37D9281B0F21331F001D4494 /* sabundvector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = sabundvector.hpp; sourceTree = SOURCE_ROOT; };
+               37D9281C0F21331F001D4494 /* sequence.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sequence.cpp; sourceTree = SOURCE_ROOT; };
+               37D9281D0F21331F001D4494 /* sequence.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = sequence.hpp; sourceTree = SOURCE_ROOT; };
+               37D9281E0F21331F001D4494 /* shannon.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = shannon.cpp; sourceTree = SOURCE_ROOT; };
+               37D9281F0F21331F001D4494 /* shannon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shannon.h; sourceTree = SOURCE_ROOT; };
+               37D928200F21331F001D4494 /* shared.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = shared.cpp; sourceTree = SOURCE_ROOT; };
+               37D928210F21331F001D4494 /* shared.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shared.h; sourceTree = SOURCE_ROOT; };
+               37D928220F21331F001D4494 /* sharedace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedace.cpp; sourceTree = SOURCE_ROOT; };
+               37D928230F21331F001D4494 /* sharedace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedace.h; sourceTree = SOURCE_ROOT; };
+               37D928240F21331F001D4494 /* sharedchao1.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedchao1.cpp; sourceTree = SOURCE_ROOT; };
+               37D928250F21331F001D4494 /* sharedchao1.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedchao1.h; sourceTree = SOURCE_ROOT; };
+               37D928260F21331F001D4494 /* sharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedcommand.cpp; sourceTree = SOURCE_ROOT; };
+               37D928270F21331F001D4494 /* sharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedcommand.h; sourceTree = SOURCE_ROOT; };
+               37D928280F21331F001D4494 /* sharedjabund.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjabund.cpp; sourceTree = SOURCE_ROOT; };
+               37D928290F21331F001D4494 /* sharedjabund.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjabund.h; sourceTree = SOURCE_ROOT; };
+               37D9282A0F21331F001D4494 /* sharedjclass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjclass.cpp; sourceTree = SOURCE_ROOT; };
+               37D9282B0F21331F001D4494 /* sharedjclass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjclass.h; sourceTree = SOURCE_ROOT; };
+               37D9282C0F21331F001D4494 /* sharedjest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjest.cpp; sourceTree = SOURCE_ROOT; };
+               37D9282D0F21331F001D4494 /* sharedjest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjest.h; sourceTree = SOURCE_ROOT; };
+               37D9282E0F21331F001D4494 /* sharedordervector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedordervector.cpp; sourceTree = SOURCE_ROOT; };
+               37D9282F0F21331F001D4494 /* sharedordervector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedordervector.h; sourceTree = SOURCE_ROOT; };
+               37D928300F21331F001D4494 /* sharedrabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedrabundvector.cpp; sourceTree = SOURCE_ROOT; };
+               37D928310F21331F001D4494 /* sharedrabundvector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedrabundvector.h; sourceTree = SOURCE_ROOT; };
+               37D928320F21331F001D4494 /* sharedsabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsabundvector.cpp; sourceTree = SOURCE_ROOT; };
+               37D928330F21331F001D4494 /* sharedsabundvector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsabundvector.h; sourceTree = SOURCE_ROOT; };
+               37D928340F21331F001D4494 /* sharedsobs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsobs.cpp; sourceTree = SOURCE_ROOT; };
+               37D928350F21331F001D4494 /* sharedsobs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsobs.h; sourceTree = SOURCE_ROOT; };
+               37D928360F21331F001D4494 /* sharedsorabund.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsorabund.cpp; sourceTree = SOURCE_ROOT; };
+               37D928370F21331F001D4494 /* sharedsorabund.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsorabund.h; sourceTree = SOURCE_ROOT; };
+               37D928380F21331F001D4494 /* sharedsorclass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsorclass.cpp; sourceTree = SOURCE_ROOT; };
+               37D928390F21331F001D4494 /* sharedsorclass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsorclass.h; sourceTree = SOURCE_ROOT; };
+               37D9283A0F21331F001D4494 /* sharedsorest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsorest.cpp; sourceTree = SOURCE_ROOT; };
+               37D9283B0F21331F001D4494 /* sharedsorest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsorest.h; sourceTree = SOURCE_ROOT; };
+               37D9283C0F21331F001D4494 /* sharedthetan.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedthetan.cpp; sourceTree = SOURCE_ROOT; };
+               37D9283D0F21331F001D4494 /* sharedthetan.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedthetan.h; sourceTree = SOURCE_ROOT; };
+               37D9283E0F21331F001D4494 /* sharedthetayc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedthetayc.cpp; sourceTree = SOURCE_ROOT; };
+               37D9283F0F21331F001D4494 /* sharedthetayc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedthetayc.h; sourceTree = SOURCE_ROOT; };
+               37D928400F21331F001D4494 /* simpson.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = simpson.cpp; sourceTree = SOURCE_ROOT; };
+               37D928410F21331F001D4494 /* simpson.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = simpson.h; sourceTree = SOURCE_ROOT; };
+               37D928420F21331F001D4494 /* singlelinkage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = singlelinkage.cpp; sourceTree = SOURCE_ROOT; };
+               37D928430F21331F001D4494 /* sobs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sobs.h; sourceTree = SOURCE_ROOT; };
+               37D928440F21331F001D4494 /* sparsematrix.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sparsematrix.cpp; sourceTree = SOURCE_ROOT; };
+               37D928450F21331F001D4494 /* sparsematrix.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = sparsematrix.hpp; sourceTree = SOURCE_ROOT; };
+               37D928460F21331F001D4494 /* summarycommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = summarycommand.cpp; sourceTree = SOURCE_ROOT; };
+               37D928470F21331F001D4494 /* summarycommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarycommand.h; sourceTree = SOURCE_ROOT; };
+               37D928480F21331F001D4494 /* summarydata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarydata.h; sourceTree = SOURCE_ROOT; };
+               37D928490F21331F001D4494 /* summarydisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarydisplay.h; sourceTree = SOURCE_ROOT; };
+               37D9284A0F21331F001D4494 /* summarysharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = summarysharedcommand.cpp; sourceTree = SOURCE_ROOT; };
+               37D9284B0F21331F001D4494 /* summarysharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarysharedcommand.h; sourceTree = SOURCE_ROOT; };
+               37D9284D0F21331F001D4494 /* uvest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = uvest.cpp; sourceTree = SOURCE_ROOT; };
+               37D9284E0F21331F001D4494 /* uvest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = uvest.h; sourceTree = SOURCE_ROOT; };
+               37D9284F0F21331F001D4494 /* validcalculator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = validcalculator.cpp; sourceTree = SOURCE_ROOT; };
+               37D928500F21331F001D4494 /* validcalculator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = validcalculator.h; sourceTree = SOURCE_ROOT; };
+               37D928510F21331F001D4494 /* validcommands.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = validcommands.cpp; sourceTree = SOURCE_ROOT; };
+               37D928520F21331F001D4494 /* validcommands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = validcommands.h; sourceTree = SOURCE_ROOT; };
+               37D928530F21331F001D4494 /* validparameter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = validparameter.cpp; sourceTree = SOURCE_ROOT; };
+               37D928540F21331F001D4494 /* validparameter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = validparameter.h; sourceTree = SOURCE_ROOT; };
+               37E3ED800F4D9D0D00B5DF02 /* mothur.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mothur.h; sourceTree = SOURCE_ROOT; };
+               37E5F3E10F29FD4200F8D827 /* treenode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = treenode.h; sourceTree = SOURCE_ROOT; };
+               37E5F3E20F29FD4200F8D827 /* treenode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = treenode.cpp; sourceTree = SOURCE_ROOT; };
+               37E5F4900F2A3DA800F8D827 /* readtreecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readtreecommand.h; sourceTree = SOURCE_ROOT; };
+               37E5F4910F2A3DA800F8D827 /* readtreecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readtreecommand.cpp; sourceTree = SOURCE_ROOT; };
+               7E412F420F8D213C00381DD0 /* libshuff.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = libshuff.h; sourceTree = SOURCE_ROOT; };
+               7E412F470F8D21B600381DD0 /* slibshuff.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = slibshuff.h; sourceTree = SOURCE_ROOT; };
+               7E412F480F8D21B600381DD0 /* slibshuff.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = slibshuff.cpp; sourceTree = SOURCE_ROOT; };
+               7E412FE90F8D3E2C00381DD0 /* libshuff.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = libshuff.cpp; sourceTree = SOURCE_ROOT; };
+               7E4130F60F8E58FA00381DD0 /* dlibshuff.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = dlibshuff.cpp; sourceTree = SOURCE_ROOT; };
+               7E4130F70F8E58FA00381DD0 /* dlibshuff.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = dlibshuff.h; sourceTree = SOURCE_ROOT; };
+               7EC3D4500FA0FFF900338DA5 /* coverage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = coverage.cpp; sourceTree = SOURCE_ROOT; };
+               7EC3D4510FA0FFF900338DA5 /* coverage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = coverage.h; sourceTree = SOURCE_ROOT; };
+               7EC3D4520FA0FFF900338DA5 /* sharedanderberg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedanderberg.h; sourceTree = SOURCE_ROOT; };
+               7EC3D4530FA0FFF900338DA5 /* whittaker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = whittaker.cpp; sourceTree = SOURCE_ROOT; };
+               7EC3D4540FA0FFF900338DA5 /* whittaker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = whittaker.h; sourceTree = SOURCE_ROOT; };
                8DD76F6C0486A84900D96B5E /* mothur */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = mothur; sourceTree = BUILT_PRODUCTS_DIR; };
-               A70B53A40F4CD7AD0064797E /* getgroupcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = getgroupcommand.cpp; sourceTree = "<group>"; };
-               A70B53A50F4CD7AD0064797E /* getgroupcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = getgroupcommand.h; sourceTree = "<group>"; };
-               A70B53A60F4CD7AD0064797E /* getlabelcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = getlabelcommand.cpp; sourceTree = "<group>"; };
-               A70B53A70F4CD7AD0064797E /* getlabelcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = getlabelcommand.h; sourceTree = "<group>"; };
-               A70B53A80F4CD7AD0064797E /* getlinecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = getlinecommand.cpp; sourceTree = "<group>"; };
-               A70B53A90F4CD7AD0064797E /* getlinecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = getlinecommand.h; sourceTree = "<group>"; };
+               A70B53A40F4CD7AD0064797E /* getgroupcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = getgroupcommand.cpp; sourceTree = SOURCE_ROOT; };
+               A70B53A50F4CD7AD0064797E /* getgroupcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = getgroupcommand.h; sourceTree = SOURCE_ROOT; };
+               A70B53A60F4CD7AD0064797E /* getlabelcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = getlabelcommand.cpp; sourceTree = SOURCE_ROOT; };
+               A70B53A70F4CD7AD0064797E /* getlabelcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = getlabelcommand.h; sourceTree = SOURCE_ROOT; };
+               A70B53A80F4CD7AD0064797E /* getlinecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = getlinecommand.cpp; sourceTree = SOURCE_ROOT; };
+               A70B53A90F4CD7AD0064797E /* getlinecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = getlinecommand.h; sourceTree = SOURCE_ROOT; };
                C6859E8B029090EE04C91782 /* Mothur.1 */ = {isa = PBXFileReference; lastKnownFileType = text.man; path = Mothur.1; sourceTree = "<group>"; };
-               EB1216860F619B83004A865F /* bergerparker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bergerparker.h; sourceTree = "<group>"; };
-               EB1216870F619B83004A865F /* bergerparker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bergerparker.cpp; sourceTree = "<group>"; };
-               EB1216E30F61ACFB004A865F /* bstick.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bstick.h; sourceTree = "<group>"; };
-               EB1216E40F61ACFB004A865F /* bstick.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bstick.cpp; sourceTree = "<group>"; };
-               EB1217210F61C9AC004A865F /* sharedkstest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedkstest.h; sourceTree = "<group>"; };
-               EB1217220F61C9AC004A865F /* sharedkstest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedkstest.cpp; sourceTree = "<group>"; };
-               EB6E68170F5F1C780044E17B /* qstat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = qstat.h; sourceTree = "<group>"; };
-               EB6E68180F5F1C780044E17B /* qstat.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = qstat.cpp; sourceTree = "<group>"; };
-               EB72FE240FC1F5CA0051AC11 /* shen.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = shen.cpp; sourceTree = "<group>"; };
-               EB72FE250FC1F5CA0051AC11 /* shen.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shen.h; sourceTree = "<group>"; };
-               EB9303E90F534D9400E8EF26 /* logsd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = logsd.h; sourceTree = "<group>"; };
-               EB9303EA0F534D9400E8EF26 /* logsd.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = logsd.cpp; sourceTree = "<group>"; };
-               EB9303F70F53517300E8EF26 /* geom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = geom.h; sourceTree = "<group>"; };
-               EB9303F80F53517300E8EF26 /* geom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = geom.cpp; sourceTree = "<group>"; };
+               EB1216860F619B83004A865F /* bergerparker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bergerparker.h; sourceTree = SOURCE_ROOT; };
+               EB1216870F619B83004A865F /* bergerparker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bergerparker.cpp; sourceTree = SOURCE_ROOT; };
+               EB1216E30F61ACFB004A865F /* bstick.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bstick.h; sourceTree = SOURCE_ROOT; };
+               EB1216E40F61ACFB004A865F /* bstick.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bstick.cpp; sourceTree = SOURCE_ROOT; };
+               EB1217210F61C9AC004A865F /* sharedkstest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedkstest.h; sourceTree = SOURCE_ROOT; };
+               EB1217220F61C9AC004A865F /* sharedkstest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedkstest.cpp; sourceTree = SOURCE_ROOT; };
+               EB6E68170F5F1C780044E17B /* qstat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = qstat.h; sourceTree = SOURCE_ROOT; };
+               EB6E68180F5F1C780044E17B /* qstat.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = qstat.cpp; sourceTree = SOURCE_ROOT; };
+               EB72FE240FC1F5CA0051AC11 /* shen.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = shen.cpp; sourceTree = SOURCE_ROOT; };
+               EB72FE250FC1F5CA0051AC11 /* shen.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shen.h; sourceTree = SOURCE_ROOT; };
+               EB9303E90F534D9400E8EF26 /* logsd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = logsd.h; sourceTree = SOURCE_ROOT; };
+               EB9303EA0F534D9400E8EF26 /* logsd.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = logsd.cpp; sourceTree = SOURCE_ROOT; };
+               EB9303F70F53517300E8EF26 /* geom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = geom.h; sourceTree = SOURCE_ROOT; };
+               EB9303F80F53517300E8EF26 /* geom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = geom.cpp; sourceTree = SOURCE_ROOT; };
 /* End PBXFileReference section */
 
 /* Begin PBXFrameworksBuildPhase section */
index 2025ae70d10311c6184ee723097be4e67b22b318..f5c8f90a175aa8d8e54190b7e49e8df9bf0cb683 100644 (file)
--- a/boneh.cpp
+++ b/boneh.cpp
 #include <math.h>
 
 /***********************************************************************/
+
 //This solves for the value of 'v' using a binary search.
 double Boneh::getV(double f1, double n, double rs) {
 
-       //cout << "f1 = " << f1 << "\nn = " << n << "\nrs = " << rs << "\n\n";
-       
        if(rs == 0)
                return 0;
        
@@ -24,56 +23,53 @@ double Boneh::getV(double f1, double n, double rs) {
        double step = v/2;
        double ls = v * (1 - pow((1 - f1/(n*v)), n));
        
-       //cout << "ls = " << ls << "\n";
-       
        while(abs(ls - rs) > accuracy) {
-               if(ls > rs)
-                       v -= step;
-               else
-                       v += step;
+               if(ls > rs)     {       v -= step;      }
+               else            {       v += step;      }
                
-               ls = v* (1 - pow((1 - f1/(n*v)), n));
+               ls = v * (1 - pow((1 - f1/(n * v)), n));
                step /= 2;
-               
-               //cout << "ls = " << ls << "\n";
        }
-       
+
        return v;
 }
        
 /***********************************************************************/      
-EstOutput Boneh::getValues(SAbundVector* rank){
+EstOutput Boneh::getValues(SAbundVector* sabund){
 
        try {
                data.resize(1,0);
                
+
                bool valid = false;
                double sum = 0;
-               double n = (double)rank->getNumSeqs();
-               double f1 = (double)rank->get(1);
+               double n = (double)sabund->getNumSeqs();
+               if(m==0){       m=n;    }
                
-               for(int i = 1; i < rank->size(); i++)
-                       sum += (double)rank->get(i) * exp(-i);
+               double f1 = (double)sabund->get(1);
                
-               if(rank->get(1) > sum)
+               for(int i = 1; i < sabund->size(); i++){
+                       sum += (double)sabund->get(i) * exp(-i);
+               }
+
+               if(sabund->get(1) > sum)
                        valid = true;
                
                sum = 0;
                if(valid) {
-                       for(int j = 1; j < rank->size(); j++)
-                               sum += rank->get(j) * pow((1 - (double)j / n), n);
+                       for(int j = 1; j < sabund->size(); j++){
+                               sum += sabund->get(j) * pow((1 - (double)j / n), n);
+                       }
                        
                        double v = getV(f1, n, sum);
                        
-                       //cout << "v = " << v << "\n";
-                       
-                       
                        sum = 0;
-                       for(int j = 1; j < rank->size(); j++) {
-                               for (int i = 0; i < rank->get(j); i++) {
-                                       sum += pow(1 - j / n, n) * (1 - pow(1 - j / n, m)) + v * pow(1 - f1/(n*v), n) * (1 - pow(1 - f1/(n*v), m));
+                       for(int j = 1; j < sabund->size(); j++) {
+                               for (int i = 0; i < sabund->get(j); i++) {
+                                       sum += pow(1 - j / n, n) * (1 - pow(1 - j / n, m));
                                }
                        }
+                       sum +=  v * pow(1 - f1/(n*v), n) * (1 - pow(1 - f1/(n*v), m));
                }
 
                data[0] = sum;
index e54d9853d1095b62f0f109d85e0276df90bd0fce..70fdf0512038c2babe35b0894b2e196db97e5de5 100644 (file)
@@ -20,7 +20,7 @@ It is a child of the calculator class. */
 class Bootstrap : public Calculator  {
        
 public:
-       Bootstrap() : Calculator("Bootstrap", 1, false) {};
+       Bootstrap() : Calculator("bootstrap", 1, false) {};
        EstOutput getValues(SAbundVector*);
        EstOutput getValues(vector<SharedRAbundVector*>) {return data;};
        
diff --git a/chao1.h b/chao1.h
index 27b7827f8db1d55225935ab13605da2f339f83cf..1322aac979c30b916370927f71102e5d265b7a0a 100644 (file)
--- a/chao1.h
+++ b/chao1.h
@@ -19,7 +19,7 @@ It is a child of the calculator class. */
 class Chao1 : public Calculator  {
        
 public: 
-       Chao1() : Calculator("Chao", 3, false) {};
+       Chao1() : Calculator("chao", 3, false) {};
        EstOutput getValues(SAbundVector*);     
        EstOutput getValues(vector<SharedRAbundVector*>) {return data;};
 };
index 7d1f6a0308b5358b2ef39ef70579d866fafca6da..6fee651cb8963680ec294051e671cfc57b9c6135 100644 (file)
@@ -20,12 +20,12 @@ DistanceCommand::DistanceCommand(){
        try {
                globaldata = GlobalData::getInstance();
                validCalculator = new ValidCalculators();
-               ends = globaldata->getEnds();
+               countends = globaldata->getCountEnds();
                convert(globaldata->getProcessors(), processors);
                convert(globaldata->getCutOff(), cutoff);
                
                int i;
-               if (ends != "T") {
+               if (countends == "T") {
                        for (i=0; i<globaldata->Estimators.size(); i++) {
                                if (validCalculator->isValidCalculator("distance", globaldata->Estimators[i]) == true) { 
                                        if (globaldata->Estimators[i] == "nogaps") { 
@@ -83,7 +83,8 @@ int DistanceCommand::execute(){
                seqDB = readSeqs->getDB();
        
                int numSeqs = seqDB->getNumSeqs();
-               
+               cutoff += 0.005;
+
                string distFile = getRootName(globaldata->getFastaFile()) + "dist";
                
                remove(distFile.c_str());
@@ -201,10 +202,6 @@ int DistanceCommand::driver(Dist* distCalculator, SequenceDB* align, int startLi
                for(int i=startLine;i<endLine;i++){
                
                        for(int j=0;j<i;j++){
-//cout << "unaligned" << endl;
-//cout << align->get(i).getUnaligned() << "  " << align->get(j).getUnaligned() << endl;
-//cout << "aligned" << endl;
-//cout << align->get(i).getAligned() << "  " << align->get(j).getAligned() << endl;
                                distCalculator->calcDist(align->get(i), align->get(j));
                                double dist = distCalculator->getDist();
 
index 34dd65e66ee0984d298e68ba0cc587343d191d5b..6bd7572629f1ada2b372127110cadb1fce943f76 100644 (file)
@@ -39,7 +39,7 @@ private:
        ReadSeqs* readSeqs;
        ofstream out;
        string outputFileName;
-       string ends;
+       string countends;
        int processors;
        float cutoff;
        
index 767c4bf819aa25f2bee0c4f40a99374a30bb35e5..d21e55ca1acb4e950b1126ade38a3237a7684ad9 100644 (file)
@@ -21,28 +21,28 @@ public:
                int length = 0;
                int start = 0;
                
-               for(int i=0; i<A.getLength(); i++){
-                       if(A.getAligned()[i] != '.' || B.getAligned()[i] != '.'){
+               string seqA = A.getAligned();
+               string seqB = B.getAligned();
+               int alignLength = seqA.length();
+               
+               for(int i=0; i<alignLength; i++){
+                       if(seqA[i] != '.' || seqB[i] != '.'){
                                start = i;
                                break;
                        }
                }
-               
-               for(int i=start;i<A.getLength();i++){
-                       if((A.getAligned()[i] == '-' || B.getAligned()[i] == '-') && (A.getAligned()[i] == '.' || B.getAligned()[i] == '.')){}
-                       else if(A.getAligned()[i] == '.' && B.getAligned()[i] == '.'){
+
+               for(int i=start;i<alignLength;i++){
+                       if(seqA[i] == '.' && seqB[i] == '.'){
                                break;  
                        }
-                       else if(A.getAligned()[i] != '-' && B.getAligned()[i] != '-'){
-                               if(A.getAligned()[i] != B.getAligned()[i]){
+                       else if((seqA[i] == '-' && seqB[i] == '-') || (seqA[i] == '-' && seqB[i] == '.') || (seqA[i] == '.' && seqB[i] == '-')){;}
+                       else{
+                               if(seqA[i] != seqB[i]){
                                        diff++;
                                }
                                length++;
                        }
-                       else if(A.getAligned()[i] != '-' || B.getAligned()[i] != '-'){
-                               diff++;
-                               length++;
-                       }
                }
                
                if(length == 0) {       dist = 1.0000;                                                          }
@@ -53,4 +53,4 @@ public:
 
 /**************************************************************************************************/
 
-#endif
\ No newline at end of file
+#endif
index 9b9d1673249d454bf1a7ce19f41d9b568568ccb6..9763a6d1af138dc7ebeffe66a94cf0b3c4eb5a9c 100644 (file)
@@ -22,40 +22,28 @@ public:
                int diff = 0;
                int length = 0;
                int start = 0;
-               int end = 0;
                
-               for(int i=0;i<A.getLength();i++){
-                       if(A.getAligned()[i] == '.' || B.getAligned()[i] == '.' || A.getAligned()[i] == '-' || B.getAligned()[i] == '-'){
-                       }
-                       else{
+               string seqA = A.getAligned();
+               string seqB = B.getAligned();
+               int alignLength = seqA.length();
+               
+               for(int i=0; i<alignLength; i++){
+                       if(seqA[i] != '.' && seqB[i] != '.'){
                                start = i;
                                break;
                        }
                }
-               for(int i=A.getLength()-1;i>=0;i--){
-                       if(A.getAligned()[i] == '.' || B.getAligned()[i] == '.' || A.getAligned()[i] == '-' || B.getAligned()[i] == '-'){
-                       }
-                       else{
-                               end = i;
-                               break;
-                       }
-               }
                
-               for(int i=start;i<=end;i++){
-                       if(A.getAligned()[i] == '-' && B.getAligned()[i] == '-'){}
-                       else if(A.getAligned()[i] == '.' || B.getAligned()[i] == '.'){
+               for(int i=start;i<alignLength;i++){
+                       if(seqA[i] == '.' || seqB[i] == '.'){
                                break;  
                        }
-                       else if(A.getAligned()[i] != '-' && B.getAligned()[i] != '-'){
-                               if(A.getAligned()[i] != B.getAligned()[i]){
+                       else if(seqA[i] != '-' || seqB[i] != '-'){
+                               if(seqA[i] != seqB[i]){
                                        diff++;
                                }
                                length++;
                        }
-                       else if(A.getAligned()[i] != '-' || B.getAligned()[i] != '-'){
-                               diff++;
-                               length++;
-                       }
                }
                
                if(length == 0) {       dist = 1.0000;                                                          }
index aeeb4c2f33e79102a77d891abd9961c9e616992e..e88b025d9e3ff2bbd4ffc2ed5db463deb64f9d5f 100644 (file)
--- a/efron.cpp
+++ b/efron.cpp
@@ -17,16 +17,12 @@ EstOutput Efron::getValues(SAbundVector* rank){
                data.resize(1,0);
                
                double n = (double)rank->getNumSeqs();
-               if(m > n) {
-                       cout << "Error in the 'efron' calculator. 'size' must be less than the length of the smallest sabund vector.\n";
-                       data[0] = 0;
-                       return data;
-               }
+               if(m > n || m == 0) {   m = n;  }
                
                double sum = 0;
-               for(int i = 1; i < rank->size(); i++)
-                       sum += pow(-1, (double)(i+1)) * pow(((double)m / n), i) * (double)(rank->get(i));
-
+               for(int i = 1; i < rank->size(); i++){
+                       sum += pow(-1., i+1) * pow(((double)m / n), i) * (double)(rank->get(i));
+               }
                data[0] = sum;
                
                return data;
index c5396cfa37c314ca220d6b2cbf12692a477890eb..8b80580a26faf27b8504f55039e494952a9f1be9 100644 (file)
@@ -116,7 +116,7 @@ bool ErrorCheck::checkInput(string input) {
                                if (parameter == "soft" )                       { soft = value; }
                                if (parameter == "filter" )         { filter = value; }
                                if (parameter == "scale" )                      { scale = value;        }
-                               if (parameter == "ends" )                       { ends = value; }
+                               if (parameter == "countends" )          { countends = value; }
                                if (parameter == "processors" )         { processors = value;   }
                                if (parameter == "size" )                       { size = value; }
                                if (parameter == "candidate")           { candidatefile = value;        }
@@ -166,7 +166,7 @@ bool ErrorCheck::checkInput(string input) {
                                if (parameter == "soft" )                       { soft = value; }
                                if (parameter == "filter" )         { filter = value; }
                                if (parameter == "scale" )                      { scale = value;        }
-                               if (parameter == "ends" )                       { ends = value; }
+                               if (parameter == "countends" )          { countends = value; }
                                if (parameter == "processors" )         { processors = value;   }
                                if (parameter == "size" )                       { size = value; }
                                if (parameter == "candidate")           { candidatefile = value;        }
index c6671677ff40b0b398cdd4361781c7b9ad0ec1a2..ac09f6ed49bdb074bbe2c6acfd404fef77cc7116 100644 (file)
@@ -35,7 +35,7 @@ class ErrorCheck {
                void clear();
                void refresh();
                string phylipfile, columnfile, listfile, rabundfile, sabundfile, namefile, groupfile, orderfile, fastafile, nexusfile, clustalfile, treefile, sharedfile, cutoff, format; 
-               string precision, method, fileroot, label, line, iters, jumble, freq, single, rarefaction, shared, summary, randomtree, abund, sorted, trump, soft, filter, scale, ends, processors, size;
+               string precision, method, fileroot, label, line, iters, jumble, freq, single, rarefaction, shared, summary, randomtree, abund, sorted, trump, soft, filter, scale, countends, processors, size;
                string candidatefile, search, ksize, align, match, mismatch, gapopen, gapextend;
                string commandName, optionText;
                bool errorFree;
index f4cc6d82fbe5d97779d4d80dbba9ee9a483940ab..6c022426645cc7af9ae353106f4d167e64812bee 100644 (file)
 #include "filterseqscommand.h"
 
 /**************************************************************************************/
-void FilterSeqsCommand::doTrump() {
-       trump = globaldata->getTrump();
-       for(int i = 0; i < db->size(); i++) {
-               Sequence cur = db->get(i);
-               string curAligned = cur.getAligned();
-               for(int j = 0; j < curAligned.length(); j++) {
-                       string curChar = curAligned.substr(j, 1);
-                       if(curChar.compare(trump) == 0) 
-                               columnsToRemove[j] = true;
-               }
-       }
+
+FilterSeqsCommand::FilterSeqsCommand(){
+       globaldata = GlobalData::getInstance();
+       
+       if(globaldata->getFastaFile() != "")            {       readSeqs =  new ReadFasta(globaldata->inputFileName);   }
+       else if(globaldata->getNexusFile() != "")       {       readSeqs = new ReadNexus(globaldata->inputFileName);    }
+       else if(globaldata->getClustalFile() != "") {   readSeqs = new ReadClustal(globaldata->inputFileName);  }
+       else if(globaldata->getPhylipFile() != "")      {       readSeqs = new ReadPhylip(globaldata->inputFileName);   }
+       
+       readSeqs->read();
+       db = readSeqs->getDB();
+       numSeqs = db->size();
+       
+       alignmentLength = db->get(0).getLength();
+
+       filter = string(alignmentLength, '1');
 }
 
 /**************************************************************************************/
-void FilterSeqsCommand::doSoft() {
-       soft = atoi(globaldata->getSoft().c_str());
-       vector<vector<int> > columnSymbolSums;
-       vector<vector<string> > columnSymbols;
-       for(int i = 0; i < db->get(0).getLength(); i++) {
-               vector<string> symbols;
-               vector<int> sums;
-               columnSymbols.push_back(symbols);
-               columnSymbolSums.push_back(sums);
-       }
+
+void FilterSeqsCommand::doHard() {
        
-       for(int i = 0; i < db->size(); i++) {
-               Sequence cur = db->get(i);
-               string curAligned = cur.getAligned();
+       string hardName = globaldata->getHard();
+       string hardFilter = "";
                
-               for(int j = 0; j < curAligned.length(); j++) {
-                       string curChar = curAligned.substr(j, 1);
-                       vector<string> curColumnSymbols = columnSymbols[j];
-                       bool newSymbol = true;
-                       
-                       for(int k = 0; k < curColumnSymbols.size(); k++) 
-                               if(curChar.compare(curColumnSymbols[k]) == 0) {
-                                       newSymbol = false;
-                                       columnSymbolSums[j][k]++;
-                               }
-                       
-                       if(newSymbol) {
-                               columnSymbols[j].push_back(curChar);
-                               columnSymbolSums[j].push_back(1);
+       ifstream fileHandle;
+       openInputFile(hardName, fileHandle);
+       
+       fileHandle >> hardFilter;
+       
+       if(hardFilter.length() != filter.length()){
+               cout << "The hard filter is not the same length as the alignment: Hard filter will not be applied." << endl;
+       }
+       else{
+               filter = hardFilter;
+       }
+       
+}
+
+/**************************************************************************************/
+
+void FilterSeqsCommand::doTrump() {
+
+       char trump = globaldata->getTrump()[0];
+       
+       for(int i = 0; i < numSeqs; i++) {
+               string curAligned = db->get(i).getAligned();;
+
+               for(int j = 0; j < alignmentLength; j++) {
+                       if(curAligned[j] == trump){
+                               filter[j] = '0';
                        }
                }
        }
+
+}
+
+/**************************************************************************************/
+
+void FilterSeqsCommand::doVertical() {
+
+       vector<int> counts(alignmentLength, 0);
        
-       
-       for(int i = 0; i < columnSymbolSums.size(); i++) {
-               int totalSum = 0;
-               int max = 0;
-               vector<int> curColumnSymbols = columnSymbolSums[i];
+       for(int i = 0; i < numSeqs; i++) {
+               string curAligned = db->get(i).getAligned();;
                
-               for(int j = 0; j < curColumnSymbols.size(); j++) {
-                       int curSum = curColumnSymbols[j];
-                       //cout << columnSymbols[i][j] << ": " << curSum << "\n";
-                       if(curSum > max)
-                               max = curSum;
-                       totalSum += curSum;
+               for(int j = 0; j < alignmentLength; j++) {
+                       if(curAligned[j] == '-' || curAligned[j] == '.'){
+                               counts[j]++;
+                       }
                }
-               //cout << "\n";
-               
-               if((double)max/(double)totalSum * 100 < soft)
-                       columnsToRemove[i] = true;
+       }
+       for(int i=0;i<alignmentLength;i++){
+               if(counts[i] == numSeqs)        {       filter[i] = '0';                }
        }
 }
 
 /**************************************************************************************/
-void FilterSeqsCommand::doFilter() {
-       filter = globaldata->getFilter();
-       ifstream filehandle;
-       openInputFile(filter, filehandle);
+
+void FilterSeqsCommand::doSoft() {
+
+       int softThreshold = numSeqs * (float)atoi(globaldata->getSoft().c_str()) / 100.0;
+
+       vector<int> a(alignmentLength, 0);
+       vector<int> t(alignmentLength, 0);
+       vector<int> g(alignmentLength, 0);
+       vector<int> c(alignmentLength, 0);
+       vector<int> x(alignmentLength, 0);
        
-       char c;
-       int count = 0;
-       while(!filehandle.eof()) {
-               c = filehandle.get();
-               if(c == '0') 
-                       columnsToRemove[count] = true;
-               count++;
+       for(int i=0;i<numSeqs;i++){
+               string curAligned = db->get(i).getAligned();;
+
+               for(int j=0;j<alignmentLength;j++){
+                       if(toupper(curAligned[j]) == 'A')                                                                               {       a[j]++; }
+                       else if(toupper(curAligned[j]) == 'T' || toupper(curAligned[i]) == 'U') {       t[j]++; }
+                       else if(toupper(curAligned[j]) == 'G')                                                                  {       g[j]++; }
+                       else if(toupper(curAligned[j]) == 'C')                                                                  {       c[j]++; }
+               }
+       }
+
+       for(int i=0;i<alignmentLength;i++){
+               if(a[i] < softThreshold && t[i] < softThreshold && g[i] < softThreshold && c[i] < softThreshold){
+                       filter[i] = '0';                        
+               }
        }
 }
 
 /**************************************************************************************/
+
 int FilterSeqsCommand::execute() {     
        try {
-               globaldata = GlobalData::getInstance();
-               filename = globaldata->inputFileName;
-               
-               if(globaldata->getFastaFile() != "") {
-                       readSeqs =  new ReadFasta(filename); }
-               else if(globaldata->getNexusFile() != "") {
-                       readSeqs = new ReadNexus(filename); }
-               else if(globaldata->getClustalFile() != "") {
-                       readSeqs = new ReadClustal(filename); }
-               else if(globaldata->getPhylipFile() != "") {
-                       readSeqs = new ReadPhylip(filename); }
-                       
-               readSeqs->read();
-               db = readSeqs->getDB();
-               
-               //for(int i = 0; i < db->size(); i++) {
-//                     cout << db->get(i).getLength() << "\n" << db->get(i).getName() << ": " << db->get(i).getAligned() << "\n\n";
-//             }
+                                               
+               if(globaldata->getHard().compare("") != 0)              {       doHard();               }       //      has to be applied first!
+               if(globaldata->getTrump().compare("") != 0)             {       doTrump();              }
+               if(globaldata->getVertical() == "T")                    {       doVertical();   }
+               if(globaldata->getSoft().compare("") != 0)              {       doSoft();               }
 
-               for(int i = 0; i < db->get(0).getLength(); i++) 
-                       columnsToRemove.push_back(false);
+               ofstream outfile;
+               string filterFile = getRootName(globaldata->inputFileName) + "filter";
+               openOutputFile(filterFile, outfile);
+
+               outfile << filter << endl;
+               outfile.close();
                
-                               
-               if(globaldata->getTrump().compare("") != 0) 
-                       doTrump();
-               else if(globaldata->getSoft().compare("") != 0)
-                       doSoft();
-               else if(globaldata->getFilter().compare("") != 0) 
-                       doFilter();
+               string filteredFasta = getRootName(globaldata->inputFileName) + "filter.fasta";
+               openOutputFile(filteredFasta, outfile);
+
+               for(int i=0;i<numSeqs;i++){
+                       string curAligned = db->get(i).getAligned();
+                       outfile << '>' << db->get(i).getName() << endl;
+                       for(int j=0;j<alignmentLength;j++){
+                               if(filter[j] == '1'){
+                                       outfile << curAligned[j];
+                               }
+                       }
+                       outfile << endl;
+               }
+               outfile.close();
                
-               //for(int i = 0; i < columnsToRemove.size(); i++)
-//             {
-//                     cout << "Remove Column " << i << " = ";
-//                     if(columnsToRemove[i])
-//                             cout << "true\n";
-//                     else
-//                             cout << "false\n";
-//             }
-
-
-               //Creating the new SequenceDB 
-               SequenceDB newDB;
-               for(int i = 0; i < db->size(); i++) {
-                       Sequence curSeq = db->get(i);
-                       string curAligned = curSeq.getAligned();
-                       string curName = curSeq.getName();
-                       string newAligned = "";
-                       for(int j = 0; j < curAligned.length(); j++) 
-                               if(!columnsToRemove[j]) 
-                                       newAligned += curAligned.substr(j, 1);
-                       
-                       Sequence newSeq(curName, newAligned);
-                       newDB.add(newSeq);
+               int filteredLength = 0;
+               for(int i=0;i<alignmentLength;i++){
+                       if(filter[i] == '1'){   filteredLength++;       }
                }
                
-               string newFileName = getRootName(filename) + "filter.fa";
-               ofstream outfile;
-               outfile.open(newFileName.c_str());
-               newDB.print(outfile);
-               outfile.close();
-                       
+               cout << endl;
+               cout << "Length of filtered alignment: " << filteredLength << endl;
+               cout << "Number of columns removed: " << alignmentLength-filteredLength << endl;
+               cout << "Length of the original alignment: " << alignmentLength << endl;
+               cout << "Number of sequences used to construct filter: " << numSeqs << endl;
+               
                globaldata->clear();
-               //delete db;
-               //delete newDB;
                
                return 0;
+               
        }
        catch(exception& e) {
                cout << "Standard Error: " << e.what() << " has occurred in the FilterSeqsCommand class Function execute. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
@@ -171,4 +173,6 @@ int FilterSeqsCommand::execute() {
                cout << "An unknown error has occurred in the FilterSeqsCommand class function execute. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
                exit(1);
        }
-}
\ No newline at end of file
+}
+
+/**************************************************************************************/
index 06eaa6db7e2deb8b74344d7f408f09734cbf43cf..2279689d4671d5a7fae99204d0ab5421b5070ed6 100644 (file)
@@ -23,23 +23,25 @@ using namespace std;
 class FilterSeqsCommand : public Command {
 
 public:
-       FilterSeqsCommand() {};
+       FilterSeqsCommand();
        ~FilterSeqsCommand() {};
        int execute();  
        
 private:
        void doTrump();
        void doSoft();
-       void doFilter();
+       void doHard();
+       void doVertical();
        
-       GlobalData* globaldata;
-       string filename, trump, filter;
+       int alignmentLength;
+       int numSeqs;
        
+       GlobalData* globaldata; 
        ReadSeqs* readSeqs;
-       
-       vector<bool> columnsToRemove;
        SequenceDB* db;
-       double soft;
+       
+       string filter;
+
 };
 
 #endif
\ No newline at end of file
index 7d30401785eceee7b6715db556587f2ccdc0c4ed..1be2c6edb082e8c700f2165349590ed653154eaa 100644 (file)
@@ -80,10 +80,10 @@ void GlobalData::parseGlobalData(string commandString, string optionText){
                                if (key == "sorted")            { sorted = value;               }
                                if (key == "vertical")          { vertical = value;             }
                                if (key == "trump")                 { trump = value;            }
-                               if (key == "filter")            { filter = value;               }
+                               if (key == "hard")                      { hard = value;         }
                                if (key == "soft")                  { soft = value;                 }
                                if (key == "scale")                     { scale = value;                }
-                               if (key == "ends" )                     { ends = value;                 }
+                               if (key == "countends" )        { countends = value;    }
                                if (key == "processors" )       { processors = value;   }
                                if (key == "size" )         { size = value;         }
                                if (key == "candidate")         { candidatefile = value;        }
@@ -151,10 +151,10 @@ void GlobalData::parseGlobalData(string commandString, string optionText){
                        if (key == "sorted")            { sorted = value;               }
                        if (key == "vertical")          { vertical = value;             }
                        if (key == "trump")                 { trump = value;            }
-                       if (key == "filter")            { filter = value;               }
+                       if (key == "hard")                      { hard = value;         }
                        if (key == "soft")                  { soft = value;                 }
                        if (key == "scale")                     { scale = value;                }
-                       if (key == "ends" )                     { ends = value;                 }
+                       if (key == "countends" )        { countends = value;    }
                        if (key == "processors" )       { processors = value;   }
                        if (key == "size" )         { size = value;         }
                        if (key == "candidate")         { candidatefile = value;        }
@@ -229,7 +229,8 @@ void GlobalData::parseGlobalData(string commandString, string optionText){
                        splitAtDash(calc, Estimators); 
                }
                if (commandName == "dist.seqs") {
-                       if ((calc == "default") || (calc == "")) {  calc = "onegap";  }
+                       if ((calc == "default") || (calc == "")) {  calc = "onegap";    }
+                       if (countends == "")    { countends = "T"; }
                        Estimators.clear();
                        splitAtDash(calc, Estimators); 
                }
@@ -242,12 +243,17 @@ void GlobalData::parseGlobalData(string commandString, string optionText){
                        splitAtDash(calc, Estimators); 
                }
                if ((commandName == "tree.shared") || (commandName == "bootstrap.shared") || (commandName == "dist.shared")) {
-                       if (calc != "") { 
-                               Estimators.clear();
-                               splitAtDash(calc, Estimators);                  
-                       }else { cout << "You have not specified any calculators." << endl; }
+                       if ((calc == "default") || (calc == "")) { 
+                               calc = "jclass-thetayc";
+                       }
+                       Estimators.clear();
+                       splitAtDash(calc, Estimators); 
+               }
+               if(commandName == "filter.seqs"){
+                       if(trump == "" && vertical == "" && hard == "" && soft == ""){
+                               trump = '.';
+                       }
                }
-
 
                //if you have done a read.otu with a groupfile but don't want to use it anymore because you want to do single commands
                if ((commandName == "collect.single") || (commandName == "rarefaction.single") || (commandName == "summary.single")) {
@@ -296,11 +302,12 @@ string GlobalData::getGroups()                    {       return groups;          }
 string GlobalData::getStep()                   {       return step;            }
 string GlobalData::getForm()                   {       return form;            }
 string GlobalData::getSorted()                 {       return sorted;          }
+string GlobalData::getVertical()               {   return vertical;    }
 string GlobalData::getTrump()                  {   return trump;       }
 string GlobalData::getSoft()                   {   return soft;                }
-string GlobalData::getFilter()                 {   return filter;              }
+string GlobalData::getHard()                   {   return hard;                }
 string GlobalData::getScale()                  {       return scale;           }
-string GlobalData::getEnds()                   {   return ends;                }
+string GlobalData::getCountEnds()              {   return countends;   }
 string GlobalData::getProcessors()             {       return processors;      }
 string GlobalData::getSize()            {   return size;        }
 string GlobalData::getCandidateFile()  {       return candidatefile;}
@@ -313,19 +320,19 @@ string GlobalData::getGapopen()                   {       return gapopen;         }
 string GlobalData::getGapextend()              {       return gapextend;       }
 
 
-void GlobalData::setListFile(string file)      {       listfile = file;        inputFileName = file;}
-void GlobalData::setRabundFile(string file)    {       rabundfile = file;      inputFileName = file;}
-void GlobalData::setSabundFile(string file)    {       sabundfile = file;      inputFileName = file;}
-void GlobalData::setPhylipFile(string file)    {       phylipfile = file;    inputFileName = file;}
-void GlobalData::setColumnFile(string file)    {       columnfile = file;    inputFileName = file;}
-void GlobalData::setGroupFile(string file)             {       groupfile = file;       }
-void GlobalData::setSharedFile(string file)            {       sharedfile = file;      inputFileName = file; fileroot = file;}
+void GlobalData::setListFile(string file)              {       listfile = file;        inputFileName = file;                                   }
+void GlobalData::setRabundFile(string file)            {       rabundfile = file;      inputFileName = file;                                   }
+void GlobalData::setSabundFile(string file)            {       sabundfile = file;      inputFileName = file;                                   }
+void GlobalData::setPhylipFile(string file)            {       phylipfile = file;    inputFileName = file;                                     }
+void GlobalData::setColumnFile(string file)            {       columnfile = file;    inputFileName = file;                                     }
+void GlobalData::setGroupFile(string file)             {       groupfile = file;                                                                                       }
+void GlobalData::setSharedFile(string file)            {       sharedfile = file;      inputFileName = file; fileroot = file;  }
 void GlobalData::setNameFile(string file)              {       namefile = file;                }
 void GlobalData::setFormat(string Format)              {       format = Format;                }
 void GlobalData::setRandomTree(string Random)  {       randomtree = Random;    }
 void GlobalData::setGroups(string g)                   {       groups = g;                             }
 void GlobalData::setCalc(string Calc)                  {       calc = Calc;                    }
-void GlobalData::setEnds(string e)                             {   ends = e;                           }
+void GlobalData::setCountEnds(string e)                        {   countends = e;                      }
 void GlobalData::setProcessors(string p)               {       processors = p;                 }
 
 
@@ -375,13 +382,13 @@ void GlobalData::clear() {
        form                    =       "integral";
        sorted                  =       "T";  //F means don't sort, T means sort.
        vertical        =   "";         
-       trump           =   ".";                
-       filter          =   "";         
+       trump           =       "";             
+       hard                    =   "";         
        soft            =   ""; 
        scale                   =       "log10";
-       ends                    =   "T";  //yes
+       countends               =   "T";  //yes
        processors              =       "1";
-       size            =   "1000";
+       size            =   "0";
        search                  =       "kmer";
        ksize                   =       "7";
        align                   =       "needleman";
@@ -408,9 +415,9 @@ void GlobalData::reset() {
        abund                   =   "10";
        step                    =       "0.01";
        form                    =       "integral";
-       ends                    =   "T";
+       countends               =   "T";
        processors              =       "1";
-       size            =   "1000";
+       size            =   "0";
        search                  =       "kmer";
        ksize                   =       "7";
        align                   =       "needleman";
@@ -419,8 +426,8 @@ void GlobalData::reset() {
        gapopen                 =       "-1.0";
        gapextend               =       "-2.0";
        vertical        =   "";         
-       trump           =   ".";                
-       filter          =   "";         
+       trump           =   "";         
+       hard                    =   "";         
        soft            =   ""; 
 
 }
index b3b0798cfd579c8c1b5e1a0cbbbca2eef0dc1473..6d1b3f3c9dd9f2eb73f5abfd23829e63388f7e6e 100644 (file)
@@ -75,7 +75,7 @@ public:
        string getStep();
        string getForm();
        string getSorted();
-       string getEnds();
+       string getCountEnds();
        string getProcessors();
        string getSize();
        string getCandidateFile();
@@ -86,9 +86,10 @@ public:
        string getMismatch();
        string getGapopen();
        string getGapextend();
+       string getVertical();
        string getTrump();
        string getSoft();
-       string getFilter();
+       string getHard();
        string getScale();
 
 
@@ -104,7 +105,7 @@ public:
        void setRandomTree(string);
        void setGroups(string);
        void setCalc(string);
-       void setEnds(string);
+       void setCountEnds(string);
        void setProcessors(string);
 
        void clear(); 
@@ -122,7 +123,7 @@ public:
 private:
 
        string phylipfile, columnfile, listfile, rabundfile, sabundfile, namefile, groupfile, orderfile, fastafile, nexusfile, clustalfile, treefile, sharedfile, line, label, randomtree, groups;
-       string cutoff, format, precision, method, fileroot, iters, jumble, freq, calc, abund, step, form, sorted, trump, soft, filter, scale, ends, processors, candidatefile, search, ksize, align, match, size;
+       string cutoff, format, precision, method, fileroot, iters, jumble, freq, calc, abund, step, form, sorted, trump, soft, hard, scale, countends, processors, candidatefile, search, ksize, align, match, size;
        string mismatch, gapopen, gapextend;
 
 
index 90b11159f4ea8016d397f72a045c1e2031e48476..4bb9385cdfdd23960481556afe31e0d485e9a7ec 100644 (file)
@@ -105,7 +105,6 @@ void HeatMap::getPic(RAbundVector* rabund) {
 
 void HeatMap::getPic(vector<SharedRAbundVector*> lookup) {
        try {
-               
                //sort lookup so shared bins are on top
                if (sorted == "T") {  sortSharedVectors(lookup);  }
                
@@ -141,10 +140,10 @@ void HeatMap::getPic(vector<SharedRAbundVector*> lookup) {
                                                scaleRelAbund[i][j] = toHex(int(255 * log10(relAbund / log10(maxRelAbund[i]))))  + "0000"; 
                                        } 
                                }else { scaleRelAbund[i][j] = "FFFFFF";  }
-                               
+
                        }
                }
-               
+
                string filenamesvg = getRootName(globaldata->inputFileName) + lookup[0]->getLabel() + ".heatmap.svg";
                openOutputFile(filenamesvg, outsvg);
                
@@ -180,7 +179,7 @@ void HeatMap::getPic(vector<SharedRAbundVector*> lookup) {
                
                outsvg << "</g>\n</svg>\n";
                outsvg.close();
-               
+
        }
        catch(exception& e) {
                cout << "Standard Error: " << e.what() << " has occurred in the HeatMap class Function getPic. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
@@ -217,11 +216,11 @@ void HeatMap::sortSharedVectors(vector<SharedRAbundVector*>& lookup){
                        looktemp.push_back(temp);
                }
                
-               //clear out lookup to create sorted lookup
+               //clear out lookup to create sorted lookup -- Sarah look at - this is causing segmentation faults
                for (int j = 0; j < lookup.size(); j++) {
-                       delete lookup[j];
+//                     delete lookup[j];
                }
-               lookup.clear();
+               lookup.clear();  //doesn't this do the job?
                
                //create and initialize lookup to empty vectors
                for (int i = 0; i < looktemp.size(); i++) { 
@@ -260,9 +259,9 @@ void HeatMap::sortSharedVectors(vector<SharedRAbundVector*>& lookup){
                        }
                }
                
-               //delete looktemp
+               //delete looktemp -- Sarah look at - this is causing segmentation faults
                for (int j = 0; j < looktemp.size(); j++) {
-                       delete looktemp[j];
+//                     delete looktemp[j];
                }
                
        }
index b890c99e576e25815f2b8b27b7619c5908bece11..b480dcb9e369ec7763ea7eb2902e99c3c5da0c39 100644 (file)
@@ -72,15 +72,15 @@ int HelpCommand::execute(){
                cout << "deconvolute(fasta=yourFastaFile) " << "\n";
        }else if (globaldata->helpRequest == "dist.seqs") {
                cout << "The dist.seqs command reads a file containing sequences and creates a distance file." << "\n";
-               cout << "The dist.seqs command parameters are fasta, phylip, clustal, nexus, calc, ends, cutoff and processors.  " << "\n";
+               cout << "The dist.seqs command parameters are fasta, phylip, clustal, nexus, calc, countends, cutoff and processors.  " << "\n";
                cout << "You must use one of the following parameters for your filename: fasta, phylip, clustal or nexus. " << "\n";
                cout << "The calc parameter allows you to specify the method of calculating the distances.  Your options are: nogaps, onegap or eachgap. The default is onegap." << "\n";
-               cout << "The ends parameter allows you to specify whether to include terminal gaps in distance.  Your options are: T or F. The default is T." << "\n";
+               cout << "The countends parameter allows you to specify whether to include terminal gaps in distance.  Your options are: T or F. The default is T." << "\n";
                cout << "The cutoff parameter allows you to specify maximum distance to keep. The default is 1.0." << "\n";
                cout << "The processors parameter allows you to specify number of processors to use.  The default is 1, but you can use up to 4 processors." << "\n";
                cout << "The dist.seqs command should be in the following format: " << "\n";
-               cout << "dist.seqs(fasta=yourFastaFile, calc=yourCalc, ends=yourEnds, cutoff= yourCutOff, processors=yourProcessors) " << "\n";
-               cout << "Example dist.seqs(fasta=amazon.fasta, calc=eachgap, ends=F, cutoff= 2.0, processors=3)." << "\n";
+               cout << "dist.seqs(fasta=yourFastaFile, calc=yourCalc, countends=yourEnds, cutoff= yourCutOff, processors=yourProcessors) " << "\n";
+               cout << "Example dist.seqs(fasta=amazon.fasta, calc=eachgap, countends=F, cutoff= 2.0, processors=3)." << "\n";
                cout << "Note: No spaces between parameter labels (i.e. calc), '=' and parameters (i.e.yourCalc)." << "\n" << "\n";
        }else if (globaldata->helpRequest == "align.seqs") {
                cout << "The align.seqs command reads a file containing sequences and creates an alignment file and a report file." << "\n";
@@ -273,9 +273,9 @@ int HelpCommand::execute(){
                cout << "The dist.shared command should be in the following format: dist.shared(groups=yourGroups, calc=yourCalcs, line=yourLines, label=yourLabels)." << "\n";
                cout << "Example dist.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";
+               cout << "The default value for calc is jclass and thetayc." << "\n";
                validCalcs->printCalc("matrix", cout);
-               cout << "The dist.shared command outputs a .matrix file for each calculator you specify at each distance you choose." << "\n";
+               cout << "The dist.shared command outputs a .dist 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";
index 8127b6205e42d18516561565e8a4eb29ccd56ab6..e81ab92e2aaaced862fad7ae0e2f14cdf1d9f386 100644 (file)
@@ -24,37 +24,30 @@ public:
                int diff = 0;
                int length = 0;
                int start = 0;
-               int end = 0;
                
-               for(int i=0;i<A.getLength();i++){
-                       if(A.getAligned()[i] == '.' || B.getAligned()[i] == '.' || A.getAligned()[i] == '-' || B.getAligned()[i] == '-'){
-                       }
-                       else{
+               string seqA = A.getAligned();
+               string seqB = B.getAligned();
+               int alignLength = seqA.length();
+               
+               for(int i=0;i<alignLength;i++){
+                       if(seqA[i] != '.' && seqB[i] != '.'){
                                start = i;
                                break;
                        }
                }
-               for(int i=A.getLength()-1;i>=0;i--){
-                       if(A.getAligned()[i] == '.' || B.getAligned()[i] == '.' || A.getAligned()[i] == '-' || B.getAligned()[i] == '-'){
-                       }
-                       else{
-                               end = i;
-                               break;
-                       }
-               }
                
-               for(int i=start; i<=end; i++){
-                       if(A.getAligned()[i] == '.' || B.getAligned()[i] == '.'){
+               for(int i=start; i<alignLength; i++){
+                       if(seqA[i] == '.' || seqB[i] == '.'){
                                break;
                        }
-                       else if((A.getAligned()[i] != '-' && B.getAligned()[i] != '-')){
-                               if(A.getAligned()[i] != B.getAligned()[i]){
+                       else if((seqA[i] != '-' && seqB[i] != '-')){
+                               if(seqA[i] != seqB[i]){
                                        diff++;
                                }
                                length++;
                        }
                }
-               
+
                if(length == 0)         {       dist = 1.0000;                                                          }
                else                            {       dist = ((double)diff  / (double)length);        }
                
index 70f1dcad196ad15113873a059483ab18557de585..ce9497b7ae56b3d208c2166186a0692bcaad1087 100644 (file)
@@ -20,7 +20,7 @@ It is a child of the calculator class. */
 class Jackknife : public Calculator  {
        
 public:
-       Jackknife() : Calculator("Jackknife", 3, false) {       getAMatrix(); };
+       Jackknife() : Calculator("jackknife", 3, false) {       getAMatrix(); };
        EstOutput getValues(SAbundVector*);
        EstOutput getValues(vector<SharedRAbundVector*>) {return data;};
 
index a5e7a4ede8b0fbb77724bba444516251f353c12c..c792cc91e966203505733979cf9133a025393912 100644 (file)
@@ -131,7 +131,7 @@ int MatrixOutputCommand::execute(){
                                                }
                                        }
                                        
-                                       exportFileName = getRootName(globaldata->inputFileName) + matrixCalculators[i]->getName() + "." + lookup[0]->getLabel() + ".matrix";
+                                       exportFileName = getRootName(globaldata->inputFileName) + matrixCalculators[i]->getName() + "." + lookup[0]->getLabel() + ".dist";
                                        openOutputFile(exportFileName, out);
                                        printSims(out);
                                        out.close();
@@ -166,14 +166,11 @@ void MatrixOutputCommand::printSims(ostream& out) {
        try {
                
                //output column headers
-               out << '\t';
-               for (int i = 0; i < lookup.size(); i++) {       out << lookup[i]->getGroup() << '\t';           }
-               out << endl;
-               
+               out << simMatrix.size() << endl;
                
                for (int m = 0; m < simMatrix.size(); m++)      {
                        out << lookup[m]->getGroup() << '\t';
-                       for (int n = 0; n < simMatrix.size(); n++)      {
+                       for (int n = 0; n < m; n++)     {
                                out << simMatrix[m][n] << '\t'; 
                        }
                        out << endl;
index dc137edf08cc8777c80a349e0cc39ff9d1b7f917..2e9578b3633e4743c23d271ca56002156cbfd098 100644 (file)
@@ -20,7 +20,7 @@ It is a child of the calculator class. */
 class NPShannon : public Calculator  {
        
 public:
-       NPShannon() : Calculator("NPShannon", 1, false) {};
+       NPShannon() : Calculator("npshannon", 1, false) {};
        EstOutput getValues(SAbundVector*);
        EstOutput getValues(vector<SharedRAbundVector*>) {return data;};
 private:
diff --git a/nseqs.h b/nseqs.h
index 1382add6e58b78ba88c6459168df9d554d45e71d..42a1f57b57f59737d91d99d9546659c5730a5a2b 100644 (file)
--- a/nseqs.h
+++ b/nseqs.h
@@ -19,7 +19,7 @@
 class NSeqs : public Calculator {
 
 public:
-       NSeqs() : Calculator("NSeqs", 1, false) {};
+       NSeqs() : Calculator("nseqs", 1, false) {};
        EstOutput getValues(SAbundVector* rank){
                data.resize(1,0);
                data[0] = (double)rank->getNumSeqs();
index b6b257cb2f452027f19ff06e199f432076a2ef5b..c466c5380e7abe662d3fad9efdb40f5e39aa650f 100644 (file)
@@ -20,22 +20,25 @@ public:
        void calcDist(Sequence A, Sequence B){
                
                int difference = 0;
+               int minLength = 0;
                int openGapA = 0;
                int openGapB = 0;
-               int minLength = 0;
                int start = 0;
                
-               for(int i=0;i<A.getLength();i++){
-                       if(A.getAligned()[i] == '.' && B.getAligned()[i] == '.'){
-                       }
-                       else{
+               string seqA = A.getAligned();
+               string seqB = B.getAligned();
+               int alignLength = seqA.length();
+               
+               for(int i=0;i<alignLength;i++){
+                       if((seqA[i] != '.' || seqB[i] != '.')){
                                start = i;
                                break;
                        }
                }
-               for(int i=start;i<A.getLength();i++){
-                       if((A.getAligned()[i] == '-' || B.getAligned()[i] == '-') && (A.getAligned()[i] == '.' || B.getAligned()[i] == '.')){}
-                       else if(A.getAligned()[i] == '-' && B.getAligned()[i] != '-' && B.getAligned()[i] != '.'){
+
+               for(int i=start;i<alignLength;i++){
+                       if((seqA[i] == '-' && seqB[i] == '-') || (seqA[i] == '.' && seqB[i] == '-') || (seqA[i] == '-' && seqB[i] == '.')){     ;       }
+                       else if(seqB[i] != '-' && (seqA[i] == '-' || seqA[i] == '.')){
                                if(openGapA == 0){
                                        difference++;
                                        minLength++;
@@ -43,7 +46,7 @@ public:
                                        openGapB = 0;
                                }
                        }
-                       else if(A.getAligned()[i] != '-' && B.getAligned()[i] == '-' && A.getAligned()[i] != '.'){
+                       else if(seqA[i] != '-' && (seqB[i] == '-' || seqB[i] == '.')){
                                if(openGapB == 0){
                                        difference++;
                                        minLength++;
@@ -51,8 +54,8 @@ public:
                                        openGapB = 1;
                                }
                        }
-                       else if(A.getAligned()[i] != '-' && B.getAligned()[i] != '-'){
-                               if(A.getAligned()[i] != B.getAligned()[i]){
+                       else if(seqA[i] != '-' && seqB[i] != '-'){
+                               if(seqA[i] != seqB[i]){
                                        difference++;
                                        minLength++;
                                        openGapA = 0;
@@ -64,10 +67,12 @@ public:
                                        openGapB = 0;
                                }
                        }
-                       else if(A.getAligned()[i] == '.' && B.getAligned()[i] == '.'){
+
+                       else if(seqA[i] == '.' && seqB[i] == '.'){
                                break;
                        }
                }
+       
                if(minLength == 0)      {       dist = 1.0000;                                                  }
                else                            {       dist = (double)difference / minLength;  }
        }
@@ -76,4 +81,4 @@ public:
 
 /**************************************************************************************************/
 
-#endif
\ No newline at end of file
+#endif
index ee6cc5267931816a654c99f4e748d19bb2940901..6421741c0d4c153794ab40efc9318af6d64349a4 100644 (file)
@@ -25,27 +25,27 @@ public:
                int start = 0;
                int end = 0;
                
-               for(int i=0;i<A.getLength();i++){
-                       if(A.getAligned()[i] == '.' || B.getAligned()[i] == '.' || A.getAligned()[i] == '-' || B.getAligned()[i] == '-'){
-                       }
-                       else{
+               string seqA = A.getAligned();
+               string seqB = B.getAligned();
+               int alignLength = seqA.length();
+               
+               // this assumes that sequences start and end with '.'s instead of'-'s.
+               for(int i=0;i<alignLength;i++){
+                       if(seqA[i] != '.' && seqB[i] != '.'){
                                start = i;
                                break;
                        }
                }
-               for(int i=A.getLength()-1;i>=0;i--){
-                       if(A.getAligned()[i] == '.' || B.getAligned()[i] == '.' || A.getAligned()[i] == '-' || B.getAligned()[i] == '-'){
-                       }
-                       else{
+               for(int i=alignLength-1;i>=0;i--){
+                       if(seqA[i] != '.' && seqB[i] != '.'){
                                end = i;
                                break;
                        }
                }
                
-               
                for(int i=start;i<=end;i++){
-                       if(A.getAligned()[i] == '-' && B.getAligned()[i] == '-'){}
-                       else if(A.getAligned()[i] == '-' && B.getAligned()[i] != '-'){
+                       if(seqA[i] == '-' && seqB[i] == '-'){   ;       }
+                       else if(seqB[i] != '-' && seqA[i] == '-'){
                                if(openGapA == 0){
                                        difference++;
                                        minLength++;
@@ -53,7 +53,7 @@ public:
                                        openGapB = 0;
                                }
                        }
-                       else if(A.getAligned()[i] != '-' && B.getAligned()[i] == '-'){
+                       else if(seqA[i] != '-' && seqB[i] == '-'){
                                if(openGapB == 0){
                                        difference++;
                                        minLength++;
@@ -61,20 +61,16 @@ public:
                                        openGapB = 1;
                                }
                        }
-                       else if(A.getAligned()[i] != '-' && B.getAligned()[i] != '-'){
-                               if(A.getAligned()[i] != B.getAligned()[i]){
+                       else if(seqA[i] != '-' && seqB[i] != '-'){
+                               if(seqA[i] != seqB[i]){
                                        difference++;
-                                       minLength++;
-                                       openGapA = 0;
-                                       openGapB = 0;
-                               }
-                               else{
-                                       minLength++;
-                                       openGapA = 0;
-                                       openGapB = 0;
                                }
+                               minLength++;
+                               openGapA = 0;
+                               openGapB = 0;
                        }
                }
+
                if(minLength == 0)      {       dist = 1.0000;                                                  }
                else                            {       dist = (double)difference / minLength;  }
        }
index 99964ec07d4dd9912d1060be4f8a4b0c753822ea..a7ad2b733b133bd65a62977c33c4a1e7cc691bb1 100644 (file)
@@ -19,7 +19,7 @@ class RareCalc {
 public:
        RareCalc(RAbundVector* b) : bins(b), numSeqs(b->getNumSeqs()), maxRank(b->getMaxRank()), numBins(b->getNumBins()) {     bMatrix = binomial(numSeqs+1);  };
        EstOutput getValues(int);
-       string getName()        {       return "RareCalc";      }
+       string getName()        {       return "rarecalc";      }
 private:
        RAbundVector* bins;
        vector<vector<double> > bMatrix;
index f136426b327fdbd13d4143645b80cb060059325e..2f167c52bb225edce6a31cbc623b8bcfd3d4c61c 100644 (file)
@@ -64,7 +64,7 @@ string Sequence::convert2ints() {
        string processed;
        
        for(int i=0;i<unaligned.length();i++) {
-               if(toupper(unaligned[i]) == 'A')                        {       processed += '0';       }
+               if(toupper(unaligned[i]) == 'A')                {       processed += '0';       }
                else if(toupper(unaligned[i]) == 'C')   {       processed += '1';       }
                else if(toupper(unaligned[i]) == 'G')   {       processed += '2';       }
                else if(toupper(unaligned[i]) == 'T')   {       processed += '3';       }
@@ -101,6 +101,27 @@ void Sequence::setUnaligned(string sequence){
 //********************************************************************************************************************
 
 void Sequence::setAligned(string sequence){
+       
+       //if the alignment starts or ends with a gap, replace it with a period to indicate missing data
+       
+       if(sequence[0] == '-'){
+               for(int i=0;i<sequence.length();i++){
+                       if(sequence[i] == '-'){
+                               sequence[i] = '.';
+                       }
+                       else{
+                               break;
+                       }
+               }
+               for(int i=sequence.length()-1;i>=0;i--){
+                       if(sequence[i] == '-'){
+                               sequence[i] = '.';
+                       }
+                       else{
+                               break;
+                       }
+               }
+       }
        aligned = sequence;
 }
 
index 1930239507b5506a7f05f9fe24a3bca4309eb346..7fbcafc71cce3c4296e924fff20ead647dc589e3 100644 (file)
--- a/shannon.h
+++ b/shannon.h
@@ -20,7 +20,7 @@ It is a child of the calculator class. */
 class Shannon : public Calculator  {
        
 public:
-       Shannon() : Calculator("Shannon", 3, false) {};
+       Shannon() : Calculator("shannon", 3, false) {};
        EstOutput getValues(SAbundVector* rank);
        EstOutput getValues(vector<SharedRAbundVector*>) {return data;};
 private:
index 44a1e6d4023587c0e46bc82dc5693b07f6763e0e..4de5ca2f6221d6178b938dae1942178294fb0933 100644 (file)
@@ -16,7 +16,7 @@
 class SharedAnderberg : public Calculator  {
        
 public:
-       SharedAnderberg() :  Calculator("SharedAnderberg", 1) {};
+       SharedAnderberg() :  Calculator("anderberg", 1) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(SharedRAbundVector*, SharedRAbundVector*);
 private:
index f17e5fa8e3767a115d6b9393f258f696bf9ff793..2460cfe03ea64d6e9a7211609d3e07e6b20df41b 100644 (file)
@@ -16,7 +16,7 @@
 class Anderberg : public Calculator  {
        
        public:
-               Anderberg() :  Calculator("Anderberg", 1, false) {};
+               Anderberg() :  Calculator("anderberg", 1, false) {};
                EstOutput getValues(SAbundVector*) {return data;};
                EstOutput getValues(vector<SharedRAbundVector*>);
        private:
index 446b3eb66ae07c489b7557024cfd5117e8e40fa4..7a8ef11864d2ecbd3cfbfb559f7fbe750d99b3b2 100644 (file)
@@ -15,7 +15,7 @@
 class BrayCurtis : public Calculator  {
        
 public:
-       BrayCurtis() :  Calculator("BrayCurtis", 1, false) {};
+       BrayCurtis() :  Calculator("braycurtis", 1, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index c3388fd621d8ec6e33aac32891b54831a524417d..7c617c5edf24932213545cb3b9d3e84031387d4c 100644 (file)
@@ -42,7 +42,6 @@ EstOutput SharedChao1::getValues(vector<SharedRAbundVector*> shared){
                        
                        //they are shared
                        if (sharedByAll == true) { 
-                                
                                // cout << "temp = ";
                                // for (int h = 0; h < temp.size(); h++) { cout << temp[h] << " "; } cout << endl;
                                //find f1 and f2values
@@ -53,29 +52,35 @@ EstOutput SharedChao1::getValues(vector<SharedRAbundVector*> shared){
                        
                //cout << "Entering " << endl;
                //calculate chao1, (numleaves-1) because numleaves contains the ++ values.
-               for (int i = 0; i < numLeaves; i++) {
-                       //divide by zero error
-                       if (f2leaves[i]->lvalue == 0) { f2leaves[i]->lvalue++; }
-                       if (f2leaves[i]->rvalue == 0) { f2leaves[i]->rvalue++; }
-                       
-                       //cout << "f2 leaves ";
-                       //cout << f2leaves[i]->lvalue << f2leaves[i]->rvalue << endl;
-                       
-               //      cout << "f2 leaf coef ";
-                       //cout << f2leaves[i]->lcoef << '\t' << f2leaves[i]->rcoef << endl;
-                       
-               //      cout << "f1 leaves ";
-               //      cout << f1leaves[i]->lvalue << f1leaves[i]->rvalue << endl;
-                       
+               bool bias;
+               for(int i=0;i<numLeaves;i++){
+                       if (f2leaves[i]->lvalue == 0) { bias = true;}// break;}
+               }
+
+               if(bias){
+                       for (int i = 0; i < numLeaves; i++) {
+                               
+                               leftvalue = (float)(f1leaves[i]->lvalue * (f1leaves[i]->lvalue - 1)) / (float)((pow(2, (float)f2leaves[i]->lcoef)) * (f2leaves[i]->lvalue + 1));
+                               if (i != (numLeaves-1)) {
+                                       rightvalue = (float)(f1leaves[i]->rvalue * (f1leaves[i]->rvalue - 1)) / (float)((pow(2, (float)f2leaves[i]->rcoef)) * (f2leaves[i]->rvalue + 1));
+                               }else{
+                                       rightvalue = (float)(f1leaves[i]->rvalue);
+                               }
+                               Chao += leftvalue + rightvalue;
+                       }
+               }
+               else{
                        
-                       leftvalue = (float)(f1leaves[i]->lvalue * f1leaves[i]->lvalue) / (float)((pow(2, (float)f2leaves[i]->lcoef)) * f2leaves[i]->lvalue);
-                       if (i != (numLeaves-1)) {
-                               rightvalue = (float)(f1leaves[i]->rvalue * f1leaves[i]->rvalue) / (float)((pow(2, (float)f2leaves[i]->rcoef)) * f2leaves[i]->rvalue);
-                       }else{
-                               rightvalue = (float)(f1leaves[i]->rvalue);
+                       for (int i = 0; i < numLeaves; i++) {
+                               
+                               leftvalue = (float)(f1leaves[i]->lvalue * f1leaves[i]->lvalue) / (float)((pow(2, (float)f2leaves[i]->lcoef)) * f2leaves[i]->lvalue);
+                               if (i != (numLeaves-1)) {
+                                       rightvalue = (float)(f1leaves[i]->rvalue * f1leaves[i]->rvalue) / (float)((pow(2, (float)f2leaves[i]->rcoef)) * f2leaves[i]->rvalue);
+                               }else{
+                                       rightvalue = (float)(f1leaves[i]->rvalue);
+                               }
+                               Chao += leftvalue + rightvalue;
                        }
-                       //cout << "left = " << leftvalue << " right = " << rightvalue << endl;
-                       Chao += leftvalue + rightvalue;
                }
                
                for (int i = 0; i < numNodes; i++) {
index b969e24f4286e794894b04c9897f49a593f67317..bedec32843323ac0a19248010060e430a7c097da 100644 (file)
@@ -21,7 +21,7 @@ EstOutput JAbund::getValues(vector<SharedRAbundVector*> shared) {
                
                //UVest[0] is Uest UVest[1] is Vest
                data[0] = (UVest[0] * UVest[1]) / ((float)(UVest[0] + UVest[1] - (UVest[0] * UVest[1])));
-               
+               if(data[0] > 1){data[0] = 1;    }
                if (isnan(data[0]) || isinf(data[0])) { data[0] = 0; }
                
                return data;
index f01d61659ccc22602431a1f9719f5bafea05f8c5..a5fab2f981fce1947d24b8a8ca7eb3c2844d40fc 100644 (file)
@@ -20,7 +20,7 @@ It is a child of the calculator class. */
 class JAbund : public Calculator  {
        
 public:
-       JAbund() :  Calculator("JAbund", 3, false) {};
+       JAbund() :  Calculator("jabund", 3, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index 45302efe8e18731af5cbbed34383c28ff57e8425..d18dfee561c7fd77a8594920266dad7979c66b9f 100644 (file)
@@ -19,7 +19,7 @@ It is a child of the calculator class. */
 class Jclass : public Calculator  {
        
 public:
-       Jclass() :  Calculator("Jclass", 3, false) {};
+       Jclass() :  Calculator("jclass", 3, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index 8a943c900a0bcd6d92edfbe3428cd92e308b606b..8eaf70f80ee42ee17d413d2a1feb8c15c9b8b6d0 100644 (file)
@@ -20,7 +20,7 @@ It is a child of the calculator class. */
 class Jest : public Calculator  {
        
 public:
-       Jest() :  Calculator("Jest", 3, false) {};
+       Jest() :  Calculator("jest", 3, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index aad69fe716376b2dabe29a3dcc2153ffb92e6209..58594c69f3f1c12db7ffeed5cd58444ec9f06924 100644 (file)
@@ -17,7 +17,7 @@
 class Kulczynski : public Calculator  {
        
 public:
-       Kulczynski() :  Calculator("Kulczynski", 1, false) {};
+       Kulczynski() :  Calculator("kulczynski", 1, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index b91dee9a10c4641083aa216d41f96dbb51bb9172..c09be3a0bb095cb0866ec383553a0d235a946ee0 100644 (file)
@@ -18,7 +18,7 @@
 class KulczynskiCody : public Calculator  {
        
 public:
-       KulczynskiCody() :  Calculator("KulczynskiCody", 1, false) {};
+       KulczynskiCody() :  Calculator("kulczynskicody", 1, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index 0aba6a91802c4a6275475b824c291df2a0cec751..cd2ebf690b48589c211ee44dc5e62e647403d24e 100644 (file)
@@ -18,7 +18,7 @@
 class Lennon : public Calculator  {
        
 public:
-       Lennon() :  Calculator("Lennon", 1, false) {};
+       Lennon() :  Calculator("lennon", 1, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index e771139908615b9430ce58768c16daef6050936d..a7980d031fa20cf5480bd7be28ed13ed34aa9dd6 100644 (file)
@@ -17,7 +17,7 @@
 class MorHorn : public Calculator  {
        
 public:
-       MorHorn() :  Calculator("MorisitaHorn", 1, false) {};
+       MorHorn() :  Calculator("morisitahorn", 1, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index 1809d97e52871b27ad0599856b4d4243e0bf88a3..aa989bcc5ae030ecd3f561d55671e38414b1f915 100644 (file)
@@ -16,7 +16,7 @@
 class SharedNSeqs : public Calculator {
 
 public:
-       SharedNSeqs() : Calculator("SharedNSeqs", 1, false) {};
+       SharedNSeqs() : Calculator("sharednseqs", 1, false) {};
        EstOutput getValues(SAbundVector* rank){ return data; };
        EstOutput getValues(vector<SharedRAbundVector*> shared) {
                data.resize(1,0);
index 61d9df38e762b644a8538eddc38cd35da45592ee..99003e6ee417d4e9a31b420e0995692dd07bc7cb 100644 (file)
@@ -16,7 +16,7 @@
 class Ochiai : public Calculator  {
        
 public:
-       Ochiai() :  Calculator("Ochiai", 1, false) {};
+       Ochiai() :  Calculator("ochiai", 1, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index 032dbda77c069bef164de7ca7e6accd88a02861f..0dbf4a4bcb33def6eabdc2205b2be3a17f29c406 100644 (file)
@@ -20,7 +20,7 @@ It is a child of the calculator class. */
 class SorAbund : public Calculator  {
        
 public:
-       SorAbund() :  Calculator("SorAbund", 3, false) {};
+       SorAbund() :  Calculator("sorabund", 3, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index 16fbed036b54f3ba0e6c3a847a77f624b238f2b5..75df6570ea0c524420fa0bc355b9967c83eb579b 100644 (file)
@@ -20,7 +20,7 @@ It is a child of the calculator class. */
 class SorClass : public Calculator  {
        
 public:
-       SorClass() :  Calculator("SorClass", 3, false) {};
+       SorClass() :  Calculator("sorclass", 3, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index a38cbaecd9f667d460d5801a15e49a524bf9244f..8e044aa4c9a8bc6643d6aeb19fc915aa9ff8daad 100644 (file)
@@ -20,7 +20,7 @@ It is a child of the calculator class. */
 class SorEst : public Calculator  {
        
 public:
-       SorEst() :  Calculator("SorEst", 3, false) {};
+       SorEst() :  Calculator("sorest", 3, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index 48e816d8e110615fdec4b182a3af7b6b68e7118b..4637b97605dd550726496689bf67246bac6d757b 100644 (file)
@@ -20,7 +20,7 @@ It is a child of the calculator class. */
 class ThetaN : public Calculator  {
        
 public:
-       ThetaN() :  Calculator("ThetaN", 3, false) {};
+       ThetaN() :  Calculator("thetan", 3, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index 0d9f4a0a94b3ed9bd7bf2d63717d7935ef8ac4d6..536306c4c573898e146521c98f30560f275bb873 100644 (file)
@@ -20,7 +20,7 @@ It is a child of the calculator class. */
 class ThetaYC : public Calculator  {
        
 public:
-       ThetaYC() :  Calculator("ThetaYC", 3, false) {};
+       ThetaYC() :  Calculator("thetayc", 3, false) {};
        EstOutput getValues(SAbundVector*) {return data;};
        EstOutput getValues(vector<SharedRAbundVector*>);
 private:
index 61291a62554a3ccfb0a1b35bd761fb5bfcf1e881..a2f61889c7a88e1b43c3646470dd96224a298519 100644 (file)
--- a/shen.cpp
+++ b/shen.cpp
@@ -28,7 +28,7 @@ EstOutput Shen::getValues(SAbundVector* rank){
                Ace* calc = new Ace(abund);
                EstOutput ace = calc->getValues(rank);
                
-               double f0 = n - ace[0];
+               double f0 = ace[0]-rank->getNumBins();
                
                data[0] = f0 * (1 - pow(1 - f1/n/f0, m));
 
index 3006e860204680809c7efd0293f8c98386708a93..02142175bf90fcc1c99d8961a93011671444ea1f 100644 (file)
--- a/simpson.h
+++ b/simpson.h
@@ -20,7 +20,7 @@ It is a child of the calculator class. */
 class Simpson : public Calculator  {
 
 public:
-       Simpson() : Calculator("Simpson", 3, false) {};
+       Simpson() : Calculator("simpson", 3, false) {};
        EstOutput getValues(SAbundVector*);
        EstOutput getValues(vector<SharedRAbundVector*>) {return data;};
 };
index 230d80083d2d19cd7307fc2e6952f424656db55d..6f2790d50b34fa8ed9bc86c6ac3d31a85f136046 100644 (file)
@@ -22,7 +22,7 @@ ValidCommands::ValidCommands() {
                commands["cluster"]                             = "cluster"; 
                commands["deconvolute"]                 = "deconvolute"; 
                commands["dist.seqs"]                   = "dist.seqs";
-               commands["dist.shared"]                 = "dist.shared";  //matrix output
+               commands["dist.shared"]                 = "dist.shared";
                commands["collect.single"]              = "collect.single"; 
                commands["collect.shared"]              = "collect.shared"; 
                commands["rarefaction.single"]  = "rarefaction.single"; 
index ddec9d1ca4ef463972b4c43899364474114f422f..650ef1fea0217f1cb4b58d47770b953c4389ddf3 100644 (file)
@@ -267,7 +267,7 @@ void ValidParameters::initCommandParameters() {
                string heatmapArray[] =  {"groups","line","label","sorted","scale"};
                commandParameters["heatmap"] = addParameters(heatmapArray, sizeof(heatmapArray)/sizeof(string));
                
-               string filterseqsArray[] =  {"fasta","phylip","clustal","nexus", "trump", "soft", "filter"};
+               string filterseqsArray[] =  {"fasta","phylip","clustal","nexus", "trump", "soft", "hard", "vertical"};
                commandParameters["filter.seqs"] = addParameters(filterseqsArray, sizeof(filterseqsArray)/sizeof(string));
 
                string vennArray[] =  {"groups","line","label","calc"};
@@ -291,7 +291,7 @@ void ValidParameters::initCommandParameters() {
                string concensusArray[] =  {};
                commandParameters["concensus"] = addParameters(concensusArray, sizeof(concensusArray)/sizeof(string));
                
-               string distanceArray[] =  {"fasta","phylip","clustal","nexus", "calc", "ends", "cutoff", "processors"};
+               string distanceArray[] =  {"fasta","phylip","clustal","nexus", "calc", "countends", "cutoff", "processors"};
                commandParameters["dist.seqs"] = addParameters(distanceArray, sizeof(distanceArray)/sizeof(string));
                
                string AlignArray[] =  {"fasta", "candidate", "search", "ksize", "align", "match", "mismatch", "gapopen", "gapextend"};