参数化泊松方程的模型降阶预处理

胡奇晓 ,  徐友才 ,  张世全

四川大学学报(自然科学版) ›› 2026, Vol. 63 ›› Issue (03) : 250055 -250055.

PDF (779KB)
四川大学学报(自然科学版) ›› 2026, Vol. 63 ›› Issue (03) : 250055 -250055. DOI: 10.19907/j.0490-6756.250055
数学

参数化泊松方程的模型降阶预处理

作者信息 +

Model order reduction preconditioning of parameterized Poisson equations

Author information +
文章历史 +
PDF (797K)

摘要

本文针对数值求解参数化泊松方程提出了一种基于模型降阶思想的预处理共轭梯度(Preconditioned Conjugate Gradient,PCG)算法。为加快所得离散线性方程组的求解速度,本文首先基于模型降阶思想构造了一般形式的预处理矩阵,并证明其对称正定性。在算法的off-line阶段,本文基于少量参数对应的全模型解数据,利用PCG算法并结合本征正交分解(Proper Orthogonal Decomposition,POD)方法生成了一组动态预处理矩阵。然后,在on-line阶段,本文利用动态预处理矩阵结合PCG算法建立所需算法。为了验证算法的性能,本文分别在单位矩形区域和L形区域上数值求解参数化泊松方程。结果显示,在相同精度条件下,算法的平均计算时间比标准共轭梯度算法快40倍以上。

Abstract

This paper aims at the fast numerical solution of parameterized Poisson equation.A preconditioned conjugate gradient (PCG) method based on the model order reduction method is proposed to speed up the solution of the obtained discrete linear system.First, the general formulation of preconditioning matrix based on model order reduction is designed, and the symmetry and positive definition of the matrix are proved.In the off-line stage of the method, by using very few solution data, the PCG algorithm combined with the proper orthogonal decomposition (POD) method are adopted to generate a set of dynamic preconditioning matrices.In the on-line stage, the MPCG algorithm is proposed by combining the PCG algorithm and these dynamic preconditioning matrices.To verify the performance of the method, parameterized Poisson equations on the unit rectangular and L-shaped domains are numerically solved.It is shown that, in comparison with the standard CG algorithm, the average computation time is speeded up by more than 43 times with the same calculation accuracy.

Graphical abstract

关键词

参数化泊松方程 / 模型降阶 / 预处理矩阵 / 共轭梯度

Key words

parameterized Poisson equation / model order reduction / precondition matrix / conjugate gradient(2020 MSC 65M60)

引用本文

引用格式 ▾
胡奇晓,徐友才,张世全. 参数化泊松方程的模型降阶预处理[J]. 四川大学学报(自然科学版), 2026, 63(03): 250055-250055 DOI:10.19907/j.0490-6756.250055

登录浏览全文

4963

注册一个新账户 忘记密码

