Legendre-Galerkin方法以及Chebyshev-Legendre-Galerkin方法以及Python实现

一维Helmholtz方程的Chebyshev - Galerkin谱方法
在上面这篇博文中,讲述了加权余量法的基本原理,以及系统地推导,阐述了 C h e b y s h e v − G a l e r k i n Chebyshev-Galerkin ChebyshevGalerkin方法的计算过程,本文在上面的基础上,继续探讨 L e n g e n d r e − G a r l e r k i n Lengendre-Garlerkin LengendreGarlerkin方法以及 L e g e n d r e − C h e b y s h e v − G a l e r k i n Legendre-Chebyshev-Galerkin LegendreChebyshevGalerkin方法,可以看到, C h e b y s h e v − G a l e r k i n Chebyshev-Galerkin ChebyshevGalerkin在作正变换以及逆变换的过程中,能够作快速余弦变换,但该方法所推导出的刚度矩阵稀疏程度不够; 最关键的是,刚度矩阵不是对称的!.在本文介绍的 L e n g e n d r e − G a r l e r k i n Lengendre-Garlerkin LengendreGarlerkin方法中,可以看到刚度矩阵是对角矩阵,但 L e g e n d r e Legendre Legendre正变换以及逆变换的过程没有快速计算方法,实际计算复杂度是 O ( N 2 ) O(N^{2}) O(N2);最后给出的 C h e b y s h e v − L e g e n d r e − G a l e r k i n Chebyshev-Legendre-Galerkin ChebyshevLegendreGalerkin方法同时具备了 C h e b y s h e v − G a l e r k i n Chebyshev - Galerkin ChebyshevGalerkin方法以及 L e g e n d r e − G a l e r k i n Legendre-Galerkin LegendreGalerkin方法的优势.

回忆

