Package pal.eval
Interface LHCalculator.External
-
- All Superinterfaces:
java.io.Serializable
- Enclosing interface:
- LHCalculator
public static interface LHCalculator.External extends java.io.Serializable
The External calculator does not maintain any state and is approapriate for calculation where a store is provided
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
calculateExtended(double distance, SubstitutionModel model, PatternInfo centerPattern, ConditionalProbabilityStore leftConditionalProbabilities, ConditionalProbabilityStore rightConditionalProbabilities, ConditionalProbabilityStore resultStore)
void
calculateFlat(PatternInfo centerPattern, ConditionalProbabilityStore leftConditionalProbabilities, ConditionalProbabilityStore rightConditionalProbabilities, ConditionalProbabilityStore resultStore)
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 probabilitiesdouble
calculateLogLikelihood(SubstitutionModel model, PatternInfo centerPattern, ConditionalProbabilityStore leftConditionalProbabilities, ConditionalProbabilityStore rightConditionalProbabilities)
Calculate the likelihood given two sub trees (left, right) and their extended likeihood probabilitiesdouble
calculateLogLikelihoodSingle(SubstitutionModel model, int[] patternWeights, int numberOfPatterns, ConditionalProbabilityStore conditionalProbabilityStore)
Calculate the likelihood given the conditional probabilites at the rootvoid
calculateSingleExtendedDirect(double distance, SubstitutionModel model, int numberOfPatterns, ConditionalProbabilityStore conditionalProbabilities)
Extend the conditionals back in time by some distance, with some modelvoid
calculateSingleExtendedIndirect(double distance, SubstitutionModel model, int numberOfPatterns, ConditionalProbabilityStore baseConditionalProbabilities, ConditionalProbabilityStore resultConditionalProbabilities)
Extend the conditionals back in time by some distance, with some modelSiteDetails
calculateSiteDetailsRooted(SubstitutionModel model, PatternInfo centerPattern, ConditionalProbabilityStore leftConditionalProbabilitiesStore, ConditionalProbabilityStore rightConditionalProbabilitiesStore)
Calculate the conditional probabilities of each pattern for each categorySiteDetails
calculateSiteDetailsUnrooted(double distance, SubstitutionModel model, PatternInfo centerPattern, ConditionalProbabilityStore leftConditionalProbabilitiesStore, ConditionalProbabilityStore rightConditionalProbabilitiesStore, ConditionalProbabilityStore tempStore)
Calculate the conditional probabilities of each pattern for each category
-
-
-
Method Detail
-
calculateFlat
void calculateFlat(PatternInfo centerPattern, ConditionalProbabilityStore leftConditionalProbabilities, ConditionalProbabilityStore rightConditionalProbabilities, ConditionalProbabilityStore resultStore)
- Parameters:
centerPattern
- the pattern informationleftConditionalProbabilities
- Implementations must not overwrite or changerightConditionalProbabilities
- Implementations must not overwrite or changeresultStore
- 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 informationleftConditionalProbabilities
- Implementations must not overwrite or changerightConditionalProbabilities
- Implementations must not overwrite or changeresultStore
- 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 bymodel
- The model to useconditionalProbabilities
- 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 bymodel
- The model to usebaseConditionalProbabilities
- The probabilities to extendresultConditionalProbabilities
- 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 informationleftFlatConditionalProbabilities
-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 informationleftConditionalProbabilities
-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 usedpatternWeights
- the weights of each patternnumberOfPatterns
- the number of patternsconditionalProbabilities
- 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 informationleftConditionalProbabilities
-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 nodesmodel
-centerPattern
- the pattern informationleftConditionalProbabilities
-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
-
-