adabmDCA documentation

This tutorial presents a new version of adabmDCA [Muntoni et al., 2021]. The package comes in three different languages: C++ (single-core CPU), Julia (multi-core CPU), and Python (GPU-oriented). They share the same front-end interface from the terminal allowing the user to install and use one of the three equivalent versions based on hardware or software constraints.

We provide three different training routines:

  • bmDCA: Trains a fully-connected DCA model [Figliuzzi et al., 2018];

  • eaDCA: Trains a DCA model on a sparse coupling network by progressively adding couplings during the training [Calvanese et al., 2024];

  • edDCA: Starts from a trained bmDCA model and iteratively removes the less informative couplings until the target sparsity is reached [Barrat-Charlaix et al., 2021].

Additionally, we provide several routines for sampling and analyzing the generated sequences once a DCA model is trained, for constructing and evaluating - according to a DCA model - a single mutant library from a given wild type, and finally, for computing the pairwise contact scores, in terms of average-product corrected Frobenius norms of the DCA couplings [Ekeberg et al., 2013].

If you want to directly jump to the command-line interface for using the package, go to the section Quicklist.

The main Github repository of the project can be found at adabmDCA 2.0.

Contents: