私がおこないたい状況というのは、どちらかというと、複数の水分子をまとめて、挿入したいので、
多分この場合、内部水に別の分子名をつけて、行う状況のほうが近いと思います。
この場合も、別名をつけた水分子をまとめてひとつの分子として扱いたい
(ここの分子を挿入するのではなくて)のですが、それをする方法はどのようにあるのでしょうか?
現在別分子の名前をつける方法として採用しましたのは、gen_structure を実行時にGROMACS の.top ファイルの中で,
[ molecules ]
; Compound #mols
Other_chain_B 1
Other_chain_C 1
SOL 630
を
[ molecules ]
; Compound #mols
Other_chain_B 1
Other_chain_C 1
SOL 560
LIG 70
と分けてのち、ermodを実行させたところ、溶質の力場のファイルは1つの水分子のパラメータと
なっており、計算はされましたが、エネルギーはどうやら水分子をひとつだけ入れた場合のようでした。
この場合、いくつかの疑問が生じます。
1) まず、トラジェクトリの読み込みの順序は上の場合、もともとの630 この水分子が 560 と70 に分けられたのですが、トラジェクトリの座標を読み込む際にも上の順序ですと、
最後の70 この座標がLIG の座標として使われているとみてよいのでしょうか?
ermod のwiki でmol_dissection のページがアクセスできないのは仕様なのでしょうか?
2) 現在のuvrage.tt を見る限り、LIGも水分子が個別に扱われているようなのですが、これを一つとして取り扱うにはどうすればよろしいでしょうか?上の1)2)をまとめての話ですが、まず、MDinfoを見てみて下さい。(trajectoryのframe数) 41 1 560 70(chain_Bの原子数) (chain_Cの原子数) 3 3といった感じになっていると思います。そして、この書式とtrajectory fileの対応なのですが、まず、(chain_Bの原子数)の座標を読み取り、chain_Bというspeciesに割振り、次に、(chain_Cの原子数)の座標を読み取り、chain_Cというspeciesに割振り、さらに、3個の座標を読み取って3つ目のspeciesに割り振る、というのを、560回繰り返し、そして、3個の座標を読み取って4つ目のspeciesに割り振る、というのを、70回繰り返す、ということをします。そこで、70個の水分子をまとめて、1つの溶質にしたければ、MDinfoを(trajectoryのframe数) 41 1 560 1(chain_Bの原子数) (chain_Cの原子数) 3 210という風にすれば良いです。4つめのspeciesが210個の原子からなるものであると解釈します。ただし、その場合は、4つめのspeciesに対応するSltInfoを書き換える必要があります。現状のSltInfoは、多分、3行からなっていて、各行が酸素と水素原子に対応していると思います。これを拡張(?)して、210個の原子からなるものにします。具体的には、現状のSltInfoを70回繰り返しコピーして、210行からなるファイルにすることにします。最初の3行が、1つ目の水分子に関する酸素・水素の情報になり、次の3行が、2つ目の水分子に関する情報になり・・・という具合です。上のようにすれば、できると思います
ただし、70個の水分子を「溶質」にするというのは、かなり難しい計算になるかもと思います。refsなんかがうまく行かないかもしれません。
ermod のwiki でmol_dissection のページがアクセスできないのは仕様なのでしょうか?まだ、書いていないのです。すみません
いくつか気になるメッセージが出ました
1つめ、gen_structureの実行時に
Warning: force-switching in GROMACS is unsupported, and potential-switch is used instead (leading possibly to inconsistent result)
というのがでました、これはどのオプションが関係しているのでしょうか?
2つめ, soln にて実行時に
Note: The following floating-point exceptions are signalling: IEEE_INVALID_FLAG IEEE_DIVIDE_BY_ZERO
というのがでるのですが、これはどのような内容なのでしょうか?
ただし、70個の水分子を「溶質」にするというのは、かなり難しい計算になるかもと思います。refsなんかがうまく行かないかもしれません。
この場合うまく行かないかもしれないということはどのようなことを意味しているのでしょうか?
potential switchだけに対応しました.先週末に、ver 0.3.2 をリリースしまして、gromacsでのforce switchingに対応するようになりました。ver 0.3.2 では、上のwarningは無くなります
2つめ, soln にて実行時に
Note: The following floating-point exceptions are signalling: IEEE_INVALID_FLAG IEEE_DIVIDE_BY_ZERO
というのがでるのですが、これはどのような内容なのでしょうか?にある通り、 Mac OS Xかcygwinで走らせると出ます。そちらの環境は、Mac OS Xかcygwinでしょうか?何故出るのか良く分らないのですが、結果を見る限りは、問題は無さそうです
ただし、70個の水分子を「溶質」にするというのは、かなり難しい計算になるかもと思います。refsなんかがうまく行かないかもしれません。この場合うまく行かないかもしれないということはどのようなことを意味しているのでしょうか?原理的には問題ないのですが、「溶質」の構造が、真空中と溶液中でかけ離れていると、エネルギーの分布関数が重ならず、 slvfeの際に計算が停まります。それで、70個の水分子からなる「溶質」なのですが、具体的な系は分かりませんが、solnの場合=タンパク質周り?での70個の水分子の配置とrefsの場合=真空中の70個の水分子の配置は、随分違うのかな、と思いました。真空中の70個の水分子のMDの際に、何からのorder parameterを入れて、umbrella samplingなどをして、soln系の水の配置に近くなるように、真空中配置を生成すれば良いかもしれませんが。その場合は、「本当の」真空中の配置ではないので、真空MDの配置にある重みを付けてinsertionをする必要が出てきます。
ですので、うまいumbrellaがあるのかな?ということで、うまく行かないかも、と述べました。ちなみに、重み付きinsertionですが、の中の wgtins というところに記述があります
確認したいのですが、必要な熱力学過程は真空中の溶質結合からは変わりますが
70この水分子を普通に溶媒中にあるとしての、binding もエネルギー表示では利用可能でしょうか?
タンパク質のbinding を論文でされていたので大丈夫だとおもっているのですが。図でいうと次の状況で
Delta G
(Water300 in solvent) + (Water70 in solvent) => (Water370 in solvent)
Ref をWater300 in solvent、 solute をWater 70 in solvent, soln をWater370 in solvent
でサンプリング(solvent はこの場合、有機溶媒です)して、 Delta G を求めるということです。