低成本数字教室软硬件系统建设与航空发动机虚拟仿真课程设计

2022-10-26 08:52胡海洋王方郑赟李高翔信忠仁
数字技术与应用 2022年10期
关键词:内存航空教室

胡海洋 王方 郑赟 李高翔 信忠仁

1.北京航空航天大学能源与动力工程学院;2.北京艾博永胜科技发展有限责任公司

利用有限的经费,完成了数字教室巨屏互动显示系统、高性能计算节点及其无线访问与控制设备的搭建;并对教学团队自研的一系列航空发动机CAE软件进行了源代码级硬件适配与性能优化。在此基础上,完成了航空发动机虚拟仿真综合实验课的设计,通过精心挑选的认知、演示、设计三类虚拟仿真实验,使学生了解虚拟仿真技术及其应用,了解自主研发的部分虚拟仿真软件的功能与使用方法,并初步掌握虚拟仿真软件的核心编程方法与技巧。课程的试讲效果良好,数字教室各系统运转流畅,为学生之后的毕业设计与研究生阶段的虚拟仿真工作打下了良好的基础。

虚拟仿真实验教学是教育部《关于一流本科课程建设的实施意见》中的重要组成部分[1],其核心是利用现代计算机与信息技术,有效解决真实实验项目条件不具备或实际运行困难,涉及高危或极端环境,高成本、高消耗、不可逆操作,以及大型综合训练等部分实体试验课程的问题[2,3]。截至2021年9月,教育部已认定728门国家虚拟仿真实验教学一流课程[4],但其中绝大部分是生产与试验流程的3D动画仿真[5]。

为响应“突出优势学科,完善专业布局”,及时将学术研究、科技发展前沿成果引入课程,增加研究性、创新性、综合性内容的最新虚拟仿真实验教学要求[1,6],北京航空航天大学能源与动力工程学院设立了航空发动机虚拟仿真综合实验课。其目的是瞄准国内航空发动机领域的设计研发高度依赖国外商用CAE(Computer Aided Engineering)软件尤其是数值模拟类软件,“卡脖子”风险大;近年虽然大力开展自主替代产品的研发,但面临技术欠账过多,年轻一代开发人才欠缺等需要迫切解决的问题[7,8],使学生了解、掌握,并在科学研究中使用、改进自主开发的航空发动机CAE软件。

由于CAE软件尤其是数值模拟类软件与上述3D动画仿真软件的使用、开发方法与运行环境要求完全不同,因此需要完全不同的虚拟仿真实验课程设计思路与数字教室软硬件环境的搭建方法。

1 低成本数字教室软硬件系统的搭建

选择自行搭建数字教室互动教学系统的原因有以下几点:

(1)北京航空航天大学能源与动力工程学院决定建设该系统时,配套经费不足。而包含大尺寸LED屏的整套数字教室互动教学系统的市场报价超过200万元。

(2)不同于国内绝大多数数字教室,该数字教室的首要建设目的是使学生掌握各种航空发动机领域的数值模拟软件的使用与开发方法。其运行需要消耗巨大的计算资源,本已不足的建设经费还要有至少一半用于高性能计算服务器的购买;市场上提供的整套数字教室互动教学系统也不包含高性能计算设备。

(3)在搭建该数字教室前进行的调研表明,学生出于课后练习与讨论的便利性,更倾向于使用自带笔记本电脑而不是教室的一体机进行相关软件的学习操作。为方便外部电脑连接,该数字教室采用无线互联方案,而市场上提供的整套数字教室互动教学系统几乎都是基于教室内固定电脑的有线连接方案。

不同于实际工程领域动辄数小时乃至数天完成一个复杂流体机械部件的相关数值模拟计算,课堂教学挑选的数值模拟算例需要尽可能降低计算规模,以便在数分钟内完成计算。考虑到计算规模越小的算例,计算节点间数据交换的速度越容易成为计算效率瓶颈,上述高性能计算服务器为单节点的计算性能优化,采用无线互联方案,适合多个学生(或小组)同时进行各自的算例计算的教学场景。

使用的航空发动机部件特性数值模拟软件全部是教学团队的自研产品。由于上述高性能计算服务器是NUMA(Non Uniform Memory Access)构架,部分软件进行了源代码优化以在上述计算设备上达到最优计算效率。

1.1 基于无线网络的互动教学系统

如图1所示:使用笔记本电脑或一体机的学生采用EV屏幕共享软件向讲台上的PC发送屏幕共享请求;讲台上的教师用一套键鼠、显示器通过KVM(Keyboard Video Mouse)切换控制三台PC,并在每台PC端的EV屏幕共享软件中选择接收的屏幕图像信号来源;通过专用平板电脑控制拼接屏控制器,即可将老师与学生电脑上的内容以分割、合成、画中画等形式显示在LED屏上,实现师生互动;三台PC与学生的笔记本、一体机又可以直接对计算服务器进行控制,派发数值计算任务。

1.2 共享内存式并行计算程序在NUMA架构服务器上的适配

