【doc】基于二维非结构网格的GMRES隐式算法
基于二维非结构网格的GMRES隐式算法 2007年IO月
第25卷第5期
西北工业大学
JournalofNorthwesternPolytechnicalUniversity
0ct.2007
Vo1.25No.5
基于二维非结构网格的GMRES隐式算法
李春娜,叶正寅,王刚
(西北工业大学航空学院翼型叶栅空气动力学国防科技重点实验室,陕西西安710072)
摘要:将广义极小残差GMRES(GeneralizedMinimumRESidua1)隐式算法应用到二维非结构网
格上,并结合LU—SGS(LowerUpper—SymmetricGauss—Seide1)方法对所求解方程组的残值向量进
行预处理,发展了一套高效,可靠的二维Euler方程的求解器.NACA0012翼型和某四段翼型的2
个算例,
明该隐式算法的计算效率要比传统的四步Runge—Kutta显式算法高出几十倍,与LU—
SGS隐式算法的效率相比,该算法的效率高出近1个量级.应用了重启型的GMRES算法,并对2
种构造系数Jacobian矩阵的方法进行了比较.
关键词:广义极小残差隐式算法,非结构网格,LU—SGS算法,重启型的GMRES算法
中图分类号:V211.3文献标识码:A文章编号:1000—2758(2007)05—0630—06 非结构网格技术对离散任意复杂外形具有灵活
性和强适应性,但是在模拟复杂的流动状态时,其计
算效率仍然不能达到人们的要求.对于显式算法而 言,为了保证格式的稳定性,时间步长取的较小,该 算法收敛速度呈弱线性.而隐式算法可以通过增大 时间步长来加速解的收敛和提高解的精度.具有平 方敛速[1]的共轭梯度法是Newton迭代隐式算法的 一
种,在不存在截断误差的前提条件下,只需要? 步就可以得到方程的解,其中?为方程组中方程的 数目引.
本文采用的是共轭梯度法中的广义极小残差法 GMRES[3],并且使用Jameson和Yoon[最早提出 的LU-SGS算法作为残值向量的预处理方法.这种 GMRES+LU—SGS隐式算法是由Luo,Baum和 L6hner提出的,来求解定常解[5和非定常解.与传 统的显式算法相比,该算法的效率可以高出1,2个 量级.为了提高计算效率,应用了重启型GMRES 算法,并且对系数Jacobian矩阵的2种构造方法进 行了比较.最后,利用该算法对绕NACA0012翼型 和某四段翼型的流动进行了数值模拟,并与四步龙 格一库塔显式算法和LU—SGS隐式算法的结果进行 了比较,验证了该算法的计算效率和精度. 1控制方程
二维非定常Euler方程在直角坐标系的积分守 恒形式为
几+(Q).础一o(1)
式中
Q—
JD
pu
0
FcQ'露一cy?露
.季户+户
式中,Q为守恒通量,F(Q)为对流通量项,为非结 构网格单元的边界,是面积微元,露是网格单元外 法向单位向量,为线微元;JD,,,e分别表示流体 的密度,x轴和Y轴方向的速度及单位体积内流体 的内能.
2方程离散
将(1)式进行空间离散,得到
收稿日期:2006—10—30
作者简介;李春娜(1982一),女,西北工业大学硕士生,主要从事理论与计算流体力
学研究.
第5期李春娜等:基于二维非结构网格的GMRES隐式算法 磐+?F1.nA/一R(3)
代表二维非结构网格单元的面积,为数值 粘性项,在中心格式中为人工粘性项.F是+1时 间层上的值,通过泰勒展开将F展开到时间层上, 即
l-+(叫)+0(
=F+AAq+0(?口.)(4)
A为系数雅可比矩阵.(3)式和(4)式联立,得 +?AAq一一?F"?nA/+R(5) 这样方程右边项所包含的就全是已知时间层 上的值,可以通过求解矢量通量和人工粘性得到;而 方程左端项中的曲和这两个未知数尚且包含 +1时间层上的值,因此对系数矩阵A进行分 裂[.,川,得到
A+:
..
是松弛因子,在本方法中取1.f为长度矢量,n为音 速.
这样(5)式就可以写为
d
d
q
f
+2.
g+A一却]一一.,l+ [-A?
(7)
式中,下标c表示为当前网格单元,6表示邻居网 格单元.
这时可以使曲近似等于?,式(7)可以转化 为如下形式
(+塞A)一3A?‰
一
R一?F"?(8
可见(S1+室A)代表由当前网格向邻居网格 传出的物理信息,而A一则代表由邻居网格向当前 网格传出的物理信息.
方程(7)式可以看成
A1AQ—Bl(9)
3GMRES算法
Krylov子空间的1组
正交基,然后在Krylov 子空间中利用最小二乘方法得到解向量.其中,可以 用Arnoldi方法计算Krylov子空间(A,l')中的 标准正交基.GMRES算法的具体过程可以为[3]: (1)给定初值ZXQ.,然后计算,?一B一 A1ZXQ0,并对,?进行预处理,即,?一Mi,?,记
一
(,?,,?).,则构造出第1个列向量l'"一,?/fl. (2)开始进行迭代,一1,2,…,志.
?计算W=A1l',并对w进行预处理w一 W.
?计算h=('.,,l'"),z一1,2,…,.
,,I
?计算州一W一hl,ml'",z一1,2,…,. Z一1
?计算h+h一llll并将辅助的向量
单位化l'州一V(m-I-1)/h+1,. ?根据数学上收敛的条件h,J一0来判定是 否终止迭代,但是由于数值计算的误差,该条件不能 严格达到,可以用hJ+l'J<来判定.在没有满足此 条件的情况下停止内迭代,并纪录下所求得的残值 向量作为初始残值向量,回到步骤(1)进行重新迭 代,直至满足步骤(2)中?的收敛条件,停止该时间 步的迭代,即为重启型的GMRES算法. (3)求解方程组的近似解
利用下式进行求解
?Q一AQ.+VY(10)
式中,Y为函数J()一ll?e一Hmyll的最d~---- 乘解,本文采用Givens变换求解.符号说明:设共有 ?个网格单元,则ZxQ0,,?,l'",…,l',(一1,…, 志),W为4×?维列向量;(?,?)为2个向量做内 积;ll?ll为向量的模,即向量的长度;',是由列向 量l'",l',l'0,…,l'构成的×(4×?)维矩
阵;j,,Y为维列向量;1一[1,0,0,…,0];刀为1 个上Hessenberg矩阵加上1个行向量,此行向量中
唯一的非零元素为h,位于+1行,列,上
Hessenberg矩阵中的每一个元素为迭代过程中得 到的h,并且该元素位于第i行,第J列(如下所 示).
H一
h1,1h1,
2……h1,]
,,,l
2,1^2,
2……2,,,tl
.z
....I?'
?
'
?:f
O'.h珥.Il
',,I+l.mJ
GMRES以Galerkin原理为基础,先建立本文中该算法是基于二维非结构网格来应
用
西北工业大学第25卷
的,但是完全可以扩展到三维非结构网格,不同之处 在于以下几点:针对每个网格单元而言,Jacobian系 数矩阵从4×4变成5×5,即多了一个速度方向的 通量;对整个Jacobian系数矩阵而言,矩阵的维数 从16×4XN变为25×5×?(?为网格单元数目), 即每个网格单元多了一个邻居的影响;GMRES算 法迭代过程中,4×?维列向量变成5×?维,mX (4XN)维矩阵变成mX(5×?).
4预处理
对于需要求解的方程组(9)式,当左端的系数矩 阵的条件数cond(A.)一IIA.llllAi-ll较大时,方 程组是病态的,这时GMRES算法是不具有高速收 敛特性的,如果要发挥高效率的特点,就必须对系数 矩阵进行预处理.
采用左预处理[.]方法,预处理矩阵为ML,将方 程组左右两边分别乘以预处理矩阵的逆矩阵,得 MZAl??Q=MZBl仁》Al??Q=Bl(12) 可以看到左预处理改变了线性系统残差向量的 值,从而对GMRES算法内迭代的收敛过程产生影 响.最好的预处理矩阵就是系数矩阵本身.但是计 算过程当中会遇到预处理矩阵的逆矩阵与向量做乘 积的情况,而大型矩阵的求逆即使是大型稀疏矩阵 的求逆都是十分困难的.因此,这里采用LU—SGS 方法对预处理矩阵的逆矩阵和列向量的乘积进行处 理..
系数矩阵A.可以分裂为3个矩阵:1个严格下 三角矩阵,1个严格上三角矩阵和1个纯对角矩 阵D,即Al=L+D+U.Al可以用以下表达式来近 似
Al=L+D+U?(D+L)D-1(D+) =
L+D+U+LD-1U(13)
系数矩阵的逆矩阵Ai-乘以1个已知列向量曰. 得到的计算式可以写成下式
(D+L)D一(D+U)X—Bl+(LD一U)X
(14)
略去方程(14)式中的最后一项,此方程就可以
用LU—SGS方法进行求解.
向前扫描(D+L)X.=Bl(15) 向后扫描(D+U)X=DX.(16) 这样,就可以求得,即对某一向量进行预处 理后得到的向量.
5系数Jacobian矩阵的构造
,本文采用 对于(6)式中系数Jacobian的构造
了2种方法:A用当前网格参数,A一用邻居网格参 数构造;A和A一两者都用公共面上插值得到的参 数构造.
图(1)为用2种方法构造系数Jacobian矩阵时 的CPU运行时间曲线.非结构网格为NACA0012 翼型的网格,计算状态为Ma=0.8,口一1.25..从 CPU运行时间上看,方法1要比方法2的效率提高 了近丢.
收敛迭代时间/s
图1CPU运行时间曲线
6计算结果
算例1对绕NACA0012翼型的流动进行数 值模拟.计算状态为Ma=0.8,a=1.25.. 四步龙格一库塔显式算法的CFL数取0.8,LU— SGS隐式算法和GMRES隐式算法的CFL数都取 25,非结构网格单元的总数为6048.图2为生成的 非结构网格.图3为压力系数分布曲线.图中由3种 算法得到的压力分布曲线基本重合,并且与实验值 吻合得很好.从图4残值收敛曲线和图5为CPU运 行时间曲线可以得到,四步龙格一库塔显式算法在7 500步左右收敛,CPU运行时间大约为830s;LU. SGS算法在2500步左右收敛,CPU运行时间大约
为230s;而GMRES算法大概在500步就收敛了, CPU运行时间大约为25s.GMRES算法的计算效 率约为LU—SGS算法的1O倍,比龙格一库塔显式算
法高出3O倍以上.
算例2模拟绕某四段翼型的流动,计算状态 为Ma=0.20,口一0..
0一
避德靛
第5期李春娜等:基于二维非结构网格的GMRES隐式算法
0.6
0.4
0.2
0
—
0.2
—
0.4
图2NACA0012翼型的非结构网格 一
l?0
—
0?5
0
0.5
1.0
c
图3压力系数分布曲线
图4残值收敛曲线
GMRES隐式算法的CFL数为10,LU—SGS隐 式算法为2,非结构网格单元的总数为50508.图6 为生成的非结构网格,图7为压力系数分布曲线.2 种算法得到的压力分布曲线基本重合,但是翼型上 表面的压力比实验值高一些.图8为残值收敛曲线, 图9为CPU运行时间曲线.IU—SGS算法在3G000 步左右收敛,CPU运行时间大约为140000S;而 GMRES算法大概在3000步就收敛了,CPU运行
时间大约为2000S.图示表明此算例中GMRES隐式算法的计算效率在小迎角,低马赫数下可以高出 LU—SGS隐式算法数十倍.四步龙格一库塔显式算法 不收敛.
魍
靛
图5CPU运行时间曲线
00.51.0
工
图6四段翼型的非结构网格
x/c
图7压力系数分布曲线
收敛迭代时间/s
图8残值收敛曲线
642024?0?
鼷妊按
O
姆餐凝饕
西北工业大学第25卷
7结论
收敛迭代时间/s
图9CPU运行时间曲线
本文将GMRES隐式算法运用到二维非结构
参考文献
网格上,利用Arnoldi方法和Givens变换分别求解 Krylov子空间的标准正交基和最/b---乘解,并结合 LU—SGS预处理方法开发了一套高效,实用的二维 非结构网格Euler方程的求解器,还进一步应用了 重启的GMRES算法来提高计算效率.在Jacobian 矩阵构造时,A用当前网格参数和A一用邻居网格 参数构造的方法更有利于计算效率的提高.数值计 算表明:该算法具有精度好,效率高的特点,其效率 要比传统的四步龙格一库塔显式算法高出三十倍以 上,与LU—SGS隐式算法相比,其效率也高出近1 个量级(小迎角,低马赫数下可以高出数十倍),具有 良好的工程实用价值.
[13OrkwisPD.GeorgeJH.AComparisonofCGSPrec0nditi0ningMethodsforNewtonSMe
thodSolvers.AIAA-1993- 3327
[2-1宁方飞.徐利平.二维定常湍流计算中的GMRES算法.力
学.2001.33(4):443--~451 [3]SaadY.SchultzMH.AGeneralizedMinimalResidualAlgorithmforSolvingNonsymme
tricLinearSystems.SIAM JournalonScientificandStatisticalComputing.1986.7:856,869 [43JamesonA,YoonS.Lower-UpperImplicitSchemeswithMultipleGridsfortheEulerEqu
ations.AlAAJournal.
1987.25(7):929,935
[5]
E63
[7]
[8]
LuoH.BaumJD.LiihnerR.AFast.Matrix-FreeImplicitMethodforCompressibleFlowsonUnstructuredGrid.
JournalofComputationalPhysics.1998.146:664,690
JamesonA.ImplicitSchemesandLUDecompositions.MathematicsofComputation.1981.37:385,397
YoonS.ImplicitNavier-StokesSolverforThreeDimensionCompressibleFlows.AIAAJournal.1992.30(11):2653
,
2659
LuoH,BaumJD,andLiihnerR.OntheComputationofCompressibleTurbulentFlowsonUnstructuredGrids.
AIAA一2000—0926.
GMRESImplicitAlgorithmBasedon2DUnstructuredMeshesfor
SolvingEulerEquations
LiChunna,YeZhengyin,WangGang
Abstract:Aim.Becauseofthelinearpropertyintheconvergencespeedoftraditionalexplicitandsome
implicitschemes,computationalefficiencybasedonunstructuredmeshesforcomplicatedconfigurationis
notsatisfactory.NowwepresentaGeneralizedMinimumResidual(GMRES)implicitalgorithmwhichhas
secondorderpropertyintheconvergencespeedtosolveEulerequationsbasedon2Dunstructuredmeshes.
霉镁籁茛
-暑
吨?
D哆
.
.m盯咖
腑
-暑
y
mP
mh
?N
?
第5期李春娜等:基于二维非结构网格的GMRES隐式算法?635?
ThesolutionvectorisobtainedusingGiven'Stransformschemewithpreconditioningtheresidualvectorof
equationsusingLower—UpperSymmetricGauss—Seidel(LU—
SGS)method.Furthermore,localtime
steppingandimplicitresidualsmoothingschemesareappliedtodevelopanaccurate,efficientandreliable
solver.Inthemaximaleigenvaluesplitting,Jacobianmatrixisformulatedfirstlybyvariablesofthecenter
cellanditsneighborcells,andsecondlybyvariablesonthepublicedgesofthem.Theefficiencyofthe
formermethodforformulatingtheJacobianmatrixisaboutaquarterhigherthanthelatter.Compared
withtraditionalfour—stageRunge—KuttaexplicitalgorithmandLU—
SGSimplicitalgorithmontestcasesof
NACA0012airfoilanda4-elementairfoil,theresultsshowthatcomputationalefficiencycanbeimproved
oneortwomagnitudesusingGMRES+LU—
SGSimplicitalgorithm.Thisalgorithmcanalsobedeveloped
to3Dunstructuredmeshestocomputebothviscousandinviscidflow.
Keywords:GMRESimplicitalgorithm,unstructuredmesh,LU—
SGSimplicitalgorithm,Jacobianmatrix
2006年《工程索引》(EI)年刊收录50行以上 论文大陆全部高校10篇非大陆13校25篇共35篇 2006年《工程索引》(EI)年刊收录50行以上论文大陆全部高校中10校10篇,非
大陆13校中9校25篇
共35篇,情况见下表.
华北大电中郧
上东京清北连子重国阳
大陆大学医海理工华京理科庆石
学工业工技油
院
麻省理东京新新香南香
非大陆大学成功加台竹港洋港
湾清理理科工学院工业坡
华工工技
5O行以上
8552111111111111111 篇数
64.62
88.8O82,79
58.5796
各篇行数66.6476.74987566575756565454535251515150
56.5476
5254
53.50
胡沛泉
2007年9月25日