A forward-time, individual-based, genetically explicit simulation program for evolutionary biology and ecology
Nemo is designed to study the evolution of quantitative traits and population genetics in a metapopulation framework. It provides a C++ programming environment and a ready-to-use command-line tool for simulating genetic diversity, life histories, and phenotypic trait evolution.
Version 2.4.2 — [03 Aug 2026]
Legacy website for package download and Doxygen code documentation: nemo2.sourceforge.io
NEW Preprint on BioRxiv
Nemo2.4: fast and accurate quantitative genetics forward-time simulations. Champak Beeravolu Reddy,Jobran Chebib, Olivier Cotto, Max Schmid, Frédéric Guillaume. 02-07-2026 doi:10.64898/2026.07.02.736177
- Neutral markers — microsatellites, SNPs (byte or bitstring encoding)
- Deleterious mutations — locus-specific fitness and dominance effects
- Quantitative traits — pleiotropic QTL with locus-specific additive and continuous or di-allelic effects, variable pleiotropy, epistasis (multi-linear model), dominance
- Bateson-Dobzhansky-Muller incompatibilities — epistatic interactions between pairs of loci with explicit fitness tables
The genetic map can have multiple chromosomes, variable recombination rate and locus density.
- Dispersal rate — sex-specific expression on two sets of loci
- Wolbachia — maternally inherited cytoplasmic-incompatibility endosymbiont
| Event | Description |
|---|---|
| Breeding | Promiscuity, polygyny, monogamy, selfing, cloning, hermaphroditism; Wright-Fisher model |
| Dispersal | Island model, 1D & 2D lattices, propagule pool, custom matrices for spatial-explicit models; forward & backward migration (zygotic & gametic) |
| Selection | Gaussian, quadratic, linear, disruptive, truncation; multivariate; multi-trait (dmi's, deleterious mutations, QTL); spatially & temporally variable optima |
| Phenotypic expression | Plastic phenotypes modelled after linear reaction norms with evolving intercept and slope, liability traits with evolving thresholds |
| Aging | With ceiling patch regulation |
| Extinction / harvesting | Patch-specific rates, partial harvesting |
| Population dynamics | Patch fusion/fission, population expansion, bottlenecks |
| Crossing designs | Full-sib / half-sib cross, custom designs on existing pedigrees |
- Patch-specific carrying capacities, dispersal rates, and selection pressures
- Dynamic modification of populations during a simulation (temporal arguments)
- Demographic and environmental stochasticity
- Sparse connectivity matrices for large landscapes (1000+ patches)
- Batch processing and MPI parallel computing
- Summary statistics (TSV, CSV)
- Binary population snapshots
- PLINK format (
.ped,.fam,.map,.bin) - FSTAT and GENEPOP formats
- Genotype and allele frequency files
The quickest way to install Nemo is from the ecoevo channel, which ships a precompiled binary and pulls in the GSL for you. Packages are built for Linux (x86_64, aarch64) and macOS on Apple Silicon (arm64).
conda create -n nemo -c conda-forge -c ecoevo nemo
conda activate nemoThe executable is version-stamped, e.g. nemo2.4.2 my_simulation.ini.
Nemo is also on Bioconda:
conda create -n nemo -c conda-forge -c bioconda nemoBoth channels build the same source. The ecoevo channel is published automatically when a release is tagged, so it always has the current version; Bioconda is updated separately and can trail it by several weeks. Prefer ecoevo unless you specifically need the Bioconda build.
Nemo requires the GNU Scientific Library (GSL) version 2.0 or higher.
# Ubuntu / Debian
sudo apt-get install libgsl-dev
# macOS (Homebrew)
brew install gsl
# macOS (from source, for architecture matching) — see INSTALL for detailsTwo options:
- download the
Nemo-2.4.2-src.tar.gzpackage from sourceforge.net - download the latest version from the
Downloadssection either manually or with the following command:
curl -L https://bitbucket.org/ecoevo/nemo-release/get/v2.4.2.tar.gz -o Nemo-2.4.2.tar.gzNote: the archive downloaded from the Bitbucket repo will expand into a folder with a complicated name containing the latest commit hash number. Use the following command to expand into
Nemo-2.4.2:
mkdir Nemo-2.4.2 && tar xzf Nemo-2.4.2.tar.gz -C Nemo-2.4.2 --strip-components=1Here, we'll assume that the downloaded package expands into a folder named Nemo-2.4.2 (e.g. when downloading from sourceforge.net).
The bin folder needs to be created before compiling the program with make.
cd Nemo-2.4.2
mkdir bin
makePlatform-specific builds:
make MAC_ARM=1 # Apple Silicon (M1/M2/M3/M4)
make MAC_x86=1 # Intel Mac
make MPI=1 # Parallel computing (requires MPI 4.0+ and SPRNG 5.0)
make DEBUG=1 # Debug build (creates nemo2.4.2D)make install # copies to ~/bin/ by defaultnemo2.4.2 my_simulation.iniWithout arguments, Nemo looks for a file named Nemo2.ini in the current directory. Example configuration files are provided in the examples/ directory.
- User manual: available in the
docfolder and at the download site - Code documentation: available in the
Downloadssection of this repo and at nemo2.sourceforge.io - Development guide: how to extend Nemo with new traits, life cycle events, and handlers
- Publications: papers using Nemo as a research tool
- INSTALL: detailed compilation and installation instructions for all platforms
- CHANGELOG: version history and release notes
-
Nemo-age — age- and stage-structured version of Nemo Cotto O, Schmid M, and F Guillaume (2020) Nemo-age: spatially explicit simulations of eco-evolutionary dynamics in stage-structured populations under changing environments. Methods in Ecology and Evolution. doi:10.1111/2041-210X.13460
-
nemosub — utility to submit Nemo jobs to cluster schedulers (Slurm, OAR, PBS, LSF)
Please cite Nemo as:
Guillaume, F., and J. Rougemont. 2006. Nemo: an evolutionary and population genetics programming framework. Bioinformatics 22:2556-2557.
- Announcements: nemo-announce mailing list
- Questions & bug reports: nemo-simul mailing list
Main authors: Frederic Guillaume (maintainer), Jacques Rougemont (MPI), Olivier Cotto, Jobran Chebib (variable pleiotropy), Max Schmid (phenotypic plasticity), Champak Beeravolu Reddy (epistasis)
Contributors: Samuel Neuenschwander, Alistair Blachford, Sam Yeaman, Kimberly Gilbert, Cindy Gidoin
Nemo is free software released under the GNU General Public License v3+.
Copyright 2006–2026 The Authors. See COPYING for details.