Revision as of 21:52, 4 April 2011 by Zwickl
- (documentation still being updated ...)
- Partitioned models
- Mk/Mkv models for morphology-like discrete data
- Improved parameter optimization
- Ability to specify starting or fixed model parameters in configuration file (parametervaluestring = ...)
- Options to easily optimize parameters and branch lengths on a user input tree (optimizeinputonly = 1)
- Numerous minor bug fixes and improvements
- GARLI 1.0 (Dec 2009) is a finalized version of the previous beta release, version 0.96b8. Version 1.0 should replace earlier versions, and should be backwards compatible with all configuration files and datasets that were used with the previous version.
- Please note that these new features of version 1.0 are NOT documented in the pdf manual in the "doc" directory. The manual was accurate up through version 0.96, but I do not plan to maintain it, choosing instead to update this support wiki. The manual will still be useful and will explain almost all normal program usage because there were few important changes on the surface.
- This version does NOT include partitioned models, although a prototype version of GARLI allowing this does exist. Email email@example.com if you'd like to give it a try.
- Ability to write sitewise log-likelihood values for all model types, in a format identical to PAUP*. This can be read directly into a program like CONSEL to perform statistical comparisons of topologies such as the SH or AU tests. (outputsitelikelihoods = 1)
- Ability to collapse zero length branches at the end of any search, creating polytomies. This is now turned on by default. This setting can affect bootstrap values, since zero-length branches in a sense don't exist and probably shouldn't contribute to branch support values. It also tends to make trees inferred from multiple searches more similar, since trees that only differ in arbitrary resolutions of zero length branches are not truly different. (collapsebranches = 1)
- Ability to infer full time-reversible amino acid rate matrices while doing a normal searching, adding 189 free parameters. This is probably not something of general utility unless you have a very large dataset. (datatype = aminoacid or codon-aminoacid, ratematrix = estimate)
- Ability to use user-specified amino acid rate matrices. This allows the use of any existing amino acid matrix, regardless of whether GARLI implements them internally. Amino acid matrices estimated by GARLI can also have their parameter values fixed for use in other analyses. Note however that GARLI's matrix input format differs from other programs. (ratematrix = fixed, provide matrix in a Nexus GARLI block in the datafile or in a starting conditions file. See the file "examples/LGmodel.mod" for an example of such a block. See the following page for a detailed walkthrough: Specifying a custom amino acid rate matrix.)
- Ability to infer internal state probabilities (ancestral states) for amino acid and codon models, in addition to the previously implemented nucleotide models. (inferinternalstateprobs = 1)
- Substantial speed improvements for large constrained searches, especially backbone constraints
- MPI parallel runs can now be checkpointed, allowing entire sets of runs to be restarted. Be sure to read the wiki page detailing the MPI_version to understand in which cases you might want to use this version.
- More rigorous error checking of input trees, constraints and parameter values.
- Significant improvements to the precision of parameter optimization. GARLI now puts significant effort into returning the very most optimal parameter values at the end of a search. These should be as accurate as values returned by other programs such as PAUP* or PAML. Previously the estimated parameter values were nearly optimal, but sometimes not quite there.
- A "verification mode", which checks that a given configuration file and datafile are valid for use with GARLI, without starting an actual analysis. This can be useful, for example, in verifying that all configuration and input is proper while on your local machine before sending the input files to a computer cluster. The output will also tell you how much memory GARLI will be need to be allocated for the run, which might require adjustment of the "availablememory" setting in the configuration file (start GARLI with "-V").
- Much easier procedure for compiling of GARLI source code and its dependencies, using the build_garli.sh script.
- Fixes to numerous rare bugs in version 0.96b8.
- Version 0.96 is a major revision from the previous version 0.951 and contains many new features and improvements.
- It should be backwards compatible with all configuration files and datasets that were used with previous versions.
- Rigorous reading of Nexus datasets using Paul Lewis and Mark Holder's Nexus Class Library (NCL).
- Ability to read Nexus starting trees using NCL.
- Ability to perform inference under amino acid and codon-based models of sequence evolution (datatype = aminoacid, datatype = codon).
- Ability to specify multiple search replicates in a single config file (searchreps = #).
- Ability to specify outgroups for orientation of inferred trees (outgroup = # # #).
- Ability to use backbone as well as normal topological constraints.
- Ability to create fast likelihood stepwise addition starting trees (streefname = stepwise).
- MPI version that spreads a specified number of serial runs across processors using a single config file, writing output to different output files (for example, to do 25 bootstrap replicates simultaneously on each of 8 processors).
- Ability to perform nucleotide inference using any sub-model of the General Time-Reversible model (GTR), in addition to all of the common "named" models (K2P, HKY, etc).
- Speed increases for non-parametric bootstrapping