第二十七周 学习周报

摘要

今日学习CFD数值模拟通过离散化将物理问题转化为可计算的代数方程组。核心步骤包括空间离散(生成网格)和方程离散(有限体积法/有限差分法)。有限体积法因严格保证守恒性成为主流。最后通过直接法或迭代法求解离散后的方程组,得到数值解。

Abstract

Today's study focused on how CFD numerical simulation transforms physical problems into solvable algebraic equations through discretization. Key steps include spatial discretization (mesh generation) and equation discretization (Finite Volume Method/Finite Difference Method). The Finite Volume Method has become mainstream due to its strict conservation properties. Finally, the discretized equation system is solved using direct or iterative methods to obtain numerical solutions.

CFD

方程离散

方程离散:将偏微分方程转化为一系列代数方程,每个代数方程对应计算域中的一个单元。

每个代数方程将当前单元变量与相邻单元变量值进行关联。

对一个离散方程来说只有少数几个网格单元参与计算。

基于有限体积法的离散,先在控制体或网格上对偏微分方程进行积分得到半离散方程,然后用假定的分布函数来近似网格单元之间因变量的变化,从而得到最终的离散方程。随网格尺寸减小,相邻网格单元之间变量的变化会越来越小,所假定的分布函数的影响也会减小。

对于一个给定的微分方程,其可能的离散方程并不是唯一的。不同类型的离散方法主要源于分布函数假设和推导方法的不同。

所有单元对应的代数方程可以组装成矩阵方程的形式:

A[T]=b

其中,A​ 为系数矩阵,[T]​ 为待求变量向量(如温度),b​ 为源项向量。

三张图系统地展示了使用有限体积法对稳态热传导方程进行离散化的完整过程。

整个过程始于控制方程:-∇·(k∇T) = q̇,描述了热量传导与生成的平衡。

第一步是积分与转化。​ 将控制方程在任意单元C的体积上进行积分,将体积分转化为面积分。

第二步是数值近似的核心。​ 将连续的面积分离散为对单元C所有相邻面的通量求和。关键在于计算每个面上的热通量 (k∇T)_f · S_f。这需要两个近似:首先,面的表面向量 S_f 由其面积和法向方向确定;其次,面心处的温度梯度 ∇T_f 通过假设温度在相邻单元形心之间呈线性变化来近似计算,即用中心差分格式 (T_F - T_C) / δx_f 来近似偏导数。

第三步是组装代数方程。​ 将对所有面的计算表达式代入求和公式,经过整理,最终得到关于单元C及其所有相邻单元F的离散代数方程:a_C T_C + Σ a_F T_F = b_C。其中,系数 a_F 由热导率k、几何参数(面积、距离)决定,源项 b_C 为 q̇_C V_C,中心系数 a_C 为所有相邻系数之和的相反数(-Σ a_F),这确保了物理上的守恒性。

对计算域中的每个单元重复此过程,即可组装成一个大型的线性代数方程组 A * T = b,从而可通过数值方法求解出整个区域的温度场 T。

离散方程求解

代数方程组的求解方法可分为:直接法与迭代法

直接法

只需要求解一次

比较常用的直接法:矩阵求逆、Gramer法、高斯消去法、LU分解法、三对角矩阵法、五对角矩阵法

需要一次性读入系数矩阵,内存消耗大

对于非线性方程求解计算量巨大

迭代法

常见的迭代法:雅克比迭代、高斯-赛德尔迭代、多重网格迭代等

需要反复迭代,存在收敛问题

内存消耗较少

CFD常用数值方法

有限差分法(Finite Difference Method, FDM)

历史上最早使用的数值方法,比较适合于简单几何形状的模型。

基本思路:将求解区域用于坐标轴平行的一系列网格线交点所组成的点的集合来代替,在每个节点上将控制方程中每一个导数用相应的差分表达式来替代,从而在每个节点上形成一个代数方程,每个方程包含该节点及其附近一些节点上的未知值,求解代数方程即可获取数值解。

有限体积法(Finite Volume Method, FVM)

CFD主流软件普遍使用的数值方法,适合于简单或复杂的几何模型。

将所计算的区域划分成一系列控制容积,每个控制容积都有一个节点作为代表。通过将守恒型控制方程对控制容积做积分来导出离散方程。在导出过程中,需要对界面上的被求函数本身及其一阶导数的构成作出假定,这种构成的方式即有限体积法中的离散格式。

有限体积法导出的离散方程可以保证具有守恒特性。

相关推荐
阿蒙Amon5 小时前
TypeScript学习-第10章:模块与命名空间
学习·ubuntu·typescript
AI绘画哇哒哒5 小时前
【干货收藏】深度解析AI Agent框架:设计原理+主流选型+项目实操,一站式学习指南
人工智能·学习·ai·程序员·大模型·产品经理·转行
那个村的李富贵5 小时前
CANN加速下的AIGC“即时翻译”:AI语音克隆与实时变声实战
人工智能·算法·aigc·cann
power 雀儿5 小时前
Scaled Dot-Product Attention 分数计算 C++
算法
琹箐6 小时前
最大堆和最小堆 实现思路
java·开发语言·算法
戌中横6 小时前
JavaScript——预解析
前端·javascript·学习
renhongxia16 小时前
如何基于知识图谱进行故障原因、事故原因推理,需要用到哪些算法
人工智能·深度学习·算法·机器学习·自然语言处理·transformer·知识图谱
坚持就完事了6 小时前
数据结构之树(Java实现)
java·算法
算法备案代理6 小时前
大模型备案与算法备案,企业该如何选择?
人工智能·算法·大模型·算法备案
●VON6 小时前
React Native for OpenHarmony:2048 小游戏的开发与跨平台适配实践
javascript·学习·react native·react.js·von