Quick Start

If you use NucPosSimulator please cite:

Robert Schöpflin, Vladimir B. Teif, Oliver Müller, Christin Weinberg, Karsten Rippe and Gero Wedemann: Modeling nucleosome position distributions from experimental nucleosome positioning maps. Bioinformatics, 29 (19), 2380-2386, 2013.

We appreciate all suggestions, questions and bug reports. Contact details can be found here.


If you downloaded binaries for your operating system, no installation is needed. Just unpack the zip archive and run the tool in the command line.

In case you downloaded the source code you need to compile the source code. The project contains Makefiles for Windows (Makefile.win32) and Linux/Mac OS X® (Makefile).

Windows: The project contains a Makefile for nmake and for the Microsoft® C++ compiler, which is part of Visual Studio® Express (freely available on the Microsoft® pages). Please open the Visual Studio command line, change to the project directory and execute nmake. The option /F specifies the according Makefile:

c:\...\NucPosSimulator> nmake /F Makefile.win32

Linux/Mac OS X: The project contains a Makefile for make and GNU C++ compiler. Please switch to the project directory in the command line and execute make:

/home/.../NucPosSimulator$ make

Input Files

NucPosSimulator works on mapped nucleosome reads. The mapping has to be done prior to simulation, e.g. by Bowtie. NucPosSimulator can simulate an arbitrary locus on a single chromosome. The locus is defined by the reads of the input file: the read with the lowest position is assumed to be the lower bound, the read with the largest position the upper bound. Note, each file must contain only reads of one single nulceosome, the filtering concerning chromosome and genomic area has to be done prior to simulation. A typical input file has the following structure:

chr1	21001200	21001400
chr1	21001506	21001802
chr1	21001956	21002182

Parameter File

Each simulation requires a parameter file, containing the essential parameters (download a standard parameter file). In most cases the preset standard values will be sufficient. However, any single parameter can be adapted if necessary. Note, the order of the parameters within the file is arbitrary, but each parameter must occur only once. The number of simulations steps has to be sufficient to the system size. Long loci require more simulation steps than short ones to ensure a proper optimization. We recommend to use at least 104 steps per expected nucleososome. In the following the parameters, their function and default values are listed:

Parameter Description Default value
SimSteps Number of simulation steps. We recommend to use at least 104 steps per nucleososome. 10000000
StepsToSave Number of steps after which a snapshot of a configuration is stored. 100000
Annealing Switch Simulated Annealing on (1) and off (0) 1
NucLength Length that is occupied by one nucleosome in base pairs. This length is excluded for additional nucleosomes 147 bp
SmoothingSigma Sigma (standard deviation) of the Gaussian kernel for smoothing the input data 20.0 bp
BindingEnergy Energy value for the binding of one nucleosome - 8.0
StartTemperature Temperature at which the simulation starts 600.0 K
EndTemperature Temperature at which the simulation ends 0.1 K


The simulation is performed by the command line tool NucPosSimulator. For the simulation a BED-file containing mapped paired end reads and a parameter file is required. Note, that the BED-file must contain only entries of one chromosome. A sample parameter file is contained in the project. Run the simulation from the command line:


> NucPosSimulator.exe input.bed params.txt

Accordingly Linux/Mac OS X:

$ ./NucPosSimulator input.bed params.txt

Simulation Output

A simulation run produces several output files, named according to the input file plus a file extension:

Output file Description
input.bed.result.bed Result file: intervals of positioned nucleosomes in BED format. Note, this file is only generated when option annealing is used.
input.bed.sim Simulation output file, containing snapshots of the simulation procedure, according to the save steps.
input.bed.energyOut Energy output file, according to the save steps the energy of the system was logged.
input.bed.occupancy Output file with smoothed and normalized values for the occupancy of DNA with nucleosome centers. Values range from 0 to 1.