You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-alphabet parameter works (formerly is_DNA wasn't getting set to false
when alphabet was supplied, so it didn't work as it should have)
(now it is, in DecentTreeOptions::processCommandLineOptions()).
If alphabet is NOT yet set (e.g. is_DNA was false because -not-dna
was supplied on the command-line but -alphabet was NOT supplied on
the command-line), Sequences member functions,
loadSequencesFrom{Fasta|Phylip}() now treat EVERY character as
"acceptable" (because the alphabet will be determine retrospectively
from what was seen in the alignment).
Added command-line examples of the use of -alphabet and -not-dna.
Copy file name to clipboardExpand all lines: doco/Command_Line_Examples.md
+24-18Lines changed: 24 additions & 18 deletions
Original file line number
Diff line number
Diff line change
@@ -23,25 +23,31 @@ format) </li>
23
23
24
24
|Command Line|Explanation|
25
25
|------------|-----------|
26
-
|decenttree -in ../example/example.dist -std-out | Using the default distance matrix algorithm, infer a phylogenetic tree from the supplied distance matrix, and write the tree, in Newick format, to standard output.|
27
-
|decenttree -in ../example/compressed_example.dist.gz -std-out | Using the same (default) distance matrix algorithm, infer a phylogenetic tree from the supplied distance matrix (which is in gz compressed format), and write the tree, in Newick format, to standard output.|
28
-
|decenttree -in ../example/example.dist -t NJ-R-V -no-banner -out njrv.newick | Infer a phylogenetic tree, using the *r*apid, *v*ectorized version of the NJ algorithm (NJ-R-V), and write the tree, in Newick format, to the file njrv.newick. Suppress the decenttree banner text. |
29
-
|decenttree -in ../example/example.dist -t NJ-R-V -q -out njrv.newick | Infer a phylogenetic tree, using the *r*apid, *v*ectorized version of the NJ algorithm (NJ-R-V), and write the tree, in Newick format, to the file njrv.newick. Don't write banner text or timing information to standard output (-q suppresses both). |
30
-
|decenttree -in ../example/example.dist -t NJ-R-V -q -f 4-out njrv_low_precision.newick | The same, but reduce the precision, of the inferred distances in the newick tree, to four digits, and write to a different file |
31
-
|decenttree -in ../example/example.dist -t NJ-R-V -q -f 4 -out njrv_compressed.newick.gz | The same, but compress the output
26
+
|decenttree -in ../example/example.dist<br> -std-out | Using the default distance matrix algorithm, infer a phylogenetic tree from the supplied distance matrix, and write the tree, in Newick format, to standard output.|
27
+
|decenttree -in ../example/compressed_example.dist.gz<br> -std-out | Using the same (default) distance matrix algorithm, infer a phylogenetic tree from the supplied distance matrix (which is in gz compressed format), and write the tree, in Newick format, to standard output.|
28
+
|decenttree -in ../example/example.dist<br> -t NJ-R-V -no-banner<br> -out njrv.newick | Infer a phylogenetic tree, using the *r*apid, *v*ectorized version of the NJ algorithm (NJ-R-V), and write the tree, in Newick format, to the file njrv.newick. Suppress the decenttree banner text. |
29
+
|decenttree -in ../example/example.dist<br> -t NJ-R-V -q <br>-out njrv.newick | Infer a phylogenetic tree, using the *r*apid, *v*ectorized version of the NJ algorithm (NJ-R-V), and write the tree, in Newick format, to the file njrv.newick. Don't write banner text or timing information to standard output (-q suppresses both). |
30
+
|decenttree -in ../example/example.dist<br> -t NJ-R-V -q -f 4<br>-out njrv_low_precision.newick | The same, but reduce the precision, of the inferred distances in the newick tree, to four digits, and write to a different file |
31
+
|decenttree -in ../example/example.dist<br> -t NJ-R-V -q -f 4<br> -out njrv_compressed.newick.gz | The same, but compress the output
32
32
(compression is implied by a .gz suffix). |
33
-
|decenttree -in ../example/example.dist -t NJ-R-V -q -f 4 -out njrv_compressed.newick.gz | The same, but compress the output
33
+
|decenttree -in ../example/example.dist<br> -t NJ-R-V -q -f 4<br> -out njrv_compressed.newick.gz | The same, but compress the output
34
34
(compression is implied by a .gz suffix). |
35
-
|decenttree -in ../example/example.dist -t NJ-R-V -q -f 4 -out njrv_compressed.newick.gz -nt 1| The same, but use only a single thread. |
35
+
|decenttree -in ../example/example.dist<br> -t NJ-R-V -q -f 4 -nt 1<br> -out njrv_compressed.newick.gz | The same, but use only a single thread. |
36
36
37
37
<h2>Alignments as inputs</h2>
38
38
39
39
|Command Line|Explanation|
40
40
|------------|-----------|
41
-
|decenttree decenttree -phylip ../example/example.phy -std-out -no-banner| Using the default distance matrix algorithm, infer a phylogenetic tree from the supplied phylip alignment file, and write the tree, in Newick format, to standard output.|
42
-
|decenttree -phylip ../example/compressed_example.phy.gz -std-out -no-banner| As before, only this time the input is compressed. decenttree inspects the file to determine if it is compressed. The file name doesn't matter.|
43
-
|decenttree -phylip ../example/example.phy -uncorrected -std-out -no-banner| Using the default distance matrix algorithm, infer a phylogenetic tree from the supplied phylip alignment file (using uncorrected Hamming distances), and write the tree, in Newick format, to standard output.|
44
-
| decenttree -t NJ-R-V -phylip ../example/interleaved_example.phy -std-out | Using a vectorized (the V in NJ-R) branch-and-bound (the R in NJ-R-V) version of the Neighbour Joining algorithm, infer a phylogenetic tree from the supplied *interleaved* phylip alignment file, and write the tree, in Newick format, to standard output. |
41
+
|decenttree decenttree -phylip ../example/example.phy<br> -std-out -no-banner| Using the default distance matrix algorithm, infer a phylogenetic tree from the supplied phylip alignment file, and write the tree, in Newick format, to standard output.|
42
+
|decenttree -phylip ../example/compressed_example.phy.gz<br> -std-out -no-banner| As before, only this time the input is compressed. decenttree inspects the file to determine if it is compressed. The file name doesn't matter.|
43
+
|decenttree -phylip ../example/example.phy -uncorrected<br> -std-out -no-banner| Using the default distance matrix algorithm, infer a phylogenetic tree from the supplied phylip alignment file (using uncorrected Hamming distances), and write the tree, in Newick format, to standard output.|
44
+
| decenttree -phylip ../example/interleaved_example.phy<<br>> -t NJ-R-V -std-out | Using a vectorized (the V in NJ-R) branch-and-bound (the R in NJ-R-V) version of the Neighbour Joining algorithm, infer a phylogenetic tree from the supplied *interleaved* phylip alignment file, and write the tree, in Newick format, to standard output. |
45
+
| decenttree -phylip ../example/3x3.phy<br> -dist-out 3x3_as_dna.dist<br> -q -no-out | Calculate a distance matrix for a dummy 3 taxon, 3 nucleotide input, which has A, C, or T, but not G sites. By default decenttree assumes that sites can be A, C, G, or T.
46
+
| decenttree -phylip ../example/3x3.phy<br> -dist-out 3x3_not_dna.dist<br> -q -no-out -not-dna | Calculate a distance matrix using a 3-character alphabet, implied by input, which has A, C, or T, but not G. |
47
+
| decenttree -phylip ../example/3x3.phy<br> -dist-out 3x3_five_chars.dist<br> -q -no-out -alphabet CATGU | Calculate a distance matrix using a 5 character alphabet |
48
+
| cat 3x3*.dist | Display the distance matrices output by the previous three examples, showing the affect of alphabet size on corrected distances |
49
+
50
+
45
51
46
52
Todo: Provide example command-lines for:
47
53
<ul>
@@ -63,8 +69,8 @@ Todo: Provide example command-lines for:
63
69
64
70
|Command Line|Explanation|
65
71
|------------|-----------|
66
-
| decenttree -t NONE -phylip ../example/example.phy -aln-out interleaved_example.phy -no-out -no-banner | Convert an un-interleaved phylip alignment file into an interleaved one |
67
-
| decenttree -t NONE -phylip ../example/example.phy -aln-out interleaved_example.phy.gz -no-out -no-banner | Convert an un-interleaved phylip alignment file into an interleaved one, and zip the output file as it is generated (zipping is implied by the .gz extension) |
72
+
| decenttree -phylip ../example/example.phy<br> -aln-out interleaved_example.phy<br> -t NONE -no-out -no-banner | Convert an un-interleaved phylip alignment file into an interleaved one |
73
+
| decenttree -phylip ../example/example.phy<br> -aln-out interleaved_example.phy.gz<br> -t NONE -no-out -no-banner | Convert an un-interleaved phylip alignment file into an interleaved one, and zip the output file as it is generated (zipping is implied by the .gz extension) |
68
74
69
75
70
76
<h2>Distance Matrices as outputs</h2>
@@ -78,8 +84,8 @@ Todo:
78
84
79
85
|Command Line|Explanation|
80
86
|------------|-----------|
81
-
|decenttree -phylip ../example/example.phy -no-banner -dist example.dist -out-format upper -t NONE -no-out | Using the default distance matrix algorithm, infer a distance matrix, and write the distance matrix (in upper-triangle Phylip format) to the file, example.dist. -t NONE says *not* to use a phylogenetic inference algorithm. If no out-format parameter is provided the default is square. |
82
-
|decenttree -phylip ../example/example.phy -no-banner -uncorrected-dist uncorrected.dist.gz -out-format upper.gz -t NONE -no-out | The same, only this time uncorrected distances are to be calculated, the distance matrix is to be written to uncorrected.dist.gz, and is to be compressed with gzip|
87
+
|decenttree -phylip ../example/example.phy<br> -no-banner <br> -dist example.dist -out-format upper <br>-t NONE -no-out | Using the default distance matrix algorithm, infer a distance matrix, and write the distance matrix (in upper-triangle Phylip format) to the file, example.dist. -t NONE says *not* to use a phylogenetic inference algorithm. If no out-format parameter is provided the default is square. |
88
+
|decenttree -phylip ../example/example.phy<br> -no-banner -uncorrected<br> -dist uncorrected.dist.gz -out-format upper.gz<br> -t NONE -no-out | The same, only this time uncorrected distances are to be calculated, the distance matrix is to be written to uncorrected.dist.gz, and is to be compressed with gzip|
83
89
84
90
<h2>Benchmarking</h2>
85
91
In these examples, simulated_1k.fa.gz is a fasta file containing a simulated alignment with 1000 taxa, and a sequence length of 10,000,
@@ -92,5 +98,5 @@ generated using IQTree2 and gzip, via the (MacOS/Unix) commands:
92
98
93
99
|Command Line|Explanation|
94
100
|------------|-----------|
95
-
|decenttree -t BENCHMARK -fasta ../example/simulated_1k.fa.gz -no-out -nt 4 | Benchmark each of the available algorithms, one after another, with 1 through 4 threads of execution (multi-threading is only supported if decenttree is compiled with Open MP, and running on a multi-CPU architecture).|
96
-
|decenttree -t BENCHMARK -fasta ../example/simulated_1k.fa.gz -no-out | Benchmark each of the available algorithms, one after another, with 1 through *n* threads (where *n* is the number of available CPUs) (only if decenttree is compiled with Open MP, and running on a multi-CPU architecture).|
101
+
|decenttree -fasta ../example/simulated_1k.fa.gz<br> -t BENCHMARK -no-out -nt 4 | Benchmark each of the available algorithms, one after another, with 1 through 4 threads of execution (multi-threading is only supported if decenttree is compiled with Open MP, and running on a multi-CPU architecture).|
102
+
|decenttree -fasta ../example/simulated_1k.fa.gz<br> -t BENCHMARK -no-out | Benchmark each of the available algorithms, one after another, with 1 through *n* threads (where *n* is the number of available CPUs) (only if decenttree is compiled with Open MP, and running on a multi-CPU architecture).|
0 commit comments