-
Notifications
You must be signed in to change notification settings - Fork 8
Structured Tree Likelihood
The STreeLikelihoodODE class computes the log-likelihood of a genealogy given a population model. The STreeLikelihoodODE component takes as input a structured tree set of intervals and an instantiation of a PopModelODE. A typical STreeLikelihoodODE entry looks like this:
<distribution spec='STreeLikelihoodODE' id = 'stlikelihood'
useStateName='true' popmodel='@sirmodel'
solvePL='true' method='classicrk' stepSize='0.01'>
<treeIntervals spec="STreeIntervals" tree='@tree'> </treeIntervals>
</distribution>where @popmodel is reference to a PopModelODE element and '@tree' is a reference to a Tree element.
It is important to take into consideration the following:
- How do we introduce population structure?
- How do we time the tree?
Population structure is introduced by mapping tip nodes to deme names. This can be done by annotating the corresponding tree taxa ids with deme information or by introducing an extra type trait. With the former, taxa ids must be suffixed with an underscore followed by the deme information. For example, a tree tip annotated with taxon
"EBOV|G4973.1|KR105286|SLE|x|2014-08-12_I" will be associated to deme I. Deme names must correspond to demes defined in the population model used as input. If the flag useStateName is set to False, deme indices are used instead i.e. the order (starting from zero) in which they appear in the model. The default is useStateName='True'.