作为描述众多基本物理现象(如静电场、热传导、流体流动等)的关键数学模型,参数化泊松方程通过引入参数提升了模型的灵活性和适应性,能够高效处理具有复杂几何形状及存在多物理场耦合的问题1-2
目前,泊松方程的数值求解已有多种高精度方法,如有限元法、有限体积法及有限差分法等。这些方法的求解代价很高,通常涉及高达106~109个自由度的数值计算问题,需花费数小时甚至更长的CPU时间3-4。特别地,对于参数化泊松方程而言,每当方程中的参数发生改变时就需要重新进行求解,每次都需花费巨大的计算成本。因此,如何使算法在满足精度的条件下实现快速求解是一个有意义同时也极具挑战性的问题。
模型降阶方法因其高效的在线计算效率日渐成为解决以上问题的关键方法5-6。该方法通过构造低维问题来逼近高维全模型(full-model)问题来有效降低计算复杂度6。为了保证计算精度,模型降阶方法往往需要在离线阶段(off-line)生成大量全模型解数据以构造低维逼近空间,代价非常大。针对此问题,近年来研究者尝试将模型降阶与机器学习相结合,降低参数化PDE的计算复杂度。值得注意的是,这样虽然能够避免降阶模型需要侵入式修改全模型的缺点,但无法减少离线阶段的计算成本7,并可能导致在线计算精度降低。因此,如何将模型降阶思想与全模型解有效结合起来加速其中最耗时的离散方程组的求解便成为问题的关键。
对于大型线性方程组,主流的求解方法是预处理Krylov子空间法8-9,其中的预处理矩阵的构造是加速算法收敛的关键10。特别地,针对参数化PDE,离散得到的大型线性方程组需根据方程中参数的构造去设计相应的预处理矩阵,加速收敛。为解决模型降阶中的线性系统序列问题,Anzt等11利用前一个分解作为初始猜测值进行更新,显著提高了算法的迭代求解效率。Carlberg等12提出了结合Krylov子空间循环利用和本征正交分解(Proper Orthogonal Decomposition,POD)增强的共轭梯度(Conjugate Gradient,CG)方法,用于高效求解参数化PDE离散产生的系列方程组。Santo等13提出了一种多空间降基方法,用于构建预处理器的粗空间部分,加速其收敛。
针对参数化泊松方程参数变化时需要多次快速求解的需求,本文构造了基于模型降阶的预处理矩阵的一般形式,在off-line阶段利用POD结合预处理共轭梯度算法(Preconditioned Conjugate Gradient,PCG)生成一组动态预处理矩阵,在on-line阶段将动态预处理矩阵与PCG算法结合起来,进而建立了基于模型降阶预处理的MPCG算法。由于在off-line阶段仅需少量的全模型解数据,本文方法相对标准模型降阶方法大幅减少了off-line阶段的计算量。

1 参数化泊松方程及其数值求解

1.1 方程及限元解

参数化泊松方程具有如下形式:

-Δφ+μφ=f, in Ω,φ=g, on Ω

其中,φ是待求未知函数,μ0是参数,f是给定的源项,g是已知边界条件,区域Ω是单连通、有界的多边形开集。

有限元法是求解参数化泊松方程的常见方法3-4,其具体求解步骤如下。

1) 将参数化泊松方程转换为变分形式,即求φU,满足:

a(φ,v)=f,v,vV,

其中,

a(φ,v)=(φ,v)+μ(φ,v),
U=Hg1(Ω)={φH1(Ω):φ|Ω=g},
V=H01(Ω)={vH1(Ω):v|Ω=0}

2) 将求解区域划分为有限个单元,并构造有限元空间UhVh。离散的变分形式为:求φhUh,使得:

a(φh,vh)=fh,vh,vhVh

3) 组装刚度矩阵并施加边界条件,得到离散线性方程组:

Ah(μ)φh(μ)=fh(μ)

其中,系数矩阵Ah(μ)对称正定,方程组随参数μ的改变而变化。

在参数化泊松方程求解过程中,对方程组(2)的求解最耗时。

1.2 PCG算法

CG是求解对称正定线性方程组的主流方法之一。它的基本思想是:构造一组共轭方向,然后沿着这些方向进行线性搜索,逐步逼近方程的解8。PCG是CG算法的改进,通过引入预处理矩阵来改善系数矩阵的条件数,加速收敛。

对方程组(2),通过左预处理共轭梯度方法先将其转化为:

M-1Ah(μ)φh(μ)=M-1fh(μ)

再对方程组(3)使用标准的CG算法求解,其中M是对称正定的预处理矩阵,即矩阵Ah(μ)的近似。在每次迭代中,PCG算法需要计算M-1与残差向量的乘积。实际计算中通常将该步骤转化为求解如下方程组:

Mz=r

由于预处理矩阵MAh(μ)的近似,所以求解方程组(4)相当于近似求解:

Ah(μ)z=r

因此,预处理过程并不需要显式地给出预处理矩阵M

当参数μ发生改变时,方程组(2)中的系数矩阵Ah(μ)相应改变。此时,传统预处理方法的预处理矩阵需要重新设计,难以实现高效求解。

1.3 POD模型降阶

基于POD的模型降阶方法是一种基于数据驱动的降阶技术,核心思想是通过捕捉系统的动态响应的主要特征来构造低维空间,逼近高维全模型的解、显著降低计算复杂度。该方法可以分为off-line阶段和on-line阶段两部分6

使用基于POD的模型降阶方法求解参数化泊松方程时,在off-line阶段首先通过有限元法获得方程(1)中n个参数对应的全模型解,形成快照矩阵SRNh×n,即:

