Coala can call the coalescent simulators ms, msms and scrm and can use seq-gen for finite sites simulations. The R version of scrm should get installed automatically as a dependeny of coala. For the other programs, you need to have an executable binary available on your system.
Short instructions on obtaining and compiling the programs are
given in the help pages of
More detailed instructions are provided in the wiki.
In addition to providing the binary for a simulator, you need to inform
where the binary is. We refer to this process as activation of a binary.
coala will use the simulator automatically
There are three different ways to activate a binary:
activate_seqgenfunctions to activate the simulators from within R. You should use the functions before creating a model.
scrmshould alawys be available. Install the CRAN package
| Simulator | Priority | Expected Binary Names | Environment Var | Function | | --- | --- | --- | --- | --- | | seq-gen | 100 | seqgen, seq-gen, seqgen.exe, seq-gen.exe | SEQGEN | activate_seqgen | | msms | 200 | msms.jar / java, java.exe | MSMS / JAVA | activate_msms | | ms | 300 | | | activate_ms | | scrm | 400 | | | |
You can use the
list_simulators() command to view which
simulators are currently available:
check_model function checks which simulators support a specific model,
and states the problems which coala has detected with the simulators that do not
For example, a simple model with infinite-sites mutations (IFS) can be simulated
scrm or -- if installed -- with
msms, but not with
because the latter generates finite-sites mutations:
model <- coal_model(10, 1) + feat_mutation(5, model = "IFS") + sumstat_nucleotide_div() check_model(model) model
If multiple simulators can simulate a model, the one with the highest
priority is used. In our example, that is
scrm. If we would like to use
ms instead, we need to raise its priority:
activate_ms(priority = 500)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.