def get_userdatatype(self, feature, fname): if not self.beastxml._binary_userdatatype_created: self.beastxml._binary_userdatatype_created = True return xml.userDataType(None, id="BinaryDatatype", spec="beast.evolution.datatype.Binary") return xml.userDataType(None, idref="BinaryDatatype")
def get_userdatatype(self, feature, fname): if not self.beastxml._covarion_userdatatype_created: self.beastxml._covarion_userdatatype_created = True return xml.userDataType( None, id="TwoStateCovarionDatatype", spec="beast.evolution.datatype.TwoStateCovarion") return xml.userDataType(None, idref="TwoStateCovarionDatatype")
def get_userdatatype(self, feature, fname): return xml.userDataType(None, id="featureDataType.%s" % fname, spec="beast.evolution.datatype.UserDataType", codeMap=self.codemaps[feature], codelength="-1", states=self.valuecounts[feature])
def add_data(self, distribution): """ Add <data> element corresponding to the indicated feature, descending from the indicated likelihood distribution. """ data = xml.data(distribution, id="locationData", spec="sphericalGeo.AlignmentFromTraitMap") traitmap = xml.traitMap(data, id="geographyTraitmap", spec="sphericalGeo.TreeTraitMap", initByMean="true", randomizelower="-90 -180", randomizeupper="90 180", traitName="location", tree="@Tree.t:beastlingTree") xml.parameter(traitmap, text="0.0 0.0", id="locationParameter", spec="sphericalGeo.LocationParameter", dimension=2 * (2 * len(self.config.languages.languages) - 1), minordimension="2") loc_data_text_bits = [] for lang in self.config.languages.languages: lat, lon = self.config.locations.get(lang, ("?", "?")) if "?" in (lat, lon): if lang not in self.sampling_points: self.sampling_points.append(lang) log.info( "Location of language %s will be sampled. You may wish to add a prior." % lang, model=self) else: bit = "%s=%.2f %.2f" % (lang, lat, lon) loc_data_text_bits.append(bit) traitmap.text = ",\n".join(loc_data_text_bits) xml.userDataType(data, id="LocationDataType", spec="sphericalGeo.LocationDataType")
def get_userdatatype(self, feature, fname): if not self.beastxml._covarion_userdatatype_created: self.beastxml._covarion_userdatatype_created = True return xml.userDataType( None, id="PseudoDolloCovarionDatatype", spec="beast.evolution.datatype.UserDataType", states="5", codelength="1", codeMap=""" A = 0, 1 = 1 4, B = 1, 0 = 0 2 3 , ? = 0 1 2 3 4, - = 0 1 2 3 4, C = 2, D = 3, E = 4 """) else: return xml.userDataType(None, idref="PseudoDolloCovarionDatatype")