Skip to content

Commit

Permalink
fix styles
Browse files Browse the repository at this point in the history
  • Loading branch information
YoshitakaMo committed Dec 5, 2024
1 parent be59a29 commit 464c6d7
Show file tree
Hide file tree
Showing 15 changed files with 178 additions and 71 deletions.
1 change: 1 addition & 0 deletions src/SUMMARY.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# Index

[TOP](./index.md)

- [第1章 PyMOL チュートリアル: アルカリホスファターゼの構造を見る](./ch01/index.md)
- [目的](./ch01/objective.md)
- [Protein Data Bank (PDB)にアクセスする](./ch01/accesspdb.md)
Expand Down
33 changes: 17 additions & 16 deletions src/ch01/conserf_new.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
from pymol import cmd


# Define a Python subroutine to colour atoms by B-factor, using predefined intervals


Expand All @@ -16,15 +19,16 @@ def colour_consurf(selection="all"):
# RGB = [[16,200,209],[140,255,255],[215,255,255],[234,255,255],[255,255,255],
# [252,237,244],[250,201,222],[240,125,171],[160,37,96]]
colours = [
[0.039215686, 0.490196078, 0.509803922],
[0.294117647, 0.68627451, 0.745098039],
[0.647058824, 0.862745098, 0.901960784],
[0.843137255, 0.941176471, 0.941176471],
[1, 1, 1],
[0.980392157, 0.921568627, 0.960784314],
[0.980392157, 0.784313725, 0.862745098],
[0.941176471, 0.490196078, 0.666666667],
[0.62745098, 0.156862745, 0.37254902]]
[0.039215686, 0.490196078, 0.509803922],
[0.294117647, 0.68627451, 0.745098039],
[0.647058824, 0.862745098, 0.901960784],
[0.843137255, 0.941176471, 0.941176471],
[1, 1, 1],
[0.980392157, 0.921568627, 0.960784314],
[0.980392157, 0.784313725, 0.862745098],
[0.941176471, 0.490196078, 0.666666667],
[0.62745098, 0.156862745, 0.37254902],
]
bin_size = (maximum - minimum) / n_colours

# Loop through colour intervals
Expand All @@ -41,11 +45,11 @@ def colour_consurf(selection="all"):
group = selection + "_group_" + str(i + 1)

# Compose a selection command which will select all atoms which are
# a) in the original selection, AND
# b) have B factor in range lower <= b < upper
# a) in the original selection, AND
# b) have B factor in range lower <= b < upper
sel_string = selection + " & ! b < " + str(lower)

if(i < n_colours):
if i < n_colours:
sel_string += " & b < " + str(upper)
else:
sel_string += " & ! b > " + str(upper)
Expand All @@ -60,7 +64,6 @@ def colour_consurf(selection="all"):
# Colour them
cmd.color(colour_name, group)


# Create new colour for insufficient sequences
# RGB_colour = [255,255,150]
insuf_colour = [1, 1, 0.588235294]
Expand All @@ -71,11 +74,9 @@ def colour_consurf(selection="all"):
cmd.color("insufficient_colour", "insufficient")




# Make command available in PyMOL
cmd.extend("colour_consurf", colour_consurf)
colour_consurf()

# Make all groups unselected
cmd.deselect()
cmd.deselect()
1 change: 1 addition & 0 deletions src/ch01/displaypdb.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
## 大腸菌由来アルカリホスファターゼのグラフィック表示

PyMOLを起動した後、画面左上にある`File`メニューから`Open...`を選び、先程デスクトップに移動させた`1alk.pdb`ファイルを選択します。すると、PyMOL画面の中にPDB ID: 1ALKの**大腸菌由来アルカリホスファターゼ**が表示されます。

<img src="./image/graphic1.png" width="100%" alt="PDB ID: 1ALKの大腸菌由来アルカリホスファターゼの図" title="PDB ID: 1ALKの大腸菌由来アルカリホスファターゼの図">
Expand Down
4 changes: 2 additions & 2 deletions src/ch01/download.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ PDBの構造情報ファイルをダウンロードし、その中身を確認

最初に`HEADER`レコードや`REMARK`レコード、`SEQRES`レコードなどのヘッダ部があり、下方の`ATOM`(あるいは`HETATM`)レコードに分子を構成する各原子の\\( xyz \\)座標などが並んでいます。ヘッダ部には、この分子が由来する生物種や文献情報、構造決定方法に関する情報、アミノ酸配列、単量体か多量体か、構造中に含まれる金属や補酵素の情報などが書かれており、先程まで見ていたPDB ID: 1ALKのウェブページ上ではこれらの情報がわかりやすく整形されて表示されています。座標データは、20種類の標準アミノ酸は`ATOM`レコードに、それ以外の基質や金属、修飾アミノ酸などは`HETATM`レコードに記述されています。1ALKの`ATOM/HETATM`レコードに、タンパク質のAチェイン、 Bチェイン、続いて亜鉛(`ZN`)、マグネシウム(`MG`)、リン酸(`PO4`)、水分子(`HOH`)の座標データが並んでいることを確認してみましょう。