S=φh(μ1),φh(μ2),,φh(μn),

其中,φh(μi)为参数μi对应的全模型解。其次,对快照矩阵S进行奇异值分解,得到奇异值和一组Nh维正交的左奇异向量。然后,按照奇异值从大到小的顺序,选择前N个(Nn)奇异值对应的左奇异向量,构成基矩阵,即POD基Z。本文将该过程记为Z=POD(S,N)。最后,将Z作为低维空间的基向量构造降阶模型,以逼近方程(1)的全模型解。

在on-line阶段,对给定的新参数μ,降阶模型只需要在基Z张成的低维逼近空间中进行求解,即:

φh(μ)Zch(μ)

其中,ch(μ)为表示系数向量。将式(6)代入方程组(2),得:

Ah(μ)Zch(μ)fh(μ)

在方程组(7)中,Ah(μ)Z的维数分别为Nh×NhNh×N,且通常NhN,因而问题(7)为超定方程组。模型降阶方法一般在两侧同乘ZT,将问题(7)变成如下的适定方程组:

ZTAh(μ)Zc(μ)ZTfh(μ)

求解方程组(8)得到表示系数向量,代入式(6),得:

φh(μ)B(μ)fh(μ)

其中,B(μ)=Z(ZTAh(μ)Z)-1ZT

为保证降阶模型解的精度,需要基Z张成的空间能够足够逼近全模型解,这就要求在off-line阶段获得大量全模型解,并进行奇异值分解或设计复杂的自适应优选采样参数算法,两种方法都会导致off-line阶段的计算代价过大5-6

2 模型降阶预处理

2.1 模型降阶预处理矩阵

本文主要研究如何将模型降阶思想与PCG算法结合起来构造求解问题(1)的高效数值解法。为此,首先需要构造基于模型降阶的预处理矩阵。

方程组(2)的准确解为:

φh(μ)=Ah-1(μ)fh(μ)

对比式(9)式(10)不难发现,模型降阶其实是将B(μ)作为Ah-1(μ)的近似。我们并不能直接将B-1(μ)作为PCG算法求解问题(2)时的预处理矩阵M,因为它要求预处理矩阵对称正定,而矩阵B(μ)并不能保证这一点。为此,我们需要对B(μ)进行修正。定义:

M(μ)=B(μ)+λI-1

关于矩阵M(μ),我们有如下定理。

定理2.1 若矩阵Ah(μ)对称正定,则对任意实数λ0矩阵M(μ)对称正定。

证明 因为Ah(μ)对称正定,所以Z列满秩。对任意非零向量y,有

yZTAh(μ)Zy=(Zy)TAh(μ)(Zy)0

ZTAh(μ)Z对称正定,其逆矩阵(ZTAh(μ)Z)-1也对称正定。因此,存在可逆矩阵Q,使得:

(ZTAh(μ)Z)-1=QTQ

则对任意非零向量w,成立:

wTB(μ)w=wTZ(ZTAh(μ)Z)-1ZTw=wTZQTQZTw=(QZTw)TQZTw0

B(μ)是对称半正定矩阵。由于λI对称正定,所以B(μ)+λI也对称正定。从而矩阵M(μ)对称正定。证毕。

根据定理2.1,恰当选择参数λ后,矩阵M(μ)可以作为一个合适的预处理矩阵。需要注意的是,在M(μ)中只有Ah(μ)与模型参数μ相关,其他均与μ无关,从而可以在off-line阶段一次性准备好。在on-line阶段,只需计算(ZTAh(μ)Z)-1这个N阶方阵。通常N非常小,从而计算量是比较小的。

在PCG算法实现过程中,预处理矩阵只在求解方程组(4)时被使用。由于矩阵B(μ)的维数为Nh×Nh,在实现过程中并未直接形成B(μ),而是将z=M-1(μ)r做如下拆分:

M-1(μ)r=(B(μ)+λI)r=B(μ)r+λr=Z[(ZTAh(μ)Z)-1(ZTr)]+λr

按照(12)式进行计算,PCG算法运行过程中不需要显式形成M(μ),从而能够有效节约内存。算法的计算公式为:

