Nemo -- A stochastic, individual-base, genetically explicit simulation platform
version 2.2.0 - released 29 November 2011
© 2006-2011 Frédéric Guillaume
What's new in version 2.2.0?
multivariate quantitative traits Up to two genetically correlated quantitative traits can be modelled. The genetic basis of the trait(s) is purely additive and the loci affecting multiple traits are fully pleiotropic. The mutation model follows the continuum-of-allele model and the mutation effects are drawn from a uni- or bi-variate Normal distribution, depending on the number of traits modeled.
spatially heterogeneous selection The selection model acting on the quantitative traits is spatially explicit and allows the simulation of spatially heterogeneous selection. Correlation selection can be modeled as well in this Gaussian selection model.
- and more...
Check the CHANGELOG for information about code changes and fixes.
What's in Nemo?
is a forward-time, individual-based, genetically explicit, and stochastic simulation program designed to study the evolution of life history/phenotypic traits and population genetics in a flexible (meta-)population framework.
implements many different life cycle events and evolvable traits with a variety of genetic architectures (see below). Species interaction between a parasite and its host can also be modeled (i.e., Cytoplasmic-Incompatibility inducing endosymbiont: Wolbachia
). All this is framed within a flexible metapopulation model that allows for patch-specific carrying capacities, dispersal rates, stochastic extinction/harvesting rates, and demographic stochasticity. Populations can be dynamically modified during a simulation, allowing for population bottlenecks, patch fusion/fisson, population expansion, etc. Spatially heterogenous selection on quantitative traits can also be modelled (new in v2.2.0).
's interface is a simple text file containing the simulation parameters and their values. Each parameter can have several argument values, which allows many simulations to be run from a single parameter file. Parameters can also be set with temporal values that will automatically modify the simulation settings during a run.
neutral markers (microsatellites, SNPs)
deleterious mutations (with locus-specific fixed or random effects, and dominance)
quantitative traits (new in v2.2.0) (with pleiotropic quantitative loci)
dispersal (male- and female-specific expression)
Wolbachia (maternally-inherited Cytoplasmic-Incompatibility inducing endosymbiont)
Life Cycle Events
breeding (with promiscuity, polygyny, monogamy, selfing, and cloning mating systems)
disperse (migrant pool/propagule pool island model, 1D & 2D lattice models, etc.)
aging (with ceiling patch regulation)
viability selection (based on deleterious mutations or stabilizing selection on quantitative traits)
crossing design (full-sib/half-sib designs)
More refined description of all the available features is provided in the user's manual.
Nemo can thus be used to study the joint evolution of dispersal and deleterious mutations in structured populations or the infection dynamics of Wolbachia under various population models. The number of populations, individuals per population or loci to simulate are restricted only by computer physical capacities. Nemo is highly optimized to run in batch mode and a parallel computing version is part of the release thus making it a very flexible and powerful simulation tool.
- The code source, executables, and documentation are available at the download page, as is the user's manual.
- You can subscribe to the mailing list to get news on updates and post your requests, comments, and bug reports.
- Nemo is released under the GNU Public License version 2
Please cite Nemo as:
Guillaume, F., and J. Rougemont. 2006. Nemo: an evolutionary and population genetics programming framework. Bioinformatics 22:2556-2557.
PDF copies can be obtained upon request to the first author.
Here is a list of published works using Nemo as a research tool.
Guillaume, F., and N. Perrin (2006) Joint evolution of dispersal and inbreeding load. Genetics 173:497--509.
Guillaume, F., and M. C. Whitlock (2007) Effects of migration on the genetic covariance matrix. Evolution 61:2398--2409.
Reuter, M., Lehmann, L., and F. Guillaume (2008) The spread of incompatibility-inducing parasites in sub-divided host populations. BMC Evolutionary Biology 8:134.
Jaquiéry, J., Guillaume, F., and N. Perrin (2009) Predicting the deleterious effects of mutation load in fragmented populations. Conservation Biology 23:207--218.
Guillaume, F., and N. Perrin (2009) Inbreeding Load, Bet Hedging, and the Evolution of Sex-Biased Dispersal. The American Naturalist 173:536-541.
Whitlock, C., and F. Guillaume (2009) Testing for Spatially Divergent Selection: Comparing QST to FST. Genetics 183:1055-1063.
Yeaman, S., and F. Guillaume (2009) Predicting adaptation under migration load: the role of genetic skew. Evolution 63:2926-2938.
Guillaume, F. (2011) Migration-induced phenotypic divergence: the migration-selection balance of correlated traits. Evolution 65:1723-1738.
Yeaman, S., and M. C. Whitlock (2011) The genetic architecture of adaptation under migration-selection balance Evolution 65:1897-1911.
Note: send us your references and we'll add them here!
Nemo is currently developed and maintained by Fred Guillaume.
The following persons have contributed to its development at some point:
Jacques Rougemont (MPI version)
Nemo also benefited from development done on EasyPop by François Balloux, and from some improvements brought to quantiNEMO, an off-shoot based on earlier work done in collaboration with Samuel Neuenschwander and Jérôme Goudet.
Many thanks to all those great people!
Nemo's framework has been designed as a programing tool to easily implement new components into the simulation framework. Interfaces are provided to derive new evolvable traits, new life cycle events and their accompanying data handlers. Besides that, the implementer should not worry (or not too much) about how its new components are handled within the population and simulation frameworks. The population framework is designed to give access to the individuals within the different age classes and sub-populations present in the model to the different components, in particular the life cycle events.
1. Where to start
2. How to add a trait?
3. How to add a LCE?
4. Adding the stat and file handlers.
5. Building and linking your project with Nemo