《电子技术应用》
您所在的位置:首页 > 模拟设计 > 设计应用 > 基于服务架构的OpenFOAM求解客户端设计
基于服务架构的OpenFOAM求解客户端设计
电子技术应用 2023年3期
马轶聪,牟泓宇,淮晓永
(华北计算机系统工程研究所,北京 100083)
摘要: 针对OpenFOAM解算软件缺乏GUI功能用户交互体验性差问题,研究设计了一个OpenFOAM求解客户端软件。设计了基于服务的“云+端”计算架构,设计开发了一个OpenFOAM求解器服务,GUI客户端远程调用访问求解器服务,并集成可视化服务实现了数据可视化分析功能,实现了云端协同的求解计算功能;研究设计了基于界面模板的动态GUI界面生成方法,实现了客户端软件界面用户自定义配置功能。该软件支持基于服务的功能扩展集成,支持用户界面自定义、求解器用户设置界面自定义功能,用户界面友好,可扩展性强。通过实际的算例进行解算,验证表明了客户端软件能够通过远程调用云端求解服务、可视化服务实现完整的求解计算流程。
中图分类号:TP311.5 文献标志码:A DOI: 10.16157/j.issn.0258-7998.222815
中文引用格式: 马轶聪,牟泓宇,淮晓永. 基于服务架构的OpenFOAM求解客户端设计[J]. 电子技术应用,2023,49(3):124-129.
英文引用格式: Ma Yicong,Mou Hongyu,Huai Xiaoyong. Design of OpenFOAM solver client based on service architecture[J]. Application of Electronic Technique,2023,49(3):124-129.
Design of OpenFOAM solver client based on service architecture
Ma Yicong,Mou Hongyu,Huai Xiaoyong
(National Computer System Engineering Research Institute of China, Beijing 100083, China)
Abstract: Aiming at the problem that the OpenFOAM solving software lacks GUI function, the user interaction experience is poor, this paper studies and designs an OpenFOAM solving client software. The paper designs a service-based "cloud + terminal" computing architecture, designs and develops an OpenFOAM solver service, which can be remotely called and accessed by the GUI client, and integrates the visualization service to realize the data visualization analysis function and realize the cloud collaborative solution calculation function. This paper researches and designs a dynamic GUI interface generation method based on interface template, and realizes the user-defined configuration function of the client software interface. The software supports service-based function extension integration,and supports user interface customization and solver user setting interface customization functions. The user interface is friendly and the expansibility is strong. Through the actual calculation example, the verification shows that the client software can realize the complete solution calculation process by calling the cloud solution service and visualization service remotely.
Key words : flow field solution;service architecture;OpenFOAM;GUI

0 引言

计算流体动力学(Computational Fluid Dynamics,CFD)是通过计算机数值模拟计算和图像显示,对包含有流体流动及热传导等相关物理现象的系统进行分析的一门学科[1],在工业设计中起到了重要的作用。经过几十年的长足发展,已有多款CFD商业软件(Fluent、CFX、STAR-CD/CCM+等)被应用于科研及实际生产中。由于商业软件在使用上有较高专业性要求且费用高昂,OpenFOAM作为一款开源免费的解算工具库被越来越多的科研人员所使用[2]。OpenFOAM软件配置过程灵活,可以通过自定义编程进行使用,但由于OpenFOAM仅支持通过命令行形式进行调用、无GUI图形交互[3]的原因,导致软件的使用效率较低,且新手使用时上手困难。同时,OpenFOAM仅为一些基本物理量提供设置及监控,对于其他物理量的监控则需要用户编程进行实现,提高了软件的使用门槛与操作难度。因此,针对于OpenFOAM的GUI功能开发也成为了提高软件使用效率的重要拓展方向之一。

由于解算软件功能复杂,现有的商业软件为满足大部分业务使用者的交互需求,开放了更多的参数设置接口,提高了GUI界面参数配置流程的复杂性。用户在进行求解参数配置时,需要考虑其他参数对当前工程解算的影响,增大了使用难度。因此,GUI定制化开发也成为了目前解算软件致力于解决的问题。除此之外,求解计算主要以网格为计算对象单元,为了获得更加准确的数值仿真结果,工程中需要将计算域划分为非常细小的网格单元,使得计算网格量通常可以达到千万甚至上亿的数量级。网格数量越多,计算时对CPU、内存等计算资源的需求也会越高。因此,大型复杂模型的仿真求解需要大量的计算资源进行支撑,提高软件使用效率。

为了解决OpenFOAM缺少GUI交互功能的问题,本文设计实现了一个OpenFOAM求解客户端,提供友好的用户交互界面。为了满足求解计算中对于大量计算资源的需求,设计了基于服务的“云+端”计算架构[4],设计开发了一个OpenFOAM求解器服务,将OpenFOAM求解器进行服务化封装,部署于云端,通过云端协同的方式实现远程云端解算服务调用、可视化服务调用。通过使用云端丰富的计算资源,满足用户使用场景需求,提高软件使用效率。同时,软件客户端使用界面模板进行求解设置界面的动态生成,支持用户界面自定义配置,满足了软件易维护、可拓展的特性。




本文详细内容请下载:https://www.chinaaet.com/resource/share/2000005241





作者信息:

马轶聪,牟泓宇,淮晓永

(华北计算机系统工程研究所,北京 100083)


微信图片_20210517164139.jpg

此内容为AET网站原创,未经授权禁止转载。