11
https://scrapbox.io/files/6563d97e2d37cb001bbd435d.png
今日の内容
タンパク質 の 分子シミュレーション
質問 / コメント
https://scrapbox.io/files/67563f804c9d44312d477f29.png
分子シミュレーションとは?
分子のふるまいをコンピュータを用いて理論的に解析しようとすること
分子シミュレーションの種類
ケモインフォマティクス
量子化学計算
分子動力学(MD)シミュレーション
機械学習・人工知能
演習1
分子シミュレーションをお手軽に実行できるWebアプリを試してみよう
https://scrapbox.io/files/6756452f25049053268a1e2b.png
「量子化学計算」と呼ばれるものは何?
シュレディンガー方程式を近似的だけど真面目に解こうとする手法
が、タンパク質を丸ごと量子化学計算するのは(現状では)難しい
ので、フラグメント分子軌道(FMO)法などの方法を用いる
アミノ酸ごとの断片(フラグメント)に分割する
フラグメントごとに量子化学計算を実行する
サイズが小さいので、量子化学計算が比較的簡単になる
タンパク質の電子状態を理論的に解析することができる
が、FMO 法などの近似手法を使っても、計算コストが膨大になる
分子の動的なふるまいを明らかにすることは(現状では)難しい
現状では、次に説明するように、分子力場を用いる
将来的には、分子の動的なふるまいも解析可能になると思う
たとえば、タンパク質と薬物化合物の相互作用を定性的に調べるために使われたりする
【応用事例】酵素反応のメカニズムを解析したい
https://gyazo.com/d1e23cee45d8ee32d7f2e9580e97fcbb https://gyazo.com/c24ebd0b6dd52bbfe79bfffd6d3d2cd4
山本@山本研, Life (2022)
「分子動力学計算」と呼ばれるものは何?
分子の動的なふるまいを明らかにするときに用いる手法
多くの場合、(現状では)シュレディンガー方程式を真面目に解くようなことはしない(できない)
で、分子力場というものを用いて分子を記述する
分子力場については、あとで説明
単純に言うと、原子と原子をバネで繋いだようなモデルになる
たとえば、タンパク質の動的なふるまいを調べたり、タンパク質の薬物化合物の結合自由エネルギーを定量的に調べるために使われたりする
【応用事例】インフルエンザウイルスの薬剤耐性化はどのようにおこるのか?
Amber を用いた分子動力学シミュレーション
https://gyazo.com/28406ac07980e525221bf2a2e861c2fe
Mohini@山本研 et al, PeerJ (2021)
「機械学習・人工知能」と呼ばれるものは何?
既知の分子についての様々なふるまいをコンピュータに学習させて、学習させたモデルを用いて未知の分子などのふるまいを予測する手法
アミノ酸配列だけを入力として、対応するタンパク質の立体構造を高い精度で予測することもできるようになってきている
シュレディンガー方程式の結果をコンピュータに学習させることもできるので、将来的には、現在主流である「分子力場を用いる手法」に取って代わるかも知れない
とは言え、学習させたモデルが「タンパク質の物理化学的な性質について、どの程度まで適切に記述できているのか」を判断することは難しい
【応用事例】AlphaFold2
https://i.gyazo.com/9c8f5b51c02053514e377262c75ff435.png
アルゴリズムとは?
問題を解決するための手順や計算方法、処理方法を指す言葉
直訳すると「算法」や「問題を解く手段」という意味
分子動力学で何をしたい?
運動方程式をコンピュータを用いて数値的に解いて、ある時間 $ tにおける粒子$ iの位置$ \mathbf{r}_i(t)と速度$ \dot{\mathbf{r}}_i(t)の情報を用いて、少しだけ時間が進んだ $ t + \Delta tにおける位置$ \mathbf{r}_i(t+\Delta t)と速度$ \dot{\mathbf{r}}_i(t+\Delta)の情報を知りたい
分子動力学の基本的な考え方
他の粒子から力を受けながら運動する質量 $ m_i($ i=1,2,\cdots,N) の $ N個の粒子から構成される系を考える
ある粒子 $ iの位置を $ \mathbf{r}_i = (x_i, y_i, z_i)で表す
系の全エネルギーは
$ E(\dot{\mathbf{r}}^N, \mathbf{r}^N)=K(\dot{\mathbf{r}}^N)+U(\mathbf{r}^N)
$ K(\dot{\mathbf{r}}^N):運動エネルギー項
$ K(\dot{\mathbf{r}}^N)=\sum_{i=1}^{N}\frac{1}{2} m_i \dot{\mathbf{r}}^2
$ U(\mathbf{r}^N):ポテンシャルエネルギー項
$ U(\mathbf{r}^N)=U(\mathbf{r}_1,\mathbf{r}_2,\cdots,\mathbf{r}_N)
ある粒子$ iの運動方程式は
$ m_i \frac{d^2 \mathbf{r}_i}{dt^2} = \mathbf{F}_i
$ \mathbf{F}_i:粒子 $ iに働く力
$ \mathbf{F}_i=(F_{x_i},F_{y_i},F_{z_i})
$ = -\nabla_i U(\mathbf{r}^N)=-\frac{\partial U(\mathbf{r}^N)}{\partial \mathbf{r}_i}
運動方程式の数値的な解き方(アルゴリズム)
蛙跳び(leap-frog)差分法
$ \dot{\mathbf{r}}_i\left(t+\frac{\Delta t}{2}\right)=\dot{\mathbf{r}}_i\left(t-\frac{\Delta t}{2}\right)+\frac{\mathbf{F}_i(t)}{m_i}\Delta t
$ \mathbf{r}_i(t+\Delta t)=\mathbf{r}_i(t)+\dot{\mathbf{r}_i}\left(t+\frac{\Delta t}{2}\right)\Delta t
速度ベルレ(velocity Verlet)差分法
$ \mathbf{r}_i(t+\delta t)=\mathbf{r}_i(t)+\dot{\mathbf{r}}_i(t)\delta t+\frac{\mathbf{F}_i(\mathbf{r}_i(t))}{2m_i}\delta t^2+O(\delta t^3)
$ \dot{\mathbf{r}}_i(t+\delta t)=\dot{\mathbf{r}}_i(t) + \frac{\mathbf{F}_i(\mathbf{r}_i(t+\delta t)) + \mathbf{F}_i(\mathbf{r}_i(t))}{2}\delta t+O(\delta t^2)
演習2
ある系について、座標 $ Rにあるときのポテンシャルエネルギーが$ U(R)=2.5\times(R-3.8)^2と表されるものとする。また、この系の動的なふるまいについて、速度ベルレ差分法に基づいて、次のように数値的に解くことを考える。
$ R(t+\delta t) = R(t) + \dot{R}(t)\,\delta t + \frac{F(R(t))}{2}\,\delta t^2
$ \dot{R}(t+\delta t)=\dot{R}(t)+\frac{F(R(t+\delta t))+F(R(t))}{2}\delta t
ある時刻$ tにおける位置が$ R(t)=5.2、速度が$ \dot{R}(t)=1.1である場合、次の問いに答えよ。
問①:時間ステップ$ \delta t = 0.5後の位置 $ R(t+\delta t)の値は?
問②:時間ステップ$ \delta t = 0.5後の速度 $ \dot{R}(t+\delta t)の値は?
演習2:ヒント
力の定義:$ F(R)=-\frac{dU(R)}{dR}
演習2:回答
問①:時間ステップ$ \delta = 0.5後の位置 $ R(t+\delta t)の値は?
演習2:回答
問②:時間ステップ$ \delta = 0.5後の速度 $ \dot{R}(t+\delta t)の値は?
演習2:補足
$ R(t)と$ \dot{R}(t) = \frac{dR(t)}{dt}の時間変化は...
https://gyazo.com/eca80e2352ce4da78c288f3f097a7a17
要するに
運動方程式の数値的な解き方(蛙跳びや速度ベルレなど)は分かっている
ある粒子 $ iに働く力 $ \mathbf{F}_iが適切に分かれば分子の動的なふるまいは分かる
力は$ \mathbf{F}_i=-\frac{\partial U(\mathbf{r}^N)}{\partial \mathbf{r}_i}と表した
だから、ポテンシャルエネルギー $ U(\mathbf{r}^N)の解析的な形が分かればいい
原理的には、シュレディンガー方程式を近似的に解けば良い
だけど、シュレディンガー方程式を解くのは大変(計算コストがかかる)
➡ 簡単な関数(分子力場)で記述してしまおう
分子力場とは?
$ U(\mathbf{r}^N)=\:\:\:\sum_i^\mathrm{bonds}k_{b}(b_i-\bar{b}_i)^2
$ +\sum_i^\mathrm{angles}k_\theta(\theta_i-\bar{\theta}_i)^2
$ +\sum_i^\mathrm{dihedrals}k_\phi(1+\cos(n\phi_i-\bar{\phi}_i))
$ +\sum_{i<j}^\mathrm{atoms}\epsilon_{ij}\left(\left(\frac{\sigma_{ij}}{r_{ij}}\right)^{12}-2\left(\frac{\sigma_{ij}}{r_{ij}}\right)^{6}\right)
$ + \sum_{i<j}^\mathrm{atoms}\frac{q_i q_j}{4\pi\epsilon_0 r_{ij}}
結合の強さを表すパラメーター$ k_bなど、あらかじめ決められた変数を用いてポテンシャルエネルギーを表すもの
代表的な分子力場
デファクトスタンダードかなと思う。タンパク質やDNAに対して広く用いられている
AMBER に次いで有名
MMFF
製薬会社のメルクによって開発された力場。比較的小さな分子系に対してよく用いられている
分子力場の簡単な具体例
量子化学計算(HF/6-31G(d)) を用いて、$ \mathrm{O_2}の原子間距離$ Rを変えながら、エネルギー $ E_\mathrm{qm}(R)の変化を解析すると
https://i.gyazo.com/ad8261ee4b5148d4fe0f5bddca2a85bf.gif
https://gyazo.com/eaa6a08b81c57b161e6c125545248c65
量子化学計算で得られたエネルギー $ E_\mathrm{qm}の変化を分子力場 $ U_\mathrm{mm}で表すと
$ E_\mathrm{qm}(R) \approx U_\mathrm{mm}(R) = k_b (R - R_0)^2
$ k_b = 1333 \; \mathrm{kcal\;mol^{-1}\;Å^{-2}}
$ R_0 = 1.166\;\mathrm{Å}
演習3
ある2原子分子について、原子間距離 $ Rとすると、この分子のポテンシャルエネルギーを分子力場で近似的に表した場合、結合項の変数$ k_b = 1500 \; \mathrm{kcal\;mol^{-1}\;Å^{-2}}と平衡結合距離$ R_0 = 1.15 \; \mathrm{Å}を用いて、下記のように表すことができたとする。
$ U(R)=k_b (R-R_0)^2
以下の問いに答えよ。
問①:原子間距離$ R = 1.00 \; \mathrm{Å}のときの「力 $ F(R)の値」は?
問②:原子間距離$ R = 1.35 \; \mathrm{Å}のときの「力 $ F(R)の値」は?
演習3:ヒント
力の定義:$ F(R)=-\frac{dU(R)}{dR}
演習3:回答
問①:原子間距離$ R = 1.00 \; \mathrm{Å}のときの「力 $ F(R)の値」は?
演習3:回答
問②:原子間距離$ R = 1.35 \; \mathrm{Å}のときの「力 $ F(R)の値」は?
演習3:補足
原子間距離$ Rに対するポテンシャルエネルギー$ U(R)と力$ F(R)は...
https://gyazo.com/41aecaaaafe4c10404b34b0150cb1328