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の種類やその寄与値の精度を把握しておくことは重要だと思います。このあたりのディスカッションがとても参考になりました。
人気ブログランキング(クリックして応援してね)
2006年11月06日
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)
表示された水分子は、マウスを使って回転/拡大・縮小ができます。シンプルな分子Viewerであれば、簡単に作れそうです。
人気ブログランキング(クリックして応援してね)
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)
表示された水分子は、マウスを使って回転/拡大・縮小ができます。シンプルな分子Viewerであれば、簡単に作れそうです。
人気ブログランキング(クリックして応援してね)
2006年11月01日
OpenDX
APBS(Adaptive Poisson-Boltzmann Solver)のサイトを見ていたら、Electrostatic potentials等の計算結果を可視化するソフトウェアとして、OpenDXが紹介されていました。
OpenDX自体は、汎用的なデータ可視化ツールなのですが、Gallery-Highlights(Category:Chemistryを選択)にある分子イメージを見るとかなりGOODです。その他にもマイクロアレイ データの可視化など、様々な利用例が紹介されています。
いろいろと役に立ちそう。
人気ブログランキング(クリックして応援してね)
OpenDX自体は、汎用的なデータ可視化ツールなのですが、Gallery-Highlights(Category:Chemistryを選択)にある分子イメージを見るとかなりGOODです。その他にもマイクロアレイ データの可視化など、様々な利用例が紹介されています。
いろいろと役に立ちそう。
人気ブログランキング(クリックして応援してね)
2006年10月25日
Molecular Similarity Search
分子のSimilarity Searchは、Substructure Searchと同様によく利用するのですが、分子をどのようなDescriptorで表現するか、またどうのような尺度で比較するかによって検索結果に大きな差が生じてしまいます。利用するDescriptorの算出法や距離の計算法を深く理解しなければいけないなと思ってます。
さて、cheminformatics.orgにSimilarity Searchに関するreviewや簡単な概説があり、なかなか便利です。またMOLPRINT 2Dも利用できるようです。
人気ブログランキング(クリックして応援してね)
さて、cheminformatics.orgにSimilarity Searchに関するreviewや簡単な概説があり、なかなか便利です。またMOLPRINT 2Dも利用できるようです。
人気ブログランキング(クリックして応援してね)
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列という感じでグリッド表示できるようで、これだけでも便利だなと思います。
人気ブログランキング(クリックして応援してね)
詳細は、J. Chem. Inf. Model.で発表されています。
J. Chem. Inf. Model., 45 (2), 515 -522, 2005
分子の描画をX行×5列という感じでグリッド表示できるようで、これだけでも便利だなと思います。
人気ブログランキング(クリックして応援してね)
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だとこの辺りも解決できるかな?
人気ブログランキング(クリックして応援してね)
Cluster 3.0を利用して、化合物のFingerprintなどをクラスタリングしたい場合は、類似度(距離)の計算法に注意が必要だと思います。Cluster 3.0ではPearson correlation, Euclidean distance, City-block distanceなどが選択可能ですが、Tanimoto coefficientは利用できないようです。
Pyclusterだとこの辺りも解決できるかな?
人気ブログランキング(クリックして応援してね)
2006年09月29日
JOELibのJPanel3Dの使い方
2006年09月21日
The Molecular Biology Toolkit (MBT)
The Molecular Biology Toolkit (MBT)は、タンパク質の構造表示や解析などを行うことのできるJavaのクラスライブラリです。また、MBTを使ったUser Applicationsもいくつか紹介されています。APIを見ると、便利そうなクラスが多くありますし、かなり有益なライブラリではないでしょうか。
人気ブログランキング(クリックして応援してね)
人気ブログランキング(クリックして応援してね)
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でいいかと思います。
人気ブログランキング(クリックして応援してね)
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でいいかと思います。
人気ブログランキング(クリックして応援してね)
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を使って何か作ってみたくなりますね。
人気ブログランキング(クリックして応援してね)
http://depth-first.com/articles/2006/09/14/cdk-the-ruby-way
RCDKを使って何か作ってみたくなりますね。
人気ブログランキング(クリックして応援してね)