NASA CEA を使う

2016年4月5日

はじめに

NASA CEA (Chemical Equilibrium with Applications) は化学平衡計算プログラムである。

セットアップ

NASA CEA のサイト の "REQUEST FORM" からプログラムを入手する。マニュアルは "WHAT IS CEA ?" から入手できる。

ここでは Windows 環境とする。以下のファイルをダウンロードする。

  • CEA+Fortran.zip
  • CEAexec-win.zip
  • CEAgui-jar.zip

GUI の実行には Java (JRE) が必要なので、あらかじめインストールしておく。

適当なフォルダを用意し、パッケージを展開して中に以下のファイルを入れる。

  • CEAgui.jar
  • b1b2b3.exe
  • CEAexec-win.bat
  • FCEA2.exe
  • syntax.exe
  • thermo.lib
  • trans.lib
  • cea2.inp

コマンドの確認

NASA CEA をインストールしたフォルダで、コマンドプロンプトを起動する。FCEA2 を実行して、"cea2" と入力する。

C:\CEAexec>FCEA2


 ENTER INPUT FILE NAME WITHOUT .inp EXTENSION.
   THE OUTPUT FILES FOR LISTING AND PLOTTING WILL HAVE
 THE SAME NAME WITH EXTENSIONS .out AND .plt RESPECTIVELY


cea2

"cea2.out" というファイルができれば OK。

GUI の確認

"CEAexec-win.bat" をダブルクリックすると、GUI が起動するはずである (ここで起動しない場合は Java の問題と思われる)。メニュー[File]-[Open]で "cea2.inp" を選択する。メニュー [Activity]-[Execute CEA2] を選択する。"cea2.out" の画面が出てくれば OK。

化学平衡計算

Versteeg らの『数値流体力学 第2版』に掲載されている例を実行してみる。当量比 1.25 のメタンと空気が 1600 K、1 atm で燃焼するときの生成物の組成を求める。

入力ファイルは "*.inp" というファイルである。ここでは次のようなものになる。

ch4_air_tp.inp

prob
tp p,atm=1 t,k=1600
react 
  name=CH4 moles=1.00
  name=O2 moles=1.60
  name=N2 moles=6.016
only 
  CO2 CO H2O H2 N2 
end

"tp" は温度と圧力を指定する設定である。続いて圧力と温度を指定している。

"react" の下には反応物が列挙されている。メタンの完全燃焼は次のように表される。

CH4 + 2(O2 + 3.76N2) = CO2 + 2H2O + 2×3.76N2

