设为首页 加入收藏 期刊导航 网站地图
  • 首页
  • 期刊
    • 数学与物理
    • 地球与环境
    • 信息通讯
    • 经济与管理
    • 生命科学
    • 工程技术
    • 医药卫生
    • 人文社科
    • 化学与材料
  • 会议
  • 合作
  • 新闻
  • 我们
  • 招聘
  • 千人智库
  • 我要投搞
  • 办刊

期刊菜单

  • ●领域
  • ●编委
  • ●投稿须知
  • ●最新文章
  • ●检索
  • ●投稿

文章导航

  • ●Abstract
  • ●Full-Text PDF
  • ●Full-Text HTML
  • ●Full-Text ePUB
  • ●Linked References
  • ●How to Cite this Article
Hans Journal of Data Mining 数据挖掘, 2013, 3, 23-26
http://dx.doi.org/10.12677/hjdm.2013.32005 Published Online April 2013 (http://www.hanspub.org/journal/hjdm.html)
The Moving Mesh Algorithm of Singular Perturbation
Problem
Bin Lin, Xiaopei Li, Yujiang Li
School of Mathematics and Computation Science, Zhanjiang Normal University, Zhanjiang
Email: linbin@stu.xjtu.edu.cn
Received: Jan. 19th, 2012; revised: Mar. 2nd, 2012; accepted: Apr. 8th, 2012
Copyright © 2013 Bin Lin et al. This is an open access article distributed under the Creative Commons Attribution License, which permits
unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Abstract: In the paper, we use moving mesh method for solving singular perturbed two-point boundary value problem,
First, the problem is given difference scheme, and then select the control functions and give algorithm, at last two
instances are computed to verify the accuracy and effectiveness of this approach. The results show that: when this
method was used, CPU run time became very short and the distribution of grid could be adjusted according to errors.
Keywords: Singular Perturbation Problem; Moving Mesh Method; Difference Scheme
奇异摄动问题的移动网格算法
林 彬,李晓培,李雨江
湛江师范学院数学与计算科学学院,湛江
Email: linbin@stu.xjtu.edu.cn
收稿日期:2012 年1月19 日;修回日期:2012 年3月2日;录用日期:2012 年4月8日
摘 要:我们使用移动网格法求解奇异摄动两点边值问题,首先给出问题的差分格式,然后根据等分布原理选
取控制函数,给出算法,最后通过求解奇异摄动问题的两个实例来验证这个方法的准确性和有效性。结果表明:
使用移动网格法进行计算,CPU 运行时间很短并能根据误差来调节网格的分布。
关键词:奇异摄动问题;移动网格法;差分格式
1. 引言
在物理学,力学和工程技术等实际问题中存在大
量的含有小参数

的微分方程问题。
这类问题的解 u除了与
x
有关外,还与小参数

有关。这类问题中小参数有的包含在微分方程的低价
导数项中,有的包含在高价导数项中,还有的包含在
定解条件和所讨论区域的边界中。很多的应用问题都
可归结为带有初始条件和边界条件的偏微分方程的
初值–边值问题。有的问题常常出现这样的情况,也
就是方程在求解区域的局部变化非常剧烈,或者是求
解区域整体相对较大,却又要对其中小部分上解的细
节信息要求很高的情况。奇异摄动问题产生于流体力
学、弹性力学、量子力学、声学、光学、化学反应和
最优控制等重要领域,其特点是在讨论的微分方程中
含有摄动参数,这种参数可以反映一定的物理性质而
自然出现,也可以是人为地引进。由于小参数的影响,
这些问题的解在局部范围内具有很高的导数。奇异摄
动问题既有边界层型奇异摄动问题,也有转点问题,
涉及到的微分方程,有常微分方程和几种类型的偏微
分方程,在实际应用中,在很多情况下,一般很难求
Copyright © 2013 Hanspub 23
奇异摄动问题的移动网格算法
得精确的解析解。
本文考虑如下奇异摄动对流扩散边值问题:
 
 
0
, 0,1
0,1
N
vxpxvxfx x
vvvv

 
 



 (1)
其中 01



O
, 是充分光滑。这类问题在边界处
有厚为

px

