def test_simple_cases(self): for n in range(2, 10): st = msprime.simulate_tree(n) self.verify_sparse_tree(st) for n in [11, 13, 19, 101]: st = msprime.simulate_tree(n) self.verify_sparse_tree(st)
def test_models(self): # Exponential growth of 0 and constant model should be identical. m1 = msprime.ExponentialPopulationModel(alpha=0.0, start_time=0.0) m2 = msprime.ConstantPopulationModel(size=1.0, start_time=0.0) for n in [2, 10, 100]: # TODO this _should_ be the same as running with no population # models, but it's not. need to investigate. st1 = msprime.simulate_tree( n, random_seed=1, population_models=[m1]) st2 = msprime.simulate_tree( n, random_seed=1, population_models=[m2]) self.assertEqual(st1, st2)
def single_locus_example(): tree = msprime.simulate_tree(5, random_seed=1) print(tree) tree.draw("_static/simple-tree.svg", show_times=True) u = 1 while u != 0: print("node {}: time = {}".format(u, tree.get_time(u))) u = tree.get_parent(u) print(tree.get_branch_length(7))
def draw_tree(): tree = msprime.simulate_tree(5, random_seed=1, scaled_mutation_rate=0.1) print(list(tree.mutations())) print(list(tree.nodes())) tree.draw("example.svg")
def get_tree(self): return msprime.simulate_tree( 10, random_seed=1, scaled_mutation_rate=1)