Search in sources :

Example 1 with SpeciesBindings

use of dr.evomodel.speciation.SpeciesBindings in project beast-mcmc by beast-dev.

the class SpeciesTreeModelParser method parseXMLObject.

public Object parseXMLObject(XMLObject xo) throws XMLParseException {
    SpeciesBindings spb = (SpeciesBindings) xo.getChild(SpeciesBindings.class);
    Parameter coalPointsPops = null;
    Parameter coalPointsIndicators = null;
    final Boolean cr = xo.getAttribute(CONST_ROOT_POPULATION, false);
    final Boolean cp = xo.getAttribute(CONSTANT_POPULATION, false);
    final Boolean bmp = xo.getAttribute(BMPRIOR, false);
    {
        XMLObject cxo = xo.getChild(COALESCENT_POINTS_POPULATIONS);
        if (cxo != null) {
            final double value = cxo.getAttribute(Attributable.VALUE, 1.0);
            coalPointsPops = SpeciesTreeModel.createCoalPointsPopParameter(spb, cxo.getAttribute(Attributable.VALUE, value), bmp);
            ParameterParser.replaceParameter(cxo, coalPointsPops);
            coalPointsPops.addBounds(new Parameter.DefaultBounds(Double.MAX_VALUE, 0, coalPointsPops.getDimension()));
            cxo = xo.getChild(COALESCENT_POINTS_INDICATORS);
            if (cxo == null) {
                throw new XMLParseException("Must have indicators");
            }
            coalPointsIndicators = new Parameter.Default(coalPointsPops.getDimension(), 0);
            ParameterParser.replaceParameter(cxo, coalPointsIndicators);
        } else {
        // assert ! bmp;
        }
    }
    final XMLObject cxo = xo.getChild(SPP_SPLIT_POPULATIONS);
    final double value = cxo.getAttribute(Attributable.VALUE, 1.0);
    final boolean nonConstRootPopulation = coalPointsPops == null && !cr;
    final Parameter sppSplitPopulations = SpeciesTreeModel.createSplitPopulationsParameter(spb, value, nonConstRootPopulation, cp);
    ParameterParser.replaceParameter(cxo, sppSplitPopulations);
    final Parameter.DefaultBounds bounds = new Parameter.DefaultBounds(Double.MAX_VALUE, 0, sppSplitPopulations.getDimension());
    sppSplitPopulations.addBounds(bounds);
    final Tree startTree = (Tree) xo.getChild(Tree.class);
    return new SpeciesTreeModel(spb, sppSplitPopulations, coalPointsPops, coalPointsIndicators, startTree, bmp, nonConstRootPopulation, cp);
}
Also used : SpeciesBindings(dr.evomodel.speciation.SpeciesBindings) Parameter(dr.inference.model.Parameter) Tree(dr.evolution.tree.Tree) SpeciesTreeModel(dr.evomodel.speciation.SpeciesTreeModel)

Example 2 with SpeciesBindings

use of dr.evomodel.speciation.SpeciesBindings in project beast-mcmc by beast-dev.

the class TreeNodeSlideParser method parseXMLObject.

public Object parseXMLObject(XMLObject xo) throws XMLParseException {
    SpeciesBindings species = (SpeciesBindings) xo.getChild(SpeciesBindings.class);
    SpeciesTreeModel tree = (SpeciesTreeModel) xo.getChild(SpeciesTreeModel.class);
    final double weight = xo.getDoubleAttribute(MCMCOperator.WEIGHT);
    //final boolean oo = xo.getAttribute("outgroup", false);
    return new TreeNodeSlide(tree, species, /*, oo*/
    weight);
}
Also used : SpeciesBindings(dr.evomodel.speciation.SpeciesBindings) TreeNodeSlide(dr.evomodel.operators.TreeNodeSlide) SpeciesTreeModel(dr.evomodel.speciation.SpeciesTreeModel)

Example 3 with SpeciesBindings

use of dr.evomodel.speciation.SpeciesBindings in project beast-mcmc by beast-dev.

the class MultiSpeciesCoalescentParser method parseXMLObject.

public Object parseXMLObject(XMLObject xo) throws XMLParseException {
    final SpeciesBindings sb = (SpeciesBindings) xo.getChild(SpeciesBindings.class);
    final SpeciesTreeModel tree = (SpeciesTreeModel) xo.getChild(SpeciesTreeModel.class);
    return new MultiSpeciesCoalescent(sb, tree);
}
Also used : MultiSpeciesCoalescent(dr.evomodel.speciation.MultiSpeciesCoalescent) SpeciesBindings(dr.evomodel.speciation.SpeciesBindings) SpeciesTreeModel(dr.evomodel.speciation.SpeciesTreeModel)

Aggregations

SpeciesBindings (dr.evomodel.speciation.SpeciesBindings)3 SpeciesTreeModel (dr.evomodel.speciation.SpeciesTreeModel)3 Tree (dr.evolution.tree.Tree)1 TreeNodeSlide (dr.evomodel.operators.TreeNodeSlide)1 MultiSpeciesCoalescent (dr.evomodel.speciation.MultiSpeciesCoalescent)1 Parameter (dr.inference.model.Parameter)1