(φ,r,k)=PCG(A,f,Z,λ,K,ε,φ0),

具体实现方式如下。

算法1 PCG算法

输入: 系数矩阵A,右端向量f,POD基Z,预处理矩阵中参数λ,最大迭代步数K,容差ε,初值φ0

输出: 解φ,残差r,实际迭代步数k

1) 初始化k=0,残差r0=f-Aφ0C=ZT(ZAZ)-1,z0=C(ZTr0),p0=z0

2) for kK ||rk||/||f||ε

3) ak=(rk,zk)/(pk,Apk);

4) φk+1=φk+akpk;

5) rk+1=rk-akApk;

6) zk+1=C(ZTrk+1)+λrk+1;

7) βk=(zk+1,rk+1)/(zk,rk);

8) pk+1=zk+1+βkpk;

9) k=k+1;

10) end。

2.2 动态预处理矩阵构造

给定模型参数μ,若使用固定的M(μ)作为PCG算法的预处理矩阵,则随迭代步数的增加,方程组(2)的相对残差将先快速下降,后缓慢下降,此时,若需满足精度要求,仍需花费较长时间。原因在于,PCG算法中每步迭代求解的方程组(4)应该是方程组(5)的近似求解,但由于右端项残差向量r随迭代不断发生改变,基于全模型解的数据构造的Z只能很好地逼近φh(μ),而非方程组(5)的解。这样,当fr差异变大时,就需要重新构造基矩阵Z,以保证预处理求解的方程组(4)始终是方程组(5)的近似求解。因此,在off-line阶段需要构造一组满足此需求的动态POD基,具体的构造方法见算法2,其中λi是第i个预处理矩阵需要的参数λpi是第i个预处理矩阵使用的步数。需要注意的是,算法2在求解方程组Ah(μi)ξi(k+1)=ri(k+1)时,并不直接求解,而是通过推导的方式得到,即:

ri(k+1)=Ah(μi)ξi(k+1)=ri(k)-Ah(μi)φi(k+1)=Ah(μi)ξi(k)-Ah(μi)φi(k+1)=Ah(μi)(ξi(k)-φi(k+1)),

因而,ξi(k)-φi(k+1)是方程组的解。

算法2 动态POD的基构造算法

输入: n个参数对应的系数矩阵

{Ah(μ1),Ah(μ2),,Ah(μn)}

右端向量

{fh(μ1),fh(μ2),,fh(μn)}

高精度数值解

{φh(μ1),φh(μ2),,φh(μn)}

动态预处理矩阵数量m,POD基维数N,

参数{λ0,λ1,,λm-1},迭代步数{p0,p1,,pm-1}

输出:动态POD基{Z0,Z1,,Zm-1}

1) 初始化k=0,初值φ0=0,残差ri(0)=fh(μi),1                in,ξ(0)=φh(μ1),φh(μ2),,φh(μn)

2) for km-1

3) 生成POD基Zk=POD(ξ(k),N);

4) for i=1,2,,n

5) 执行算法1,

        (φi(k+1),ri(k+1),~)=      PCG(Ah(μi),ri(k),Zk,λk,pk,e-20,φ0);

6) 生成方程组Ah(μi)ξi(k+1)=ri(k+1)的解

ξi(k+1)=ξi(k)-φi(k+1);

7) end

8) 令

ξ(k+1)=ξ1(k+1),ξ2(k+1),,ξn(k+1);

9) 更新k=k+1;

10) end。

2.3 MPCG算法

当输入新的模型参数μ,再次对方程组(2)进行求解时,算法执行需要动态地选取POD基{Z1,Z2,,Zm-1}。每次更新POD基后,由于预处理矩阵随之发生变化,需在更新预处理矩阵后重新调用PCG算法,以保证PCG算法的适用性,详见算法3,即基于模型降阶的动态预处理共轭梯度算法。

算法3 MPCG算法

输入: 系数矩阵Ah(μ),右端向量fh(μ),最大迭代步数K,m个POD基{Z0,Z1,,Zm-1},每个POD基对应的迭代步数{p0,p1,,pm-1},参数{λ0,λ1,,λm},容差ε

输出: 解φh(μ),实际迭代步数k,残差rh(μ)

