论文部分内容阅读
为了提高非结构网格上不可压流动与传热问题求解速度和数值精度。本文在分析SIMPLE算法的基础上,基于非结构化网格编制了不可压流动与传热计算程序,在强化压力速度耦合、节点变量布置及构造界面高阶通量等方面做了一些工作,主要贡献如下。一、提出了不可压流动SIMPLE算法的一种改进措施,其稳定性和算法步骤基本与SIMPLE算法完全一致,但收敛速度快于SIMPLE算法,速度亚松弛因子越小效果越明显,在速度松弛因子0.5-0.85范围内,收敛需要的迭代次数或CPU时间约为SIMPLE算法的50%到80%,在0.85到接近于1的范围内,收敛速度与之相近。改进算法与SIMPLE算法最大的不同是假设满足质量守恒的速度也满足纯离散动量方程而不是亚松弛后的离散动量方程,求解质量守恒方程时体现了动量方程的不平衡程度,故压力修正后的速度既满足质量守恒,又在一定程度上满足动量守恒。经过与SIMPLE、SIMPLER、PISO和IDEAL等经典算法对比,结果表明,在相同的速度亚松弛因子下,改进算法所用CPU时间最短。二、考虑到非结构化网格上不可压流动计算采用交错网格研究相对较少,同位网格存在计算结果与速度亚松弛因子或时间步长有关的问题,并且需要内存较多且满足动量守恒速度与质量守恒速度是两个速度场的问题,提出了在非结构网格上将压力布置于单元顶点位置、速度和其它标量布置于单元中心的半交错网格方案,并验证了其可行性。通过几个经典案例表明,半交错网格布置对于高雷诺数和倾斜网格下流场计算特别适用。这种半交错网格技术与网格单元形状无关,可用于任意网格形状,但二维三角形网格和三维四面体网格最经济。三角形网格顶点数约为单元数的二分之一,四面体网格则为五分之一或六分之一,压力修正方程的规模也按这个比例缩减。其缺点为压力修正值方程的系数矩阵带宽大,每行中非零元素个数多且每行各不相同,因此本文采用了压缩矩阵进行了存储,并使用不完全ILU分解预处理的GMGRES方法进行代数方程的求解。三、针对非结构网格不可压流动离散方程无法直接采用TVD等高阶对流扩散通量,本文提出了基于最小二乘单元界面梯度格式用于扩散项和对流项离散的方法,避免了单元界面梯度插值问题,还可以方便的构造对流项和扩散项的高阶格式,为非结构化网格上构造高阶格式提供了一种参考。最小二乘所得的系数也可以用于密度、扩散系数和速度等需要界面数值的变量计算。分别利用有解析解的纯扩散问题和对流扩散问题,验证了单元界面最小二乘用于求解通用对流扩散方程的可行性。与文献中常用的单元中心同阶数最小二乘法相比,在正交网格上,解扩散方程的误差(L2模)小1-2个数量级,在斜网格或极斜网格上,误差至少小一个数量级。解对流扩散方程时,随对流强度的增加,单元中心最小二乘的误差随贝克利数的提高而迅速增加,且很快失去参考价值;而本文提出的单元界面最小二乘法误差虽然也略有增加,但误差的数量级在贝克利数变化四个数量级后仍然保持不变,说明该技术对贝克利数相对不敏感。验证了界面最小二乘法可行性,编制了三维非结构网格上不可压流动SIMPLE程序,并对方腔自然对流和移动顶盖驱动流两个案例进行了模拟计算,得到了与文献一致的结果。在实施界面最小二乘法时发现,由于所有变量的插值系数和计算公式都相同,因此包括扩散通量在内的大部分插值运算工作都可放在网格预处理阶段完成,仅保留插值系数即可。如此可见二维和三维不可压流动传热计算程序在离散阶段基本一致,这样大大简化了编程难度,有利于代码维护和升级。最后,在以上算法和格式研究的基础上,针对稠油注蒸汽SAGD开采预热阶段,油层内温度场演化,确定了预热结束的时机。采用涡量流函数方法和界面最小二乘拟合技术,求解了预热期间油层内原油流动与传热的耦合问题,分析了稠油粘度、两井间距等因素对预热时间的影响。针对储气库地下和地面非稳定流问题,利用对流项和扩散项的最小二乘离散方法,结合延迟修正技术,计算分析了地下储气库储层在注气和采气期间温度变化规律和热平衡情况。结果表明,随着储气库运行周期数的增加,近井范围内温度逐渐降低,而远井区域,温度略有升高。针对地面注气管线瞬态流问题,提出了基于有限容积的一维非稳态流动与传热方程求解方法,求解过程中体现了轴向温度梯度和速度梯度的影响,同时也考虑了气体流动动能的影响。利用文献中常用的案例,验证了算法和程序,得到了与文献一致的结果。