IIDExponentialMLE
: Implements a Maximum Likelihood Estimator for branch lengths.IIDExponentialBayesian
: Implements a Bayesian estimator for branch lengths.BranchLengthEstimator
and implement the estimate_branch_lengths
method. This method takes a CassiopeiaTree
object as input and modifies it in-place by updating its branch lengths.
The workflow typically involves:
IIDExponentialMLE
or IIDExponentialBayesian
with appropriate parameters.estimate_branch_lengths
method on a CassiopeiaTree
object.BranchLengthEstimator.py
: Defines the abstract base class BranchLengthEstimator
.IIDExponentialMLE.py
: Implements the Maximum Likelihood Estimator.IIDExponentialBayesian.py
: Implements the Bayesian estimator._iid_exponential_bayesian_cpp.cpp
and _iid_exponential_bayesian_cpp.h
: C++ implementation of the core Bayesian inference algorithm for improved performance.IIDExponentialMLE
for defining and solving the convex optimization problem.IIDExponentialMLE
:
minimum_branch_length
: Minimum allowed branch length (default: 0.01)relative_mutation_rates
: List of relative mutation rates for each character site (optional)verbose
: Whether to print verbose output during optimization (default: False)solver
: Convex optimization solver to use (default: “SCS”, options: “ECOS”, “SCS”, “MOSEK”)IIDExponentialBayesian
:
mutation_rate
: The CRISPR/Cas9 mutation ratebirth_rate
: The phylogeny birth ratesampling_probability
: The probability that a leaf in the ground truth tree was sampled (must be in (0, 1])discretization_level
: Number of timesteps used to discretize time (default: 600)