首先,回忆上篇博文中的重要内容
考虑如下一维齐次 D i r i c h l e t Dirichlet Dirichlet型边界条件的 H e l m h o l t z Helmholtz Helmholtz方程( α > 0 \alpha > 0 α>0):
{ − u ′ ′ + α u = f    i n   I = ( − 1 , 1 ) u ( ± 1 ) = 0 \begin{cases} -u ^{''} + \alpha u = f \ \ in \ I = (-1, 1) \\ u(\pm1) = 0 \end{cases} { u+αu=f  in I=(1,1)u(±1)=0
定义空间
P N 0 = { ϕ ∈ P N ∣ ϕ ( ± 1 ) = 0 } P^{0}_{N} = \left\lbrace \phi \in P_{N} | \phi(\pm1) = 0\right\rbrace PN0={ ϕPNϕ(±1)=0}
取试函数: u N = ∑ i = 0 N − 2 a i ϕ i ( x ) u_{N} = \sum\limits_{i = 0}^{N - 2} a_{i}\phi_{i}(x) uN=i=0N2aiϕi(x), 其中 ϕ i ( x ) \phi_{i}(x) ϕi(x)为空间 P N 0 P^{0}_{N} PN0的基函数.
对上述方程进行 R i t s z − G a l e r k i n Ritsz-Galerkin RitszGalerkin离散得到如下变分形式
u N ∈ P N 0 u_{N} \in P^{0}_{N} uNPN0, s.t.
− ( u N ′ ′ , v N ) ω + α ( u N , v N ) ω = ( I N f , v N ) ω ∀ v N ∈ P N 0 -(u_{N}^{''} , v_{N})_{\omega} + \alpha(u_{N}, v_{N})_{\omega} = (I_{N}f, v_{N})_{\omega} \quad \forall v_{N} \in P_{N}^{0} (uN,vN)ω+α(uN,vN)ω=(INf,vN)ωvNPN0:
将试函数带入到变分形式中,得到 G a l e r k i n Galerkin Galerkin方程组:
− ∑ i = 0 N − 2 ( ϕ i ′ ′ , ϕ j ) ω u ^ i + α ∑ i = 0 N − 2 ( ϕ i , ϕ j ) ω u ^ i = ( f N , ϕ j ) ω ,   j = 0 , ⋯   , N − 2 -\sum\limits_{i = 0}^{N-2}( \phi^{''}_{i}, \phi_{j})_{\omega}\widehat{u}_{i} + \alpha\sum\limits_{i = 0}^{N-2}\left( \phi_{i}, \phi_{j}\right)_{\omega}\widehat{u}_{i} = (f_{N}, \phi_{j})_{\omega} , \ j = 0,\cdots, N-2 i=0N2(ϕi,ϕj)ωu i+αi=0N2(ϕi,ϕj)ωu i=(fN,ϕj)ω, j=0,,N2
改写方程组为矩阵形式得到:
( S + α M ) U ^ = f (S + \alpha M) \widehat{U} = f (S+αM)U =f
其中
( S ) i j = − ( ϕ j ′ ′ ( x ) , ϕ i ( x ) ) ω (S)_{ij} = -(\phi_{j}^{''}(x), \phi_{i}(x))_{\omega} (S)ij=(ϕj(x),ϕi(x))ω 称为 刚度矩阵
( M ) i j = ( ϕ j ( x ) , ϕ i ( x ) ) ω (M)_{ij} = (\phi_{j}(x), \phi_{i}(x))_{\omega} (M)ij=(ϕj(x),ϕi(x))ω 称为 质量矩阵
f = ( ( I N f , ϕ 0 ( x ) ) ω , ⋯   , ( I N f , ϕ N − 2 ( x ) ) ω ) T \mathbf{f} = \left((I_{N}f, \phi_{0}(x))_{\omega}, \cdots, (I_{N}f, \phi_{N-2}(x))_{\omega} \right)^{T} f=((INf,ϕ0(x))ω,,(INf,ϕN2(x))ω)T
U ^ = ( u ^ 0 ⋯ u ^ N − 2 ) T \widehat{U} = (\widehat{u}_{0} \cdots \widehat{u}_{N-2})^{T} U =(u 0u N2)T
计算要点就是通过取不同的基函数来得到不同的代数系统进行求解.

Legendre-Galerkin方法

Legendre多项式及其性质

首先给出下面会用到的 L e g e n d r e Legendre Legendre多项式的一些基本性质,这里考虑区间 [ − 1 , 1 ] [-1, 1] [1,1]上的 L e g e n d r e Legendre Legendre多项式

  • 三项递推关系
    L 0 ( x ) = 1 , L 1 ( x ) = x ( n + 1 ) L n + 1 ( x ) = ( 2 n + 1 ) x L n ( x ) − n L n − 1 ( x ) L_{0}(x) = 1, \quad L_{1}(x) = x \\ (n+1)L_{n+1}(x) = (2n+1)xL_{n}(x) - nL_{n-1}(x) L0(x)=1,L1(x)=x(n+1)Ln+1(x)=(2n+1)xLn(x)nLn1(x)
  • 微分定义
    L n ( x ) = 1 2 n n ! d n d x n [ ( x 2 − 1 ) n ] L_{n}(x) = \frac{1}{2^{n}n!} \frac{d^{n}}{dx^{n}}\left[ (x^{2} - 1)^{n} \right] Ln(x)=2nn!1dxndn[(x21)n]
  • 正交性关系
    ∫ − 1 1 L k ( x ) L j ( x ) d x = 1 k + 1 / 2 δ k j \int_{-1}^{1} L_{k}(x)L_{j}(x) dx = \frac{1}{k + 1/ 2}\delta_{kj} 11Lk(x)Lj(x)dx=k+1/21δkj
    δ k j \delta_{kj} δkj K r o n e c k e r Kronecker Kronecker符号.
  • 二阶导数关系
    L n ′ ′ ( x ) =
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值