非一致内存访问(NUMA,Non Uniform Memory Access)是当前高性能服务器的硬件架构发展趋势。每个NUMA架构的CPU包含多个NUMA节点(NUMA Node),每个都有自己的直连内存控制器(MC)和独立的本地内存(RAM)。每个NUMA节点包含多个CPU核心,其必须借助NUMA节点间的数据中转才能访问其他NUMA节点的内存单元,如图2所示。共享内存式并行计算程序默认将数组开辟在执行线程的CPU直连的内存单元中。常规的动态数组开辟方式(如图3上半部分所示)将其开辟到CPU 1直连的内存单元RAM1中,此时其余NUMA节点的CPU如果同时访问RAM1就会造成其内存控制器的拥堵(其他NUMA节点的内存控制器则完全闲置),计算效率大幅下降。程序优化的核心思想是使用不同NUMA节点的CPU线程,将动态数组分开开辟在不同的内存控制器控制的内存单元中,即可在程序访问该动态数组时发挥所有内存控制器的作用,避免拥堵,使计算效率恢复正常。如图3下半部分所示,对于本项目采购的双路服务器,每台包含8个NUMA节点(NUMA_node=8),每个NUMA节点的CPU线程数为32(threads_per_NUMA=32)。

优 化 后 的CFD(Computational Fluid Dynamics)程序,在上述单台服务器上仅需11.5min即可完成吸气高超飞行器内外粘性流场(计算网格数175万)的数值计算,计算速度是优化前的6倍(如图4所示),满足教学演示实验的运行时间要求。

整个数字教室的建设费用为130万元,如表1所示。考虑到国内Linux的普及程度,服务器与各类终端的操作系统选用Windows10。整套系统无盗版软件。学生如使用自带笔记本,仅需要安装免费版的EV屏幕共享软件,即可连接使用教室的各种软硬件资源,并与老师和其他同学进行多媒体交流互动。

表1 数字教室设备明细Tab.1 Details of digital classroom equipment

2 航空发动机虚拟仿真综合实验课程的设计

试讲课程共16学时,分为认知、演示、设计三部分。认知部分以教师讲解软件的功能和用途、操作过程、计算结果为主;演示部分在教师完成软件的功能与使用方法讲解后,学生远程控制数字教室的计算节点,对比分析不同计算参数对软件运行结果的影响;设计部分则要求学生走完整个CAE软件的使用流程,包括分析对象几何建模、计算网格划分、运行软件、分析计算结果,并掌握CAE软件的核心编程技巧。教学大纲如下。

2.1 虚拟仿真技术概述及演示实验

(1)试验内容:1)发动机叶片鸟撞及机匣包容仿真模拟;2)基于高保真高性能数值仿真软件HGAE的涡轮叶片流场与固体结构温度场耦合计算。

(2)教学要求:使学生了解什么是虚拟仿真,虚拟仿真技术在航空发动机设计领域有哪些应用;介绍学院的虚拟仿真工作与虚拟仿真软件开发情况,使学生理解虚拟仿真的实现方法、什么是计算网格。

(3)重点和难点:虚拟仿真领域中数值模拟与仿真的区别;结构与非结构计算网格拓扑结构的区别;主流数值模拟结果后处理软件的基本使用方法。

2.2 认知实验

(1)试验内容:1)二维槽道湍流流动的大涡模拟;2)直升机整体式粒子分离器稀疏气固两相流场数值模拟;3)吸气高超飞行器内外流场数值模拟。

(2)教学要求:使学生了解如何通过虚拟仿真技术获得近壁面湍流流场的瞬态流动特性与统计特性,加深学生对湍流基本现象与规律的认识,高超声速流场激波系的认识。体会高性能服务器与家用电脑计算性能的差别。了解主流商用CFD软件的计算功能缺陷与二次开发,粒子在流场中的受力与传热特性及其控制方程,基于拉格朗日坐标系的粒子轨迹追踪算法。

(3)重点和难点:湍流统计特性参数及其沿固壁法向的变化规律;不同尺寸粒子在粒子分离器中的运动规律差异;入口条件对直升机整体式粒子分离器砂砾分离效率的影响。

2.3 演示实验一

(1)试验内容:基于自研软件ERIR的导弹远程红外成像计算。

(2)教学要求:教师讲解目标红外信号的来源与军事意义,红外成像计算的过程和原理,ERIR软件的开发背景与工程应用情况。学生自主实验分为四个步骤:1)导弹外流场、发动机排气系统内流场与固体结构温度场流动与耦合传热传质特性计算;2)基于离散传递法的固壁反射辐射计算;3)基于射线追踪法的导弹近距离红外成像计算;4)导弹近距离红外成像在大气中的传输衰减特性计算。为学生发放程序的完整使用说明文档,鼓励学生建立自己的飞行器与发动机模型,尝试设置不同的计算参数与计算边界条件。

(3)重点和难点:多分区结构网格的绘制;计算边界条件的类型、意义与设置方法。

2.4 演示实验二

(1)试验内容:基于自研软件AECSC的高雷诺数湍流火焰的模拟计算。

