Copyright (c) 1994-2008 Takashi NEMOTO.
Japanese/[English]
このファイルは改訂中です。英語版も参照して下さい。
Cavity プログラムは 結晶中の反応空間を求めるプログラムです。 結晶中の反応空間の形状、大きさを求めることができます。 原型のプログラムは 柳 和則氏らによって開発され、1993年、 根本により全面的な書換えが行なわれました。
論文等に使用する場合、
J. Am. Chem. Soc. (1981) 103 5805-
を参照してください。
ここでいう "Cavity" は 結晶中の反応基の周辺の空間を指します。 具体的には、以下の定義です。
なお、反応基に限らず、結晶から一部の原子を取り除いて、それによって 残された空間を可視化、体積計算をすることができます。
このプログラムでは Cavity の描画は 断面毎に行なわれ、 重ね合わせて出力されます。また、体積計算を指定した場合、 その計算は描画と並行して行なわれます。
http://eels.kuicr.kyoto-u.ac.jp/~tnemoto/sv/download.html よりダウンロードできます
Windows版は SV と共に実行形式ファイルを配布しております。インストーラーを起動して下さい。アンインストールはコントロールパネルの「ソフトウェアの追加と削除」でおこなって下さい。
Windows以外で使用するには、ソースリストからコンパイルします。配布されているファイルは cavity-5.XXX.tar.gz です。
どちらも、ダウンロードページより入手して下さい。
一般的なコンパイル手順は
gzip -d cavXXX.tar.gz tar xvf cavXXX.tar cd cavXXX ./configure make
となります。環境に応じて適宜変更して下さい。
これにより、 実行形式ファイル "cav5" (あるいは cav5.exe)が生成します。また、Turbo-C 用設定ファイル(MS-DOS等)、Watcom C++ 用設定ファイル(OS/2,Windows等)が同梱されていますので、必要に応じてご利用下さい。
最後に、このファイル cav4,cav5 を path に含まれているディレクトリにコピーして 下さい。通常は /usr/local/bin, ~teXsan/bin, /usr/bin 等です。
cavity プログラムは機能的には非常に単純なプログラムで、座標系の変換や対称要素の拡張といった機能を有しておりません。従って、通常の使用においては外部プログラムによって入力ファイルを生成し、実行するのが便利です。この節では、プログラム "SV"(Windows版) を使用して計算を行なう手順を紹介します。自作のプログラム等から利用する場合には次節以降のファイルの仕様をお読み下さい。
cav.ps
ファイルに記録されています。このファイルは PostScript 形式のファイルですので、直接 PostScript Printer に出力したり、PDFに変換、イラストレーターで編集などをすることができます。また、計算終了後、自動的に SV に読み込まれます。
cav.cnt
、データファイルcav.dat
を生成して計算した後、各設定ファイルを編集するのが便利です。ただし、一度メニュー画面から計算を実行してしまうと、せっかく編集したファイルが上書きされてしまいますので、ご注意下さい。設定ファイル編集後、Windows等のコマンドプロンプトから "cav5" を実行すると計算が実行されます。
![]() 2. 計算する反応基の指定 |
![]() 3. 投影方位の指定 (C9AからCO1Aを見おろす方向) |
![]() 5. 計算条件の設定と実行。 |
![]() 7. SV上に読み込まれた cavity |
![]() 失敗例: 計算領域が足りない。奥行き方向の領域の不足は見落しがちなので特に注意 |
![]() 失敗例: 閉空間にならない |
# Title Cavity # iview, Manu,Volume, Bond, HR, ICAVE,N_Atom,N_Bond, N_Cav 3 0 0 0 0 0 93 97 6 # Scale,Radius,CavPen,BondPn,CavBnP,CavAtP 1.0 0.000 1 2 0 0 # Atom Number 1 4 7 10 15 22 25 34 37 40 << 中略 >> 254 255 258 260 264 266 269 272 275 279 281 282 283 # Bond Atom Number (Pair) 1 4 1 7 1 10 1 15 1 99 << 中略 >> 264 269 264 272 272 275 272 279 272 281 281 282 281 283 # Cavity Atom Number 216 224 234 239 242 245 # Cavity Radi 2.900 2.750 2.720 2.400 1.200 # Cavity Range # X Min, X Max, Y Min, Y Max, Z Min, Z Max, Grid -1.718 5.825 -5.446 2.639 -4.944 3.608 0.200
データファイルは (A6,I4,3F10.6) のフォーマットです。 原点及び座標変換行列を先頭部分に記述することができます。
ORIGIN 5.601346 6.952534 3.076390 VMT0 1.000000 0.000000 0.000000 VMT1 0.000000 1.000000 0.000000 VMT2 0.000000 0.000000 1.000000 RVMT0 1.000000 -0.000000 0.000000 RVMT1 -0.000000 1.000000 -0.000000 RVMT2 0.000000 -0.000000 1.000000 CO1B 5 5.779318 10.785900 3.980696 SPHERE 9.000000 CO1B 5 11.639863 4.597915 -3.980696 CO1B 5 11.639863 4.597915 7.399224 N1B 2 4.433502 12.081833 3.715771 N1B 2 10.294047 3.301982 -3.715771 N1B 2 10.294047 3.301982 7.664149 N2B 2 4.276440 9.655498 4.063769 N2B 2 10.136985 5.728317 -4.063769 << 中略 >> H6A2 4 4.032875 0.992564 1.966336 H6A2 4 1.827670 -0.992564 -3.723624 H6A2 4 1.827670 -0.992564 7.656296 H6A2 4 13.548760 -0.992564 -3.723624 H6A2 4 13.548760 -0.992564 7.656296
出力ファイルは以下の構成となっています。
%# StartData
の行から始まります。
%# EndData
の行から始まります。こちらもプリンタ制御用のコードです。
また、計算経過を表示するための "%#" で始まるコメント行が 挿入されています。
%# Start
の直前に印刷時の座標変換のコードが埋めこまれています。印刷がはみ出す場合などの調節にお使い下さい。
%!PS-Adobe-3.0 EPSF-3.0 %%Creater: PS-META-FILE (Cavity 5.5.3) %%BoundingBox: 30 72 559 534 %%Pages: 1 %%EndComment %%EndProlog save /color { false } def % カラー描画を行なうか /color2 { false } def % カラー描画を行なうか /penwidth {[0.001 0.001 0.005 0.050 0.001]} def % 線幅の指定 /pengray {[0.000 0.000 0.000 0.000 0.700]} def % 色指定1 /penred {[0.000 0.000 0.000 1.000 0.700]} def % 色指定2 /pengreen {[0.000 0.000 0.000 0.000 0.700]} def % 色指定3 /penblue {[0.000 1.000 0.000 0.000 0.700]} def % 色指定4 /colorblue {[0 1 0 1 0 1 0 1]} def /colorred {[0 0 1 1 0 0 1 1]} def /colorgreen {[0 0 0 0 1 1 1 1]} def (----中略----) 300.0000 300.0000 translate % 描画の中心座標 (単位 point = 1/72 inch) 50.0000 50.0000 scale % 描画のスケール (単位 point/angstrom) % View Control 1.0000 1.0000 scale % 描画の相対スケール (1.0 で 100%) 0.0000 0.0000 translate % 描画の中心位置の並進 (単位 angstrom) %# StartData %# ORIGIN= 5.601346 6.952534 3.076390 cc /mesh {3} def cc save mesh 3 ne { cc -100 -100 m 0 0 rl 0 0 rl 0 0 rl 0 0 rl clip newpath } if %# RVMT1 = 1.000000 0.000000 0.000000 %# RVMT2 = 0.000000 1.000000 0.000000 %# RVMT3 = 0.000000 0.000000 1.000000 cp 1 p ct (Cavity ) tt %# mess Cavity Start %# mess Z = -3.444 ( 1/ 27) IView=3 %# mess Volume/Plane = 0.000 %# mess Z = -3.244 ( 2/ 27) IView=3 %# mess Volume/Plane = 0.000 %# mess Z = -3.044 ( 3/ 27) IView=3 %# mess Volume/Plane = 0.000 %# mess Z = -2.844 ( 4/ 27) IView=3 %# mess Volume/Plane = 0.000 %# mess Z = -2.644 ( 5/ 27) IView=3 ca 0.903 -2.177 2.378 34 35 a % -2.644 O1A ca 0.903 -2.177 2.378 70 73 a % -2.644 O1A ca -0.880 -1.166 2.808 27 32 a % -2.644 C1A ca 3.037 1.708 2.070 223 231 a % -2.644 C6A ca 3.272 0.849 1.722 206 208 a % -2.644 H6A1 %# mess Volume/Plane = 0.000 %# mess Z = -2.444 ( 6/ 27) IView=3 ca 4.935 -2.151 2.296 149 153 a % -2.444 C11B ca -0.312 2.448 2.828 310 315 a % -2.444 C11C << 中略 >> ca 1.440 -1.611 1.008 178 192 a % 1.556 H6B1 ca -1.305 -1.120 1.794 339 346 a % 1.556 H7B1 ca 3.585 1.373 2.315 261 262 a % 1.556 H7B3 ca 4.770 -1.771 1.751 151 153 a % 1.556 H5B1 ca -0.692 -4.233 2.680 65 67 a % 1.556 O3A %# mess Volume/Plane = 0.000 %# mess Z = 1.756 ( 27/ 27) IView=3 %# mess Volume/Plane = 0.000 %# mess Z = 1.956 ( 28/ 27) IView=3 %# mess Volume/Plane = 0.000 cc restore %# mess XRANGE = -0.1360 3.7172 %# mess YRANGE = -3.0786 1.1391 %# mess ZRANGE = -3.0440 1.9560 %# EndData restore showpage %%EOF
この章はソースリストの各ファイルの説明です。 プログラムを読む場合の参考になさって下さい。 各ファイルは原則として1つのサブルーチン、あるいは関数から成っています。
コントロールファイルは7カラム毎の固定長フォーマットです。改行位置を変更することもできません。
データファイルは10カラム毎の固定長フォーマットです。
SPHERE
キーワードの後、必ず 4文字のスペースをいれて下さい。