```
```shell
HEADER: PDB IDやタンパク質の種類,データ登録年月日
TITLE: このデータを得た研究内容の簡単な説明
SOURCE: その分子の由来(遺伝子名,生物種など)
Expand All @@ -29,6 +29,6 @@ END: エントリの終わり

再びRCSB PDBの1ALKのページに戻って、画面右上の**Download Files**を左クリックし、メニューの中の**PDB Format**を右クリックして**対象をファイルに保存**を選択します。

<img src="./image/rcsbpdb_down.png" width="250px">
<img src="./image/rcsbpdb_down.png" width="250px" alt="rcsbpdb_down">

ここで、ファイル名を`1alk.pdb`とします。PDBファイルが`ダウンロード`のフォルダにダウンロードされるので、そこから`デスクトップ`にファイルを移動させます。
2 changes: 1 addition & 1 deletion src/ch01/launchpymol.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

初心者向けです。バイナリ版をインストールした場合、Finderから[アプリケーション]を選択して中にあるPyMOLをダブルクリックすることで起動できます。

<img src="./image/launch1.png" width="80%">
<img src="./image/launch1.png" width="80%" alt="launch1">

### macOS(オープンソース版の場合)

Expand Down
3 changes: 2 additions & 1 deletion src/ch01/savesessionfile.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
### セッションファイルへの保存

ここまでの作業内容をセッションファイルに保存します。セッションファイルとは、現在のPyMOLの画面の状態をそのまま保存しておくファイルのことです。画面上部にあるFileメニューから`Save session as…`を選んで名前を指定して保存します(`kadai1.pse`など、わかりやすい名前をつけましょう)。(参考:[セッションの保存](../ch02/session.md) )。

<img src="./image/savesession.png" width="300px" alt="セッションファイルへの保存">
Expand All @@ -11,4 +12,4 @@

<img src="./image/loadsession.png" width="300px" alt="セッションを開く時のプロンプト画面">

※ (上級者向け)上述の`PyMOL> `の入力欄にコマンドを入力することでも可能です。デスクトップ上に保存したい場合は、`cd ~/Desktop`としてWorking Directoryをデスクトップに設定した後、`save kadai1.pse`とすることでセッションファイルを保存できます。
※ (上級者向け)上述の`PyMOL>`の入力欄にコマンドを入力することでも可能です。デスクトップ上に保存したい場合は、`cd ~/Desktop`としてWorking Directoryをデスクトップに設定した後、`save kadai1.pse`とすることでセッションファイルを保存できます。
12 changes: 11 additions & 1 deletion src/ch03/build.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
# Build

Buildのメニューからは、PyMOLに内蔵されている化合物のフラグメントやアミノ酸残基のデータを利用して任意の化合物またはポリペプチド鎖の構造モデルを生成することができるようになっています。主な利用方法としては、既存のタンパク質構造をロードしたあとに、その末端に長い人工ペプチドを取り付けたモデル構造を作成することや、0から任意のポリペプチド鎖を作成して計算科学の研究の初期構造に利用するという使い方があります。

Buildメニューは以下の通りです。

<img src="./image/build/ch3_build1.png" width="40%" height="40%">

## Fragment

ここでは主要な化学小分子の骨格を、フラグメントをつなぎ合わせるような感覚で構築することができます。使い方の例を動画で見てみましょう。

