GeLL Test Cases

The GeLL test packages comes with some simple JUnit tests that either a) compare GeLL results to PAML or b) test GeLL by using the PAML-tested code to test other parts of GeLL. These tests are designed to simply test each of the major capabilities of GeLL, although they do not do so thoroughly. The tests are described below.

Likelihood.LikelihoodTest Show Hide

This tests the likelihood calculation for a fixed set of parameters and compares the results to PAML. The PAML run can be found in /tests/PAML/Likelihood. As PAML always optimises parameters the parameter values from the PAML run were used.

There are two tests, one simply checks the calculated likelihood is the same, while the other checks the two programs make the same site to rate category assignments.

Ancestral.JointDPTest Show Hide

This tests the dynamic programming part of the joint ancestral reconstruction method for a fixed set of parameters and compares the results to PAML. The PAML run can be found in /tests/PAML/JointReconstruction. As PAML always optimises parameters the parameter values from the PAML run were used.

There is a single test that checks the reconstructed alignments from the two programs are the same.

Ancestral.JointBBTest Show Hide

This tests the branch and bound programming part of the joint ancestral reconstruction method for a fixed set of parameters. First, the probability of each possible assignment is exhaustively calculated (using the Likelihood method), which is possible due to the small tree size. Second we ensure that the branch and bound method is returning the most likely reconstruction.

Ancestral.MarginalTest Show Hide

This tests the marginal ancestral reconstruction method for a fixed set of parameters and compares the results to PAML. The PAML run can be found in /tests/PAML/MarginalReconstruction. As PAML always optimises parameters the parameter values from the PAML run were used.

There is a single test that checks the reconstructed alignments from the two programs are the same.

Simulations.SimulateTest Show Hide

This tests the simulation method. First, the theoretical probability of each possible assignment is exhaustively calculated (using the Likelihood method), which is possible due to the small tree size. Second we ensure that the frequency with which the simulator generates each state agrees with the theoretical result.

Optimizers.GoldenSectionTest Show Hide

This is essentially the same as the Likelihood test except we only test the likelihood and we don't fix the parameters but optimise them first using the Golden Section method.

Optimizers.NelderMeadTest Show Hide

This is essentially the same as the Likelihood test except we only test the likelihood and we don't fix the parameters but optimise them first using the Nelder-Mead method.

Back to Top Level Documentation