概要
Chemistry Development Kit (CDK) は、ケモインフォマティクスとバイオインフォマティクス向けのオープンソース Java ライブラリです。単体アプリケーションではなく、他のプログラムに組み込むための化学データ構造と処理機能を提供します。文書に記載された対象範囲には、分子と反応の原子価結合表現が含まれており、化学構造の読み込み、操作、検索、表示が必要なソフトウェアに適しています。
対応する入出力形式には、SMILES、SDF、InChI、Mol2、CML があります。化学データの読み書きに加え、CDK は環の検出、Kekulisation、芳香族性のアルゴリズム、座標生成、レンダリングを提供します。検索関連の機能には、完全一致用の正準識別子、部分構造検索、SMARTS パターンマッチングがあります。ECFP、Daylight、MACCS フィンガープリントは類似性検索のワークフローを支援し、QSAR記述子の計算は後続の解析に使える数値特徴量を提供します。これらはツールキットの機能です。提供された情報には、学習済み予測モデルの説明も、予測精度の報告もありません。
Java ライブラリの依存関係またはビルド済み JAR を介して統合できます。README では、Apache Maven によるビルド、依存関係を含むバンドル成果物、アプリケーションに必要なモジュールのみを組み込む選択肢が説明されています。また、Python ユーザー向けに Cinfony と ScyJava の利用経路も案内されています。提供されたビルド手順には Java 1.7 以降が必要とありますが、環境をまたいだ互換性がテスト済みであるとは示されていません。特定のワークフローでは、開発者はリンク先の API ドキュメントと例を確認し、代表的な構造を使って形式処理とアルゴリズムの出力を評価してください。性能ベンチマークは提供されていません。
主な機能
- 原子価結合データ構造で分子と反応を表現し、SMILES、SDF、InChI、Mol2、CML 用のリーダーとライターを提供します。
- 分子処理のための環検出、Kekulisation、芳香族性のアルゴリズムを提供します。
- 分子座標を生成し、化学構造をレンダリングします。
- 完全一致検索用の正準識別子に加え、部分構造検索と SMARTS パターン検索に対応します。
- 類似性検索用に、ECFP、Daylight、MACCS などのフィンガープリント手法を提供します。
- 後続の化学解析に利用する QSAR 記述子を計算します。
用途
- 評価案:化学ファイル変換を Java アプリケーションに統合し、代表的な構造がワークフローに必要な情報を保持するか確認します。
- 評価案:アプリケーション内の分子コレクションを対象に、完全一致検索、部分構造検索、または SMARTS ベースの検索を実装します。
- 評価案:後続の類似性解析やモデル開発向けにフィンガープリントと QSAR 記述子を生成し、予測性能とは分けて適合性を評価します。
- 評価案:分子を表示するソフトウェアに、座標生成と化学構造のレンダリングを追加します。
使い方
- プロジェクト READMEを読み、必要な機能と統合方法を確認します。CDK は別のプログラム内で使用する必要があり、単体アプリケーションではありません。
- リリースからビルド済み JAR を選ぶか、CDK のビルドガイドに従ってソースからビルドします。プロジェクトの README には Maven と Java 1.7 以降が必要と記載されています。
- README の案内に従って、アプリケーションの Java 依存関係またはクラスパスを設定します。タスクに応じて
cdk-bundleを使うか、必要なモジュールのみを使うか決めます。 - JavaDoc と Toolkit-Rosetta の例を参照し、リーダー、ライター、検索関数、記述子計算機能を選びます。
- 広範な統合に進む前に、代表的な入力を少数用いて評価します。要件に照らして、変換結果、検索マッチ、計算出力を確認します。使用方法に関する質問はユーザーメーリングリストを利用してください。投稿前に購読が必要です。