This function generates an msprime simulation script, and optionally executes it in python. Unlike the msprime_genome
function, this function simulates independent SNP sites.
msprime_sim(
graph,
outpref = "msprime_sim",
nsnps = 1000,
neff = 1000,
ind_per_pop = 1,
mutation_rate = 0.001,
time = 1000,
fix_leaf = FALSE,
admix_default = 0.5,
run = FALSE,
numcores = NULL,
ghost_lineages = FALSE,
shorten_admixed_leaves = FALSE
)
A graph as an igraph
object or edge list with columns ’from’ and ’to’. If it is an edge list with a column ’weight’ (derived possibly from a fitted graph), the admixture weights will be used. Otherwise, all admixture edges will have a weight of 0.5.
A prefix of output files.
The number of SNPs to simulate. All SNPs will be simulated independently of each other.
Effective population size (in diploid individuals). If a scalar value, it will be constant across all populations. Alternatively, it can be a named vector with a different value for each population (e.g., c('R'=100, 'A'=50, 'B'=50)
).
The number of diploid individuals to simulate for each population. If a scalar value, it will be constant across all populations.
Alternatively, it can be a named vector with a different value for each population (e.g., c('A'=10, 'B'=20)
to sample 10 and 20 diploid individuals from populations A and B, respectively).
Mutation rate per site per generation. The default is set to a high value (0.001 per site per generation) to obtain more polymorphic SNPs in order to speed up the simulation.
Either a scalar value (1000 generations by default) with the dates generated by pseudo_dates
function, or a named vector with dates for each graph nodes (in generations).
A boolean value specifying if the dates of the leaf nodes will be fixed at time 0. If TRUE
, all samples will be drawn at the end of the simulation (i.e., from “today”).
A float value specifying default admixture proportion for all admixture nodes. The default is 0.5
.
If another value between 0 and 1 is specified, admixture weights for each admixture event will be (value, 1-value).
If FALSE
, the function will terminate after writing the msprime script. If TRUE
, it will try to execute the msprime script with the default python installation. If you want to use some other python installation, you can set run = /my/python
.
The number of cores to use when simulating data.
A boolean value specifying whether ghost lineages will be allowed.
If TRUE
, admixture happens at the time points defined by the y-axis generated while plotting the graph by plot_graph
.
If FALSE
(default), admixture occurs at the time of the previous split event.
If TRUE
simulate the behavior of treemix where drift after admixture is not allowed
The file name and path of the simulation script
if (FALSE) {
results = qpgraph(example_f2_blocks, example_graph)
msprime_sim(results$edges, nsnps=100)
}