本家様 https://github.com/RosettaCommons/RoseTTAFold

蛋白質立体構造予測プログラム

[root@rockylinux9 ~]# cat /etc/redhat-release
Rocky Linux release 9.5 (Blue Onyx)
 
[root@rockylinux9 ~]# cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX x86_64 Kernel Module  570.153.02  Tue May 13 16:34:43 UTC 2025
GCC version:  gcc version 11.5.0 20240719 (Red Hat 11.5.0-2) (GCC)
 
[root@rockylinux9 ~]#

構築

こちらでは pyenv/anaconda(miniforge) を敷いて、そこで仮想実行環境を作っています
もし初回なら下記を実施して pyenv/anaconda を敷きます

git clone https://github.com/yyuu/pyenv.git /apps/pyenv
export PYENV_ROOT=/apps/pyenv
export PATH=$PYENV_ROOT/bin:$PATH
pyenv install --list                   (これで使えるanaconda/miniforgeが確認できます)
pyenv install anaconda3-2024.10-1
 
source /apps/pyenv/versions/anaconda3-2024.10-1/etc/profile.d/conda.sh

既にpyenv/anaconda を敷いているなら使っているanaconda/miniforgeの設定を読み込んでおきます

source /apps/pyenv/versions/anaconda3-2024.10-1/etc/profile.d/conda.sh

そしてgit操作でRoseTTAFoldのソースを取得します

[root@rockylinux9 ~]# cd /apps/
[root@rockylinux9 apps]# git clone https://github.com/RosettaCommons/RoseTTAFold
 
[root@rockylinux9 apps]# cd RoseTTAFold
[root@rockylinux9 RoseTTAFold]# ls -CF
DAN-msa/  folding-linux.yml  install_dependencies.sh*  network_2track/              RoseTTAFold-linux.yml
example/  funding.md         LICENSE                   README.md                    run_e2e_ver.sh*
folding/  input_prep/        network/                  RoseTTAFold-linux-cu101.yml  run_pyrosetta_ver.sh*
 
[root@rockylinux9 RoseTTAFold]#

RoseTTAFold/folding python実行環境

まずは RoseTTAFold と folding のpython実行環境を用意します.

RoseTTAFold の実行にcuda11を使うなら「RoseTTAFold-linux.yml」を、cuda10なら「RoseTTAFold-linux-cu101.yml」を使用します

ここでは cuda11 を採用してみます

[root@rockylinux9 ~]# conda env create -f /apps/RoseTTAFold/RoseTTAFold-linux.yml

そしてもう一つ folding 向けに

[root@rockylinux9 ~]# conda env create -f /apps/RoseTTAFold/folding-linux.yml

とします.
環境が作られたかは「conda env list」で確認します

[root@rockylinux9 ~]# conda env list
 
# conda environments:
#
base                   /apps/pyenv/versions/anaconda3-2024.10-1
RoseTTAFold            /apps/pyenv/versions/anaconda3-2024.10-1/envs/RoseTTAFold
folding                /apps/pyenv/versions/anaconda3-2024.10-1/envs/folding
 
[root@rockylinux9 ~]#

trained weights and data

既にトレーニングされたweightsデータ(1.1GB)を展開します. 展開場所はRoseTTAFoldの直下です.

[root@rockylinux9 ~]# cd /apps/RoseTTAFold
[root@rockylinux9 RoseTTAFold]# wget https://files.ipd.uw.edu/pub/RoseTTAFold/weights.tar.gz
[root@rockylinux9 RoseTTAFold]# tar xvf weights.tar.gz
weights/
weights/RoseTTAFold_e2e.pt
weights/RoseTTAFold_pyrosetta.pt
weights/RF2t.pt
weights/Rosetta-DL_LICENSE.txt
[root@rockylinux9 RoseTTAFold]# rm -f weights.tar.gz

install third-party software

次に必要なアプリを追加します. 「install_dependencies.sh」を実行すれば

