From d9213b7facaea9b943c33f3f61c64c917e73d6ce Mon Sep 17 00:00:00 2001 From: Cameron Hyde Date: Tue, 29 Oct 2024 10:38:49 +1000 Subject: [PATCH] Document alphafold outputs.py --- tools/alphafold/README.md | 8 ++++++- tools/alphafold/scripts/pip_install_jax.sh | 26 ---------------------- tools/alphafold/scripts/requirements.txt | 20 +++++++++++++++++ 3 files changed, 27 insertions(+), 27 deletions(-) delete mode 100755 tools/alphafold/scripts/pip_install_jax.sh create mode 100644 tools/alphafold/scripts/requirements.txt diff --git a/tools/alphafold/README.md b/tools/alphafold/README.md index 46c0efe2..061898a3 100644 --- a/tools/alphafold/README.md +++ b/tools/alphafold/README.md @@ -25,7 +25,13 @@ When you `planemo test` the wrapper should use the mock AlphaFold run, which cop ## Generating additional outputs -The `./scripts/outputs.py` script is used to generate additional outputs from an AF2 run. This script is complex because it must handle all different output variations (monomer, multimer, N models, etc.). The test script `tests/test_outputs.sh` runs a basic end-to-end test with the sample outputs available in `test-data`. Each of these directories is a complete output directory for an AF2 run, for each of the three model presets: +To run the outputs.py file you will need to install some dependencies (a virtual environment is highly recommended): + +```sh +pip install -r scripts/requirements.txt +``` + +The `./scripts/outputs.py` script is used to generate additional outputs from an AF2 run. This script is complex because it must handle all different output variations (monomer, multimer, N models, etc.). The test script `tests/test_outputs.sh` runs a basic end-to-end test with the sample outputs available in `test-data/`. Each of these directories is a complete output directory for an AF2 run, for each of the three model presets: ``` test-data diff --git a/tools/alphafold/scripts/pip_install_jax.sh b/tools/alphafold/scripts/pip_install_jax.sh deleted file mode 100755 index deb97edf..00000000 --- a/tools/alphafold/scripts/pip_install_jax.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env bash - -# python3.8 - -JAX=0.3.25 -JAXLIB=0.3.25+cuda11.cudnn805 - -cat <> /tmp/requirements.txt -absl-py==1.0.0 -biopython==1.79 -chex==0.0.7 -dm-haiku==0.0.9 -dm-tree==0.1.6 -docker==5.0.0 -immutabledict==2.0.0 -jax==0.3.25 -ml-collections==0.1.0 -numpy==1.21.6 -pandas==1.3.4 -scipy==1.7.2 -tensorflow-cpu==2.11.0 -matplotlib==3.8.* -EOF - -pip install -r /tmp/requirements.txt -pip install jax==${JAX} jaxlib==$JAXLIB -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html diff --git a/tools/alphafold/scripts/requirements.txt b/tools/alphafold/scripts/requirements.txt new file mode 100644 index 00000000..743dc58b --- /dev/null +++ b/tools/alphafold/scripts/requirements.txt @@ -0,0 +1,20 @@ +# tested on python3.8 + 3.10 + +absl-py==1.0.0 +biopython==1.79 +chex==0.0.7 +dm-haiku==0.0.9 +dm-tree==0.1.6 +docker==5.0.0 +immutabledict==2.0.0 +jax==0.3.25 +ml-collections==0.1.0 +numpy==1.21.6 +pandas==1.3.4 +scipy==1.7.2 +tensorflow-cpu==2.11.0 +matplotlib==3.8.* + +-f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html +jax==0.3.25 +jaxlib==0.3.25+cuda11.cudnn805