2006年11月06日

Topological Polar Surface Area

Topological Polar Surface Area (TPSA)は、PSAを高速に計算するための手法です。通常、PSAの計算は、分子の適切な3次元構造を生成させ、surface areaを計算し、PSAを算出するという手順を踏みます。しかしながら、膨大な化合物ライブラリを処理するには、計算時間が問題になったり、また、分子の配座によってPSAが異なるということも留意しておく必要があります。

概要になりますが、TPSAでは、以下の様なシンプルな計算式でPSAを計算しています。

 PSA = (fragment-1の数)*(fragment-1のPSAへの寄与値) + ....
       +(fragment-Nの数)*(fragment-NのPSAへの寄与値)

ここで、fragment-XはTPSAで定義されているfragmentの種類を示しています。また、PSAへの寄与値は、最小自乗法により決定されたものです。詳細は、以下の原著に示されております。

 J. Med. Chem. 2000, 43, 3714-3717.

具体的には、化合物の中に、どのfragmentがいくつ含まれているかを検出し、上記式を適用することにより、PSAを求めることができます。

以上のことから、TPSAは高速かつ3D配座生成を必要としないという大きなメリットをもっていることが分かります。

CDK News Volume 3/2 September 2006, には、CDKのTPSA Descriptorの精度評価を行った論文が掲載されております。特に興味をもったのは、この論文の著者がTPSAの著者と行ったpersonal communicationを引用しているところでした。TPSAのように回帰的な手段を用いた手法では、定義されているfragmentの種類やその寄与値の精度を把握しておくことは重要だと思います。このあたりのディスカッションがとても参考になりました。


banner_02.gif
人気ブログランキング(クリックして応援してね)
posted by わばのり at 08:15| Comment(0) | TrackBack(0) | CDK | このブログの読者になる | 更新情報をチェックする

2006年11月02日

VPython

VPythonは、pythonの3Dグラフィクスモジュールです。VPythonを使うことにより、簡単に3Dプログラミングを楽しむことができます。例として、水分子を表示させてみます。

 from visual import *

 atom_O = sphere (pos = (0,0,0), color = color.red, \
 radius = 1.52)
 atom_H1 = sphere (pos = (0.957, 0,0), color = color.white, \
 radius = 1.2)
 atom_H2 = sphere (pos = (-0.240,0.927,0), color = color.white, \
 radius = 1.2)

water_vpython.png

表示された水分子は、マウスを使って回転/拡大・縮小ができます。シンプルな分子Viewerであれば、簡単に作れそうです。


banner_02.gif
人気ブログランキング(クリックして応援してね)
posted by わばのり at 08:51| Comment(0) | TrackBack(0) | Python関連 | このブログの読者になる | 更新情報をチェックする

2006年11月01日

OpenDX

APBS(Adaptive Poisson-Boltzmann Solver)のサイトを見ていたら、Electrostatic potentials等の計算結果を可視化するソフトウェアとして、OpenDXが紹介されていました。

OpenDX自体は、汎用的なデータ可視化ツールなのですが、Gallery-Highlights(Category:Chemistryを選択)にある分子イメージを見るとかなりGOODです。その他にもマイクロアレイ データの可視化など、様々な利用例が紹介されています。

いろいろと役に立ちそう。


banner_02.gif
人気ブログランキング(クリックして応援してね)
posted by わばのり at 12:19| Comment(0) | TrackBack(0) | 分子グラフィクス | このブログの読者になる | 更新情報をチェックする

2006年10月25日

Molecular Similarity Search

分子のSimilarity Searchは、Substructure Searchと同様によく利用するのですが、分子をどのようなDescriptorで表現するか、またどうのような尺度で比較するかによって検索結果に大きな差が生じてしまいます。利用するDescriptorの算出法や距離の計算法を深く理解しなければいけないなと思ってます。

さて、cheminformatics.orgにSimilarity Searchに関するreviewや簡単な概説があり、なかなか便利です。またMOLPRINT 2Dも利用できるようです。


banner_02.gif
人気ブログランキング(クリックして応援してね)
posted by わばのり at 08:56| Comment(0) | TrackBack(0) | その他ツール | このブログの読者になる | 更新情報をチェックする

2006年10月05日

PowerMV

PowerMVは、NISSで開発されたソフトウェアで、分子の描画、descriptorの生成、similarity search、統計処理などができるようです。統計処理にはRが利用されているみたい。
詳細は、J. Chem. Inf. Model.で発表されています。

 J. Chem. Inf. Model., 45 (2), 515 -522, 2005

