hammerlab/guacamole — pull request #229 by timodonnell (2014-11-13 21:07:46+00:00)
Title: Likelihood refactor

Moves the likelihood calculation code from Pileup and Genotype into
a new singleton object.

This refactoring enables a more efficient implementation that resuses
computation between genotypes that share alleles. On my local tests, the
likelihood calculation is about 40% faster than the previous implementation.
Overall that gives about a 10% performance boost to variant calling.

* Create a new package and singleton object Likelihood for likelihood calculation code.
* Remove likelihood calculation code from Pileup and Genotype
* Port tests from PileupLikelihoodSuite and GenotypeSuite into a new test suite LikelihoodSuite
* Port variant callers to use new likelihood calculation function.
* Remove == and equals() methods from Allele class.

Closes #228.