ゴミのやま

完全自分向け雑記

HHpredとModellerでホモロジーモデリングをする

前提

  • HHblitsとHHsearchにより類似構造の配列は既に入手済み。ここからスタートする

まずModellerのチュートリアルを実施

1. Searching for structures related to the query

ここは前述のHHsearchによりテンプレート構造が既知なので省略。

2. Selecting a template

ここも省略

3. Aliging the query with the template

ここも省略

4. Model building 
Pirファイル生成

モデル構築のためには.pirファイルをhhsearchの結果から作ってやる必要あり。それにはhhmakemodel.pyを使うらしい。hhmakemodel.pyはhhsuitesの付属品。以下はhhmakemodel.pyの-hオプションのコピペ

Creates a MODELLER alignment (*.pir) from a HHSearch results file (*.hhr).

positional arguments:
FILE results file from HHsearch with hit list and alignment
DIR path to the folder containing cif files
FILE output file (PIR-formatted multiple alignment)
DIR path to the folder where modified cif files should be
written to

optional arguments:
-h, --help show this help message and exit
-v, --verbose verbose mode
-m INT [INT ...] pick hits with specified indices (e.g. -m 2 5)
-e FLOAT maximum E-Value threshold (e.g. -e 0.001)
-r FLOAT residue ratio (filter alignments that have contribute at
least residues according to the specified ratio).
-c convert non-canonical residues (default = True)

 

上記を参考にしたコマンド例: 

hhmakemodel.py input.hhr dir_to_ciffiles output.pir ./ 

それぞれの意味は前述のヘルプのpositional argumentsを参考にしてください。ちなみにcifpdbからwgetでとってきました。

Modeller 実行

チュートリアル上のpythonファイルを適宜いじって実行するだけ。当然だがsequentialな処理には専用のスクリプトを書く必要あり。

from modeller import *
from modeller.automodel import *
#from modeller import soap_protein_od

env = environ()
a = automodel(env, alnfile='TvLDH-1bdmA.ali',
knowns='1bdmA', sequence='TvLDH',
assess_methods=(assess.DOPE,
#soap_protein_od.Scorer(),
assess.GA341))
a.starting_model = 1
a.ending_model = 5
a.make()

以下わからなかったので調べたこと

  • Uniclust databaseとは?

    > The Uniclust90, Uniclust50, Uniclust30 databases cluster UniProtKB sequences at the level of 90%, 50% and 30% pairwise sequence identity. The clusterings show a high consistency of functional annotation owing to an optimised clustering pipeline that runs with our MMseqs2 software for fast and sensitive protein sequence searching and clustering.

    UniprotKBにあるタンパク質配列をクラスター化したもの。Uniclust90なら90%の配列一致度を持つ配列同士で, Uniclust30なら30%の配列一致度を持つ配列同士をクラスター化している。(そしておそらくクラスター中心か何かを抽出している)。性質上, クラスターができやすいUniclust30が一番データベースのサイズが小さい。

  • PDB70とは
    >PSI-BLAST alignments produced with sequences of PDB full chain representativies (<70% sequence identity) as queries.
    とのことなので, PDBから(70%以下の配列一致度を持つ配列同士をクラスター化して圧縮した)配列をクエリとしPSI-BLASTをかけた結果と思われる。Uniclustとの違いはこちらはPDBの配列を使っているために, 構造が既知である。これをmodellerの鋳型に使う。

  •  ホモロジーモデリングにおいて前述のデータベースはどのように使われる?
    Uniclustは与えた配列からhhblitsで類似配列群を隠れマルコフモデルを使って探す際に用いられる
    PDB70は前述のhhblitsの結果を元にhhsearchで類似構造を探索する際に使う

  • HHsearchとHHblitsの違いは?
    HHblitsは入力配列に類似する配列を反復検索し, 類似配列群を作成する
    HHsearchはHHblitsの結果を用いて相同な構造を見つけ出す

次にやりたいこと

  • 任意の束縛下におけるホモロジーモデリング
  • Modellerが具体的に何をしているか論文を読む
  • Modellerのオプション検討(デフォルトで十分か?)