编写说明 CAE(ComputerAidedEngineering,工程设计中的计算机辅助工程)软件是制造业核心工业软件,被誉为工业软件领域“皇冠上的明珠”,是一种综合性、知识密集型信息产品,融合了物理学、数学、工程学、计算机科学等多学科算法和技术,具有开发难度大、研发周期长等特点。 在工业软件自主化、产业化紧迫形势下,国内科研院所、高校、企业纷纷投入自主工业软件研发,掀起了自主工业软件研发与应用热潮。对于如何降低行业低价值重复,发挥领域各主体关键作用,加速CAE软件产品化进程,开源无疑是当下最优模式之一。通过整合基础共性技术,制定开源共创协同机制,形成开源底座平台,依托开源底座平台构建CAE软件研发与应用生态,实现CAE软件共创高质量发展创新路径。 2022年7月,在开放原子开源基金会指导下,成立了开 源工业软件工作委员会(OpenAtomopenCAX,以下简称“工委会”)。工委会致力于构建一个国际化的开源工业软件工具链,推动我国开源生态有序发展,加速工业软件关键核心技术的积累和产业商用的迭代,为工业软件开源使用者、开发者、研究者提供国际化交流平台。工委会组建了10个SIG兴趣组,凝聚了国内工业软件开源力量,围绕工业软件关键 内核技术开展研究,探索开源项目孵化培育。其中SIG7组聚焦CAE求解器集成框架领域,组织相关专家力量将研究成果汇编成本白皮书。 本白皮书的主要目的是阐述开源的背景和必要性,给出开源CAE软件的发展思路和技术路线,探索开源盈利模式,并通过FastCAE开源集成平台,给出CAE软件协同研发的具体实例,引导和激发工业软件研发企业、服务厂商、用户企业等主体投身开源,构建开放、共享、协作的研发与应用生态,打造中国特色CAE软件产品化路径。 本白皮书共分为五部分内容。第一部分介绍CAE软件定义、应用场景及国内外发展现状;第二部分介绍CAE软件集成关键技术;第三部分介绍CAE开源集成框架模式思考;第四部分介绍FastCAE-CAE开源集成框架功能、架构设计及相关文档;第五部分介绍基于FastCAE的生态建设情况;第六部分介绍FastCAE未来发展规划。 本白皮书适用于自主工业软件研发、咨询与应用的组织机构,包括但不限于政府部门、制造业企业、工业软件企业、工业互联网平台企业、高校以及社会化工业技术与IT技术人才。期待和大家一起探讨、分享开源模式在自主工业软件发展中关键作用与价值,并和各位一同推动我国工业软件开源生态的发展和壮大。本白皮书的编写仅仅是开始,其中还有很多未及深入研究、清晰阐述和完整论述之处,恳请各位专家批评指正。 指导单位 开放原子开源基金会 组织单位 开源工业软件工作委员会(OpenAtomopenCAX) 编写单位 哈尔滨工程大学 青岛数智船海科技有限公司青岛海洋地质研究所 珠海格力电器股份有限公司 编写人员 唐滨冯光升吴艳霞李宝君王昊东王海峰杨成明马贵蛙万义钊陈宗衍 目录 1CAE软件概述1 1.1CAE定义1 1.2CAE应用场景2 1.3CAE国内外发展现状3 2CAE软件集成关键技术5 2.1图形交互界面技术6 2.2几何建模技术6 2.3网格生成技术7 2.4后处理可视化技术8 2.5工程数据管理技术9 2.6CAE软件架构技术10 2.7云计算和HPC技术10 3CAE开源集成框架模式思考11 3.1我国CAE软件研发面临挑战11 3.2开源框架研发模式探索13 3.2.1开源框架模式优势14 3.2.2研发与应用开源框架14 3.3CAE开源集成框架路径15 3.4CAE开源集成框架目标17 4FastCAE-CAE开源集成框架概述19 4.1FastCAE框架简介19 4.2框架总体设计20 4.2.1系统架构体系20 4.2.2系统功能介绍21 4.3架构设计说明29 4.3.1基础数据结构设计29 4.3.2主要功能模块设计32 4.4求解器集成流程36 4.5相关文档和示例38 5FastCAE生态构建40 5.1生态构建流程40 5.2研发生态与应用生态41 5.3开源协议及托管平台42 5.4FastCAE生态成效43 5.5FastCAE集成案例44 5.5.1并行有限元压印成形仿真软件CoinFEM45 5.5.2船舶复杂海况下耐波性预报软件VEROM46 5.5.3等离子体仿真软件EasyPSim47 5.5.4计算力学降维方法软件48 6FastCAE发展规划49 6.1技术发展规划49 6.2产品发展规划50 7结束语53 8附录:参考文献54 1CAE软件概述 1.1CAE定义 计算机辅助工程CAE(ComputerAidedEngineering),泛指包括分析、计算和仿真在内的一切研发活动。传统的CAE主要是指工程设计中的分析计算和分析仿真,其核心是基于计算力学的有限元分析技术。制造工程协会SAE将计算机辅助工程(CAE)作为CIM技术构成的一部分,进行如下定义:分析设计和进行运行仿真,以决定它的性能特征和对设计规则的遵循程度[1]。 CAE技术是计算机技术和工程分析技术相结合形成的新 兴技术。CAE软件是由计算力学、数字仿真技术、计算数学、结构动力学、工程管理学与计算机技术相结合而形成的一种综合性、知识密集型信息产品。在近20年来市场需求的推动下,CAE技术有了长足的发展。作为一项跨学科的数值模拟分析技术,它不断地受到科技界和工程界的重视。21世纪,随着计算机技术向更高速和更小型化的发展,分析软件的不断开发和完善以及网络通讯的普及,CAE技术的应用将越来越广泛,成为衡量一个国家科学技术水平和工业现代化程度的重要标志。 CAE的特点是以工程和科学问题为背景,建立计算模型 并进行计算机仿真分析。一方面,计算机辅助分析使大量繁杂的工程分析问题简单化,使复杂的过程层次化,节省了大 量的时间,避免了低水平重复的工作,使工程分析更快、更准确;另一方面,CAE技术的应用使许多过去受条件限制无法分析的复杂问题,通过计算机数值模拟得到满意的解答。它在产品的设计、分析、新产品的开发等方面上发挥了重要作用。同时,CAE这一新兴的数值模拟分析技术在国外得到了迅猛发展,技术的进步也推动了许多相关的基础学科和应用科学的发展[2]。 1.2CAE应用场景 在当今的复杂工业品的设计过程中,CAE已经成为一个必需的工具。CAE技术在许多领域得到了广泛的应用和认可,比较有代表性的应用场景包括以下几种: (1)结构分析:结构分析是利用CAE技术对物体的强度、刚度等机械特性进行研究的过程。它可以用于评估物体的强度、稳定性、振动特性以及疲劳寿命等属性。结构分析是最常用的CAE分析技术,广泛应用于汽车、航空器、船舶、重工装备、桥梁建筑等结构设计与校验优化。 (2)流体分析:流体分析是一种应用CAE技术来模拟物体周围流体行为以及流体在物体上的作用的方法。它可以用于预测水流、空气流、温度和压力等非稳态物理现象影响,可对船舶、汽车、航空航天器以及各种流体设备进行模拟和优化。 (3)电磁分析:电磁学是研究电场、磁场和电磁波等现 象的分支学科。CAE技术在电磁学研究过程中的应用主要是对物体和电磁场之间的相互作用进行模拟。电磁分析可以用于设计和优化电子产品、电动机、变压器、电源以及其他各种电子设备。 (4)热分析:热分析是一种用CAE技术研究物体内部温度分布和热传导的方法。它广泛应用于各种工业场合,如锅炉、电子元器件、热机引擎、航空航天器等,它可以帮助工程师研究物体周围的热流和温度分布。 (5)声学分析:声学分析是一种通过CAE技术模拟噪声传播和声波传播的方法。声学分析在设计和优化机器、车辆、飞机、建筑和消费者产品等方面发挥着重要作用。 (6)多体运动分析:多体运动分析是指对由多个物体组成的系统进行运动学和动力学分析的一种方法。通过多体运动分析可以得到多体系统的运动轨迹、速度、加速度以及受力情况等信息。多体运动分析广泛应用于机械工程、航空航天、机器人及自动化控制等领域。 1.3CAE国内外发展现状 目前世界上最先进的通用CAE软件均属于欧美发达国家,主要集中在美国、德国、英法和加拿大这几个国家。CAE软件始于20世纪50年代末期,以有限元理论的提出与发展为标志,60年代美欧投入大量人力物力研发CAE软件。其中以NASA委托美国计算科学公司和贝尔航空系统公司开发的 Nastran有限元分析系统最为著名。经过三十年的不断迭代与发展,到20世纪的九十年代,已经形成了完备的学科体系,能够满足工业工程的实际分析需求,并开始了大范围的工程应用。近年来,国外的企业开始了大规模的并购进程,如Dassault、SIEMENS、ANSYS、MSC等。在并购的过程中,这些企业的CAE软件越来越成熟,但也各具特色。比如,Dassault公司的Abaqus软件在处理非线性问题领域十分出色,能够分析复杂的固体和结构力学问题,并且对于非常庞大的高度非线性问题也能够进行准确分析求解。ANSYS公司则形成了庞大的产品体系,涵盖结构、流体、温度、电磁、噪声等学科,能够处理多物理场耦合分析问题,尤其擅长弱耦合情况。MSC公司的Nastran软件是美国国家航空航天局为满足航空航天领域的结构分析问题而开发的,具有较高的计算精度[3]。 总体来说,先进的CAE软件的发展经历了三个阶段,即 以技术提升为主的发展阶段、以市场工程应用为主的壮大阶段和以并购整合为主的成熟阶段。国外的CAE软件能够发展到今天的水平,一是离不开国外工业化进程快、计算机普及程度高,其国内企业对CAE软件具有极大的应用需求;二是离不开国外政府的高度重视和大量投入,给CAE软件的发展提供了强有力的支持;三是离不开技术研发、软件厂商的市场营销和应用验证相配合,三者形成良性循环,进一步促进了CAE软件的发展[4]。 我国CAE软件的起源可以追溯到20世纪60年代,当时我国数学家冯康就提出了独立于西方理论的基于变分原理的差分方法[5],标志着有限元法在我国的诞生。从20世纪 70年代起,我国开始出现专门的数值计算程序,逐渐形成了第一代国产CAE软件。比如,中国飞机强度研究所研发的用于飞行器结构强度分析的HAJIF软件[6]和大连理工大学工程力学系钟万勰院士领衔研发用于有限元分析与优化设计的JIFEX软件[7]。进入新世纪后,国内出现了一些依托于高校和研究院所的自主知识产权的软件。例如,北京大学研发的用于微机结构分析的SAP84软件[8],郑州机械研究所研发的用于对机械产品进行结构分析计算的紫瑞CAE软件,华中科技大学研发的用于铸造领域的华铸CAE软件,吉林大学研发的用于覆盖件弹塑性大变形领域的KMAS软件[9],中国工程物理研究院研发的用于结构冲击响应领域的DynPack软件,大连理工大学研发的面向CAE工程与科学计算集成化的SiPESC软件平台[10]以及大连英特仿真的INTESIM系列仿真软件。 2CAE软件集成关键技术 CAE软件技术涵盖计算机科学、数学、物理学、工程学等多个领域,是一门涉及多领域多学科的综合性技术。CAE软件的内核是求解器,包括结构、流体、电磁、传热等问题。此外,形成一款CAE软件产品还需要前后处理、交互界面等功能模块。本篇白皮书的重点在于如何通过统一开源框架快 速组装CAE软件产品。因此,下面给出一些集成CAE软件产品时所需的共性关键技术。 2.1图形交互界面技术 CAE软件的图形交互界面是用户和软件进行交互的重要桥梁,是CAE软件研发过程中的关键技术之一。它需要充分考虑用户的需求和体验,能够提供直观、易用、功能丰富的界面,使用户能够方便地进行模型构建、仿真设置、结果查看等操作。 C/S架构的CAE软件,考虑软件跨平台部署和图形运行性能,一般采用C++语言和QT界面框架进行开发,并会调用OpenGL等图形库。B/S架构的CAE软件一般采用Java语言,并采用Spring+SpringMVC+MyBatis组合框架进行开发,同时使用WebGL作为最常用的浏览器端图形引擎。