pyJac:化学动力学解析雅可比矩阵生成器
计算物理
2017-03-31 v3 化学物理
摘要
对燃烧现象的精确模拟需要使用详细的化学动力学,以捕捉诸如点火与熄灭等极限现象,并预测污染物形成。然而,具有实际意义的碳氢燃料的化学动力学模型通常具有大量的物种和反应,并在控制微分方程中表现出高度的数学刚性,尤其是对于较大的燃料分子。为了积分控制化学动力学的刚性方程,一般反应流模拟依赖于需要频繁雅可比矩阵求值的隐式算法。一些原位和事后计算诊断方法也需要准确的雅可比矩阵,包括计算奇异扰动和化学爆炸模式分析。通常,有限差分对这些矩阵进行数值近似,但对于较大的化学动力学模型,这带来了显著的计算需求,因为化学源项求值次数随物种数量的平方缩放。此外,现有的解析雅可比工具未优化求值或支持新兴的SIMD处理器如GPU。在此我们介绍pyJac,一个基于Python的开源程序,用于生成化学动力学建模与分析中使用的解析雅可比矩阵。作为演示,我们首先确立了氢、甲烷、乙烯和异戊醇氧化动力学模型的雅可比矩阵的正确性,然后通过矩阵求值计时比较展示了使用pyJac在CPU和GPU上可实现的性能。
引用
@article{arxiv.1605.03262,
title = {pyJac: analytical Jacobian generator for chemical kinetics},
author = {Kyle E. Niemeyer and Nicholas J. Curtis and Chih-Jen Sung},
journal= {arXiv preprint arXiv:1605.03262},
year = {2017}
}
备注
42 pages, 7 figures