分子モデリングソフト Builcule
Builcule は,低分子有機化合物からタンパク質までの分子モデルをシームレスに作成できることを目指して開発しているオープンソースの分子モデリングソフトです.
モデリングの出発分子として,ファイルの読み取り以外に,メインウィンドウで n-アルカンやペプチドの新規作成や追加が可能です.
共有結合と分子,アミノ酸残基とアミノ酸配列,といった種々の情報を検知し,検知した分子構造に対して,回転・移動,元素や共有結合の編集,官能基の付加,配列アラインメント,重ね合わせ,ホモロジーモデリングといった処理が施せます.
編集が可能な系(ユニットと称します)が 3 個あり,並行して編集が可能です.
主な機能
画像は,Builcule-10 のメインウィンドウです.
アミノ酸配列として PIYTR を入力してペプチドを作成し,水素付加した後に,コンフォメーション探索を行ったところです.
Builcule の主な機能を列挙します.
- 複数の分子を編集可能な系が 3 個
- 分子の新規作成:炭素数を入力して n-アルカンを生成,配列を入力してペプチドを生成.いくつかのファイル形式での入出力
- 分子の編集:分子単位でのコピー,カット,ペースト.並進と回転
- 原子の編集:元素の変更,削除,原子 1 個分の伸長と分岐
- 共有結合の編集:生成と切断
- 枝領域の編集:コピー,カット,接続.結合距離,結合角,および二面角の変更(これらの処理は枝領域単位)
- 置換基:枝領域を置換基セットに追加.置換基接続
- アミノ酸残基:変異,欠失
- ホモロジーモデリング:通常の配列アラインメントによる方法,試作の構造アラインメントによる方法
- 重ね合わせ:原子を指定した重ね合わせ,アミノ酸配列のアラインメントを利用した重ね合わせ
- OpenBabel ライブラリの利用:ファイル入出力,エネルギー極小化,コンフォメーション探索
- 分子間相互作用シミュレーション:趣味的に作成しているものであり,分子動力学的な方法ではありません
詳細については,Builcule マニュアルを参照して下さい.
チュートリアル:Builcule による分子モデル作成例
Builcule を使うと種々の分子モデルが作成できます.
アデノシン-1-リン酸の作成グリセリドの作成
α-シクロデキストリンの作成
タンパク質-タンパク質複合体モデルの作成
タンパク質-低分子複合体の低分子を改変
ビルドとインストール
ソースファイル
まず,libbuilcule-2 をインストールし,その後で Builcule をビルドしてください
ビルド
builcule-10.2.3.tar.bz2 を解凍して生成するディレクトリに移動します.
~$ tar -xjvf builcule-10.2.3.tar.bz2
~$ cd builcule-10.2.3
Makefile を作成します.
~/builcule-10.2.3$ qmake
続いてビルド.
~/builcule-10.2.3$ make
ビルドが成功したら実行ファイル builcule が生成します.
インストール
ビルドに成功したら,
~/builcule-10.2.3$ sudo make install
としてください.
実行ファイルが /usr/local/bin/ にインストールされます.
実行
インストールしてあれば,任意のディレクトリから,
builcule &
で Builcule が起動します.
アンインストール
アンインストールは,ビルド & インストールした後の状態なら(qmake で Makefile を作成した状態),
~/builcule-10.2.3$ sudo make uninstall
としてください.
手動で削除する場合は,
~$ sudo rm /usr/local/bin/builcule
開発環境
libbuilcule も含め,ビルドには C++ コンパイラ + Qt + Eigen + LibOpenBabelが必要です.
下の表は,私がインストールしている開発環境に係るパッケージです.プログラミングに,開発環境の練習記録があります.
パッケージ名(バージョン) | 注 |
g++ (12.2.0) | GNU C++ コンパイラ |
qtbase5-dev(5.15.8) | GUI ライブラリ Qt 5 用の開発ツール |
libglu1-mesa-dev(9.0.2) | Mesa OpenGL ユーティリティライブラリの開発ファイル.描画用 |
libeigen3-dev (3.4.0) | 線形代数用の C++テンプレートライブラリ.分子の三次元座標の処理用 |
libopenbabel-dev (3.1.1) | ライブラリ版 Open Babel |
不具合
アラインメント済みあるいは同一座標のタンパク質をアラインメントしようとすると異常終了する場合があります.
ダウンロード等で入手した PDB ファイルでは,数値の記述位置がずれていることがあり,Builcule でファイルが開けない場合があります.
ただし,OpenBabel で他の形式に変換するなどの対策を取れば開けることがあります.
libbuilcule の課題と位置づけておきます.
Builcule-10 リリース履歴
- 2023 年 11 月 27 日 : 10.2.3 リリース.アミノ酸エディタの内部での設定に誤りがあったので修正しました
- 2023 年 11 月 26 日 : 10.2.2 リリース.選択や表示の状態によっては,ファイルを開く際に異常終了してしまうバグを修正しました
- 2023 年 11 月 25 日 : 10.2.1 リリース.ピックされた原子の近傍の原子を選択する際に,ピックされた原子が非表示の場合に異常終了するバグを修正しました
- 2023 年 11 月 24 日 : 10.2.0 リリース.近傍の原子を選択する際に,それらが属するアミノ酸も選択するように修正しました.ピックに関わるバグを修正しました
- 2023 年 11 月 23 日 : 10.1.4 リリース.アミノ酸を欠失すると異常終了する場合があったので訂正しました
- 2023 年 11 月 16 日 : 10.1.3 リリース.アミノ酸配列の扱いが甘くて異常終了する場合があったので訂正しました
- 2023 年 11 月 5 日 : 10.1.2 リリース.[実験(X)]-[分子間相互作用] で,1000 ステップごとに,ステップ数を端末に出力するようにしました
- 2023 年 11 月 4 日 : 10.1.1 リリース.libbuilcule の変更に伴い,[実験(X)]-[分子間相互作用] のオプションを変更しました
- 2023 年 11 月 2 日 : 10.1.0 リリース.libbuilcule の変更に伴い,メニューに [実験(X)]-[選択した分子の構造を調整] を追加しました
- 2023 年 10 月 25 日 : 10.0.8 リリース.libbuilcule の変更に伴い,ビルドの条件を変更しました.本体は変更なしです
- (略)
- 2023 年 8 月 20 日 : 10.0.0 リリース
- (略)
- 2023 年 3 月 26 日 : 10-α-1 リリース
Builcule のコンセプトは,広島大の故・吉田先生が開発されていた MOLDA の影響を強く受けています(コード上の関連はありません).
私はプログラミングや計算化学は素人であり,先生とはリアルでは 1 度お会いしただけですが,ネット上でたいへんお世話になりました.
Builcule 開発の原点は,このあたりにあります.