<video width="100%" height="100%" controls autoplay loop>
Expand All @@ -20,6 +22,7 @@ Buildメニューは以下の通りです。
化合物の二面角や角度を手動で調整したい場合は、マウス操作で調節して作り出してください(参考:[マウス操作の詳細,二面角をピッキング](../ch02/buttonaction.html#二面角をピッキングpktb))。また、一応お気持ち程度ですが、後で紹介する**Sculpting**という機能を使うと、簡単な化合物の構造最適化をかけてくれて、無理のない構造に落ち着かせることができます。

## Residue

このメニューは20種類の正準アミノ酸の残基のデータの他に、N末端キャッピング用のAcetylとC末端キャッピング用のN-Methylが存在しています。キャッピングとはMDシミュレーション上で使われる人工的な修飾で、末端部分の電荷をニュートラルにするために使われます。それ以外の方はあまり利用することがないでしょう。

AltキーとA~Zの文字を組み合わせて入力することでマウスを使わずに簡単にポリペプチド鎖を作成していくことができます。例えば、PyMOLを開き、BuildメニューからResidue -> Helixを選び、Internal GUI画面上でAltキーを押しながら`ACDVAARHK`と連続して押すと
Expand Down Expand Up @@ -59,6 +62,7 @@ AltキーとA~Zの文字を組み合わせて入力することでマウスを
|Valine|バリン|`cmd._alt(chr(86))`|Alt-V|

## Sculpting

Sculptingは「彫刻する」というような意味ですが、PyMOLのこの機能では、上で生成したような小分子またはポリペプチド鎖について**簡単な構造最適化**をかけてくれるようです。

ただし、この機能は現在PyMOLの開発者としてはサポートの対象外とされているようで、現時点ではこの機能が改善されることや発見されたバグの修正が行われることはないとされています(参考:[PyMOL: Unsupported Features](https://pymol.org/dokuwiki/doku.php?id=unsupported))。したがって、ここでは簡単な使い方の紹介を留める程度にしておきます。
Expand All @@ -70,25 +74,31 @@ Sculptingは「彫刻する」というような意味ですが、PyMOLのこの
</video>

## Cycle Bond Valence [Ctrl-Shift-W]

現在選択中の「結合」に対して、その結合を芳香環のような結合として設定させます。ショートカットキーはCtrl(Macの場合はCommandでも可)とShift-Wの同時押しです。

結合を選択する方法は[マウス操作の詳細,二面角をピッキング](../ch02/buttonaction.html#二面角をピッキングpktb)と同じです。この機能で結合を選択したあと、Ctrl-Shift-Wキーを同時押しすることで、その結合が芳香環様結合として設定させることができます。例えばFragmentメニューに存在するCyclohexyl[Alt-6]にこの機能を適用してベンゼン環に変更したいという場合、6つすべての炭素-炭素結合についてこの操作を行う必要があります。このとき水素原子は自動で増減します。こののち、上記のSculptingによる構造最適化を行えばすべての炭素原子が同一平面上に位置するようになったベンゼン環構造が得られます(が、水素原子の位置がきれいな構造じゃない気がします)。

## Fill Hydrogens on (Pk1) [Ctrl-Shift-R]

Pk1で選択されている「原子」に対して、その原子につながっている結合数に応じて水素原子を取り付けてくれます。ショートカットキーはCtrl(Macの場合はCommandでも可)とShift-Rの同時押しです。コマンドは`h_fill`です。

## invert (pk2)-(pk1)-(pk3) [Ctrl-Shift-E]

PkAt機能で原子を3つ選んだ状態、すなわちPk1, Pk2, Pk3が存在している状態でこのコマンドを選択すると、Pk1から先のフラグメントがPk1-Pk2軸回りに180度反転した位置に変化します。ショートカットキーはCtrl(Macの場合はCommandでも可)とShift-Eの同時押しです。コマンドは`invert`です。

## create bond (pk1)-(pk2) [Ctrl-Shift-T]

PkAt機能で原子を2つ選んだ状態、すなわちPk1, Pk2が存在する状態でこのコマンドを選択すると、2原子の間に結合が形成されます。ショートカットキーはCtrl(Macの場合はCommandでも可)とShift-Tの同時押しです。内部コマンドの処理としては`bond ; unpick`が働いています。

これは環を閉じたいときに有用だったり、描画上の問題で離れている2原子を結合したような状態に見せたいときに有用です。

ちなみにコマンド専用ですが、bondコマンドを使うときに`bond order=2`とすると二重結合として結合を表示させられます。三重結合のときは`bond order=3`、芳香環様結合のときは`bond order=4`とします。

## Remove (pk1) [Ctrl-Shift-D]

Pk1で選択されている原子を削除します。また、PkTbで選択されている結合についても削除することができます。ショートカットキーはCtrl(Macの場合はCommandでも可)とShift-Dの同時押しです。コマンドは`remove_picked`です。

## Make (Pk1) positive [Ctrl-Shift-K] / Make (Pk1) negative [Ctrl-Shift-J] / Make (Pk1) neurtral [Ctrl-Shift-U]
Pk1で選択されている原子の電荷を+1, -1, 0にそれぞれ設定させることができます。設定値はLabel機能のother properties, formal chargeを押すと確認することができます。

Pk1で選択されている原子の電荷を+1, -1, 0にそれぞれ設定させることができます。設定値はLabel機能のother properties, formal chargeを押すと確認することができます。
Loading

0 comments on commit 464c6d7

Please sign in to comment.