※Canteraバージョン:3.0.0
Canteraでメタンの層流燃焼速度を計算してみる。1次元の火炎モデルを使う。
# Simulation parameters
p = ct.one_atm # pressure [Pa]
Tin = 300.0 # unburned gas temperature [K]
phi = 0.9
width = 0.03 # m
圧力を1atm、温度を300K、当量比を0.9に設定、widthは計算領域。
# IdealGasMix object used to compute mixture properties
gas = ct.Solution('gri30.yaml')
gas.TP = Tin, p
gas.set_equivalence_ratio(phi, 'CH4', 'O2:1.0, N2:3.76')
反応メカニズムは、GRI-Mech3.0を使う。ガス相をgasに定義し、温度、圧力、組成を設定。
# Flame object
f = ct.FreeFlame(gas, width=width)
f.set_refine_criteria(ratio=3, slope=0.07, curve=0.14)
f.solve(loglevel=1, auto=True)
print('\nmixture-averaged flamespeed = {:7f} m/s\n'.format(f.velocity[0]))
freely-propagating flat flameのモデルを使う。set_refine_criteriaでグリッドの制御パラメータを設定。solveで解く。層流燃焼速度はvelocity[0]で取得して表示している。
plt.figure('Fig.1')
plt.subplot(2,1,1)
plt.plot(f.grid, f.T)
plt.xlabel('Axial distance [m]')
plt.ylabel('Temperature [K]')
plt.grid(True)
plt.subplot(2,1,2)
plt.plot(f.grid, f.velocity)
plt.xlabel('Axial distance [m]')
plt.ylabel('Flame speed [m/s]')
plt.tight_layout()
plt.grid(True)
plt.show()
最後にグラフを出力する。ここでは、軸方向の温度と燃焼速度を出力。
当量比に対する層流燃焼速度を計算し、実測との比較を行ったグラフを載せておく。
参考文献:
Vagelopoulos, C. M.; Egolfopoulos, F. N. Proc. Combust. Inst. 1998, vol. 27, p. 513