的边界层,在边界层附近其解的导数很
大,解的变化剧烈。对这类问题用均匀网格求解难以
得到满意的答案[1-3]。本文使用移动网格方法求解,网
格节点在边界层处加密。文章整体结构:首先是引言,
在第二部分给出问题的差分格式,第三部分介绍等分
布原理和 B-S 网格,第四部分给出算法,第五部分给
出误差估计,最后给出数值结果和结论。
移动网格法是保持求解过程中网格节点数不变,
但网格节点的位置通过迭代而变化,并且将较多的网
格点移动到解的性质较奇异的地方。通过这种合理分
布的网格点,可以使解变化较大的布局区域有较多的
网格,从而使整体的误差减小[4]。
2. 差分格式
首先取 1N

个节点:
01 1
01
NN
xxx x
2
x

 ,将区间


0,1 分成 N
个小区间, 1i
x
ii
hx


。
方程(1)可以离散为
 
0
,
0,1
iiii
N
vpv f
vvvv



 






 (2)
这里




,,
iii ii
vvxppxf fx

i
,使用下列差分格
,得 式




11 1
11
1
,,
2
iii iii
ii iiii
ii ii
iii
vvh vvh
vv vvhh
vv h
hhh
 




 

 
1
,

(3)
将(3)式代入(2)式,得



 
11 11
1
0
, 0,1,,1
0,1
iii iiiii
ii
i
i
N
vvh vvhvv
pfi
h
h
vvvv

 

 N







1
(4)
化简后得到下面形式
1iiiiiii
EvFv Gvf

  (5)
其中
11 1
22
,,
ii
ii i
ii ii
iii i
p
EF G
hh hh
hhh h1
p


 

 。
3. 等分布原理
等分布原理首先由 De Boor引入,用来求解常微
分方程边值问题,它的主要思想是要求网格点的分布
能使方程的误差度量在各个小单元相等,误差度量通
常叫控制函数。假定控制函数为 ,它的选取
一般由问题的奇异特性来决定,例如控制函数可以由
解的几何图形和性质决定(弧长,曲率等等)。目前控
制函数的选取问题还不太成熟,大部分还是根据经验
或者对解的性质作先验估计来选取。

0Mx
假定非均匀网格剖分
012 1
01
NN
xxxx x


 ,在各个小区间


1,
ii
x
x
误差分布是一样的,即
  
 
123
0012 1
1
0
dddd
1
dd
N N
N
iN
i
xxxx x
xxxx x
xx
xx
d,
M
xx Mxx Mxx MxxMxx
Mx xMx x
N







在实际应用中,人们常常选取解的弧长作为控制
函数,即

2
1v
Mx
x






(6)
在区间


1,
ii
x
x
上v
x

采用线性插值离散,即
1ii
i
vv
v
xh




 (7)
v
x


在[0,1]上采用分片线性插值离散,由(6)式得到

22 2
11 1ii iiiiii
xx vvxxvv
 
 

2
1
(8)
Copyright © 2013 Hanspub
24
奇异摄动问题的移动网格算法
Bakhvalov-Shishkin 网格(B-S网格)[5]
对(1)式,当 时,网格生成函数为

0px




, 0,
1
11ln, ,1
1
q
x
Nq
q
  

 






 




 (9)
其中 ,

0,1q0

,ln


 是单调递增函数并
且 ,

01



1
12 N

,从而 ,

00



12 lnN

。当

2ln
eN



时,上述网格为 Shinskin
网格,当 1
121N



 


时,上述网格为 B-S 网格。
在实际计算中常常取 1
2
q,2

,则 B-S 网格为

21
ln121, 0,1,2,,2
2
2
11ln, 1,,
2
i
iN
i
NN
xNi N
Ni
N






 







 




N
(10)
这里 N是偶数。
当


0px

,我们将区间


0,1 分解为两个小区间


0,1


和


1,1

,然后分别对每个小区间 2
N等分,
并且使得误差函数

1
exp
x








等分在网格节点
i
x
,,1
22
NN
,2,,,
2 2
N N
iN





从而得到下面网格
生成函数





21ln, 0,2
1ln1211, 21,
NN
x
NN

 











 


N
(11)
这里 ln N



,

是与

和 无关的正函数。 N
取1

,则 B-S 网格为


1
21ln, 0,1,2,,2
1ln1211, 21,,1,2,,
22
i
iN
Ni
N
xiN
NNNi
N












 







N
N
(12)
我们求解过程中根据


0px和情况分
别取初始网格为(10)和(12)式。

0px
4. 数值算法[6,7]
第一步:选取 B-S 网格为初始网格;
第二步:假设网格
  