1) 初始化初值φ0=0,迭代步数k=0,残差r0=                fh(μ)-Ah(μ)φ0;

2) for j=1,2,,m

3) 执行算法1,

           (uj,rj,kj)=         PCG(Ah(μ),fh(μ),Zj-1,λj-1,pj-1,ε,uj-1),

4) 更新迭代步数k=k+kj;

5) 如果||rj||/||fh(μ)||εkK,则程序结束;

6) end

7) 如果||rj||/||fh(μ)||εkK

8) 执行算法1,

      (um+1,rm+1,km+1)=     PCG(Ah(μ),fh(μ),Zm-1,λm,K-k,ε,um);

9) 更新迭代步数k=k+km+1

在算法3中,前p0步使用POD基Z0和参数λ0构造预处理并进行迭代,紧接着在p1步使用POD基Z1和参数λ1构造预处理并进行迭代,以此类推。在更新POD基和参数时,本文采用重启思想以适应PCG算法中预处理矩阵的变化,即将上一步的解作为更新预处理矩阵后的初始猜测。若经过p0+p1++pm-1步后计算精度仍未达到要求,则一直使用基于Zm-1和参数λm的预处理迭代,直到收敛为止。这样做的好处:此时残差虽然仍在变化,但已经降至比较小的程度,没有必要再重新构造新的POD基。

基于文献[14]的分析,PCG算法的预处理主要用于加速标准CG算法的初始迭代阶段,当残差已经降到比较小时,预处理加速效果变差,因而参数λm可以相对较大,此时的算法接近标准的CG方法。本文固定参数λm=1

3 数值算例

在方程(1)中取f=1,边界条件g=0,参数μ[0,8]Ω分别考虑单位矩形区域和L形区域,如图1所示。对区域Ω,从图1出发经过一致加密建立三角形网格剖分,并选择标准线性有限元进行离散,建立全模型,然后用所得线性方程组的求解问题来验证本文算法的有效性。

3.1 算例1:矩形区域求解

在单位矩形区域上一致加密9次,离散方程组的未知量规模为261 121。在off-line阶段,从参数空间[0,8]均匀采样9个参数,即{0,1,2,,8},并将其作为方程(1)的参数输入得到全模型解。选取动态POD基个数m=4,每个POD基的向量个数均为N=3,迭代步数pi均为5,动态预处理矩阵中的参数{λ0,λ1,,λm-1}均相同,并将其记为λ

根据算法2,Z0的生成不受参数λ的影响。为了确定λ的值,首先生成POD基Z0,然后随机选择[0,8]中的一个新参数(实际计算时取7.5),通过观察利用Z0λ求解此参数对应的方程组(2)时λ的作用来选择合适的λ图2给出了不同λ对应的相对残差随迭代步数的变化。可以看到,λ越小,初始迭代速度越快但伴随震荡,数值稳定性越差。因此,综合收敛速度和稳定性,最终取λ=10-3。确定λ值后,根据算法2构造动态POD基即完成off-line阶段的准备工作。

在on-line阶段,从[0,8]中随机选取100个数作为方程(1)的参数μ,输入全模型生成对应方程组的系数矩阵Ah(μ)和右端向量fh(μ),然后用off-line阶段构造好的MPCG算法求解,将结果与标准CG算法进行对比。两种方法的停机准则均为ε=10-7或最大迭代步数k=104

图3为MPCG算法经过100次求解后满足精度所需的迭代步数、两种算法的迭代步数比值和求解时间比值的散点图。此外,表1给出了相应于MPCG算法的迭代步数的极值和均值等的统计结果。可以看到,100次随机求解后,MPCG算法达到精度需要的迭代步数范围约为7~13,时间约为0.095~0.214 s。在迭代步数方面,CG算法达到预定精度所需的步数平均约为MPCG算法的101倍。在计算时间方面,由于MPCG算法每一步迭代时需要处理预处理矩阵相关计算,所以每一步迭代比CG算法更耗时,但总求解时间平均仅为CG算法的1/43。因此,MPCG算法相较CG算法大幅提升了计算速度。

3.2 算例2:L形区域求解

