Package pal.eval

Interface LHCalculator.External

All Superinterfaces:
Serializable
Enclosing interface:
LHCalculator

public static interface LHCalculator.External extends Serializable
The External calculator does not maintain any state and is approapriate for calculation where a store is provided
  • Method Details

    • calculateFlat

      void calculateFlat(PatternInfo centerPattern, ConditionalProbabilityStore leftConditionalProbabilities, ConditionalProbabilityStore rightConditionalProbabilities, ConditionalProbabilityStore resultStore)
      Parameters:
      centerPattern - the pattern information
      leftConditionalProbabilities - Implementations must not overwrite or change
      rightConditionalProbabilities - Implementations must not overwrite or change
      resultStore - Where to stick the created categoryPatternState information
    • calculateExtended

      void calculateExtended(double distance, SubstitutionModel model, PatternInfo centerPattern, ConditionalProbabilityStore leftConditionalProbabilities, ConditionalProbabilityStore rightConditionalProbabilities, ConditionalProbabilityStore resultStore)
      Parameters:
      distance -
      model -
      centerPattern - the pattern information
      leftConditionalProbabilities - Implementations must not overwrite or change
      rightConditionalProbabilities - Implementations must not overwrite or change
      resultStore - Where to stick the created categoryPatternState information
    • calculateSingleExtendedDirect

      void calculateSingleExtendedDirect(double distance, SubstitutionModel model, int numberOfPatterns, ConditionalProbabilityStore conditionalProbabilities)
      Extend the conditionals back in time by some distance, with some model
      Parameters:
      distance - The distance to extend by
      model - The model to use
      conditionalProbabilities - The probabilities to extend
    • calculateSingleExtendedIndirect

      void calculateSingleExtendedIndirect(double distance, SubstitutionModel model, int numberOfPatterns, ConditionalProbabilityStore baseConditionalProbabilities, ConditionalProbabilityStore resultConditionalProbabilities)
      Extend the conditionals back in time by some distance, with some model
      Parameters:
      distance - The distance to extend by
      model - The model to use
      baseConditionalProbabilities - The probabilities to extend
      resultConditionalProbabilities - The probabilities to extend
    • calculateLogLikelihood

      double calculateLogLikelihood(double distance, SubstitutionModel model, PatternInfo centerPattern, ConditionalProbabilityStore leftFlatConditionalProbabilities, ConditionalProbabilityStore rightFlatConditionalProbabilities, ConditionalProbabilityStore tempStore)
      Calculate the likelihood given two sub trees (left, right) and their flat (unextend) likeihood probabilities
      Parameters:
      distance -
      model -
      centerPattern - the pattern information
      leftFlatConditionalProbabilities -
      rightFlatConditionalProbabilities -
      tempStore - may be used internally to calculate likelihood
      Returns:
      the log likelihood
    • calculateLogLikelihood

      double calculateLogLikelihood(SubstitutionModel model, PatternInfo centerPattern, ConditionalProbabilityStore leftConditionalProbabilities, ConditionalProbabilityStore rightConditionalProbabilities)
      Calculate the likelihood given two sub trees (left, right) and their extended likeihood probabilities
      Parameters:
      model -
      centerPattern - the pattern information
      leftConditionalProbabilities -
      rightConditionalProbabilities -
      Returns:
      the Log likelihood
    • calculateLogLikelihoodSingle

      double calculateLogLikelihoodSingle(SubstitutionModel model, int[] patternWeights, int numberOfPatterns, ConditionalProbabilityStore conditionalProbabilityStore)
      Calculate the likelihood given the conditional probabilites at the root
      Parameters:
      model - The substitution model used
      patternWeights - the weights of each pattern
      numberOfPatterns - the number of patterns
      conditionalProbabilities - The conditionals
      Returns:
      the Log likelihood
    • calculateSiteDetailsRooted

      SiteDetails calculateSiteDetailsRooted(SubstitutionModel model, PatternInfo centerPattern, ConditionalProbabilityStore leftConditionalProbabilitiesStore, ConditionalProbabilityStore rightConditionalProbabilitiesStore)
      Calculate the conditional probabilities of each pattern for each category
      Parameters:
      model -
      centerPattern - the pattern information
      leftConditionalProbabilities -
      rightConditionalProbabilities -
      categoryPatternLogLikelihoodStore - after call will hold a matrix of values in the form [cat][pattern], where [cat][pattern] represents the site probability under a particular category/class, *not* multiplied by the category probability or pattern weights
    • calculateSiteDetailsUnrooted

      SiteDetails calculateSiteDetailsUnrooted(double distance, SubstitutionModel model, PatternInfo centerPattern, ConditionalProbabilityStore leftConditionalProbabilitiesStore, ConditionalProbabilityStore rightConditionalProbabilitiesStore, ConditionalProbabilityStore tempStore)
      Calculate the conditional probabilities of each pattern for each category
      Parameters:
      distance - The distance between the two nodes
      model -
      centerPattern - the pattern information
      leftConditionalProbabilities -
      rightConditionalProbabilities -
      categoryPatternLogLikelihoodStore - after call will hold a matrix of values in the form [cat][pattern], where [cat][pattern] represents the site probability under a particular category/class, *not* multiplied by the category probability or pattern weights