lddt(Local Distance Difference Test, https://swissmodel.expasy.org/lddt)と
cs-blast(Context-specific mutation probabilities for protein sequencing searching, https://github.com/soedinglab/csblast)がインストールされるのですが、、

どうやらlddtを置いていた場所からファイルが消えた模様です https://github.com/RosettaCommons/RoseTTAFold/issues/143
同様のがbiocondaにあるようなのでそれを取得してコピーすることにしました

[lddt]
[root@rockylinux9 ~]# conda create -n lddt lddt -c bioconda
[root@rockylinux9 ~]# ls -l /apps/pyenv/versions/anaconda3-2024.10-1/envs/lddt/bin/
total 7484
-rwxr-xr-x. 2 root root 7661389 May 29  2021 lddt
 
[root@rockylinux9 ~]# 
[root@rockylinux9 ~]# (mkdir /apps/RoseTTAFold/lddt ; cd /apps/RoseTTAFold/lddt ; ln -s /apps/pyenv/versions/anaconda3-2024.10-1/envs/lddt/bin/lddt . )
[root@rockylinux9 ~]# (cd /apps/RoseTTAFold/lddt ; wget https://git.scicore.unibas.ch/schwede/openstructure/-/raw/7102c63615b64735c4941278d92b554ec94415f8/modules/mol/alg/src/stereo_chemical_props.txt)
 
[cs-blast]
[root@rockylinux9 ~]# cd /apps/RoseTTAFold 
[root@rockylinux9 RoseTTAFold]# wget  https://wwwuser.gwdguser.de/~compbiol/data/csblast/releases/csblast-2.2.3_linux64.tar.gz 
[root@rockylinux9 RoseTTAFold]# mkdir csblast-2.2.3 ; tar xf csblast-2.2.3_linux64.tar.gz -C csblast-2.2.3 --strip-components=1
 
 
[root@rockylinux9 RoseTTAFold]# ls -l
 :
drwxr-xr-x. 4 root root         58 Jul  1 20:01 csblast-2.2.3
drwxr-xr-x. 2 root root         51 Jul  1 19:52 lddt
 :
[root@rockylinux9 RoseTTAFold]#

実際にはこのほかに「GNU parallel」が必要で epelリポジトリにある「parallel.noarch」でもいいのかもしれないが、ここでは最新版をソースから持ってきて入れている

wget https://ftp.jaist.ac.jp/pub/GNU/parallel/parallel-20210722.tar.bz2
tar xf parallel-20210722.tar.bz2
cd parallel-20210722
./configure; make ; make install

これで「/usr/local/bin」に「parallel」がインストールされます.

sequence and structure databases

データセットを用意します
必要なデータセットは3種. BFDuniref30structure templates

それぞれの取得先は下記参照

BFD_ttps://storage.googleapis.com/alphafold-databases/casp14_versions/bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt.tar.gz
uniref30_ttp://wwwuser.gwdg.de/~compbiol/uniclust/2020_06/UniRef30_2020_06_hhsuite.tar.gz
structure templates_ttps://files.ipd.uw.edu/pub/RoseTTAFold/pdb100_2021Mar03.tar.gz

この内BFDは、Alphafoldの構築で bfd として取得済み、uniref30 はRaptorX-3DModelingで取得済みなので流用します

ここではこれらを「/Public/alphafold」の中に展開していて、それをRoseTTAFoldにシンボリックリンクで配置させてます

[root@rockylinux9 RoseTTAFold]# ln -s /Public/alphafold/bfd bfd
[root@rockylinux9 RoseTTAFold]# ln -s /Public/alphafold/HH-suite UniRef30_2020_06
[root@rockylinux9 RoseTTAFold]# ln -s /Public/alphafold/pdb100_2021Mar03 pdb100_2021Mar03
 
[root@rockylinux9 RoseTTAFold]# ls -l bfd pdb100_2021Mar03 UniRef30_2020_06
lrwxrwxrwx. 1 root root 21 Mar  7 16:55 bfd -> /Public/alphafold/bfd
lrwxrwxrwx. 1 root root 34 Mar  7 16:56 pdb100_2021Mar03 -> /Public/alphafold/pdb100_2021Mar03
lrwxrwxrwx. 1 root root 26 Mar  7 16:56 UniRef30_2020_06 -> /Public/alphafold/HH-suite
[root@rockylinux9 RoseTTAFold]#

PyRosetta licence and install the package

PyRosettaを「folding」実行環境に組み込みます.
PyRosettaは python バージョンで複数用意されているのでまずは「folding」実行環境のpythonバージョンを調べます.

[root@rockylinux9 ~]# source activate folding
(folding) [root@rockylinux9 ~]#
(folding) [root@rockylinux9 ~]# conda list | grep python
python                    3.7.16               h7a1cb2a_0
python-dateutil           2.8.2              pyhd3eb1b0_0
(folding) [root@rockylinux9 ~]#

っとどうやら「python-3.7」みたい. なので 取得すべき PyRosetta は python-3.7 系となる.

そしてPyRosettaにはインストール方式が複数あって、.tar.gzのsetupコマンドで入れるか、.whlのpipを使うかのどちらか.

ここではcondaで環境整備しているので whl 形式のファイルを使うことにしました.

実際のPyRosettaの入手ですが、ライセンス品で手続きが必要です. https://els2.comotion.uw.edu/product/pyrosettaから入手してください.

ここでは「PyRosetta4.Release.python37.linux.wheel」の「pyrosetta-2023.9+release.4388618-cp37-cp37m-linux_x86_64.whl」を取得しました.
ファイルを取得後に、下記のようにして「folding」実行環境に組み込みます.

(folding) [root@rockylinux9 ~]# which pip
/apps/pyenv/versions/anaconda3-2022.10/envs/folding/bin/pip
 
(folding) [root@rockylinux9 ~]#
/apps/pyenv/versions/anaconda3-5.3.1/envs/folding/bin/pip
 
(folding) [root@rockylinux9 ~]# pip install ./pyrosetta-2021.29+release.d8f5566-cp37-cp37m-linux_x86_64.whl
 
(確認)
(folding) [root@rockylinux9 ~]# conda list
 :
cudatoolkit               10.1.243             h6bb024c_0
 :
numpy                     1.21.5           py37h6c91a56_3
numpy-base                1.21.5           py37ha15fc14_3
 :
pyrosetta                 2023.9+release.4388618          pypi_0    pypi
 :
(folding) [root@c ~]#

となる.
....A2000なので「cudatoolkit 10.1.243」は微妙...

EnvironmentModules

「/apps/modulefiles/RoseTTAFold 」

#%Module1.0
prepend-path PATH /apps/pyenv/versions/anaconda3-2022.10/envs/RoseTTAFold/bin:/apps/RoseTTAFold

使い方

同封されている「run_pyrosetta_ver.sh」を使用するが一部修正

--- run_pyrosetta_ver.sh.orig   2023-03-07 17:07:27.138282772 +0900
+++ run_pyrosetta_ver.sh        2023-03-07 17:08:32.516866293 +0900
@@ -1,4 +1,8 @@
 #!/bin/bash
+if [ $# != 2 ]; then
+   echo "   useage: $0 <input fasta> <workdir>"
+   exit 1
+fi
 
 # make the script stop when error (non-true exit code) is occured
 set -e
@@ -6,7 +10,7 @@
 ############################################################
 # >>> conda initialize >>>
 # !! Contents within this block are managed by 'conda init' !!
-__conda_setup="$('conda' 'shell.bash' 'hook' 2> /dev/null)"
+__conda_setup="$('/apps/pyenv/versions/anaconda3-2022.10/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
 eval "$__conda_setup"
 unset __conda_setup
 # <<< conda initialize <<<

同じく「run_e2e_ver.sh」も一部修正

--- run_e2e_ver.sh.orig 2023-03-07 17:09:07.799180861 +0900
+++ run_e2e_ver.sh      2023-03-07 17:09:37.870447731 +0900
@@ -1,4 +1,8 @@
 #!/bin/bash
+if [ $# != 2 ]; then
+   echo "   useage: $0 <input fasta> <workdir>"
+   exit 1
+fi
 
 # make the script stop when error (non-true exit code) is occured
 set -e
@@ -6,7 +10,7 @@
 ############################################################
 # >>> conda initialize >>>
 # !! Contents within this block are managed by 'conda init' !!
-__conda_setup="$('conda' 'shell.bash' 'hook' 2> /dev/null)"
+__conda_setup="$('/apps/pyenv/versions/anaconda3-2022.10/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
 eval "$__conda_setup"
 unset __conda_setup
 # <<< conda initialize <<<

共に引数のエラーハンドルとcondaへの絶対PATH指定を入れた.

その上で

[saber@rockylinux9 ~]$ module use --prepend /apps/modulefiles/
[saber@rockylinux9 ~]$ module load RoseTTAFold
 
[saber@rockylinux9 ~]$ mkdir -p test/RoseTTAFold
[saber@rockylinux9 ~]$ cd test/RoseTTAFold
 
[saber@rockylinux9 RoseTTAFold]$ vi input.fa
>T1078 Tsp1, Trichoderma virens, 138 residues|
MAAPTPADKSMMAAVPEWTITNLKRVCNAGNTSCTWTFGVDTHLATATSCTYVVKANANASQASGGPVTCGPYTITSSWSGQFGPNNGFTTFAVTDFSKKLIVWPAYTDVQVQAGKVVSPNQSYAPANLPLEHHHHHH
 
[saber@rockylinux9 RoseTTAFold]$
[saber@rockylinux9 RoseTTAFold]$ run_pyrosetta_ver.sh input.fa out

メモ

最新の60件
2026-01-18 2026-01-17 2026-01-16 2026-01-12 2026-01-11 2026-01-10 2026-01-09 2026-01-08 2026-01-06 2026-01-04 2026-01-01 2025-12-31 2025-12-28 2025-12-27 2025-12-12 2025-12-11 2025-12-09 2025-12-08 2025-12-07 2025-12-05 2025-11-30 2025-11-27 2025-11-24 2025-11-23 2025-11-18 2025-11-16 2025-11-05 2025-11-03 2025-11-02 2025-10-30 2025-10-29 2025-10-28 2025-10-26 2025-10-25 2025-10-24 2025-10-22 2025-10-21 2025-10-17 2025-10-13 2025-10-11 2025-10-06 2025-10-05

edit


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2025-07-01 (火) 20:05:19