DNA

oxDNA – DNA/RNA simulator with CUDA support

oxDNA is an extensible simulation+analysis framework. The following nucleic-acid-related force fields are implemented: oxDNA1, oxDNA2, oxRNA, oxNA.

oxDNA can perform both molecular dynamics (MD) and Monte Carlo (MC) simulations of the oxDNA and oxRNA models. MD simulations can be run on single CPUs or single CUDA-enabled GPUs, while MC simulations, which can only be run serially, can exploit the Virtual Move Monte Carlo algorithm to greatly speed-up equilibration and sampling, and Umbrella Sampling biasing to efficiently obtain free-energy profiles. The package also features a Forward-Flux Sampling interface to study the kinetics of rare events, and makes it possible to alter the behaviour of the systems by adding external forces that can be used, for instance, to pull on or apply torques to strands or confine nucleotides within semi-planes or spheres.

The package also includes the oxpy Python module, which makes it possible to control the behavior of the simulation using Python scripts. The repository contains examples that demonstrate how to leverage oxpy to write backends to run replica-exchange and well-tempered metadynamics simulations, which are popular techniques in modern molecular dynamics to improve sampling efficiency.

This is free and open source software.

Features include:

  • Molecular and Brownian dynamics – the code can run both NVE and NVT simulations. The NVT ensemble can be enforced with three different kinds of thermostats. These simulations can also run on GPUs via NVIDIA’s CUDA technology. The speed-up for the DNA model depends on the details of the simulation but it is of the order of 30-50 for a single GPU vs a single CPU core.
  • Monte Carlo simulations – regular Metropolis Monte Carlo simulations, with only nucleotide roto-translational moves, can be performed. In addition, oxDNA supports Virtual Move Monte Carlo (VMMC) simulations for the DNA and RNA models. The EXAMPLE folder contains a few VMMC-related examples that can be used to learn how to set up VMMC simulations.
  • Additional interactions – oxDNA can be extended to simulate additional pairwise potentials. The current stable version includes the widely-used Lennard-Jones interaction, the Kob-Andersen mixture and several patchy particle models.
  • External forces – in order to favor motif formation or to mimic different external environments, different kind of forces can be applied to nucleotides or points in space.
  • Standalone single- and double-strand generator – script (UTILS/generate-sa.py) which can be used to generate oxDNA input configurations with the command generate-sa.py specifies the length of the box side in simulation units, while must contain the sequence of the strands to be generated, one row per strand. If double strands are needed, each sequence must be preceded by DOUBLE:.
  • Output converter – script (UTILS/traj2vis.py) which converts oxDNA configuration files to .pdb and VMD-supported .xyz files. The usage is traj2vis.py <pdb|xyz> where the output format is either pdb or xyz, is the configuration (or whole trajectory) file and is the topology file. The output filename is .pdb or .xyz, depending on which output format has been chosen. If pdb is selected, then a commands.com file is generated, to be used with UCSF Chimera.
  • Cadnano converter – converter that takes cadnano files and converts them in initial configurations to be fed to the simulation program.

Website: github.com/lorenzo-rovigatti/oxDNA
Support:
Developer: Lorenzo Rovigatti
License: GNU General Public License v3.0

oxDNA is written in C++ and Python. Learn C++ with our recommended free books and free tutorials. Learn Python with our recommended free books and free tutorials.


Explore Linux

Best Free and Open Source Software - A huge collection of recommended free and open source software covering every major category.
In-depth Linux Software Reviews - Detailed assessments of Linux software covering features, usability and overall quality.

The Big List of Active Linux Distros - An extensive collection of actively developed Linux distributions.
Open Source Alternatives - Alternatives to software and services from Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle and others.
Essential Linux System Tools - Indispensable utilities for monitoring, maintaining and managing Linux systems.
Linux Productivity Tools - Useful utilities for improving productivity and streamlining everyday tasks.
Alternatives to Popular CLI Tools - Modern alternatives to familiar command-line utilities supplied with Linux systems.
Awesome Free Linux Game Tools - Tools, utilities and companion software that improve gaming on Linux.
Machine Learning on Linux - Machine learning and deep learning software, self-hosted applications and practical tools.
Saving Money with Linux - Practical ways to reduce electricity consumption and lower computing costs with Linux.
Linux Candy - Fun, entertaining and sometimes delightfully quirky software from the lighter side of Linux.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted