本家 http://mychem.sourceforge.net/

RDKit/Cartridgeと同じくSQL文でデータベース上で構造式検索や記述子演算、フォーマット変換を行う。
OpenBabelでは、MyChemがMySQLとOpenBabelを結び、検索エンジン・記述子計算を行います。

--部分構造検索
SELECT id FROM chem where MATCH_SUBSTRUCT('c1ccccc1', mol)=1
--検索構造[c1ccccc1]なsmilesのほかにsmartsでも可

--類似構造検索
SELECT id FROM chem where TANIMOTO(FINGERPRINT2(SMILES_TO_MOLECULE('c1ccccc1')), mol_fp) > 0.8
--検索構造[c1ccccc1]のFPを算出させて、検索対象群のDB内FPに類似検索を実施

--記述子算出
SELECT id,MOLLOGP(mol) FROM chem
--構造式が記述されたフィールドmolに対してLogP値を算出

--分子フォーマット変換
SELECT id,MOLECULE_TO_INCHI(mol) FROM chem
--構造式が記述されたフィールドmolをinchi形式で表記

Cartridgeを作る

OpenBabelが既にインストールされているとします。まずはmysqlをインストール。ディストリビュータが提供するMySQLでも構わない。

[root@s ~]# yum install mysql-server mysql-devel

そして、OpenBabelとMySQLを結ぶCartridgeな役割をもつMyChemをコンパイル・インストール

[root@s ~]# cd /opt/src/
[root@s src]# wget http://downloads.sourceforge.net/project/mychem/mychem/0.9.1/mychem-0.9.1.tgz
[root@s src]# gzip -cd mychem-0.9.1.tgz | tar xf -
 
[root@s src]# mkdir mychem-build
[root@s src]# cd mychem-build/
[root@s mychem-build]#
[root@s mychem-build]# cmake ../mychem-0.9.1 -L
 
[root@s mychem-build]# rm -rf ./*
[root@s mychem-build]# cmake ../mychem-0.9.1 \
-DOPENBABEL2_INCLUDE_DIR=/opt/openbabel/include/openbabel-2.0 \
-DOPENBABEL2_LIBRARIES=/opt/openbabel/lib/libopenbabel.so \
-DOPENBABEL2_EXECUTABLE=/opt/openbabel/bin \
-DMYSQL_INCLUDEDIR=/usr/include/mysql \
-DMYSQL_LIBRARYDIR=/usr/lib64/mysql \
-DLIB_INSTALL_DIR=/usr/lib64/mysql/plugin \
-DMY_HOST=localhost \
-DMY_USER=root \
-DMY_PASSWD=""
 
[root@s mychem-build]# make; make install

/usr/lib64/mysql/pluginにMyChemのライブラリー[libmychem.so]がインストールされる。
次に、OpenBabelのライブラリをldconfigに取り込ませて読み込ませてMySQLを起動させます

[root@s ~]# echo /opt/openbabel/lib > /etc/ld.so.conf.d/openbabel.conf
[root@s ~]# ldconfig
[root@s ~]# /etc/init.d/mysqld start

最後にOpenBabelの関数をmysqlに登録させます。

[root@c ]# mysql 
mysql> source /opt/src/mychem-0.9.1/src/mychemdb.sql

簡単なテストを行ってみる

mysql> SELECT molweight(SMILES_TO_MOLECULE('CCOCC'));
+----------------------------------------+
| molweight(SMILES_TO_MOLECULE('CCOCC')) |
+----------------------------------------+
|                              74.121600 |
+----------------------------------------+
1 row in set (0.00 sec)
 
mysql> \q
Bye
[root@s ~]#
最新の60件
2024-12-08 2024-12-05 2024-12-04 2024-11-28 2024-11-23 2024-11-22 2024-11-15 2024-11-14 2024-11-12 2024-11-06 2024-11-05 2024-11-04 2024-11-02 2024-11-01 2024-10-29 2024-10-28 2024-10-27 2024-10-23 2024-10-18 2024-10-17 2024-10-15 2024-10-14 2024-10-13 2024-10-11 2024-10-10 2024-10-09 2024-10-08 2024-10-05 2024-10-04 2024-10-03 2024-10-02 2024-10-01 2024-09-30 2024-09-29 2024-09-28 2024-09-27 2024-09-22 2024-09-20 2024-09-17

edit


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-05-02 (金) 15:50:09