Skip to content
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
CFD中文网

CFD中文网

  1. CFD中文网
  2. OpenFOAM
  3. CFD与机器学习基本概念入门

CFD与机器学习基本概念入门

已定时 已固定 已锁定 已移动 OpenFOAM
16 帖子 8 发布者 11.3k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • C 离线
    C 离线
    cccrrryyy 超神
    写于 最后由 编辑
    #5

    贡献点我们非常初级的尝试,主要还是希望这个帖子别沉了。机器学习挺重要,真的很有用,就当抛砖引玉吧。

    1、我们是做的这种,但这应该是比较低级的应用场景,不解决太多实质问题。

    为什么这么说?我们放了几个风流模拟出来的结果进行训练,然后给一个新的地形可以出一个结果。但这个结果用一个新的CFD也可以算出来,更重要的是:用于训练的CFD结果不一定是对的,这个不对的程度不清楚是否会被机器学习的过程放大;训练所消耗的算力相比于单个CFD来说是量级的放大,工程应用上真说不好谁更有性价比。

    我看过不少其他人做的CFD+机器学习,更多的是效率提升(也可能我更关注这部分)。比如涉及到非牛顿流体的,可以加速粘性和切变在求解中需要的迭代;涉及燃烧的,因为化学反应只在很薄的物理空间上进行,传统的并行方式会导致大部分CPU总是在等待少部分CPU的结果,机器学习可以优化。

    当然了还有基于CFD结果进行优化设计的,这部分有很多和机器学习相关的工作,应用也很广泛。还有间接相关的,比如采用机器学习做风速的垂直外推,然后送到CFD里面再做风流模拟。

    2、没做过,但这个应该也可以。

    3、我觉得这个不是哦,其实机器学习怎么和CFD结合还不清楚呢,看需求和应用场景。

    4、是的,要跑很多次CFD,所以算力消耗很大。

    I don't want to survive, I want to thrive.

    1 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    写于 最后由 编辑
    #6

    @cccrrryyy 我前几天跟学生讨论,感觉监督学习有点像是插值。不过监督学习更准一些。你那面风流模拟,一般用几套CFD的结果?是openfoam+libtorch么

    强化学习就不需要cfd跑很多数据,强化学习可以将结果反馈到学习过程里面。简单来说就是比如监督学习需要跑1000套数据再学习。但是强化学习跑10套就可以了。不知道我理解的对不对

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    C 1 条回复 最后回复
  • L 离线
    L 离线
    Li_CFD
    写于 最后由 编辑
    #7

    还有一类机器学习模型叫做PINNS(Physics-informed neural networks ), 模型把PDE嵌入了模型求解,所以要求的基本数据库也就变的更小了,最近有的用来做湍流这些,感觉还是比较有意思的。列了一些最近遇到的参考文献,抛砖引玉:

    Raissi, M., Perdikaris, P., & Karniadakis, G. (2017). Physics Informed Deep Learning (Part I): Data-driven Solutions of Nonlinear Partial Differential Equations.

    Eivazi, H., Tahani, M., Schlatter, P., & Vinuesa, R. (2022). Physics-informed neural networks for solving Reynolds-averaged Navier-Stokes equations. Physics of Fluids, 34. https://doi.org/10.1063/5.0095270

    He, Q., & Tartakovsky, A. (2021). Physics‐Informed Neural Network Method for Forward and Backward Advection‐Dispersion Equations. Water Resources Research, 57. https://doi.org/10.1029/2020WR029479

    C 1 条回复 最后回复
  • C 离线
    C 离线
    cccrrryyy 超神
    在 中回复了 李东岳 最后由 编辑
    #8

    @李东岳 没用libtorch,是自己做了CFD的后处理,然后再用机器学习训练。我这边一般只关注风速和湍流强度,我们仅仅导出了这两个变量的全场分布,训练,然后用于其他地形下的这两个变量的预测。所以我说这个只能算个尝试,非常非常非常浅,也很应用。

    很粗浅的尝试,大概10套左右吧,是这个量级。有点久远已经不记得了- -

    I don't want to survive, I want to thrive.

    李东岳李 1 条回复 最后回复
  • C 离线
    C 离线
    cccrrryyy 超神
    在 中回复了 Li_CFD 最后由 cccrrryyy 编辑
    #9

    @Li_CFD 我感觉这些才是很深的东西,学习学习

    I don't want to survive, I want to thrive.

    1 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    在 中回复了 cccrrryyy 最后由 编辑
    #10

    对于监督学习那一块,我拍脑袋想了这样一个步骤:

    1. 给定一个网格,算N套CFD的不同速度进口的结果;
    2. 把这N套最终稳定的结果,比如volScalarField p,当做N套数据,每套数据在每个网格上是一个点
    3. 把这N套已知的数据赋值给torch,给定一个进口U,让libtorch搞出一套函数会预测最好的p
    4. 这个训练出来的函数就可以预测任意的U的流场结果

    这个流程应该看起来更细致一些

    强化学习我还没看,我打算先看一下监督学习,先把这个在OpenFOAM里面跑通看看

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    1 条回复 最后回复
  • T 离线
    T 离线
    tyhero123
    写于 最后由 编辑
    #11

    感觉CFD加机器学习是黑匣子加黑匣子,终极炼丹炉

    1 条回复 最后回复
  • WayneW 离线
    WayneW 离线
    Wayne
    写于 最后由 编辑
    #12

    PINN比较有意思

    主要做AI,懂一点CFD

    1 条回复 最后回复
  • A 离线
    A 离线
    allanZhong
    写于 最后由 编辑
    #13

    最近在网上看到这一份Philippe Spalart的讲座ppt,大致体会下来感觉是表达对AI的不信任。
    https://turbmodels.larc.nasa.gov/Turb-prs2022/Slide_presentations/Day_1/03_Spalart_invitedtalk_1.pdf
    李老师有空的话可以带大家总结一下这份ppt:146:

    李东岳李 小 3 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    在 中回复了 allanZhong 最后由 编辑
    #14

    @allanZhong 材料非常好,我看看

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    1 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    在 中回复了 allanZhong 最后由 李东岳 编辑
    #15

    @allanZhong 马上推!Spalart大佬确实霸气。硬怼机器学习!

    针对我的问题:

    CFD+机器学习大体的思路是不是这样:

    是的。是一种监督学习。

    CFD+机器学习能否出瞬态的结果?

    可以,监督学习出瞬态结果很难。但是可以建立代理模型。
    PINN也可以出瞬态结果。

    我看他们有人用OpenFOAM+pytorch,这两个都是开源软件并且源代码已经提供,那做CFD+机器学习还需要研究别的东西么?还是说直接把OpenFOAM+pytorch搞起来就完成90%的工作了?

    需要定义输入层以及输出层。主要是替代模型的关系。
    PINN需要自己植入方程。

    如果说需要通过CFD设置10个边界条件,得到10个最终稳定的流场结果然后把这个当做训练数据的话,那岂不是需要CFD算很多次?

    是的。监督学习是这样。强化学习也是这样。数据驱动类模型大多都这样。
    PINN不需要。

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    1 条回复 最后回复
  • 小 离线
    小 离线
    小菜鸟
    在 中回复了 allanZhong 最后由 编辑
    #16

    @allanZhong 在某个方向还没有成熟的时候,总会有一些人顶着大佬的帽子来抨击方向的不成熟性,铸造自己的护城河,阻碍技术的发展。就像NLP、CV,发展初期一样有质疑、有诋毁,但是都一点点发展过来,颠覆了传统的认知,再到现在的大模型、deepseek甚至是AGI,都是颠覆传统认知的创新技术。
    我们更应该充满信心,随着技术的发展,更多的研究成果的产出,终是会有颠覆性发展的一天的。

    1 条回复 最后回复

  • 登录

  • 登录或注册以进行搜索。
  • 第一个帖子
    最后一个帖子
0
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]