在L形区域一致加密8次,离散方程组未知量规模为195 585。类似于算例1,在off-line阶段从参数空间[0,8]均匀采样9个参数,将其作为方程(1)的参数输入,得到全模型解。选取动态POD基个数m=4,每个POD基的向量个数均为N=3,迭代步数pi均为5,动态预处理矩阵中的参数{λ0,λ1,,λm-1}均相同,并取λ=10-3

在on-line阶段从[0,8]中随机选取100个参数进行测试,计算结果如图4所示。此外,表2展示了相应的统计结果。虽然L形区域因解的正则性变差而导致求解更加困难,但经过100次随机求解后,MPCG算法达到预定精度需要的迭代步数范围仍然控制在7~13之间,求解时间控制在0.073~0.209 s之间,可见MPCG算法的收敛速度很快。此外,与CG算法相比,前者所需迭代步数平均仅为后者的1/125,求解时间平均仅为1/59,再次验证了MPCG算法在计算效率方面的提升。

4 结论

针对参数化泊松方程,本文结合模型降阶思想与PCG提出了MPCG算法,通过在off-line阶段仅使用少量全模型解数据构造高效预处理矩阵来降低计算成本、加快计算速度。单位矩形区域和L形区域上的数值算例表明,MPCG算法达到精度要求所需要的时间平均分别只有传统CG算法的1/431/59,验证了本文算法的高效性。

本文的算法也适用于一般对称正定参数化偏微分方程的快速求解。未来我们将对更多应用模型进行数值验证,并探索将其拓展应用于非对称情形。

参考文献

[1]

Gao HSun LWang J X.PhyGeoNet: Physics-informed geometry-adaptive convolutional neural networks for solving parameterized steady-state PDEs on irregular domain [J].J Comput Phys2021428: 110079.

[2]

Chen YDong BXu J.Meta-MgNet: Meta multigrid networks for solving parameterized partial differential equations [J].J Comput Phys2022455: 110996.

[3]

王烈衡,许学军.有限元方法的数学基础[M].北京: 科学出版社, 2004.

[4]

Zienkiewicz O CTaylor R LZhu J Z.The finite element method: Its basis and fundamentals [M].Oxford: Butterworth-Heinemann, 2013.

[5]

Wu LAzaïez MRebollo T Cet al.Certified reduced order method for the parametrized Allen-Cahn equation [J].Comput Math Appl2023134: 167-180.

[6]

Quarteroni AManzoni ANegri F.Reduced basis methods for partial differential equations [M].Cham: Springer, 2016.

[7]

Zhang Q YHu Q XWang Het al.Fast solving of Darcy-Stokes equation by integrating model order reduction with machine learning [J].J Sichuan Univ (Nat Sci Ed)202562(3): 584-590.

[8]

张沁逸, 胡奇晓, 王皓, .融合模型降阶和机器学习的Darcy-Stokes方程快速求解[J].四川大学学报(自然科学版)202562(3): 584-590.

[9]

Hestenes M RStiefel E.Methods of conjugate gradients for solving linear systems [J].J Res Nat Bur Stand195249(6): 409-436.

[10]

Saad YSchultz M H.GMRES: A generalized minimal residual algorithm for solving nonsymmetric linear systems [J].SIAM J Sci Stat Comput19867(3): 856-869.

[11]

Saad Y.Iterative methods for sparse linear systems [M].Philadelphia: SIAM, 2003.

[12]

Anzt HChow ESaak Jet al.Updating incomplete factorization preconditioners for model order reduction [J].Numer Algorithms201673(3): 611-630.

[13]

Carlberg KForstall VTuminaro R.Krylov-subspace recycling via the POD augmented conjugate-gradient method [J].SIAM J Matrix Anal Appl201637(3): 1304-1336.

[14]

Santo N DDeparis SManzoni Aet al.Multi-space reduced basis preconditioners for large-scale parametrized PDEs [J].SIAM J Sci Comput201840(2): A954-A983.

[15]

Xu JZhu Y R.Uniformly convergent multigrid methods for elliptic problems with strongly discontinuous coefficients [J].Math Models Meth Appl Sci200818(1): 77-105.

基金资助

四川省自然科学基金(2023NSFSC0075)

AI Summary AI Mindmap
PDF (779KB)

129

访问

0

被引

详细

导航
相关文章

AI思维导图

/