ここで、N2 の係数は O2 と N2 の比率を 0.21 : 0.79 とした場合の 0.79/0.21 = 3.76 である。メタン 1 kg 当たりの空気の量 (空燃比、ここでは理論空燃比) は、空気の平均分子量を 0.21×32 + 0.79×28 = 29 として、(A/F)st = 2×29×(1 + 3.76)/16 = 17.26。空気比は α = 1/φ = (A/F)/(A/F)st (ここでφは当量比) なので、(A/F) = (A/F)st/φ = 13.81。(A/F) = (a×29×(1 + 3.76)/16 = 13.81 なので、a = 1.6。当量比 1.25 でメタンと反応する空気の係数は 1.6 である。そのため、上の設定では O2 の moles に 1.6、N2 の moles に 1.6×3.76 = 6.016 を設定している。

"only" の下には生成物を指定している。解離を考慮して CO と H2 を入れてある。

計算結果は次のようになる。

ch4_air_tp.out (一部)

 MOLE FRACTIONS

 *CO              0.04618
 *CO2             0.06474
 *H2              0.04255
 H2O              0.17927
 *N2              0.66726

文献の結果をモル分率に変換すると、次表のようになる。だいたい同じ値になっている。

SpeciesMole Fraction
CO0.04605
CO20.06486
H20.04268
H2O0.17915
N20.66726

上の問題は、実は設定をもう少し簡単に書ける。

ch4_air_tp2.inp

prob
tp p,atm=1 t,k=1600 phi,eq.ratio=1.25
react 
  fuel=CH4 wt%=100
  oxid=Air wt%=100
only 
  Ar CO2 CO H2O H2 N2 
end

当量比を "phi" で指定している。"fuel" と "oxid" を指定しており、"oxid" に "Air" を指定している。"Air" には Ar が含まれるため、生成物に含めている (そうしないとエラーになる)。

計算結果は次のようになる。

ch4_air_tp2.out (一部)

 *Ar              0.00791
 *CO              0.04613
 *CO2             0.06479
 *H2              0.04239
 H2O              0.17890
 *N2              0.65989

Ar を N2 に足してしまえば、はじめのものとほぼ同じ結果になっている。

圧力、温度の指定は 1 つでなくてもよい。たとえば、次のように温度を複数指定することもできる。

ch4_air_tp3.inp

prob
tp p,atm=1 t,k=1000,1200,1400,1600,1800,2000 phi,eq.ratio=1.25
react 
  fuel=CH4 wt%=100
  oxid=Air wt%=100
only 
  Ar CO2 CO H2O H2 N2 
output
  plot t Ar CO2 CO H2O H2 N2
end

この場合、計算結果は次のようになる。

ch4_air_tp3.out (一部)

 P, BAR            1.0132   1.0132   1.0132   1.0132   1.0132   1.0132
 T, K             1000.00  1200.00  1400.00  1600.00  1800.00  2000.00
 
 ...

 MOLE FRACTIONS

 *Ar              0.00791  0.00791  0.00791  0.00791  0.00791  0.00791
 *CO              0.02452  0.03424  0.04119  0.04613  0.04971  0.05237
 *CO2             0.08640  0.07667  0.06972  0.06479  0.06121  0.05855
 *H2              0.06400  0.05427  0.04732  0.04239  0.03881  0.03615
 H2O              0.15729  0.16701  0.17396  0.17890  0.18248  0.18514
 *N2              0.65989  0.65989  0.65989  0.65989  0.65989  0.65989

また、設定の "output" で "plot" を指定しているため、".plt" ファイルも出力される。次のような内容になっている。

ch4_air_tp3.plt

#  t           Ar          CO2         CO          H2O         H2          N2          
   1.0000E+03  7.9144E-03  8.6397E-02  2.4516E-02  1.5729E-01  6.3998E-02  6.5989E-01
   1.2000E+03  7.9144E-03  7.6672E-02  3.4240E-02  1.6701E-01  5.4274E-02  6.5989E-01
   1.4000E+03  7.9144E-03  6.9722E-02  4.1190E-02  1.7396E-01  4.7324E-02  6.5989E-01
   1.6000E+03  7.9144E-03  6.4785E-02  4.6127E-02  1.7890E-01  4.2387E-02  6.5989E-01
   1.8000E+03  7.9144E-03  6.1207E-02  4.9706E-02  1.8248E-01  3.8808E-02  6.5989E-01
   2.0000E+03  7.9144E-03  5.8547E-02  5.2366E-02  1.8514E-01  3.6149E-02  6.5989E-01
#  t           Ar          CO2         CO          H2O         H2          N2          

断熱火炎温度の計算

再び『数値流体力学 第2版』の例にならって、断熱火炎温度を計算してみる。標準温度と標準圧力において、CH4 と空気の量論比の燃焼に対する断熱火炎温度を計算する。文献では 2288 K である。

断熱火炎温度を求めるには、"tp" の代りに "hp" を用いる。

ch4_air_hp.inp

prob
hp p,atm=1 phi,eq.ratio=1
react 
  fuel=CH4 wt%=100 t,k=298.15
  oxid=Air wt%=100 t,k=298.15
only 
  Ar CO2 H2O N2 
end

"react" で指定している温度は、それぞれの初期温度である。計算結果は次の通り。

ch4_air_hp.out

 T, K             2326.35

参考

  • NASA-CEA 利用方法
  • H. K. Versteeg and W. Malalasekera: 数値流体力学 第2版, 森北出版, 2011.
  • 水谷幸夫: 燃焼工学入門, 森北出版, 2003.