2006年08月01日

CDKでASAの計算

Acessible Surface Area(ASA)の計算を行ってみます。CDKでは、NumericalSurfaceクラスを用いてASAの計算ができます。デフォルトの溶媒半径は1.4Åです。一般的に解析的な計算手法と比較して精度は落ちますが、計算速度が速いという特徴があります。

まずは、AtomContainerを引数にしてインスタンスを作成します。

 NumericalSurface ns = new NumericalSurface(mol);

ASAの計算は、calculateSurface()メソッドで実施します。

 ns.calculateSurface();

最後に、getTotalSurfaceArea()メソッドによりASAを出力します。

 System.out.println("Total ASA: "+ns.getTotalSurfaceArea());

原子ごとのASAがほしい場合は、getSurfaceArea(int atomIdx)メソッドを用います。

 for(int i=0;i<mol.getAtomCount();i++){
 try {
  double atom_asa = ns.getSurfaceArea(i);
  System.out.println("Atom "
     + (i+1)
     + " "+atom_asa);
 } catch (CDKException e) {
  e.printStackTrace();
 }

例として、ALAのASAを計算してみます。

ASA.png

出力:
Total ASA: 371.2141660913026
Atom 1 19.422585694045885
Atom 2 5.849449171443343
Atom 3 30.096359446619783
Atom 4 12.202076766236653
Atom 5 65.96169616886122
Atom 6 47.21116324776361
Atom 7 30.572670707796863
Atom 8 26.5907020193718
Atom 9 16.790634636192344
Atom 10 23.64846959959106
Atom 11 31.103599866253536
Atom 12 24.997914544001777
Atom 13 36.766844223124735


banner_02.gif
人気ブログランキング(クリックして応援してね)


posted by わばのり at 07:52| Comment(3) | TrackBack(0) | CDK | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。