Search in sources :

Example 31 with Sequence

use of beast.evolution.alignment.Sequence in project beast2 by CompEvol.

the class TreeLikelihoodTest method testBeagleRNALikelihood.

/**
 * Test only effective when BEAGLE installed - otherwise it will always
 * pass since BEAGLE code will never be run.
 *
 * @throws Exception
 */
@Test
public void testBeagleRNALikelihood() throws Exception {
    Sequence seq1 = new Sequence("t1", "GUACGUACGUAC");
    Sequence seq2 = new Sequence("t2", "UACGUACGUACG");
    Sequence seq3 = new Sequence("t3", "ACGUACGUACGU");
    Alignment data = new Alignment();
    data.initByName("sequence", seq1, "sequence", seq2, "sequence", seq3, "dataType", "nucleotide");
    Tree tree = BEASTTestCase.getTree(data, "((t1:0.5,t2:0.5):0.5,t3:1.0):0.0;");
    SiteModel siteModel = new SiteModel();
    siteModel.initByName("gammaCategoryCount", 1, "substModel", new JukesCantor());
    TreeLikelihood likelihoodNoBeagle = newTreeLikelihood();
    likelihoodNoBeagle.initByName("data", data, "tree", tree, "siteModel", siteModel);
    double logLnoBeagle = likelihoodNoBeagle.calculateLogP();
    System.setProperty("java.only", "false");
    TreeLikelihood likelihoodBeagle = new TreeLikelihood();
    likelihoodBeagle.initByName("data", data, "tree", tree, "siteModel", siteModel);
    double logLBeagle = likelihoodBeagle.calculateLogP();
    assertEquals(logLBeagle, logLnoBeagle, BEASTTestCase.PRECISION);
}
Also used : Alignment(beast.evolution.alignment.Alignment) BeagleTreeLikelihood(beast.evolution.likelihood.BeagleTreeLikelihood) TreeLikelihood(beast.evolution.likelihood.TreeLikelihood) Tree(beast.evolution.tree.Tree) SiteModel(beast.evolution.sitemodel.SiteModel) Sequence(beast.evolution.alignment.Sequence) JukesCantor(beast.evolution.substitutionmodel.JukesCantor) UncertainAlignmentTest(test.beast.evolution.alignment.UncertainAlignmentTest) Test(org.junit.Test)

Example 32 with Sequence

use of beast.evolution.alignment.Sequence in project beast2 by CompEvol.

the class TreeLikelihoodTest method testSDolloLikelihood.

@Test
public void testSDolloLikelihood() throws Exception {
    UserDataType dataType = new UserDataType();
    dataType.initByName("states", 2, "codeMap", "0=1, 1=0, ?=0 1, -=0 1");
    Alignment data = new Alignment();
    Sequence German_ST = new Sequence("German_ST", BEASTTestCase.German_ST.dataInput.get());
    Sequence Dutch_List = new Sequence("Dutch_List", BEASTTestCase.Dutch_List.dataInput.get());
    ;
    Sequence English_ST = new Sequence("English_ST", BEASTTestCase.English_ST.dataInput.get());
    ;
    Sequence French = new Sequence("French", BEASTTestCase.French.dataInput.get());
    ;
    Sequence Italian = new Sequence("Italian", BEASTTestCase.Italian.dataInput.get());
    ;
    Sequence Spanish = new Sequence("Spanish", BEASTTestCase.Spanish.dataInput.get());
    ;
    data.initByName("sequence", German_ST, "sequence", Dutch_List, "sequence", English_ST, "sequence", French, "sequence", Italian, "sequence", Spanish, "userDataType", dataType);
    Tree tree = BEASTTestCase.getTree(data, "((English_ST:0.22743347188019544,(German_ST:0.10557648379843088,Dutch_List:0.10557648379843088):0.12185698808176457):1.5793160946109988,(Spanish:0.11078392189606047,(Italian:0.10119772534558173,French:0.10119772534558173):0.009586196550478737):1.6959656445951337)");
    RealParameter frequencies = new RealParameter("1 0");
    Frequencies freqs = new Frequencies();
    freqs.initByName("frequencies", frequencies);
    RealParameter deathprob = new RealParameter("1.7");
    MutationDeathModel SDollo = new MutationDeathModel();
    SDollo.initByName("deathprob", deathprob, "frequencies", freqs);
    SiteModel siteModel = new SiteModel();
    siteModel.initByName("mutationRate", "1.0", "gammaCategoryCount", 1, "substModel", SDollo);
    TreeLikelihood likelihood = newTreeLikelihood();
    likelihood.initByName("data", data, "tree", tree, "siteModel", siteModel);
    double logP = 0;
    likelihood.initByName("data", data, "tree", tree, "siteModel", siteModel, "useAmbiguities", true);
    logP = likelihood.calculateLogP();
    // beast1 xml gives -3551.6436
    assertEquals(logP, -3551.6436270344648, BEASTTestCase.PRECISION);
}
Also used : Alignment(beast.evolution.alignment.Alignment) UserDataType(beast.evolution.datatype.UserDataType) BeagleTreeLikelihood(beast.evolution.likelihood.BeagleTreeLikelihood) TreeLikelihood(beast.evolution.likelihood.TreeLikelihood) Tree(beast.evolution.tree.Tree) RealParameter(beast.core.parameter.RealParameter) MutationDeathModel(beast.evolution.substitutionmodel.MutationDeathModel) SiteModel(beast.evolution.sitemodel.SiteModel) Sequence(beast.evolution.alignment.Sequence) Frequencies(beast.evolution.substitutionmodel.Frequencies) UncertainAlignmentTest(test.beast.evolution.alignment.UncertainAlignmentTest) Test(org.junit.Test)

