KUCRS の
run_comb
は複数のプログラムを呼び出して実行する
コマンドプロンプト用のバッチファイルです。
ここではこれらのプログラムと関連するプログラムについて概説します。
コンポーネント一覧
run_comb
は以下のプログラムを呼び出します。
combust |
自動生成 run_comb の主プログラム |
thermgen |
THERM [#1] プログラムのバッチ版 |
thermpac |
熱力学関数を HOE に回帰し 5000 K まで外挿するプログラム |
pac99m |
NASA-CEA2 [#2] に含まれる熱力学データ生成プログラム (バッチ処理用に改変したもの) |
c97to7m |
熱力学データ形式変換プログラム |
chemgen |
マクロ形式の反応入力を処理するプログラム |
trangen |
Chemkin 用の輸送データを生成するプログラム |
mollib |
分子ライブラリ管理プログラム |
mol2smiles |
内部形式から SMILES へのコンバータ |
smiles2mol |
SMILES から内部形式へのコンバータ |
サンプル入力を用いた KUCRS コンポーネントの使用例
以下に、KUCRS\work\sample にあるサンプル入力ファイルを用いて、
KUCRS のコンポーネントを使用する方法を簡単に解説します。
1. 準備
簡単な使い方 に従って
環境設定をしてから KUCRS\work で envKUCRS を実行し、KUCRS\work\sample
ディレクトリに移動して下さい。
2. SMILES からの加成則グループデータの作成
KUCRS\work\sample\samp.inp の内容を以下に示します。
iC4H9OO [O]OCC(C)C C4H8OOHit OOC[C](C)C C4H8OOHii OOCC(C)[CH2]化学種の名前と SMILES 表記が一行に記述されています。 コマンドプロンプトで、以下のように入力して下さい。
c:\KUCRS\work\sample> smiles2mol samp.inp samp_mol.dat -t
smiles2mol
は、samp.inp に書かれた、SMILES 表記の化学構造を KUCRS
でのユニークな内部表現に変換して samp_mol.dat に保存します。
このときにコンソールに化学構造や、熱力学データの推定のための、
加成則のグループなどをコンソールに出力します。
KUCRS rev. 2021.08.23a ... ----------------------------------------------------------- name: iC4H9OO formula: C4H9O2 SMILES: [O]OCC(C)C struct: O.- O - C - C - C |_- C groups: iC4H9OO R C 4 H 9 O 2 $ C/C/H2/O 1 C/C/H3 2 C/C3/H 1 O/C/O 1 O/H/O 1 $ ALPEROX 4 9 code: a0008066 (ROO) ----------------------------------------------------------- ...
smiles2mol
のオプション "-t"
は groups:
の情報のみを別の samp_thg.inp に書き出す場合に使用します。 このときの
samp_thg.inp は以下のようになっています。
Thermodata generated by smiles2mol (Feb 04, 2011) iC4H9OO R C 4 H 9 O 2 $ C/C/H2/O 1 C/C/H3 2 C/C3/H 1 O/C/O 1 O/H/O 1 $ ALPEROX 4 9 C4H8OOHit R C 4 H 9 O 2 $ C/C/H2/O 1 C/C/H3 2 C/C3/H 1 O/C/O 1 O/H/O 1 $ T 5 18 C4H8OOHii R C 4 H 9 O 2 $ C/C/H2/O 1 C/C/H3 2 C/C3/H 1 O/C/O 1 O/H/O 1 $ P 5 6
3. 加成則グループデータからの熱力学データの作成
熱力学データを生成するためには、以下のように入力して下さい。
c:\KUCRS\work\sample> thermgen samp_thg.inp samp_thg.lst
ここで生成する samp_thg.lst の内容は以下のようになっています。
UNITS:KJ Thermodata generated by smiles2mol (Feb 04, 2011) SPECIES Hf S Cp 300 400 500 600 800 1000 1500 DATE ELEMENTS iC4H9OO -67.36 379.80 121.21 149.45 173.59 194.43 226.81 252.55 thgen C 4 H 9 O 2 0 G 4 C4H8OOHit -32.64 395.04 126.52 150.96 173.59 194.18 226.69 252.34 thgen C 4 H 9 O 2 0 G 5 C4H8OOHii -13.39 393.17 126.57 155.64 180.46 201.50 233.34 257.69 thgen C 4 H 9 O 2 0 G 5このTHERM プログラムのリスト形式のデータは
thermpac
によって
pac99m
の入力形式ファイルに変換することで最終的に NASA
多項式係数形式に変換することができます.
c:\KUCRS\work\sample> thermpac samp_thg.lst samp_thg.i97
と入力します. この操作によって samp_thg.i97 に pac99m
の入力ファイルが生成します. その内容は以下の通りです.
NAME iC4H9OO C4H9O2 HF298 -67.3600KJOULE DATE thgen LSTS OLD OUTP MFIG LSQS ATM METH READIN JOULES ATM T 200.0000CP/R 11.5533H-H0RT 10.8142S/R 40.5599 T 298.1500CP/R 14.5122H-H0RT 11.5077S/R 45.6795 T 300.0000CP/R 14.5769H-H0RT 11.5265S/R 45.7694 T 400.0000CP/R 17.9773H-H0RT 12.7212S/R 50.4367 T 500.0000CP/R 20.8915H-H0RT 14.0726S/R 54.7711 : T 4600.0000CP/R 40.2119H-H0RT 34.0938S/R 128.7897 T 5000.0000CP/R 40.3301H-H0RT 34.5882S/R 132.1477 FINISH NAME C4H8OOHit :"LSTS OLD" は旧 7 係数型式の温度のべき乗数を指定しています. 新 9 係数形式の熱力学データを生成したい場合はこの行を削除します.
pac99m
は次のように実行します.
c:\KUCRS\work\sample> pac99m samp_thg
これにより生成する熱力学データ (samp_thg.c97) の書式は整形処理が必要です.
以下のように c97to7m
によって整形します.
c:\KUCRS\work\sample> c97to7m < samp_thg.c97 > samp_thg.dat
整形されたファイル (samp_thg.dat) は以下のようになっているはずです。
THERMO 200.000 1000.000 5000.000 iC4H9OO thgen C 4H 9O 2 G 200.00 5000.00 1000.00 1 1.01467873E+01 3.05538270E-02-1.24407750E-05 2.30628955E-09-1.59891993E-13 2 -1.32467955E+04-2.26594992E+01 7.47214966E+00 6.10466106E-03 9.24718413E-05 3 -1.29154051E-07 5.35116356E-11-1.11876674E+04-1.78866742E+00 4 C4H8OOHit thgen C 4H 9O 2 G 200.00 5000.00 1000.00 1 1.03491111E+01 3.03505002E-02-1.24974449E-05 2.33498675E-09-1.62788316E-13 2 -9.12155685E+03-2.18765280E+01 1.18358510E+01-1.49152863E-02 1.28251416E-04 3 -1.54673866E-07 5.98762503E-11-7.64728496E+03-1.99286829E+01 4 C4H8OOHii thgen C 4H 9O 2 G 200.00 5000.00 1000.00 1 1.22743731E+01 2.84317160E-02-1.17144065E-05 2.18973048E-09-1.52718166E-13 2 -7.49654463E+03-3.30242364E+01 8.22486738E+00 3.40269298E-03 1.04442186E-04 3 -1.44956105E-07 5.99150535E-11-4.87848708E+03-4.06884648E+00 4 END
4. 加成則グループデータからの輸送係数データの作成
trangen
プログラムは加成則グループデータから輸送係数データを生成します。
以下のように入力してください。
c:\KUCRS\work\sample> trangen samp_thg.inp --no_append
これにより以下のような内容の samp_trn.dat が生成します。
! ! generated by KUCRS rev. 2021.08.23a (c) 2002-2021 by A. Miyoshi ! on Aug 25, 2021. ! ! Transport data generated by trangen (Aug 25, 2021) iC4H9OO 2 453.6 5.358 0.0 0.0 1.0 C4H8OOHit 2 453.6 5.358 0.0 0.0 1.0 C4H8OOHii 2 453.6 5.358 0.0 0.0 1.0
5. Chemkin 形式の反応機構の生成
chemgen
は、マクロ表現の化学反応リストを処理して、Chemkin
形式の化学反応機構を生成します。
マクロは KUCRS\libdata\rxn_macr.dat
に定義します。
以下に KUCRS\libdata\rxn_macr.dat
に定義されている、
マクロの一部を示します。
Isom/RO2/5pt 6.95E+11 0. 27150. Isom/RO2/6pp 3.07E+11 0. 22960.上の一行目の例では
"Isom/RO2/5pt"
という名前のマクロ
[一級 (primary) RO2 ラジカルの5員環遷移状態を経由した
分子内の三級 (tertiary) 水素引抜反応を意味しています]
に修正アレニウス式のパラメータ, A = 6.95E+11, n = 0.,
Ea = 27150.,
を定義しています。 KUCRS\work\sample\samp_chg.inp
に記述されている、マクロ表現の化学反応リストは、
以下のようになっています。
iC4H9OO = C4H8OOHit $ Isom/RO2/5pt 0 1 Y iC4H9OO = C4H8OOHii $ Isom/RO2/6pp 0 2 Y一行に一つの反応が記述されています。
"$"
までが反応式で、
"="
の左側に反応物、右側に生成物を記述します。
"$"
の右側には、マクロ名・ 活性化エネルギーのシフト値・
前指数因子の倍率・ 逆反応を考慮するか否かのフラグを記述します。
2行目の反応には "Isom/RO2/6pp"
で定義されるメチル基 1 つあたりの速度定数の 2 倍が割り当てられます。
(i-butylperoxy には等価なメチル基が 2 つあることに注意してください)
この入力を chemgen
で処理するには、
以下のように入力します。
c:\KUCRS\work\sample> chemgen samp_chg.inp samp_thg.dat --no_append
c:\KUCRS\work\sample> mol2smiles samp_mol.dat samp.smiles -l
c:\KUCRS\work\sample> bsmiles samp_thm.dat samp_sp_.csv samp_the.dat
c:\KUCRS\work\sample> copy /b samp_spc.inp + samp_the.dat + samp_rxn.inp samp_chm.inp
samp_chm.inp は、以下に示すように、
完全な形式の Chemkin の反応機構入力ファイルになっています。
(他のファイルは、このファイルを生成するために書き出した一時ファイル
なので、通常は削除してしまってかまいません。)
c:\KUCRS\work\sample> mol2smiles samp_mol.dat samp.smiles -l
c:\KUCRS\work\sample> bsmiles samp_thm.dat samp_sp_.csv samp_the.dat
c:\KUCRS\work\sample> copy /b samp_spc.inp + samp_the.dat + samp_rxn.inp samp_chm.inp
! ! generated by KUCRS rev. 2021.08.23a (c) 2002-2021 by A. Miyoshi ! on Aug 25, 2021. ! elements H HE C N O AR end species iC4H9OO C4H8OOHit C4H8OOHii end thermo all 300.000 1000.000 5000.000 ! ! [_ SMILES="[O]OCC(C)C" _] iC4H9OO thgen C 4H 9O 2 G 200.00 5000.00 1000.00 1 1.01467873E+01 3.05538270E-02-1.24407750E-05 2.30628955E-09-1.59891993E-13 2 -1.32467955E+04-2.26594992E+01 7.47214966E+00 6.10466106E-03 9.24718413E-05 3 -1.29154051E-07 5.35116356E-11-1.11876674E+04-1.78866742E+00 4 ! ! [_ SMILES="OOC[C](C)C" _] C4H8OOHit thgen C 4H 9O 2 G 200.00 5000.00 1000.00 1 1.03491111E+01 3.03505002E-02-1.24974449E-05 2.33498675E-09-1.62788316E-13 2 -9.12155685E+03-2.18765280E+01 1.18358510E+01-1.49152863E-02 1.28251416E-04 3 -1.54673866E-07 5.98762503E-11-7.64728496E+03-1.99286829E+01 4 ! ! [_ SMILES="OOCC(C)[CH2]" _] C4H8OOHii thgen C 4H 9O 2 G 200.00 5000.00 1000.00 1 1.22743731E+01 2.84317160E-02-1.17144065E-05 2.18973048E-09-1.52718166E-13 2 -7.49654463E+03-3.30242364E+01 8.22486738E+00 3.40269298E-03 1.04442186E-04 3 -1.44956105E-07 5.99150535E-11-4.87848708E+03-4.06884648E+00 4 end reactions cal/mole moles iC4H9OO=C4H8OOHit 6.950e+11 0.000 27150.0 rev / 3.884e+10 0.123 18626.1 / iC4H9OO=C4H8OOHii 6.140e+11 0.000 22960.0 rev / 1.094e+12 -0.375 10050.0 / end
chemgen
の実行にはマクロ形式の反応機構入力ファイル
(上の例では samp_chg.inp) 以外に熱力学データファイルが必要です。
ここの例では、一連の操作で作成した samp_thg.dat を利用するようになっています。
熱力学データは逆反応の速度パラメータを計算するために使用されています。