首页/文章/ 详情

CFD计算的误差来源

1年前浏览2177

流体流动和传热问题的数值解只是近似解。除了在求解算法的开发过程中可能引入的误差之外,在编程或设置边界条件时,数值解总是包括三种系统误差:

  1. 建模误差(Modeling errors)。定义为实际流量与数学模型精确解之间的差异
  2. 离散误差(Discretization errors),定义为守恒方程的精确解与通过离散化这些方程得到的代数方程组的精确解之间的差异
  3. 迭代误差(Iteration errors),定义为代数方程组的迭代解和精确解之间的差异

迭代误差通常被称为收敛误差。然而“收敛”一词不仅与迭代求解方法中的误差减少有关,而且还常与数值解向网格无关解的收敛相关联,在这种情况下,其与离散误差密切相关。为了避免混淆,我们将坚持上述误差的定义,在讨论收敛问题时,式中明确我们所讨论的是哪种类型的收敛。

意识到这些误差的存在是一件很重要的事情,但更重要的是要努力将它们区分开来。这些误差可能会相互抵消,所以有时在粗网格上得到的计算结果可能比在更细密的网格上得到的结果更符合实验结果(根据误差的定义,后者应该更准确)。

建模误差取决于在推导变量的输运方程时所作的假设。当研究层流时,它们可以忽略不计,因为Navier-Stokes方程代表了一个足够精确的流动模型。然而对于涉及到湍流、多相流、燃烧等物理现象的问题,建模误差可能会非常大--模型方程的精确解可能存在定性错误。通过简化求解域的几何形状、简化边界条件等也会引入建模误差。这些误差并非先验已知的;它们只能通过将离散误差和迭代误差可忽略不计的解与精确的实验数据或通过更精确的模型获得的数据(如湍流的直接模拟数据)进行比较来评估。在对物理现象模型(如湍流模型)进行判断之前,必须控制和估计迭代误差与离散误差。

前面提到过,离散近似引入的误差会随着网格的细化而减小,且近似的阶数是精度的度量。然而,在给定的网格上,相同阶数的方法可能产生相差一个数量级的求解误差。这是因为阶数只是告诉了我们随着网格间距的 减小,误差减小的速率,其并未给出单个网格上误差的信息。我们将在下一章中说明如何估计离散误差。

迭代求解和舍入导致的误差比较容易控制,我们将在第5章介绍迭代求解方法时讨论如何做到这一点。

CFD计算的最终目标是以最少的努力获得期望的精度,或以可用的有限资源获得最大的精度。每次我们描述一个特定的求解算法时,通常都要指出其相对于这些标准的优点或缺点。

 

注:以上内容取自Joel H. Ferziger《Computational Methods for Fluid Dynamics》,4th Edition,2.5.7


(未完待续)


来源:CFD之道
多相流燃烧湍流控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-01-30
最近编辑:1年前
CFD之道
博士 | 教师 探讨CFD职场生活,闲谈CFD里外
获赞 2568粉丝 11323文章 735课程 27
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