豆丁网精品论文浅析对称边界在数值计算中的应用许彬 1,John C. Chai2,陈少松 1,张敏 1,王学德 11 南京理工大学动力工程学院,南京 (210094)2 南洋理工大学机械与航天学院,新加坡 (639798)E-mail:norkistar@摘 要:在结构化网格中,从一维拓展到三维,采用基元中心有限容积法和全隐时间格式求 解非稳态热传导问题,并将数值解同带有误差函数的精确解进行比较,得到令人满意的一致结果,这充分显示了对称边界在数值计算中的重要作用关键词:对称边界,有限容积法,误差函数对称边界的选取在数值计算中有着十分重要的意义首先,选取适当的对称边界可以减 少计算区域的网格数目和求解中的计算量;其次,可以使求解的问题简洁明了;最后,对称 边界的选取可以使通过计算得到的图形更加直观生动,对问题有更深刻的认识[1-4]本文在给出对称边界的基本概念和关系式的前提下,通过一个经典的非稳态热传导算 例,从一维拓展到三维,全面展示对称边界在数值计算中的精彩之处,以此为读者在数值计 算中提供有益的参考1 基本概念和关系式对称边界的选取必须满足一个条件,就是该边界上的通量必须为零,也就是说某标量在 该边界上为第二类边界条件,其法向变化率为零,数学表达式为,∂φ = 0∂n(1)上式中φ 为任意标量。
对于热传导方程有,∂T对于 N-S 方程有,qn = −k ∂n = 0(2)∂u = ∂v = ∂w = 0(3)∂x ∂y ∂z下面我们给出一个热传导问题作为参考算例,同时将数值计算的结果同数学分析后的 精确解进行比较,以此验证数值计算中对称边界选取的重要性2 算例分析2.1 一维热传导算例一个半无限大物体( 0 ≤ x < ∞ )初始温度是T0 ,当时间 t > 0 时,在 x = 0 的边界处 的温度始终为零度该问题的数学描述为[1],∂2T ( x, t) 1 ∂T ( x, t )=∂x2 α ∂t0 < x < ∞, t > 0(4)T ( x, t) = 0x = 0, t > 0(5)T ( x, t) = T0通过数学分析,可得该问题的精确解为,T ( x, t) = T0 ∗ erf (x ≥ 0, t = 0x )(6)(7)4αt在对半无限大空间内的非稳态热传导问题进行数值模拟时,初始温度取常数T0 =20℃,其他参数都取 1,单位为国际单位为了模拟这个问题,将上下两个边界设为对称边界,左 边界给定温度 0℃,右边界为绝热边界。
计算时采用的尺寸为 1×1,网格数为 10×10,时间 步长取 0.01s图 1 为 t=0.03s 时方形区域内温度分布情况,同时给出了数值解和精确解,虚线为精确 解,背景云图为数值解图 2 为三个不同位置温度随时间变化的曲线从两图中可以看出数 值解和精确解吻合的比较好精确解略低于数值解,这是由于在模拟一维半无限大热传导问 题时,一方面用矩形区域近似代替半无限大区域,另一方面精确解中带有误差函数,在进行 数值计算(双精度的计算)时,会存在舍入误差18.817.516.315.013.812.511.310.08.87.56.35.03.82.51.3图 1 t=0.03s(数值解/精确解)温度场分布 图 2 不同位置温度随时间变化图2.2 二维热传导算例将上述一维热传导算例推广到二维空间,即为二维热传导问题问题描述如下,一个半 无限大的角域, 0 ≤ x < ∞,0 ≤ y < ∞ ,初始温度是T0 ,当时间 t > 0 时,在 x = 0 与 y = 0 的边界处温度始终为零度由数学分离变量法推导可得,这个问题的解可以表示为如下两个一维问题解的乘积:(1)T1 ( x, t ) 为半无限大区域( 0 ≤ x < ∞ )的解,初始温度 F1 ( x) = T0 ,当时间 t > 0 时,x = 0 处的边界温度始终为零度;(2)T2 ( y, t) 为半无限大区域( 0 ≤ y < ∞ )的解,初始温度 F2 ( y) = 1 ,当时间 t > 0 时,y = 0 处的边界温度始终为零度。
显然,这个二维问题的初始条件可表示为乘积的形式T0 = T0 ∗1 ,每一个一维问题的解在前面问题中已经讨论过,可以得到分别得到,T1 ( x, t ) = T0 ∗ erf (因此,上述二维问题的解为,x4αt),T2 ( x, t ) = 1∗ erf (xy )4αty(8)T ( x, y, t) = T1 ( x, t) ∗ T2 ( y, t) = T0 ∗ erf (4αt) * erf ()4αt(9)在对该问题进行数值模拟时,为了体现对称边界在数值计算中的重要性,我们用一个三 维立方体来模拟该二维问题,将立方体相对的两个面设为对称面,其他四个面设为边界条件, 这样可以用三维模型来模拟二维问题初始温度取常数T0 =20℃,其他参数都取 1,单位为 国际单位计算时采用的尺寸为 1×1×1,网格数为 10×10×10,时间步长取 0.01s图 3 为网格划分示意图,图 4 为 t=0.07s 时,立方体区域内 I,J,K 三个剖面温度分布图,图 5-图 8 分别为四个不同时刻立方体区域内温度分布情况,同时给出了与精确解的比较, 虚线为精确解,背景云图为数值解。
ZX Y10.8Z0.60.40.200 00.20.20.40.40.60.60.80.8Z1 1Z图 3 网格划分示意图 图 4 t=0.07s I,J,K 三个剖面温度分布图ZZ18.817.516.315.013.812.511.310.08.87.56.35.03.82.51.3X Y10.80.60.40.218.817.516.315.013.812.511.310.08.87.56.35.03.82.51.3X Y10.80.60.40.200 00.2 0.20.4 0.40.6 0.60.8 0.81 100 00.2 0.20.4 0.40.6 0.60.8 0.81 1图 5 t=0.01s(数值解/精确解)温度场分布 图 6 t=0.05s(数值解/精确解)温度场分布ZZ18.817.516.315.013.812.511.310.08.87.56.35.03.82.51.3X Y10.80.60.40.218.817.516.315.013.812.511.310.08.87.56.35.03.82.51.3X Y10.80.60.40.200 00.2 0.20.4 0.40.6 0.60.8 0.81 100 00.2 0.20.4 0.40.6 0.60.8 0.81 1Z图 7 t=0.07s(数值解/精确解)温度场分布 图 8 t=0.1s(数值解/精确解)温度场分布Z2.3 三维热传导算例将上述二维热传导算例推广到三维空间,即为三维热传导问题。
问题描述如下,一个半 无限大的角域,0 ≤ x < ∞,0 ≤ y < ∞,0 ≤ z < ∞ ,初始温度是T0 ,当时间 t > 0 时,在 x = 0 、 y = 0 与 z = 0 的边界处温度始终为零度同理,这个问题的解可以表示为如下三个一维问题解的乘积:(1)T1 ( x, t ) ,半无限大区域( 0 ≤ x < ∞ )的解,初始温度 F1 ( x) = T0 ,当时间 t > 0 时,x = 0 处的边界温度始终为零度;(2)T2 ( y, t) ,半无限大区域( 0 ≤ y < ∞ )的解,初始温度 F2 ( y) = 1 ,当时间 t > 0 时,y = 0 处的边界温度始终为零度;(3)T3 ( z, t ) ,半无限大区域( 0 ≤ z < ∞ )的解,初始温度 F3 ( z) = 1 ,当时间 t > 0 时, z = 0 处的边界温度始终为零度 显然,这个三维问题的初始条件可表示为乘积的形式T0 = T0 ∗1∗1 ,每一个一维问题的解在前面已经讨论过,可以分别得到它们的解为,T1 ( x, t ) = T0 ∗ erf (x4αt),T2 ( x, t ) = 1 ∗ erf (y4αt),T3 ( z, t) = 1∗ erf (z )4αt(10)因此,三维问题的解为,T ( x, y, z, t ) = T1 ( x, t ) ∗ T2 ( y, t ) ∗ T3 ( z, t)= T0 ∗ erf (x4αt) * erf (y4αt) * erf (z )4αt(11)在对该问题进行数值模拟时,将立方体中相邻的三个面设为恒壁温 0℃,其他三个面设 为绝热面。
所有其他条件和物性参数同上个算例图 9-图 10 为两个不同时刻立方体区域内 I,J,K 三个剖面温度分布图,图 11-图 12 分别为四个不同时刻立方体区域内温度分布情况图 9 t=0.01s I,J,K 三个剖面温度分布图 图 10 t=0.05s I,J,K 三个剖面温度分布图Z Z18.817.516.315.013.812.511.310.08.87.56.35.03.82.51.3X Y X YZ1 10.80.8Z。