use of dr.oldevomodel.substmodel.SubstitutionModel in project beast-mcmc by beast-dev.
the class GammaSiteModelParser method parseXMLObject.
public Object parseXMLObject(XMLObject xo) throws XMLParseException {
SubstitutionModel substitutionModel = (SubstitutionModel) xo.getElementFirstChild(SUBSTITUTION_MODEL);
String msg = "";
Parameter muParam = null;
if (xo.hasChildNamed(SUBSTITUTION_RATE)) {
muParam = (Parameter) xo.getElementFirstChild(SUBSTITUTION_RATE);
msg += "\n with initial substitution rate = " + muParam.getParameterValue(0);
} else if (xo.hasChildNamed(MUTATION_RATE)) {
muParam = (Parameter) xo.getElementFirstChild(MUTATION_RATE);
msg += "\n with initial substitution rate = " + muParam.getParameterValue(0);
} else if (xo.hasChildNamed(RELATIVE_RATE)) {
muParam = (Parameter) xo.getElementFirstChild(RELATIVE_RATE);
msg += "\n with initial relative rate = " + muParam.getParameterValue(0);
}
Parameter shapeParam = null;
int catCount = 4;
if (xo.hasChildNamed(GAMMA_SHAPE)) {
final XMLObject cxo = xo.getChild(GAMMA_SHAPE);
catCount = cxo.getIntegerAttribute(GAMMA_CATEGORIES);
shapeParam = (Parameter) cxo.getChild(Parameter.class);
msg += "\n " + catCount + " category discrete gamma with initial shape = " + shapeParam.getParameterValue(0);
}
Parameter invarParam = null;
if (xo.hasChildNamed(PROPORTION_INVARIANT)) {
invarParam = (Parameter) xo.getElementFirstChild(PROPORTION_INVARIANT);
msg += "\n initial proportion of invariant sites = " + invarParam.getParameterValue(0);
}
Logger.getLogger("dr.evomodel").info("Creating site model." + (msg.length() > 0 ? msg : ""));
return new GammaSiteModel(substitutionModel, muParam, shapeParam, catCount, invarParam);
}
use of dr.oldevomodel.substmodel.SubstitutionModel in project beast-mcmc by beast-dev.
the class SampleStateModelParser method parseXMLObject.
public Object parseXMLObject(XMLObject xo) throws XMLParseException {
XMLObject cxo = xo.getChild(MUTATION_RATE);
Parameter muParam = (Parameter) cxo.getChild(Parameter.class);
cxo = xo.getChild(PROPORTIONS);
Parameter proportionParameter = (Parameter) cxo.getChild(Parameter.class);
Vector<Object> subModels = new Vector<Object>();
for (int i = 0; i < xo.getChildCount(); i++) {
if (xo.getChild(i) instanceof SubstitutionModel) {
subModels.addElement(xo.getChild(i));
}
}
return new SampleStateModel(muParam, proportionParameter, subModels);
}
Aggregations