(2)教学要求:教师讲解航空发动机燃烧室高雷诺数湍流火焰的来源与意义,湍流燃烧计算的过程和原理,AECSC软件的开发背景与工程应用情况。学生自主实验分为三个步骤:1)高雷诺数湍流流场模拟;2)高雷诺数湍流火焰数值模拟;3)改变边界条件进行高雷诺数湍流火焰计算。为学生发放程序的完整使用说明文档,鼓励学生建立自己的网格,尝试设置不同的计算边界条件。

(3)重点和难点:大涡模拟与雷诺平均流场计算在计算网格绘制与边界条件设置上的异同。

2.5 演示实验三

(1)试验内容:共享内存并行计算程序开发初步。

(2)教学要求:教师通过直接讲解与运行演示采用OpenMP语言并行的C程序的方式,使学生掌握共享内存式并行计算程序的基本开发方法。在此基础上,通过讲解高温燃气光谱辐射特性的逐线计算程序,使学生掌握大型科学计算程序动态数组的开辟与内存释放方法,体会计算输入输出数据文件由十进制改为二进制带来的读写速度提升与文件尺寸缩减。鼓励学生尝试将各种计算程序并行化。

(3)重点和难点:提升程序并行计算效率的基本方法,NUMA结构计算硬件上的OpenMP程序优化原理。

3 教学效果

3.1 跨学科课堂的“问题中心”研讨教学

航空发动机虚拟仿真涉及航空发动机原理与结构,流体力学、工程热力学、传热学、燃烧学、材料力学等多个基础物理化学学科及其衍生的计算科学学科(计算流体力学、计算传热学等),高级程序语言、计算机图形学等计算机专业学科,属于典型的跨学科课程[9]。基于此,教学团队采用“问题中心”的教学思路[10],围绕各虚拟仿真软件用于解决航空发动机设计领域的什么问题,怎样操作上述软件来解决该问题,软件解决该问题的基本物理、化学、数学原理是什么三个层次展开课程。鼓励学生大胆探索,主动提问;利用数字教室的智能互动系统,将老师与多个学生的软件操作过程、软件计算结果显示在大屏幕上进行对比分析。学生学习气氛活跃,很多学生参与课下讨论,主动查阅相关资料或咨询使用上述软件多年的研究生学长。虽然试讲课程只有16学时,但大部分试听的学生尤其是本科生在之后的问卷调查中表示,接触该课程前认为虚拟仿真和电脑、手机上的3D游戏差不多;学习该课程后不但对虚拟仿真技术有了真正了解,在之后的本科毕业设计、研究生课题中接触到虚拟仿真任务时,相比其他学生也更容易上手。

3.2 推动自主虚拟仿真软件的应用与研发

我国包括航空发动机在内的大部分工业领域的虚拟仿真几乎全部依赖于国外商用CAE软件,被“卡脖子”的风险极大。自主开发的虚拟仿真软件难以与之竞争的原因除了开发的人力与资源投入过低外,高校与型号设计单位的使用惯性也是重要原因。本课程认知、演示、设计虚拟仿真实验使用的软件多为自主开发。试讲后的问卷调查表明,部分试听学生在之后的本科毕设、研究生课题中尝试使用课上学习过的国产虚拟仿真软件,其中一名学生利用学习到的ERIR软件使用方法,在本科毕设期间就直接参与了某航天院所的型号研发任务。

课程试讲前的调研表明,绝大多数学生认为开发CAE软件最需要的是面向对象编程能力。由于绝大部分高校非计算机类理工科专业只讲授基础的面向过程编程课程,上述观点甚至成为大部分研究生不愿、不敢参与自主CAE软件研发的主要原因。本课程教学团队各成员都有十年以上的航空发动机CAE软件开发经验,提出学生在掌握基本的面向过程编程方法后,只需要额外几个课时的学习,掌握开辟/释放动态内存、共享内存式并行计算编程方法、NUMA架构硬件上并行程序的优化原理,即可胜任大部分CAE软件的核心程序开发工作。问卷调查表明,试听过该课程的学生,参与自主CAE软件研发的意愿明显提高。

4 结语

北京航空航天大学能源与动力工程学院航空发动机虚拟仿真综合实验课教学团队,围绕使学生了解虚拟仿真技术在现代航空发动机设计领域中的应用,熟悉国内主研发的航空发动机虚拟仿真软件的功能与使用方法,并使学生快速掌握虚拟仿真软件的核心编程方法与技巧的教学目的,设置了演示、认知、设计三类虚拟仿真实验课程。通过软硬件系统的底层匹配,在经费有限的情况下,完成了数字教室互动教学系统的搭建,并取得了良好的试讲效果。近日,该数字教室已获批教育部飞行器动力工程专业虚拟教研室,及与中国航空发动机集团共建的航空发动机全流程云设计与创新实践平台,软硬件系统及虚拟仿真教学内容与质量有望获得进一步提升。

猜你喜欢
内存航空教室
“313”教室
外部高速缓存与非易失内存结合的混合内存体系结构特性评测
“闪电航空”来啦
“闪电航空”来啦
这里的教室静悄悄
“春夏秋冬”的内存
长时间待在教室更容易近视
达美航空的重生之路
一战航空百年回眸
基于内存的地理信息访问技术