pal.treesearch
Class GeneralConstraintGroupManager

java.lang.Object
  extended bypal.treesearch.GeneralConstraintGroupManager

public class GeneralConstraintGroupManager
extends java.lang.Object


Nested Class Summary
static interface GeneralConstraintGroupManager.LikelihoodScoreAccess
           
static class GeneralConstraintGroupManager.Store
           
 
Constructor Summary
GeneralConstraintGroupManager(ConstraintModel.GroupManager relatedGroup)
           
 
Method Summary
 void addGroupLeader(GroupLeader gl)
           
 ConstraintModel.GroupManager getRelatedGroup()
           
 boolean isOptimisable()
           
 boolean isPrimaryOptimisable()
           
 boolean isSameGroup(ConstraintModel.GroupManager queryGroup)
           
 boolean isSecondarOptimisable()
           
 MolecularClockLikelihoodModel.External obtainConstrainedExternalCalculator()
           
 double optimiseAllGlobalClockConstraints(MultivariateMinimum minimiser, GeneralConstraintGroupManager.LikelihoodScoreAccess scoreAccess, int fxFracDigits, int xFracDigits, MinimiserMonitor rateMonitor)
          Optimise all the global clock parameters related to this group
 double optimisePrimaryGlobalClockConstraints(MultivariateMinimum minimiser, GeneralConstraintGroupManager.LikelihoodScoreAccess scoreAccess, int fxFracDigits, int xFracDigits, MinimiserMonitor rateMonitor)
          Optimise the global clock parameters marked as primary related to this group
 double optimiseSecondaryGlobalClockConstraints(MultivariateMinimum minimiser, GeneralConstraintGroupManager.LikelihoodScoreAccess scoreAccess, int fxFracDigits, int xFracDigits, MinimiserMonitor rateMonitor)
          Optimise the global clock parameters marked as secondary related to this group
 void setup()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GeneralConstraintGroupManager

public GeneralConstraintGroupManager(ConstraintModel.GroupManager relatedGroup)
Method Detail

isOptimisable

public boolean isOptimisable()

isPrimaryOptimisable

public boolean isPrimaryOptimisable()

isSecondarOptimisable

public boolean isSecondarOptimisable()

obtainConstrainedExternalCalculator

public MolecularClockLikelihoodModel.External obtainConstrainedExternalCalculator()

getRelatedGroup

public ConstraintModel.GroupManager getRelatedGroup()

setup

public void setup()

isSameGroup

public boolean isSameGroup(ConstraintModel.GroupManager queryGroup)

addGroupLeader

public void addGroupLeader(GroupLeader gl)

optimiseAllGlobalClockConstraints

public final double optimiseAllGlobalClockConstraints(MultivariateMinimum minimiser,
                                                      GeneralConstraintGroupManager.LikelihoodScoreAccess scoreAccess,
                                                      int fxFracDigits,
                                                      int xFracDigits,
                                                      MinimiserMonitor rateMonitor)
Optimise all the global clock parameters related to this group

Parameters:
minimiser - The minimiser used for optimisation
scoreAccess - A means for assessing a set of parameters
fxFracDigits - Accuracy for the likelihood
xFracDigits - Accruracy for the parameters
rateMonitor - A monitor for our progress
Returns:
the optimised log likelihood or >0 if cannot do any optimisation

optimisePrimaryGlobalClockConstraints

public final double optimisePrimaryGlobalClockConstraints(MultivariateMinimum minimiser,
                                                          GeneralConstraintGroupManager.LikelihoodScoreAccess scoreAccess,
                                                          int fxFracDigits,
                                                          int xFracDigits,
                                                          MinimiserMonitor rateMonitor)
Optimise the global clock parameters marked as primary related to this group

Parameters:
minimiser - The minimiser used for optimisation
scoreAccess - A means for assessing a set of parameters
fxFracDigits - Accuracy for the likelihood
xFracDigits - Accruracy for the parameters
rateMonitor - A monitor for our progress
Returns:
the optimised log likelihood or >0 if cannot do any optimisation

optimiseSecondaryGlobalClockConstraints

public final double optimiseSecondaryGlobalClockConstraints(MultivariateMinimum minimiser,
                                                            GeneralConstraintGroupManager.LikelihoodScoreAccess scoreAccess,
                                                            int fxFracDigits,
                                                            int xFracDigits,
                                                            MinimiserMonitor rateMonitor)
Optimise the global clock parameters marked as secondary related to this group

Parameters:
minimiser - The minimiser used for optimisation
scoreAccess - A means for assessing a set of parameters
fxFracDigits - Accuracy for the likelihood
xFracDigits - Accruracy for the parameters
rateMonitor - A monitor for our progress
Returns:
the optimised log likelihood or >0 if cannot do any optimisation