2006年06月19日

JOElibで水素原子の付加

JOElibでは、JOEMolクラスのaddHydrogens()メソッドにより、H原子を付加することができます。H原子を付加する際、基本的には、以下のコードにより、H原子の個数を決定しています(実際のJOELib中のコードです)。

 hcount = atom.getImplicitValence() - atom.getValence();

JOELibの便利な機能として、pHを考慮したH原子の付加ができます。具体的には、joelib/data/plain/phmodel.txtに従っています。例えば、carboxylic acidの場合、以下のように記述されています。

TRANSFORM O=CO[#1:1] >> O=CO
TRANSFORM O=C[OQ1-0:1] >> O=C[O-:1]

この記述によれば、COOHはCOO-に変換されるため、負に荷電しており、H原子は付加されません。したがって、phmodel.txtをカスタマイズすることにより、H原子の付加を自由にコントロールできます。記述方法は、Reaction SMARTSだと思います。

もう1つ便利な機能として、polar hydrogensのみの付加があります。例えば、水素結合のパターンを目視で認識する際に便利ですし、Amberにもこれに対応した力場パラメータが存在するので、分子モデリングでも利用することができます。

それでは、JOEMolクラスのaddHydrogens(boolean polaronly, boolean correctForPH)メソッドを用いて、上述した内容をアラニンを用いて確認したいと思います。第一引数が、polar hydrogensのみのH原子付加を行うか、第二引数は、phmodel.txtを用いたH原子付加のコントロールを行うかを示しております。

hbond.png
上図中のtrue,falseは第一引数、第二引数の順番になっております。ちなみに、addHydrogens()メソッドでは、false,trueとなっております。


banner_02.gif
人気ブログランキング(クリックして応援してね)


posted by わばのり at 08:10| Comment(0) | TrackBack(0) | JOELib | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック