基于机器学习的CFD模型降阶

降阶模型 ROM

图片

降阶模型ROM(Reduced Order Models)是一种对高保真度静态或动态模型的简化方法。模型降阶在保留了模型的基本特性与主导效应的同时,大大减少复杂模型的CPU计算时间及存储空间。 

ROM的用途:

  • 加速大规模系统的仿真速度

  • 将ROM运行在硬件在环环境

  • 数字孪生 Digital twins

降阶方法:

  • 静态:曲线、曲面拟合,查表法

图片

  • 动态: 通过一个高保真度模型来生成样本,机器学习算法训练样本模型

图片

romAI 介绍

romAI是集成在 Altair 系统控制模块Activate和可视化编程模块Compose的模型降阶工具,用于加速大模型的预测,系统集成和实时控制。 

romAI基于多层感知机技术Multilayer Perceptron (MLP),因此,从本质上讲,它在内部生成输入和输出之间的映射。这种映射的质量将取决于一些因素,例如训练样本的质量和数量,超参数的选择(神经网络隐藏层数或激活函数等等),以及可用于训练样本的时间。

图片

romAI基于数据驱动,给定一个任意物理问题,使用任意软件建模。使用过程非常简单:首先,读入训练样本*csv,样本由输入、输出和系统状态组成。样本可以来自仿真结果或实验测试。然后根据这些数据和选定的超参数训练神经网络。训练好的ROM可以应用于Activate进行系统级仿真, 或通过FMI接口部署在其他的系统。

romAI 使用流程

图片

案例1:CFD管路模型降阶

打开Activate模块,在Demo Browser目录下找到 romAI → nolinear → cfd_heated_pipe,这是一个简单的CFD管路加热模型,包含了一个输入变量:固体的发热功率Pel;一个输出变量:管路出口空气温度Tout;以及一个状态变量:固体的表面温度The

图片

Activate中的CFD模型降阶例题

训练样本的数据来自AcuSolve的三维瞬态CFD仿真,CFD模型的时间步长为0.01秒,物理时间32秒,迭代3200步。

图片

训练样本

图片

CFD输入:固体发热功率

图片

CFD输出:固体温度

图片

CFD输出:出口空气温度

romAI完成降阶后,再用一组新的数据进行验证

图片

验证新数据:发热功率曲线

图片

出口空气温度预测

案例2:电磁阀CFD模型降阶

电磁阀是一个简单的开/关阀。它是两个基本功能单元的组合:电磁铁和包含一个或多个孔的阀体。当电磁阀通电或断电时,流经孔口的流量由阀芯的运动控制。

图片

电磁阀原理

图片

电磁阀受力分析

查表法生成静态ROM

训练样本来自AcuSolve的12个稳态工况,流量:0.225kg/s, 0.5 kg/s, 0.7 kg/s;阀门开度:1mm, 2 mm, 3 mm, 4 mm

图片

CFD计算参数表

图片

CFD结果:不同阀门开度下,流量-压差曲线

图片

CFD结果:不同阀门开度下,液力-压差曲线

图片

AcuSolve阀门稳态流场

图片

Activate的阀门系统建模

动态ROM

  • 训练样本来自acuSolve的的4个瞬态工况:入口压力=2bar,4bar; 阀门开启时间10毫秒,100毫秒。

  • romAI的3个输入参数:阀芯位置,运动速度,上下游压差;1个输出变量:流量和阀芯的液力;1个状态参数:流量

图片

romAI参数定义

图片

动态ROM的输入,输出和状态参数

图片

瞬态CFD动画:入口2bar, 阀门开启100毫秒

图片

瞬态CFD监测变量曲线

验证工况:入口压力3bar,阀门50毫秒开启时间。动态ROM预测精度最大误差<10%

图片

红色-CFD仿真数据

蓝色-romAI预测数据

图片

阀门动态ROM用于Activate系统仿真

案例3:电池包CFD模型降阶

  • 训练样本来自AcuSolve的3个瞬态工况

  • romAI的2个输入参数:电流,对流换热系数;3个输出参数和状态变量:监测点的温度

图片

AcuSolve电池包液冷模型

图片

电池包的动态ROM

图片

蓝色-CFD仿真数据

红色-romAI预测数据

电池动态ROM部署在Activate的新能源车系统仿真模型:

图片

案例4:齿轮箱CFD模型降阶

训练样本来自nanoFluidX( 基于SPH算法)齿轮箱搅油模型,共计算5个瞬态工况作为训练样本和一个瞬态工况作为验证样本。每个工况须采用2块GPU计算8小时。

romAI的2个输入参数:输入轴转速和润滑油体积;1个输出参数和状态变量:齿轮表面的平均对流换热系数HTC。

图片

nanoFluidX仿真生成训练样本

图片

齿轮箱搅油瞬态动画

图片

nanoFluidX 模型工况参数表

图片

5个训练样本

齿轮箱动态ROM的精度验证

图片

图片

图片

图片

图片

图片

蓝色-CFD仿真数据

红色-romAI预测数据

齿轮箱动态ROM应用于Activate热系统仿真,快速预测不同运行工况下的齿轮箱温度。

图片

案例5:挖土机离散元EDEM模型降阶

挖掘机的仿真采用了4个求解器的耦合:

  • 离散元模块EDEM,模拟颗粒(石块);

  • 多体动力学MotionSolve,模拟挖斗、机械臂和车辆的运动;

  • 固体力学模块OptiStruct,模拟铲车臂的应力应变;

  • 系统控制模块Activate,模型降阶和耦合控制。

共计算5个工况作为romAI的训练样本: 

  • 6个输入参数

    图片

    :挖斗的水平位移,垂直位移,角度,以及水平速度,垂直速度,角速度;

  • 4个输出参数: 

    图片

  • 挖斗在XYZ方向的受力和挖斗内颗粒的总质量; 

  • 1个状态变量

    图片

     :挖斗内的颗粒总质量。

romAI的训练样本:

图片

图片

图片

动态ROM的精度验证

图片

红色-EDEM耦合仿真数据

蓝色-romAI预测数据

Activate部署动态ROM进行耦合仿真

图片

动态ROM作为EDEM求解器的代理模型参与耦合仿真

通过模型降阶,EDEM耦合仿真效率提升了34倍。

图片

EDEM挖掘过程仿真

液压力分析对比,动态ROM的最大误差<1.4%

图片

左(动态ROM),右(耦合仿真)

挖斗臂的受力分析对比,动态ROM的最大误差<1.3%。

图片

上(动态ROM),下(耦合仿真)

总 结

  • romAI无需采用传统的DOE方法,采用较少的训练样本即可预测模型的整个运行工况区间。这对计算资源消耗大的CFD仿真有工程实用价值。

  • romAI目前并不生成2D/3D云图,可以用于模型多工况的降阶。但如果系统设计发生了变化(比如冷却系统的风扇从轴流变成了离心),需要重新生成样本,和训练样本。

  • 训练样本的数据最好能覆盖整个运行工况的极大/小值的范围,虽然romAI可以预测样本范围外的工况,但是那些未知区域如果也呈现高度非线性,预测可能产生偏差。

  • 对于高度非线性的系统,动态ROM精度有可能不太理想。这是因为在估计一种状态时,一个非常小的误差,通常与其他状态耦合,随着时间的推移,很容易导致解的背离,我们需要更多的输入“形状”。永远记住,我们从数据中学习非线性!


若您对数据分析以及人工智能感兴趣,欢迎与我们一起站在全球视野关注人工智能的发展,与Forrester 、德勤、麦肯锡等全球知名企业共探AI如何加速工业变革,共享众多优秀行业案例,开启AI人工智能全球新视野!!

共同参与6月20日由Altair主办的面向工程师的全球线上人工智能会议“AI for Engineers”。

点击立即免费报名

(注:现在注册参会,即可于会后第一时间获得Altair全球100个客户案例资料)


关于 Altair RapidMiner

Altair RapidMiner 数据分析与人工智能平台,是 Altair 澳汰尔公司旗下仿真、HPC 和数据分析三块主营业务中的解决方案,它在数据分析领域最早实现将自动化数据科学、文本分析、自动特征工程和深度学习等多种功能同时集成的一站式数据分析平台,帮助用户解决从数据清洗、准备、数据科学建模到模型管理和部署,同时又支持数据和流数据的实时分析可视化的数据分析平台。

欲了解更多信息,欢迎关注公众号:Altair RapidMiner

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/852596.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

pytorch学习笔记7

getitem在进行索引取值的时候自动调用,也是一个魔法方法,就像列表索引取值那样,一个意思 import torchvision from torch.utils.data import DataLoaderdata_transformtorchvision.transforms.Compose([torchvision.transforms.ToTensor()] ) test_datatorchvision.datasets.C…

Elasticsearch 提供了多种实现自动补全和基于上下文的提示的功能

Elasticsearch 提供了多种实现自动补全和基于上下文的提示的功能&#xff0c;这些功能通常用于搜索框中的自动完成建议。以下是一些常用的 Elasticsearch 特性和相关实现方法&#xff1a; ### 1. 完成建议&#xff08;Completion Suggester&#xff09; 完成建议&#xff08;…

C++面向对象:多态性

多态性 1.概念 多态性是面向对象的程序设计的一个重要特征。在面向对象的方法中一般是这样表述多态的&#xff1a;向不同的对象发送同一个信息&#xff0c;不同的对象在接收时会产生不同的行为。也就是说&#xff0c;每个对象用自己的方式去响应共同的消息。 2.典例 下面这…

R语言绘制三变量分区地图

参考资料&#xff1a; https://mp.weixin.qq.com/s/5c7gpO2mJ2BqJevePJz3CQ tricolore包教程&#xff1a;https://github.com/jschoeley/tricolore 学习笔记&#xff1a;Ternary choropleth maps 1、测试实例 代码&#xff1a; library(ggplot2) library(rnaturalearthdata) …

android studio4.1后不能ButterKnife

麻蛋L最近发现 android studio不能使用ButterKnife啦&#xff01;ButterKnife Injections不维护&#xff0c;butterknife Zelezny也不维护&#xff01;&#xff01;&#xff01;日…难受&#xff0c;兄弟们换下一家&#xff1a;IDsCreate&#xff0c;一毛一样的好用&#xff01…

TCP/IP协议简要介绍

TCP/IP for IP version 4&#xff08;IPv4&#xff09;是一种网络协议&#xff0c;Microsoft Windows使用该协议通过internet与其他计算机进行通信。理想情况下&#xff0c;只要基于Windows的计算机通过网络进行通信&#xff0c;就会使用TCP/IP。 本文介绍TCP/IP协议的组成、协…

蓝牙模块与其他无线技术的比较与选择

在无线通信技术日新月异的今天&#xff0c;蓝牙模块、WiFi、Zigbee和NFC等技术都发挥着至关重要的作用。它们在智能设备、工业自动化、智能家居等多个领域得到广泛应用&#xff0c;各自拥有独特的优点和局限性。本文将对这几种无线技术进行详细的比较&#xff0c;分析它们的优缺…

接口自动化测试工程化——了解接口测试

什么是接口测试 接口测试也是一种功能测试 我理解的接口测试&#xff0c;其实也是一种功能测试&#xff0c;只是平时大家说的功能测试更多代指 UI 层面的功能测试&#xff0c;而接口测试更偏向于服务端层面的功能测试。 接口测试的目的 测试左移&#xff0c;尽早介入测试&a…

vlc多媒体播放器(支持各种本地视频、网络视频、音频及摄像头直播地址)winform(支持全屏)自动适应x86、x64平台插件及重要代码

1、学习vlcControl1及libvlc.dll类方法(x86为例)最新v3.0.21 1.1 本博文以控件(vlcControl1)方式为主介绍 1.2 安装-引用,添加控件到窗体 using Vlc.DotNet.Forms; 1.3 窗体布局、编写代码 打开文件(以本地媒体文件为主)打开地址(以网络媒体地址为主)播放|暂停功能停…

vxe-table 监听某一列的值

需求&#xff1a;根据A列的内容&#xff0c;B列显示下拉框&#xff0c;文本&#xff0c;数值类型的数据 总思路&#xff1a;设置元素点击(cell-click)、双击事件(cell-dblclick)&#xff0c;拿到当前行的数据&#xff0c;监听当前行的A列&#xff0c;如果变化&#xff0c;B列做…

oracle跨版本exdp 从高版本到低版本 从18c到10g

由于工作需要&#xff0c;有时候需要将oracle18c的数据同步到另一个环境的10g版本 测试环境 &#xff1a; 源数据库版本&#xff1a;18.13.0.0 目标数据库版本&#xff1a;10.2.0.4 结论&#xff1a; 1 从低版本导出&#xff0c;导入到高版本&#xff0c;可以&#xff0c;不…

vue3:父组件如何给子组件传值

在 Vue 3 中&#xff0c;父组件可以通过 props 将数据传递给子组件。下面是一个简单的例子来展示如何实现这一点。 父组件&#xff08;ParentComponent.vue&#xff09; <template><div><h1>父组件</h1><ChildComponent :message"parentMess…

VMware清理拖拽缓存

磁盘空间越用越小&#xff0c;如何快速解决磁盘空间的问题&#xff0c;甩掉烦恼 安装VM tools之后可以通过拖拽的方式把文件拉入虚拟机之中。但每一次拖拽&#xff0c;其实都是现在cache文件夹里面生成一个同样的文件&#xff0c;并使用cp拷贝的方式将其拷贝到拖拽放置的目录中…

C# WPF入门学习主线篇(二十六)—— 绑定路径和数据上下文

C# WPF入门学习主线篇&#xff08;二十六&#xff09;—— 绑定路径和数据上下文 在WPF&#xff08;Windows Presentation Foundation&#xff09;中&#xff0c;数据绑定是一个核心概念&#xff0c;它允许你将UI控件的属性与数据源属性进行绑定&#xff0c;从而实现数据和UI的…

从零学习es8

配置 编辑 elasticsearch.yml xpack.security.enabled: true 单节点 discovery.type: single-node设置账号&#xff1a; elasticsearch-reset-password -u elastic 如果要将密码设置为特定值&#xff0c;请使用交互式 (-i) 参数运行该命令。 elasticsearch-reset-password -i…

05-腾讯云Copilot及 向量数据库AI套件介绍

1 Andon Copilot核心功能介绍 2 Andon Copilot覆盖腾讯云售后、售前场景 3 腾讯云向量数据库– AI套件效果 AI 套件是腾讯云向量数据库&#xff08;Tencent Cloud VectorDB&#xff09;提供的一站式文档检索解决方案&#xff0c;包含自动化文档解析、信息补充、向量化、内容检…

HTTPS请求阶段图解分析

HTTPS请求阶段分析 请求阶段分析 请求阶段分析 一个完整、无任何缓存、未复用连接的 HTTPS 请求需要经过以下几个阶段&#xff1a; DNS 域名解析、TCP 握手、SSL 握手、服务器处理、内容传输。 一个 HTTPS 请求共需要 5 个 RTT 1 RTT&#xff08;域名解析&#xff09; 1 RTT…

工业4.0下的PLC进化论:ARMxy计算机如何重塑自动化

智能物流系统的高效与精准成为企业竞争力的关键。在这个背景下&#xff0c;传统的PLC系统因其固有的局限性&#xff0c;如扩展性差、系统封闭等&#xff0c;开始显得力不从心。ARMxy工业计算机作为新一代的PLC替代方案&#xff0c;凭借其低功耗、高性能以及高度的灵活性&#x…

Ubuntu 22.04 在线安装dockers报错

一、报错描述 在ubuntu 22.01上执行在线安装docker命令时出现E: Package docker-ce has no installation candidate错误。 sudo apt install docker-ce docker-ce-cli containerd.io 下面是详细报错信息 rootubuntu:# sudo apt install docker-ce docker-ce-cli containerd…

H5单点登录分析介绍(登录状态检验状态透传分析)

文章目录 1、单点登录解决方案1.1、后端保存登录状态1.2、token模式 2、user服务-登录接口2.1、UserController2.2、UserInfoServiceImpl2.3、载荷2.4、响应2.5、Redis Desktop Manager 3、user服务-登录成功获取用户信息回显3.1、UserController3.2、UserInfoServiceImpl3.3、…