Skip to content

Welcome to the adabmDCA 2.0 Documentation

adabmDCA is a versatile library for Direct Coupling Analysis (DCA), enabling the training, sampling, and application of Boltzmann Machines (Potts models) on biological sequence data.

Instructons

This documentation is meant for providing a user-friendly description of the adabmDCA package main features. It is supported by:

  • The main article [Rosset et al., 2025], with detailed explanations of the main features. The present documentation is a shorter version of the paper, but it includes additional features
  • The Colab notebook providing a tutorial of the APIs for training, sampling and analyzing a bmDCA model (Python only)

This tutorial introduces the new and enhanced version of adabmDCA [Muntoni at al., 2021]. The software is available in three language-specific implementations:

  • C++ – optimized for single-core CPUs
  • Julia – ideal for multi-core CPU setups
  • Python – GPU-accelerated and feature-rich

All versions share a unified terminal-based interface, allowing users to choose based on their hardware and performance needs.

Core Capabilities

🧠 Model Training

Choose from three training strategies to fit your model complexity and goals:

⚙️ Applications of Pretrained Models

Once trained, models can be used to:

🚀 Advanced Features in Python (adabmDCApy)

The Python version includes exclusive features:

Get Started

Ready to run? Skip ahead to the Quicklist for command-line usage examples.