adabmDCA 2.0
– a flexible but easy-to-use package for Direct Coupling Analysis.
adabmDCA
is available in three languages: C++ (single-core CPU), Julia (multi-core CPU) and Python (GPU-oriented). Follow the instructions for installing the desired implementation.
Open a terminal and run
pip install adabmDCA
Clone the repository locally and then install the requirements and the package. In a terminal, run:
git clone git@github.com:spqb/adabmDCApy.git
cd adabmDCApy
pip install .
The main repository of the implementation can be found at adabmDCApy.
After installing Julia on your system, you can install the package in one of the following ways:
Open a terminal in the desired folder, and run the following commands:
# Download scripts from Github
wget -O adabmDCA.sh https://raw.githubusercontent.com/spqb/adabmDCA.jl/refs/heads/main/adabmDCA.sh
wget -O execute.jl https://raw.githubusercontent.com/spqb/adabmDCA.jl/refs/heads/main/execute.jl
chmod +x adabmDCA.sh
# Install ArgParse and adabmDCA.jl from the GitHub repo
julia --eval 'using Pkg; Pkg.add("ArgParse"); Pkg.add(PackageSpec(url="https://github.com/spqb/adabmDCA.jl"))'
This will install all necessary dependencies and set up the package.
-
Open Julia and install the package by running:
using Pkg Pkg.add(url="https://github.com/spqb/adabmDCA.jl") Pkg.add("ArgParse")
-
Download the files
adabmDCA.sh
andexecute.jl
into the same folderwget https://github.com/spqb/adabmDCA.jl/blob/main/install.sh wget https://github.com/spqb/adabmDCA.jl/blob/main/execute.jl
-
Make the script executable by opening a terminal in the folder and running:
chmod +x adabmDCA.sh
This will set up the package for use.
The main repository of the implementation can be found at adabmDCA.jl.
- Clone the repository
git clone git@github.com:spqb/adabmDCAc.git
- In the src folder run
make
- It will generate the executable file adabmDCA. In the main folder run also
chmod +x adabmDCA.sh
to use the main script file. Seefor a complete list of features../adabmDCA --help
The main repository of the implementation can be found at adabmDCAc.
This package presents a new version of adabmDCA
. 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;
- eaDCA: Trains a DCA model on a sparse coupling network by progressively adding couplings during the training;
- edDCA: Starts from a trained bmDCA model and iteratively removes the less informative couplings until the target sparsity is reached.
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.
Check out the online Documentation 😉
This package is open-sourced under the MIT License.
If you use this package in your research, please cite:
Rosset, L., Netti, R., Muntoni, A.P., Weigt, M., & Zamponi, F. (2024). adabmDCA 2.0: A flexible but easy-to-use package for Direct Coupling Analysis.
This work was developed in collaboration with Sorbonne Université, Sapienza Università di Roma, and Politecnico di Torino.