01 23
,,,,,1
k kkkk
N
Sxxxx


k
i
v
 
1
kk
iii
hxx
为
已知,求解(10)式得解为 ,设k


 
11
,
kk
ii
xv



 
,
kk
ii
xv






,
,在点 和点 之间的
弧长为
0,1,2, ,iN
 
22
1
kk
ii
uh

kk
ii
lu ,在区间


0,1 上,
解曲线 的总弧长为


k
vx
 



22
1
11
NN
kkkk k
iiii
ii
Lluu h


 
 ;
第三步:网格测试,假设为用户预选常数,一
般取 1.1 或1.2 或2,如果
0
c


0
max i
k
L
k
lc
N
,则执行第5
步,否则执行第 4步;
第四步:在新网格
 


1 1111
01 23
,,,,,1
k kkkk
N
S xxxx
 

 
中,选取点




11
11
,
kkk
ii
xvx




到点




k
x
1
,
kk
ii
xv


1
的距离为
k
LN的新网格点:
 
11 1
01
01
kk k
N
xx x
 

,
然后返回第二步执行;
第五步:令

  



  


01 2012012012
,,,,,,,,, ,,,,,,,,
kkkkkkk k
NNNN
x
xxxxxxxvvv vvvvv
 

算法结束。
Copyright © 2013 Hanspub 25
奇异摄动问题的移动网格算法
Figure 1. The distribution of numerical solution of example 1 for
different values of errors (N = 32)
图1. 对不同误差,数值解分布情况(例1中) N32
5. 误差估计
定理 假设是问题的精确解, 为在任意
非一致网格上的数值解,则有

ux

vx
 
0
1
max ii
iNux vxCN


 (16)
其中 C是常数。
6. 数值实验及结果
例1

 
0, 01
00,11
ux ux
uu

 






(17)
它的精确解为

11
1
ee
1e
x
ux








。
取02,0.5,1, 0.01c


 

256N

32 0x
,运行结果:最大
误差为 0.00710323711963,程序运行时间为 0.234000
秒。

对不同误差,数值解分布情况见图
1。可见其解在 存在边界层。

N
例2

 
10, 01
1
00,11
ux ux
x
uu

 







(18)
它的精确解为
 
11
1
1
11
21
x
x
x
ux






。
这里取 02,0.5,1, 0.01c



,运行结果:
最大误差为 0.01251562428 729,程序运行时间为
0.125000 秒。


256N。从上面例子的数值结果来
看,移动网格法 CPU 运行时间不到 0.3 秒,可见效率
高,并能根据误差来调节网格的分布。
7. 结论
移动网格法保证网格节点数不变,网格节点的位
置可以通过迭代而变化,从而将较多的网格点移动到
解的性质较奇异的地方,从而使问题整体的误差减小
[4],使数据存储量减小,计算速度加快。因此,移动
网格法是求解奇异摄动问题的比较好的方法。
参考文献 (References)
[1] N. Kopteva, M. Stynes. Numerical analysis of singularly per-
turbed non-linear reaction-diffusion problems with multiple so-
lutions. Applied Numerical Mathematics, 2004, 51(2-3): 273-
288.
[2] N. Kopteva, M. Stynesion. A robust adaptive method for a quasi-
linear one-dimensional convection-diffusion problem. SIAM Jour-
nal on Numerical Analysis, 2001, 39(4): 1446-1467.
[3] N. Kopteva. Maximum norm a posteriori error estimates for a
one-dimensional convection-diffusion problem. SIAM Journal
on Numerical Analysis, 2001, 39(2): 423-441.
[4] Y. Chen. Uniform convergence analysis of finite difference
approximations for singular perturbation problems on an adapted
grid. Advances in Computational Mathematics, 2006, 24(1):
197-212.
[5] 庞宝臣. 常微分方程奇异摄动问题的数值算法[D]. 西安交通
大学, 2006.
[6] 杨继明. 用等分布原理求解一类奇异摄动两点边值问题的数
值算法[J]. 湖南工程学院学报, 2004, 14(2): 84-87.
[7] 杨继明, 陈艳萍. 一类奇异摄动对流扩散边值问题的移动网
格方法[J]. 湘潭大学自然科学学报, 2004, 26(3): 25-29.
Copyright © 2013 Hanspub
26

版权所有:汉斯出版社 (Hans Publishers) Copyright © 2012 Hans Publishers Inc. All rights reserved.