Skip to content
This repository was archived by the owner on Feb 6, 2024. It is now read-only.

Commit 377ab66

Browse files
committed
version 2.0-rc (release candidate)
1 parent 5888793 commit 377ab66

File tree

3 files changed

+55
-47
lines changed

3 files changed

+55
-47
lines changed

CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,9 +79,9 @@ endif()
7979

8080

8181
# The version number.
82-
set (iqtree_VERSION_MAJOR 1)
83-
set (iqtree_VERSION_MINOR 7)
84-
set (iqtree_VERSION_PATCH "-beta18")
82+
set (iqtree_VERSION_MAJOR 2)
83+
set (iqtree_VERSION_MINOR 0)
84+
set (iqtree_VERSION_PATCH "-rc")
8585

8686
option(BUILD_SHARED_LIBS "Build Shared Libraries" OFF)
8787

main/phyloanalysis.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -879,9 +879,6 @@ void printOutfilesInfo(Params &params, IQTree &tree) {
879879
/* if (params.model_name == "WHTEST")
880880
cout <<" WH-TEST report: " << params.out_prefix << ".whtest" << endl;*/
881881

882-
if (params.terrace_analysis)
883-
cout << " Terrace trees written to: " << params.out_prefix << ".terrace" << endl;
884-
885882
cout << endl;
886883

887884
}
@@ -1263,7 +1260,7 @@ void reportPhyloAnalysis(Params &params, IQTree &tree, ModelCheckpoint &model_in
12631260
}
12641261
#ifdef IQTREE_TERRAPHAST
12651262
if (params.terrace_analysis) {
1266-
out << "TERRACE ANALYSIS" << endl << "--------------" << endl << endl;
1263+
out << "TERRACE ANALYSIS" << endl << "----------------" << endl << endl;
12671264

12681265
string filename = params.out_prefix;
12691266
filename += ".terrace";

utils/tools.cpp

Lines changed: 51 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -860,7 +860,11 @@ void parseArg(int argc, char *argv[], Params &params) {
860860
params.partfinder_log_rate = true;
861861
params.remove_empty_seq = true;
862862
params.terrace_aware = true;
863+
#ifdef IQTREE_TERRAPHAST
864+
params.terrace_analysis = true;
865+
#else
863866
params.terrace_analysis = false;
867+
#endif
864868
params.sequence_type = NULL;
865869
params.aln_output = NULL;
866870
params.aln_site_list = NULL;
@@ -1137,7 +1141,7 @@ void parseArg(int argc, char *argv[], Params &params) {
11371141
#endif
11381142
continue;
11391143
}
1140-
if (strcmp(argv[cnt], "-version") == 0 || strcmp(argv[cnt], "--version") == 0) {
1144+
if (strcmp(argv[cnt], "-V") == 0 || strcmp(argv[cnt], "-version") == 0 || strcmp(argv[cnt], "--version") == 0) {
11411145
printCopyright(cout);
11421146
exit(EXIT_SUCCESS);
11431147
}
@@ -2085,7 +2089,13 @@ void parseArg(int argc, char *argv[], Params &params) {
20852089
#endif
20862090
continue;
20872091
}
2088-
if (strcmp(argv[cnt], "-sf") == 0) {
2092+
2093+
if (strcmp(argv[cnt], "--no-terrace") == 0) {
2094+
params.terrace_analysis = false;
2095+
continue;
2096+
}
2097+
2098+
if (strcmp(argv[cnt], "-sf") == 0) {
20892099
cnt++;
20902100
if (cnt >= argc)
20912101
throw "Use -sf <ngs_file>";
@@ -2731,13 +2741,15 @@ void parseArg(int argc, char *argv[], Params &params) {
27312741
throw "Wrong number of threads";
27322742
continue;
27332743
}
2734-
if (strcmp(argv[cnt], "-b") == 0 || strcmp(argv[cnt], "-j") == 0 || strcmp(argv[cnt], "-bo") == 0 || strcmp(argv[cnt], "--bonly") == 0) {
2744+
if (strcmp(argv[cnt], "-b") == 0 || strcmp(argv[cnt], "--boot") == 0 ||
2745+
strcmp(argv[cnt], "-j") == 0 || strcmp(argv[cnt], "--jack") == 0 ||
2746+
strcmp(argv[cnt], "-bo") == 0 || strcmp(argv[cnt], "--bonly") == 0) {
27352747
params.multi_tree = true;
27362748
if (strcmp(argv[cnt], "-bo") == 0 || strcmp(argv[cnt], "--bonly") == 0)
27372749
params.compute_ml_tree = false;
27382750
else
27392751
params.consensus_type = CT_CONSENSUS_TREE;
2740-
if (strcmp(argv[cnt], "-j") == 0 && params.jackknife_prop == 0.0)
2752+
if ((strcmp(argv[cnt], "-j") == 0 || strcmp(argv[cnt], "--jack") == 0) && params.jackknife_prop == 0.0)
27412753
params.jackknife_prop = 0.5;
27422754
cnt++;
27432755
if (cnt >= argc)
@@ -2751,7 +2763,7 @@ void parseArg(int argc, char *argv[], Params &params) {
27512763
params.consensus_type = CT_NONE;
27522764
continue;
27532765
}
2754-
if (strcmp(argv[cnt], "--bsam") == 0 || strcmp(argv[cnt], "-bsam") == 0) {
2766+
if (strcmp(argv[cnt], "--bsam") == 0 || strcmp(argv[cnt], "-bsam") == 0 || strcmp(argv[cnt], "--sampling") == 0) {
27552767
cnt++;
27562768
if (cnt >= argc)
27572769
throw "Use -bsam <bootstrap_specification>";
@@ -2813,7 +2825,7 @@ void parseArg(int argc, char *argv[], Params &params) {
28132825
continue;
28142826
}
28152827

2816-
if (strcmp(argv[cnt], "-wt") == 0) {
2828+
if (strcmp(argv[cnt], "-wt") == 0 || strcmp(argv[cnt], "--treels") == 0) {
28172829
params.write_intermediate_trees = 1;
28182830
continue;
28192831
}
@@ -2940,12 +2952,12 @@ void parseArg(int argc, char *argv[], Params &params) {
29402952
throw "Local bootstrap (LBP) replicates must be at least 1000";
29412953
continue;
29422954
}
2943-
if (strcmp(argv[cnt], "-wsl") == 0) {
2955+
if (strcmp(argv[cnt], "-wsl") == 0 || strcmp(argv[cnt], "--sitelh") == 0) {
29442956
params.print_site_lh = WSL_SITE;
29452957
continue;
29462958
}
29472959

2948-
if (strcmp(argv[cnt], "-wpl") == 0) {
2960+
if (strcmp(argv[cnt], "-wpl") == 0 || strcmp(argv[cnt], "--partlh") == 0) {
29492961
params.print_partition_lh = true;
29502962
continue;
29512963
}
@@ -3204,12 +3216,13 @@ void parseArg(int argc, char *argv[], Params &params) {
32043216
params.eco_run = convert_int(argv[cnt]);
32053217
continue;
32063218
}
3207-
if (strcmp(argv[cnt], "-bb") == 0 || strcmp(argv[cnt], "-B") == 0 || strcmp(argv[cnt], "-J") == 0) {
3208-
if (strcmp(argv[cnt], "-J") == 0 && params.jackknife_prop == 0.0)
3219+
if (strcmp(argv[cnt], "-bb") == 0 || strcmp(argv[cnt], "-B") == 0 || strcmp(argv[cnt], "--ufboot") == 0 ||
3220+
strcmp(argv[cnt], "-J") == 0 || strcmp(argv[cnt], "--ufjack") == 0) {
3221+
if ((strcmp(argv[cnt], "-J") == 0 || strcmp(argv[cnt], "--ufjack") == 0) && params.jackknife_prop == 0.0)
32093222
params.jackknife_prop = 0.5;
32103223
cnt++;
32113224
if (cnt >= argc)
3212-
throw "Use -bb <#replicates>";
3225+
throw "Use -B <#replicates>";
32133226
if (params.stop_condition == SC_FIXED_ITERATION) {
32143227
throw("Ultrafast bootstrap does not work with -fast, -te or -n option");
32153228
}
@@ -3231,7 +3244,7 @@ void parseArg(int argc, char *argv[], Params &params) {
32313244
throw "Epsilon must be positive";
32323245
continue;
32333246
}
3234-
if (strcmp(argv[cnt], "-wbt") == 0 || strcmp(argv[cnt], "--wbt") == 0) {
3247+
if (strcmp(argv[cnt], "-wbt") == 0 || strcmp(argv[cnt], "--wbt") == 0 || strcmp(argv[cnt], "--boot-trees") == 0) {
32353248
params.print_ufboot_trees = 1;
32363249
continue;
32373250
}
@@ -3535,7 +3548,7 @@ void parseArg(int argc, char *argv[], Params &params) {
35353548
params.pll = true;
35363549
continue;
35373550
}
3538-
if (strcmp(argv[cnt], "-me") == 0 || strcmp(argv[cnt], "--model-epsilon") == 0) {
3551+
if (strcmp(argv[cnt], "-me") == 0 || strcmp(argv[cnt], "--epsilon") == 0) {
35393552
cnt++;
35403553
if (cnt >= argc)
35413554
throw "Use -me <model_epsilon>";
@@ -3961,7 +3974,7 @@ void parseArg(int argc, char *argv[], Params &params) {
39613974
continue;
39623975
}
39633976

3964-
if (strcmp(argv[cnt], "--force-unfinish") == 0) {
3977+
if (strcmp(argv[cnt], "--undo") == 0) {
39653978
params.force_unfinished = true;
39663979
continue;
39673980
}
@@ -4211,20 +4224,26 @@ void usage_iqtree(char* argv[], bool full_command) {
42114224
printCopyright(cout);
42124225
cout << "Usage: iqtree [-s ALIGNMENT] [-p PARTITION] [-m MODEL] [-t TREE] ..." << endl << endl;
42134226
cout << "GENERAL OPTIONS:" << endl
4214-
<< " -h Print this help dialog" << endl
4215-
<< " --help Print more available options" << endl
4216-
<< " --version Display version number" << endl
4217-
<< " -s FILE PHYLIP/FASTA/NEXUS/CLUSTAL/MSF sequence alignment" << endl
4227+
<< " -h, --help Print (more) help usages" << endl
4228+
<< " -s FILE[,...,FILE] PHYLIP/FASTA/NEXUS/CLUSTAL/MSF alignment file(s)" << endl
4229+
<< " -s DIR Directory of alignment files" << endl
4230+
<< " --seqtype STRING BIN, DNA, AA, NT2AA, CODON, MORPH (default: auto-detect)" << endl
42184231
<< " -t FILE|PARS|RAND Starting tree (default: 99 parsimony and BIONJ)" << endl
4219-
<< " --tree-fix Fix -t tree (no tree search performed)" << endl
4232+
<< " -o TAX[,...,TAX] Outgroup taxon (list) for writing .treefile" << endl
42204233
<< " --prefix STRING Prefix for all output files (default: aln/partition)" << endl
42214234
<< " --seed NUMBER Random seed number, normally used for debugging purpose" << endl
42224235
<< " --safe Safe likelihood kernel to avoid numerical underflow" << endl
42234236
<< " --mem NUMBER[G|M|%] Maximal RAM usage in GB | MB | %" << endl
42244237
<< " --runs NUMBER Number of indepedent runs (default: 1)" << endl
42254238
<< " --redo Ignore checkpoint and overwrite outputs (default: OFF)" << endl
4239+
<< " -v, --verbose Verbose mode, printing more messages to screen" << endl
4240+
<< " -V, --version Display version number" << endl
4241+
<< " --quiet Quiet mode, suppress printing to screen (stdout)" << endl
4242+
<< " -fconst f1,...,fN Add constant patterns into alignment (N=no. states)" << endl
4243+
<< " --epsilon NUMBER Likelihood epsilon for parameter estimate (default 0.01)" << endl
42264244
#ifdef _OPENMP
42274245
<< " -T NUMBER|AUTO No. cores/threads or AUTO-detect (default: 1)" << endl
4246+
<< " --threads-max NUM Max number of threads for -T AUTO (default: all cores)" << endl
42284247
#endif
42294248
<< endl << "PARTITION MODEL:" << endl
42304249
<< " -p FILE|DIR NEXUS/RAxML partition file or directory with alignments" << endl
@@ -4249,27 +4268,30 @@ void usage_iqtree(char* argv[], bool full_command) {
42494268
<< " -g FILE (Multifurcating) topological constraint tree file" << endl
42504269
<< " --fast Fast search to resemble FastTree" << endl
42514270
<< " --polytomy Collapse near-zero branches into polytomy" << endl
4271+
<< " --tree-fix Fix -t tree (no tree search performed)" << endl
4272+
<< " --treels Write locally optimal trees into .treels file" << endl
4273+
<< " --show-lh Compute tree likelihood without optimisation" << endl
42524274
#ifdef IQTREE_TERRAPHAST
42534275
<< " --terrace Check if the tree lies on a phylogenetic terrace" << endl
42544276
#endif
42554277
// << " -iqp Use the IQP tree perturbation (default: randomized NNI)" << endl
42564278
// << " -iqpnni Switch back to the old IQPNNI tree search algorithm" << endl
42574279
<< endl << "ULTRAFAST BOOTSTRAP/JACKKNIFE:" << endl
4258-
<< " -B NUMBER Replicates for ultrafast bootstrap (>=1000)" << endl
4259-
<< " -J NUMBER Replicates for ultrafast jackknife (>=1000)" << endl
4280+
<< " -B, --ufboot NUMBER Replicates for ultrafast bootstrap (>=1000)" << endl
4281+
<< " -J, --ufjack NUMBER Replicates for ultrafast jackknife (>=1000)" << endl
42604282
<< " --jack-prop NUMBER Subsampling proportion for jackknife (default: 0.5)" << endl
4261-
<< " --bsam STRING GENE|GENESITE resampling for partitions (default: SITE)" << endl
4262-
<< " --wbt Write bootstrap trees to .ufboot file (default: none)" << endl
4263-
<< " --wbtl Like -wbt but also writing branch lengths" << endl
4283+
<< " --sampling STRING GENE|GENESITE resampling for partitions (default: SITE)" << endl
4284+
<< " --boot-trees Write bootstrap trees to .ufboot file (default: none)" << endl
4285+
<< " --wbtl Like --boot-trees but also writing branch lengths" << endl
42644286
// << " -n <#iterations> Minimum number of iterations (default: 100)" << endl
42654287
<< " --nmax NUMBER Maximum number of iterations (default: 1000)" << endl
42664288
<< " --nstep NUMBER Iterations for UFBoot stopping rule (default: 100)" << endl
42674289
<< " --bcor NUMBER Minimum correlation coefficient (default: 0.99)" << endl
42684290
<< " --beps NUMBER RELL epsilon to break tie (default: 0.5)" << endl
42694291
<< " --bnni Optimize UFBoot trees by NNI on bootstrap alignment" << endl
42704292
<< endl << "NON-PARAMETRIC BOOTSTRAP/JACKKNIFE:" << endl
4271-
<< " -b NUMBER Replicates for bootstrap + ML tree + consensus tree" << endl
4272-
<< " -j NUMBER Replicates for jackknife + ML tree + consensus tree" << endl
4293+
<< " -b, --boot NUMBER Replicates for bootstrap + ML tree + consensus tree" << endl
4294+
<< " -j, --jack NUMBER Replicates for jackknife + ML tree + consensus tree" << endl
42734295
<< " --jack-prop NUMBER Subsampling proportion for jackknife (default: 0.5)" << endl
42744296
<< " --bcon NUMBER Replicates for bootstrap + consensus tree" << endl
42754297
<< " --bonly NUMBER Replicates for bootstrap only" << endl
@@ -4402,6 +4424,7 @@ void usage_iqtree(char* argv[], bool full_command) {
44024424
<< " --test NUMBER Replicates for topology test" << endl
44034425
<< " --test-weight Perform weighted KH and SH tests" << endl
44044426
<< " --test-au Approximately unbiased (AU) test (Shimodaira 2002)" << endl
4427+
<< " --sitelh Write site log-likelihoods to .sitelh file" << endl
44054428

44064429
<< endl << "ANCESTRAL STATE RECONSTRUCTION:" << endl
44074430
<< " --ancestral Ancestral state reconstruction by empirical Bayes" << endl
@@ -4464,34 +4487,22 @@ void usage_iqtree(char* argv[], bool full_command) {
44644487
<< " --rlen NUM NUM NUM min, mean, and max random branch lengths" << endl
44654488

44664489
<< endl << "MISCELLANEOUS:" << endl
4467-
<< " -o STRING Outgroup taxon name for writing .treefile" << endl
4468-
<< " --seqtype STRING BIN, DNA, AA, NT2AA, CODON, MORPH (default: auto-detect)" << endl
4469-
#ifdef _OPENMP
4470-
<< " --threads-max NUM Max number of threads for -c AUTO (default: CPU cores)" << endl
4471-
#endif
4472-
<< " -v, --verbose Verbose mode, printing more messages to screen" << endl
4473-
<< " --quiet Quiet mode, suppress printing to screen (stdout)" << endl
44744490
<< " --keep-ident Keep identical sequences (default: remove & finally add)" << endl
44754491
<< " --cptime NUMBER Checkpoint time interval in seconds (default: 60)" << endl
4476-
<< " -wt Write locally optimal trees into .treels file" << endl
44774492
<< " -blfix Fix branch lengths of user tree passed via -te" << endl
44784493
<< " -blscale Scale branch lengths of user tree passed via -t" << endl
44794494
<< " -blmin Min branch length for optimization (default 0.000001)" << endl
44804495
<< " -blmax Max branch length for optimization (default 100)" << endl
4481-
<< " -wsl Write site log-likelihoods to .sitelh file" << endl
44824496
<< " -wslr Write site log-likelihoods per rate category" << endl
44834497
<< " -wslm Write site log-likelihoods per mixture class" << endl
44844498
<< " -wslmr Write site log-likelihoods per mixture+rate class" << endl
44854499
<< " -wspr Write site probabilities per rate category" << endl
44864500
<< " -wspm Write site probabilities per mixture class" << endl
44874501
<< " -wspmr Write site probabilities per mixture+rate class" << endl
4488-
<< " -wpl Write partition log-likelihoods to .partlh file" << endl
4489-
<< " -fconst f1,...,fN Add constant patterns into alignment (N=no. states)" << endl
4490-
<< " -me NUMBER LogL epsilon for parameter estimation (default 0.01)" << endl
4502+
<< " --partlh Write partition log-likelihoods to .partlh file" << endl
44914503
<< " --no-outfiles Suppress printing output files" << endl
44924504
<< " --eigenlib Use Eigen3 library" << endl
44934505
<< " -alninfo Print alignment sites statistics to .alninfo" << endl
4494-
<< " --show-lh Compute tree likelihood without optimisation" << endl
44954506
// << " -d <file> Reading genetic distances from file (default: JC)" << endl
44964507
// << " -d <outfile> Calculate the distance matrix inferred from tree" << endl
44974508
// << " -stats <outfile> Output some statistics about branch lengths" << endl
@@ -4527,7 +4538,7 @@ void quickStartGuide() {
45274538
<< "6. Find best partition scheme followed by tree inference and bootstrap:" << endl
45284539
<< " iqtree -s example.phy -p example.nex -m MFP+MERGE -B 1000" << endl << endl
45294540
#ifdef _OPENMP
4530-
<< "7. Use 4 CPU cores to speed up computation: add '-c 4' option" << endl << endl
4541+
<< "7. Use 4 CPU cores to speed up computation: add '-T 4' option" << endl << endl
45314542
#endif
45324543
<< "8. Polymorphism-aware model with HKY nucleotide model and Gamma rate:" << endl
45334544
<< " iqtree -s counts_file.cf -m HKY+P+G" << endl << endl

0 commit comments

Comments
 (0)