Example 33 with Sequence

use of beast.evolution.alignment.Sequence in project beast2 by CompEvol.

the class ExchangeOperatorTest method testNarrowExchange4Taxa.

@Test
public void testNarrowExchange4Taxa() throws Exception {
    int runs = 10000;
    Randomizer.setSeed(666);
    // test that going from source tree to target tree
    // is as likely as going the other way around
    // taking the HR in account.
    Sequence A = new Sequence("A", "A");
    Sequence B = new Sequence("B", "A");
    Sequence C = new Sequence("C", "A");
    Sequence D = new Sequence("D", "A");
    Alignment data = new Alignment();
    data.initByName("sequence", A, "sequence", B, "sequence", C, "sequence", D, "dataType", "nucleotide");
    // ((A,B),(C,D))
    String sourceTree = "((A:2.0,B:2.0):1.0,(C:1.0,D:1.0):2.0):0.0";
    // ((A,(C,D)),B)
    String targetTree = "((A:2.0,(C:1.0,D:1.0):1.0):1.0,B:3.0):0.0";
    testNarrowExchange(sourceTree, targetTree, runs, data);
}
Also used : Alignment(beast.evolution.alignment.Alignment) Sequence(beast.evolution.alignment.Sequence) Test(org.junit.Test)

Example 34 with Sequence

use of beast.evolution.alignment.Sequence in project beast2 by CompEvol.

the class ExchangeOperatorTest method testNarrowExchange5Taxa.

@Test
public void testNarrowExchange5Taxa() throws Exception {
    int runs = 10000;
    Randomizer.setSeed(666);
    Sequence A = new Sequence("A", "A");
    Sequence B = new Sequence("B", "A");
    Sequence C = new Sequence("C", "A");
    Sequence D = new Sequence("D", "A");
    Sequence E = new Sequence("E", "A");
    Alignment data = new Alignment();
    data.initByName("sequence", A, "sequence", B, "sequence", C, "sequence", D, "sequence", E, "dataType", "nucleotide");
    // (((A,B),(C,D)),E)
    String sourceTree = "(((A:2.0,B:2.0):1.0,(C:1.0,D:1.0):2.0):1.0,E:4.0):0.0";
    // (((A,(C,D)),B),E)
    String targetTree = "(((A:2.0,(C:1.0,D:1.0):1.0):1.0,B:3.0):1.0,E:4.0):0.0";
    testNarrowExchange(sourceTree, targetTree, runs, data);
}
Also used : Alignment(beast.evolution.alignment.Alignment) Sequence(beast.evolution.alignment.Sequence) Test(org.junit.Test)

Aggregations

Sequence (beast.evolution.alignment.Sequence)34 Alignment (beast.evolution.alignment.Alignment)31 Test (org.junit.Test)12 ArrayList (java.util.ArrayList)10 FilteredAlignment (beast.evolution.alignment.FilteredAlignment)6 SiteModel (beast.evolution.sitemodel.SiteModel)6 RealParameter (beast.core.parameter.RealParameter)5 BeagleTreeLikelihood (beast.evolution.likelihood.BeagleTreeLikelihood)5 Tree (beast.evolution.tree.Tree)5 TreeLikelihood (beast.evolution.likelihood.TreeLikelihood)4 UncertainAlignmentTest (test.beast.evolution.alignment.UncertainAlignmentTest)4 TaxonSet (beast.evolution.alignment.TaxonSet)3 DataType (beast.evolution.datatype.DataType)3 Frequencies (beast.evolution.substitutionmodel.Frequencies)3 JukesCantor (beast.evolution.substitutionmodel.JukesCantor)3 TreeParser (beast.util.TreeParser)3 GeneralSubstitutionModel (beast.evolution.substitutionmodel.GeneralSubstitutionModel)2 RandomTree (beast.evolution.tree.RandomTree)2 ConstantPopulation (beast.evolution.tree.coalescent.ConstantPopulation)2 TreeIntervals (beast.evolution.tree.coalescent.TreeIntervals)2