system: [SYSTEM]

user: 5. 数值算例 在本节中，分别给出了线性和非线性问题求解所得的 L 2 误差，验证了该时空谱方法的有效性和精确性。对于部分数值算例，提供了本文方法所得的数值结果与相同条件下其他研究方法所得结果的对比。 例1. 考虑如下一维线性问题 u t = u x x ， ( x ， t ) ∈ ( 0 ， 2 π ) × ( 0 ， 1 ] ， u ( x ， 0 ) = sin ( x ) ， x ∈ ( 0 ， 2 π ) ， 精确解为 u ( x ， t ) = e − t sin ( x ) 。相应的数值结果在表1给出。表2中列出了文献 [ 20 ] 中对此示例求解所得的 L 2 误差。 Table 1 The L2-error for Example 1 with two-interval method in spac N 时间四区域 M = 6 M = 8 M = 10 8 1.05E−05 1.10E−05 1.12E−05 10 8.20E−08 8.63E−08 9.01E−08 12 1.30E−08 4.46E−10 4.65E−10 14 1.41E−08 8.25E−11 3.28E−12 表1. 例1空间二区域数值结果L 2 误差 Table 2 The error result of reference [ 20 ] at Radau points at T = N 1 Δ t 2 nd Radaupoint 3 rd Radaupoint 20 1.60E−03 3.43E−06 5.87E−06 40 4.00E−04 3.76E−07 4.81E−07 80 1.00E−04 2.19E−08 2.95E−08 160 2.50E−05 1.19E−09 1.59E−09 表2. 文献 [ 20 ] 在 Radau点上的误差结果 T = 1 图1. K x = 2，K t = 4时方法(6)的收敛情况 采用空间LDG谱元法，时间谱元法求解以上方程。在空间方向上剖分为二区域，N表示每个子区域的多项式次数，在时间方向上剖分为四区域，M表示每个子区域的多项式次数。在表2中，列出了在空间上采用LDG有限元法，时间上采用Runge-kutta离散 [ 20 ] 所得的L 2 误差。表2中N 1 为文献中空间方向剖分个数， Δ t 为时间方向Runge-kutta步长。数值结果表明，本文方法在对于此问题的求解具有良好的精度。当固定时间方向上多项式次数M = 8，取不同的N时得到图1中子图(a)。当固定空间方向上多项式次数N = 14，取不同的M时得到图1中子图(b)。更直观的给出了剖分方式为K x = 2，K t = 4时的数值结果。 例2. 考虑时间区间为(0， 8]的如下问题 u t = u x x − u + π 2 e − t cos ( π x ) ， ( x ， t ) ∈ ( − 1 ， 1 ) × ( 0 ， 8 ] ， u ( x ， 0 ) = cos ( π x ) ， x ∈ ( − 1 ， 1 ) ， 精确解为 u ( x ， t ) = e − t cos ( π x ) 。表3和表4中给出了使用本文方法(6)的求解结果。表5中的结果是由 [ 32 ] 所提出的。 Table 3 L2-error at T = 8 for Example 2 with two-interval method in spac N 时间四区域 M = 6 M = 8 M = 10 8 1.16E−05 1.31E−05 1.44E−05 10 1.10E−07 8.34E−08 9.20E−08 12 7.86E−08 5.48E−10 4.03E−10 14 8.46E−08 4.84E−10 2.65E−12 表3. 例2空间二区域在T = 8时的数值结果L 2 误差 Table 4 L2-error at T = 8 for Example 2 with four-interval method in spac N 时间六区域 M = 6 M = 8 M = 10 8 4.21E−07 4.77E−07 5.27E−07 10 2.31E−09 8.24E−10 9.12E−10 12 2.57E−09 5.55E−12 1.39E−12 表4. 例2空间四区域在T = 8时的数值结果L 2 误差 Table 5 Results in [ 32 ] at T = N 1 M 1 L 2 -error 20 20*8 3.44E−07 40 40*8 8.61E−08 80 80*8 2.15E−08 160 160*8 5.38E−09 320 320*8 1.35E−09 表5. 文献 [ 32 ] 的数值结果T = 8 从表3和表4验证，可以通过增加子区域个数或者多项式的阶数来获得更高精度的数值结果。表5中的结果在文献 [ 32 ] 中给出，是采用DG有限元法和Strang对称算子相结合的方法求解示例2所得到的。表5中N 1 是空间子区域的划分数，M 1 是时间步长。由此可得，本文方法具有较高的准确性。并且对于较大的时间区间问题该方法也是有效且高精度的。 例3. 考虑如下线性间断问题 u t − u x x = { 2 ( 2 π 2 + 1 ) e 2 t sin ( 2 π x ) ， ( x ， t ) ∈ ( − 1 ， 0 ) × ( − 1 ， 1 ] ， 2 ( 2 π 2 + 1 ) e 2 t cos ( 2 π x ) ， ( x ， t ) ∈ ( 0 ， 1 ) × ( − 1 ， 1 ] ， 有精确解 u ( x ， t ) = { e 2 t sin ( 2 π x ) ， ( x ， t ) ∈ ( − 1 ， 0 ) × ( − 1 ， 1 ] ， e 2 t cos ( 2 π x ) ， ( x ， t ) ∈ ( 0 ， 1 ) × ( − 1 ， 1 ] . Table 6 The L2-error for Example N 空间四区域时间四区域 M = 8 M = 10 M = 12 8 1.27E−04 1.40E−04 1.51E−04 10 8.78E−07 9.64E−07 1.04E−06 12 4.96E−09 4.52E−09 4.89E−09 14 3.05E−09 2.05E−11 1.97E−11 表6. 例3的数值结果L 2 误差 在求解过程中，将空间区间剖分为四区域并将时间区间剖分为四区域。在表6中，N是每个空间子区域上的多项式次数，M是每个时间子区域上的多项式次数。结果显示所提出的时间谱元空间局部间断Galerkin谱元方法对于该间断问题的处理是有效的。 接下来，应用方法(11)求解非线性反应扩散问题。 例4. 考虑如下非线性问题 u t + ( 0.5 u 2 ) x = 0.5 u x x + 0.5 e − t sin ( 2 x ) ， ( x ， t ) ∈ ( − π ， π ) × ( 0 ， T ] ， u ( x ， 0 ) = sin ( x ) ， x ∈ ( − π ， π ) ， 精确解为 u ( x ， t ) = e − 0.5 t sin ( x ) 。如表7中给出了应用第三节中描述的非线性问题算法对例4的 T = 1 和 T = 0.5 两种情况分别求解所得结果。表8中给出了文献 [ 33 ] 对应情况下的数值结果。 Table 7 The L2-error for Example 4 with two-interval method in spac N T = 1 T = 0.5 时间四区域 时间六区域 M = 6 M = 8 M = 6 M = 8 4 6.18E−03 7.01E−03 4.42E−03 5.02E−03 6 1.02E−04 9.88E−05 5.59E−05 6.33E−05 8 1.79E−06 1.24E−06 5.32E−07 6.20E−07 10 2.28E−08 1.62E−08 4.25E−09 4.00E−09 表7. 例4空间二区域在T = 8时的数值结果L 2 误差 推广至一维非线性反应扩散问题，其中非线性项采用CGL插值进行处理。结合迭代法进行求解，当L 2 范数下两次迭代差值小于10 − 12 或迭代次数大于20时，本次迭代结束。表7中给出了应用本文方法所得的L 2 误差。 Table 8 The L2-error in [33 N T = 1 T = 0.5 Δt L 2 -error Δt L 2 -error 10 5.00E−03 3.37E−02 1.25E−03 1.80E−03 20 2.50E−03 7.10E−03 6.25E−04 1.95E−04 40 1.25E−03 1.80E−03 3.13E−04 2.39E−06 80 6.25E−04 4.66E−04 表8. 文献 [ 33 ] 的数值结果L 2 误差 在表8中，列出了 [ 33 ] 在空间上采用LDG方法，时间上采用Runge-kutta方法离散所得的 L 2 误差。其中 N 1 为文献中空间方向的剖分个数， Δ t 为时间方向Runge-kutta的步长。数值结果表明，本文方法在求解非线性问题时可获得良好的精度。