A Python package to interactively compute, analyze and visualize protein allosteric communication (residue interaction) networks and delta-networks.
AlloViz binds together some newly written modules with 8 Python packages that provide different ways of calculating residue interactions: GetContacts, correlationplus, dynetan, PyInteraph2, pytraj, MD-TASK, gRINN (needs namd), MDEntropy and CARDS.
For the same topology and molecular dynamics (MD) trajectory, the network can be constructed based on residue contacts, correlation of atom movement or dihedrals, or interaction energies, depending on the package selected. Moreover, for example for movement correlation, the movement tracked can be that of the whole residue, its center of mass, its alpha-C or its beta-C; and it can be calculated as the Pearson’s correlation coefficient, Mutual Information (MI) or Linear MI (LMI). See all the options.
The resulting network can be analyzed with edge centrality metrics algorithms provided by the Python package NetworkX, and they can be visualized in an interactive Python Notebook (i.e., Jupyter) using nglview.
It is recommended to use a virtual environment
repository includes submodules that need to be appropriately cloned
alongside the main repository using the
--recursive flag. At
present, virtual environment dependencies can only be correctly
installed with conda.
git clone --recursive --shallow-submodules -j 9 https://github.com/frannerin/AlloViz conda create -n AlloViz --file AlloViz/conda_explicit.txt conda activate AlloViz
Then go to the package folder (
cd AlloViz) and install the package,
pip install ..
If environment creation with conda_explicit.txt fails, the non-explicit requirements/dependencies file conda_minimal.txt can be used, providing the conda channel conda-forge (-c conda-forge).
Check the tutorial.