Nemo  2.3.44
Home

Nemo – A stochastic, individual-base, genetically explicit simulation platform

version 2.3 - released 13 July 2015

© 2006-2015 Frédéric Guillaume

The latest version can always be found at the download site.



What's new in version 2.3?

  • A recombination map has been added for all multi-locus traits. The map positions (chromosomal) for neutral markers (e.g. SNPs) and loci under selection (QTLs, deleterious mutations, DMIs) can now be specified explicitly, or set at random. The map can hold an unlimited number of loci of different types jointly, at any recombination scale (cM or lower). The effects of linkage can thus be finely explored.

  • A new trait coding for (Bateson-)Dobzhansky-Muller incompatibility loci. Multiple haploid or diploid pairs of incompatible loci can be spread throughout the genome and affect individual fitness.

  • Multi-type selection: Individual fitness can be jointly determined by different types of loci under selectinon, such as QTLs coding for quantitative traits under spatially variable selection, universally deleterious mutations, and Dobzhansky-Muller incompatibility loci.

  • An unlimited number of quantitative traits under different forms of selection can be modelled, based on universally pleiotropic loci with several bi- or multi-allelic models.

  • Spatial and temporal variation of selection on quantitative traits is possible, modelling shifts of environmental conditions over time.

  • The dispersal matrix describing the movement of individuals among sub-populations can be replaced by a connectivity matrix and a reduced dispersal matrix describing migration only among the connected sub-populations. This offers a substantial gain in computing time and system memory when simulating very large grids.

  • Input parameters' arguments may be specified in separate files. This is particularly convenient when specifying large matrices.

  • Many adjustments have been made for refined control of the input of parameters and data output. See updates in the manual.

  • and more...
    Check the CHANGELOG for information about code changes and fixes.

What's in Nemo?

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.

Nemo 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 and temporally heterogenous selection on quantitative traits can also be modelled with similar variation of local phenotypic optima.

Nemo'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.

Main Features:

Evolvable Traits

  • neutral markers (microsatellites, SNPs)
  • deleterious mutations (with locus-specific fixed or random effects, and dominance)
  • quantitative traits (with pleiotropic quantitative loci, additive continuous or bi-allelic effects)
  • Dobzhansky-Muller incompatibility 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)
  • extinction/harvesting
  • patch fusion/fission
  • crossing design (full-sib/half-sib designs)
  • and more...

More refined description of all the features available is provided in the user's manual.

With the availability of a geneitc map, Nemo can be used to study the genetics of adaption, model scenarios of adaptation with gene flow, of population expansion into a new environment, adaptation to fluctuating environments, or the joint evolution of dispersal and deleterious mutations in structured populations, among other things. The number of populations, individuals per population or loci to simulate are only restricted by computer physical capacities. Large populations of 10e5-10e6 individuals carrying 10e2-10e3 loci necessitate about 3 to 5GB of RAM on a desktop computer. 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.


INFO

  • 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

References

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!


Community

Nemo is currently developed and maintained by Fred Guillaume.

The following persons have contributed to its development at some point:
Jacques Rougemont (MPI version)
Samuel Neuenschwander
Alistair Blachford
Sam Yeaman
Kimberly Gilbert

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!


Development Guidelines

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.

Where to start

How to add a trait?

How to add a LCE?

Adding the stat and file handlers.

Building and linking your project with Nemo


Locations of visitors to this page

Generated for Nemo v2.3.0 by  doxygen 1.8.6 --
Catalogued on GSR