分子の描画をX行×5列という感じでグリッド表示できるようで、これだけでも便利だなと思います。


banner_02.gif
人気ブログランキング(クリックして応援してね)
posted by わばのり at 22:53| Comment(0) | TrackBack(0) | その他ツール | このブログの読者になる | 更新情報をチェックする

2006年10月03日

Cluster 3.0

クラスタリングは、遺伝子発現データの解析に必須の技術の1つですね。Cluster 3.0は、階層型クラスタリングだけではなく、k-Means, SOMs, PCAも含まれており、また、汎用性も高くとても便利だと思います。解析結果の視覚化にはJava TreeViewが使えます。また、Pyclusterが提供されており、Pythonからも利用できます。

Cluster 3.0を利用して、化合物のFingerprintなどをクラスタリングしたい場合は、類似度(距離)の計算法に注意が必要だと思います。Cluster 3.0ではPearson correlation, Euclidean distance, City-block distanceなどが選択可能ですが、Tanimoto coefficientは利用できないようです。

Pyclusterだとこの辺りも解決できるかな?


banner_02.gif
人気ブログランキング(クリックして応援してね)
posted by わばのり at 08:56| Comment(0) | TrackBack(0) | その他ツール | このブログの読者になる | 更新情報をチェックする

2006年09月29日

JOELibのJPanel3Dの使い方

JOELibに含まれているJPanel3Dクラスを使ったサンプルプログラムを以下に示します。今回は、コンストラクタ内で表示用の分子を作成し、JPanel3DクラスのaddMolecule(JOEMol mol)メソッドを使って分子を表示させていますが、通常は、ファイル読み込みボタンなどを経由して、分子を読み込み、表示させることが多いと思います。

JPanel3DTest.java:


こんな感じで表示されます。

JPanel3D.png

自作のアプリケーションを作る際に、JPanel3Dを使えば、簡単に分子Viewerを含めることができるので、とても便利だと思います。


banner_02.gif
人気ブログランキング(クリックして応援してね)
posted by わばのり at 17:58| Comment(0) | TrackBack(0) | JOELib | このブログの読者になる | 更新情報をチェックする

2006年09月21日

The Molecular Biology Toolkit (MBT)

The Molecular Biology Toolkit (MBT)は、タンパク質の構造表示や解析などを行うことのできるJavaのクラスライブラリです。また、MBTを使ったUser Applicationsもいくつか紹介されています。APIを見ると、便利そうなクラスが多くありますし、かなり有益なライブラリではないでしょうか。


banner_02.gif
人気ブログランキング(クリックして応援してね)
posted by わばのり at 08:10| Comment(2) | TrackBack(0) | CDK | このブログの読者になる | 更新情報をチェックする

2006年09月20日

CDKでXLogPの計算

CDK(cdk-20060714)でXLogPの計算を行ってみます。手順は以下の様になります。

 1. 分子の読み込み
 2. 水素原子の付加
 3. XLogPの入力パラメータ設定
 4. XLogPの計算

水素原子は、HydrogenAdderクラスのaddExplicitHydrogensToSatisfyValency(mol)メソッド等を使って付加する必要があります。また、XLogPの入力パラメータには、checkAromaticityとsalicylFlagの2つがあります。これらはパラメータは、getParameterNames()メソッドにより知ることができます。

XLogP.java:


例として、フェノールのXLogPを計算してみます。
実行結果:
XLogP: 1.616

試しに、checkAromaticityをfalseとして計算してみます。
実行結果:
XLogP: 0.946

値がかなり変わりますね。
通常は、checkAromaticityはtrueでいいかと思います。


banner_02.gif
人気ブログランキング(クリックして応援してね)
posted by わばのり at 08:09| Comment(0) | TrackBack(0) | CDK | このブログの読者になる | 更新情報をチェックする

2006年09月15日

Ruby Chemistry Development Kit (RCDK)

Ruby Chemistry Development Kit (RCDK)は、JRubyからCDKを利用するのではなく、Ruby Java Bridge (RJB)を使ってCDKを利用可能としています。これによっていくつかの利点があるそうです。詳細は以下の記事をご覧ください。

 http://depth-first.com/articles/2006/09/14/cdk-the-ruby-way

RCDKを使って何か作ってみたくなりますね。


banner_02.gif
人気ブログランキング(クリックして応援してね)
posted by わばのり at 08:27| Comment(0) | TrackBack(0) | CDK | このブログの読者になる | 更新情報をチェックする