Package pal.eval

Interface UnconstrainedLikelihoodModel.External

  • All Superinterfaces:
    java.io.Serializable
    Enclosing interface:
    UnconstrainedLikelihoodModel

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

      • 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,
                               PatternInfo centerPattern,
                               ConditionalProbabilityStore leftConditionalProbabilities,
                               ConditionalProbabilityStore rightConditionalProbabilities,
                               ConditionalProbabilityStore resultStore)
        Parameters:
        distance - the evolutionary distance
        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,
                                           int numberOfPatterns,
                                           ConditionalProbabilityStore conditionalProbabilities)
        Extend the conditionals back in time by some distance
        Parameters:
        distance - The evolutionary distance to extend by
        numberOfPatterns - the number of patterns
        conditionalProbabilities - The probabilities to extend
      • calculateSingleExtendedIndirect

        void calculateSingleExtendedIndirect​(double distance,
                                             int numberOfPatterns,
                                             ConditionalProbabilityStore baseConditionalProbabilities,
                                             ConditionalProbabilityStore resultConditionalProbabilities)
        Extend the conditionals back in time by some distance
        Parameters:
        distance - The evolutionary distance to extend by
        numberOfPatterns - the number of patterns
        baseConditionalProbabilities - The probabilities to extend
        resultConditionalProbabilities - The probabilities to extend
      • calculateLogLikelihood

        double calculateLogLikelihood​(double distance,
                                      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 - The evolutionary distance
        centerPattern - the pattern information
        leftFlatConditionalProbabilities - The left conditional probabilities (unextended)
        rightFlatConditionalProbabilities - The right conditional probabilities (unextended)
        tempStore - may be used internally to calculate likelihood
        Returns:
        the log likelihood
      • calculateLogLikelihood

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

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

        SiteDetails calculateSiteDetailsRooted​(PatternInfo centerPattern,
                                               ConditionalProbabilityStore leftConditionalProbabilitiesStore,
                                               ConditionalProbabilityStore rightConditionalProbabilitiesStore)
        Calculate the conditional probabilities of each pattern for each category
        Parameters:
        centerPattern - the pattern information
        leftConditionalProbabilitiesStore - The left conditional probabilities
        rightConditionalProbabilitiesStore - The right conditional probabilities
      • calculateSiteDetailsUnrooted

        SiteDetails calculateSiteDetailsUnrooted​(double distance,
                                                 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
        centerPattern - the pattern information
        leftConditionalProbabilitiesStore - The left conditional probabilities
        rightConditionalProbabilitiesStore - The right conditional probabilities
        tempStore - 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