图像缩略图

使用简单算法的2D盖驱动腔流量

版本1.1.0(7.59 kB) MJ Sarfi.
使用简单算法解决了典型的盖子驱动腔流量,用于替补状态。

2K下载

更新08 2018年8月8日

查看许可证

边界条件:

v = 0各方面。右,左,左下方,左下方,u =顶部BC的盖子速度

数值方法:

用于解析速度压力耦合的简单算法。U和V的交错网格。看看索引如何在交错的网格中工作,请查看“Versteeg,Malalasekera:计算流体动力学”的教科书。管理方程的离散化是基于这本教科书。u和v在每次迭代中由jacobi方法更新。在每次迭代中使用Penta-Diagonal矩阵算法直接解决压力校正方程。Proper choice of under-relaxation factors needed for convergence.Jacobi方法是这种问题的最低效率的方法,但它简单易于最平行。鼓励您应用其他迭代方法,如行TDMA,猜测 - Seidel,Multigrigrid或SOR,以便更快地收敛。

压力校正:

我经常看到人们在简单算法中努力解决压力校正方程,因为P'的BCS尚不清楚。这是如何解决它:
1)压力是一个相对概念。因此,将域中的一个节点的压力作为边界条件夹紧到零,并且将相对于该点测量其他节点处的压力。设置p(1,1)= 0并且因为p(1,1)是已知p'(1,1)= 0的常见做法,但是您需要在其他节点处计算p'。显而易见的是,位于底墙上的P'点的= 0,因为它下面没有P'节点,但它有AW,AE,AE。其他边界P'值将按这种方式设置。您将最终获得一个Penta对角线矩阵的系数。

我使用PETSC(C语言)并行编写了此代码。我很快就会在github上上传它。它比这个版本快得多,因为:
1)它是平行的,而不是串行,这样您就可以使用多个处理器。
2)C版本通过迭代几次不同的Matlab版本来解决动量方程,这些版本只有一个jacobi扫描。
3)最重要的是,PETSC使用Krylov子空间迭代方法(类型:GMRES),它还使用预处理器(我找到了添加剂Shwartz PC最好)来解决动量和压力校正,这在收敛速率方面比Jacobi方法更有效。

引用

MJ Sarfi(2021)。使用简单算法的2D盖驱动腔流量(//www.tianjin-qmedu.com/matlabcentral/fileexchange/68348-2d-lid-diven-cavity-flow-using-simple-algorithm),matlab中央文件交换。检索到

Matlab释放兼容性
用R2018A创建
兼容任何释放
平台兼容性
视窗 苹果系统 Linux.

社区宝藏狩猎

找到Matlab Central中的宝藏,并发现社区如何帮助您!

开始狩猎!