【CFD理论】k-epsilon模型

目录

标准k-epsilon模型

RNG k-epsilon模型

粘度建模

粘度修正

输运方程

Realizable k-ε Model

输运方程

粘度建模


本文基于fluent theory guide和user guide,结合自己的经验,对三种k-ε模型进行以下总结。

自提出以来,k-ε模型已成为实际工程流程计算的主力。具有鲁棒性、经济性和对各种湍流的合理精度。它是一个半经验模型,模型方程的推导依赖于现象学的考虑和经验主义。

在 k-ε模型的推导中,假设流动是完全湍流的,分子粘度的影响可以忽略不计。因此,标准 k-ε模型仅对完全湍流有效。这就是需要近壁面处理的原因

列出涡粘系数的表达式如下:

标准k-epsilon模型

湍流动能k和其耗散率由以下输运方程获得


默认常量如下:

这些默认值是从基本湍流的实验中确定的,包括经常遇到的剪切流,如边界层、混合层和射流,以及衰减的各向同性网格湍流。已发现它们对于各种壁边界和自由剪切流相当有效。

RNG k-epsilon模型

RNG模型是使用一种称为重整化群论的统计技术推导的。它在形式上与标准k-e模型相似,但包括以下改进:

  • RNG 模型的ε方程中还有一个附加项,可提高快速应变流的精度。

  • 漩涡对湍流的影响包含在RNG模型中,提高了漩涡流的准确性。

  • RNG 理论为湍流普朗特数提供了解析公式,而标准k-ε模型则使用用户指定的常数值。

  • 虽然标准k-ε模型是高雷诺数模型,但 RNG 理论提供了一个解析推导的有效粘度微分公式,该公式解释了低雷诺数效应。

粘度建模

默认情况下如下式,使用下式建模,符合高雷诺数模型

当需要包含低雷诺数效应时,勾选Differential VIscosity Model,使用另一种粘度建模方式

如下式所示

粘度修正

一般来说,湍流受平均流量中的旋转或漩涡的影响。Ansys Fluent中的RNG模型提供了一个选项,通过适当修改湍流粘度来考虑涡流或旋转的影响。αs默认设置为0.07。但是,对于强涡流,可以使用更高的值 。

输运方程

RNG模型的输运方程和标准K-ε非常相似,仅有部分不同。最主要的差别在于Rε项(下面框起来的那个)

该项使得RNG 模型比标准k-ε模型更能响应快速应变和流线曲率的影响,这解释了 RNG 模型在某些类别的流动中的卓越性能。

Realizable k-ε Model

对于所有Realizable k-ε 主要有以下优点:

  • 从均方涡度涨落的精确方程推导出了耗散率 ε的修正输运方程

  • 包括旋转均匀剪切流、射流、混合层的自由流、通道和边界层流以及分离流等方面均优于标准k-ε模型

输运方程


式中

粘度建模

与标准k-ε模型一样,涡流粘度计算公式如下:

区别在于,Cu不再是一个定值:

模型常量如下

湍流选项

可参照我写在k-ω模型文章中的湍流选项内容。

【CFD理论】k-ω模型-CSDN博客

  • 19
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
k-epsilon湍流模型是一种经典的湍流模型,用于描述流体中湍流的行为,包括湍流的涡量强度、湍流能量的传递和湍流粘性等。以下是一个基于有限体积法(FVM)的k-epsilon湍流模型的示例代码: ```python # 定义模型参数 k = 0.01 # 初始湍动能 epsilon = 0.01 # 初始湍动粘性 # 定义模型参数方程 def calc_k(du_dx, du_dy, du_dz): # 计算k的变化率 return 1 - epsilon / k * (du_dx**2 + du_dy**2 + du_dz**2) * dt def calc_epsilon(du_dx, du_dy, du_dz): # 计算epsilon的变化率 C_mu = 0.09 # 模型参数 return C_mu * k**2 / epsilon * (du_dx**2 + du_dy**2 + du_dz**2) * dt # 定义有限体积法求解函数 def solve(): # 循环求解每个控制体 for i in range(1, nx-1): for j in range(1, ny-1): for k in range(1, nz-1): # 计算速度的梯度 du_dx = (u[i+1,j,k] - u[i-1,j,k]) / (2*dx) du_dy = (u[i,j+1,k] - u[i,j-1,k]) / (2*dy) du_dz = (u[i,j,k+1] - u[i,j,k-1]) / (2*dz) # 计算模型参数的变化率 dk_dt = calc_k(du_dx, du_dy, du_dz) depsilon_dt = calc_epsilon(du_dx, du_dy, du_dz) # 更新k和epsilon的值 k[i,j,k] += dk_dt epsilon[i,j,k] += depsilon_dt # 主程序 dt = 0.01 # 时间步长 dx = 0.1 # 空间步长 dy = 0.1 dz = 0.1 nx = 10 # 网格数 ny = 10 nz = 10 u = np.zeros((nx,ny,nz)) # 速度场 k = np.zeros((nx,ny,nz)) # 湍动能 epsilon = np.zeros((nx,ny,nz)) # 湍动粘性 # 初始化模型参数 k.fill(0.01) epsilon.fill(0.01) # 模拟时间步长 for t in range(100): # 计算速度场 solve() # 输出结果 print(u) print(k) print(epsilon) ``` 该代码使用Python语言实现,利用有限体积法求解k-epsilon湍流模型的方程,其中使用了numpy库来处理多维数组。该代码只是一个简单的示例,真实的k-epsilon湍流模型会更加复杂,需要考虑更多的物理和数学因素。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值