工业CFD (computational fluid dynamics)软件属于计算机辅助工程(computer-aided engineering, CAE)软件的一种, 在航空航天等领域有着广泛的应用. 其开发过程强烈依赖于流体力学、数学、计算机以及其他领域学科知识模型, 涉及大量理论推导、模型构建、算法优化、验证与确认等专业性、基础性科学研究, 导致软件系统构成复杂, 研发难度巨大. 通过引入软件工程的方法和实践, 能够对软件开发进行更有效的组织与管理, 达到缩短开发周期、提升软件质量的目的. 分析了工业CFD软件的特点和发展趋势, 提出了适合于工业CFD软件的增量与迭代结合的开发模型. 自主研发了面向CFD仿真软件的自动化持续集成平台. 从软件交互、封装与效率、功能扩展性及高性能集群环境部署等方面给出了工业CFD软件的设计建议. 针对性建立了适用于科学计算软件的验证与确认方法. 最后给出了一款国产自主CFD软件示范性案例, 以期为相关研究者和实践者提供参考.
Industrial computational fluid dynamics (CFD) software is a kind of computer-aided engineering (CAE) software, which has a wide range of applications in aeronautics and astronautics and other fields. Its development process strongly relies on fluid mechanics, mathematics, computers, and other disciplines knowledge models, involving a large number of professional and fundamental scientific researches, such as theoretical derivations, physical model establishment, algorithm optimization, verification and validation, leading to a very complex composition of the software system and huge research and development difficulty. By introducing software engineering methods and practices, software development can be effectively organized and managed to shorten development and to improve the quality of the software. This study briefly analyzes the characteristics and new trends of industrial CFD software. Base on this, a combination of incremental and iterative developing model suitable for industrial CFD software is proposed. An automated continuous integration platform for CFD simulation software is developed. Suggestions for industrial CFD software design are given from the aspects of software interaction, encapsulation and efficiency, functional scalability, and high-performance cluster environment deployment. Targeted verification and validation methods suitable for scientific computing software are established. Finally, a demonstration case of domestic independent CFD software is illustrated, with a view to providing references for related researchers and practitioners.