Coala can call the coalescent simulators ms[1], msms[2] and scrm[3] and can use seq-gen[4] 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 activate_ms
, activate_msms
and activate_seqgen
.
More detailed instructions are provided in the wiki.
In addition to providing the binary for a simulator, you need to inform coala
where the binary is. We refer to this process as activation of a binary.
Afterwards, coala
will use the simulator automatically
where-ever appropriate.
There are three different ways to activate a binary:
activate_msms
and activate_seqgen
functions to
activate the simulators from within R. You should use the functions before
creating a model.scrm
and ms
. scrm
should alawys be
available. Install the CRAN package phyclust
to use ms
. | 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:
library(coala) list_simulators()
The check_model
function checks which simulators support a specific model,
and states the problems which coala has detected with the simulators that do not
support it.
For example, a simple model with infinite-sites mutations (IFS) can be simulated
with scrm
or -- if installed -- with ms
and msms
, but not with seq-gen
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.