R8s
From BioPerl
Mike Sanderson's program for estimate divergence times and rates of molecular evolution. It takes NEXUS format input with a command block that provides the directions to the program.
Another useful aspect to the program is it can also be used to smooth branches so that an ultrametric tree can be derived from a tree where a molecular clock was not assumed.
begin rates; # set the number of sites since the tree is usually in per site units i.e. MrBayes or Phyml. blformat nsites=4915 lengths=persite; collapse; # collapse 0 length branches, polytomies are okay prune taxon=crei_jgi; # drop a taxa we don't want to use, this is usually important as you root with it in tree building but don't # set some ages for internal nodes (which were labeled in the tree file, you can also define an internal label with the mrca command) fixage taxon=Rodenta age=12; fixage taxon=PrimateRodent age=65; fixage taxon=BirdPrimate age=310; fixage taxon=Vertebrate age=570; fixage taxon=Opistikant age=965; fixage taxon=Euasco age=400; # estimate divergence time under the langey-fitch method using a powell algorithm divtime method=lf algorithm=pl; set penalty=log checkgradient=yes smoothing=1000; # print out the table with ages for all the internal nodes showage; # print out a description of the tree describe plot=tree_description; # do it again with penalized likelihood model and TN algorithm DIVTIME method=pl algorithm=tn; showage; describe plot=tree_description; end;