本文紧接上一篇博客:边界元方法(一)
例子
注意二维 L a p a c e Lapace Lapace 方程的基本解可以参考另一篇博客:调和方程(拉普拉斯方程)基本解和边界元方法的积分计算
单一区域问题
给定方程如下:
∇
2
u
(
x
,
y
)
=
0
,
i
n
Ω
.
u
=
1
,
o
n
Γ
1
u
=
0
,
o
n
Γ
2
q
=
0.
o
n
Γ
3
\begin{array}{c} \nabla^2u(x, y) = 0, in \ \Omega. \\ u = 1, on \ \Gamma_1 \\ u = 0, on \ \Gamma_2 \\ q = 0. on \ \Gamma_3 \end{array}
∇2u(x,y)=0,in Ω.u=1,on Γ1u=0,on Γ2q=0.on Γ3
其中
Γ
1
=
A
B
‾
\Gamma_1= \overline{AB}
Γ1=AB,
Γ
2
=
C
D
‾
\Gamma_2 = \overline{CD}
Γ2=CD,
Γ
3
=
B
C
‾
∪
D
A
‾
\Gamma_3 = \overline{BC} \cup \overline{DA}
Γ3=BC∪DA,
设取区域边界线段为单元,即:
单元
A
B
AB
AB 上
u
1
=
1
u_1 = 1
u1=1
单元
B
C
BC
BC 上
q
2
=
0
q_2 = 0
q2=0
单元
C
D
CD
CD 上
u
3
=
0
u_3 = 0
u3=0
单元
D
A
DA
DA 上
q
4
=
0
q_4 = 0
q4=0
由公式 (20) 有
H
12
=
∫
B
C
‾
q
∗
d
s
=
∫
B
C
‾
−
1
2
π
∗
(
r
⃗
,
n
⃗
)
r
2
d
s
=
−
1
2
π
∫
0
1
0.5
0.25
+
y
2
d
y
=
−
a
r
c
t
a
n
(
2
)
2
π
=
−
0.1762081911747834
H_{12} = \int_{\overline{BC}} q^{*} ds = \int_{\overline{BC}} -\frac{1}{2 \pi} *\frac{(\vec{r}, \vec{n})}{r^2}ds = -\frac{1}{2 \pi} \int_{0}^{1} \frac{0.5}{0.25+y^2}dy = -\frac{arctan(2)}{2 \pi} = -0.1762081911747834
H12=∫BCq∗ds=∫BC−2π1∗r2(r,n)ds=−2π1∫010.25+y20.5dy=−2πarctan(2)=−0.1762081911747834
其中源点(
S
o
u
r
c
e
P
o
i
n
t
Source \ Point
Source Point)为单元
A
B
AB
AB 中点
(
1
2
,
0
)
(\frac{1}{2}, 0)
(21,0),场点(
F
i
e
l
d
P
o
i
n
t
Field \ Point
Field Point) 为单元
B
C
BC
BC 上任一点
(
1
,
y
)
(1, y)
(1,y),故源点到被积分场点的向量
r
⃗
=
(
1
2
,
y
)
\vec{r} = (\frac{1}{2}, y)
r=(21,y),单元
B
C
BC
BC 的单位法向量为
n
⃗
=
(
1
,
0
)
\vec{n} = (1, 0)
n=(1,0)。
H
11
=
∫
A
B
‾
q
∗
d
s
=
∫
A
B
‾
−
1
2
π
∗
(
r
⃗
,
n
⃗
)
r
2
d
s
=
−
1
2
π
∫
0
1
0
(
x
−
1
2
)
2
d
y
=
0
H_{11} = \int_{\overline{AB}} q^{*} ds = \int_{\overline{AB}} -\frac{1}{2 \pi} *\frac{(\vec{r}, \vec{n})}{r^2}ds = -\frac{1}{2 \pi} \int_{0}^{1} \frac{0}{(x-\frac{1}{2})^2}dy = 0
H11=∫ABq∗ds=∫AB−2π1∗r2(r,n)ds=−2π1∫01(x−21)20dy=0
其中源点(
S
o
u
r
c
e
P
o
i
n
t
Source \ Point
Source Point)为单元
A
B
AB
AB 中点
(
1
2
,
0
)
(\frac{1}{2}, 0)
(21,0),场点(
F
i
e
l
d
P
o
i
n
t
Field \ Point
Field Point) 为单元
A
B
AB
AB 上任一点
(
x
,
0
)
(x, 0)
(x,0),故源点到被积分场点的向量
r
⃗
=
(
x
−
1
2
,
0
)
\vec{r} = (x-\frac{1}{2}, 0)
r=(x−21,0),单元
A
B
AB
AB 的单位法向量为
n
⃗
=
(
0
,
−
1
)
\vec{n} = (0, -1)
n=(0,−1)。
注: 公式 (19) 中上标
(
i
)
(i)
(i)仅为标识第
i
i
i 块区域 故当
k
=
1
k = 1
k=1 时有
1
2
u
1
+
H
11
u
1
+
H
12
u
2
+
⋯
=
G
11
q
1
+
G
12
q
2
+
…
\frac{1}{2}u_1 + H_{11}u_1 + H_{12}u_2+ \dots = G_{11}q_1 + G_{12}q_2 + \dots
21u1+H11u1+H12u2+⋯=G11q1+G12q2+… 因此可以将
1
2
\frac{1}{2}
21 放到
[
H
]
[H]
[H] 矩阵的对角元上。
[
H
]
{
u
}
=
[
G
]
{
q
}
[H]\{u\} = [G]\{q\}
[H]{u}=[G]{q}
G
23
=
∫
C
D
‾
u
∗
d
s
=
∫
C
D
‾
−
1
2
π
l
n
r
d
s
=
−
1
2
π
∫
1
0
l
n
(
(
x
−
1
)
2
+
1
4
)
d
x
=
a
r
c
t
a
n
(
2
)
+
l
n
(
5
4
)
−
2
4
π
=
−
0.05329364789913541
G_{23} = \int_{\overline{CD}} u^{*} ds = \int_{\overline{CD}} -\frac{1}{2 \pi} lnrds = -\frac{1}{2 \pi} \int_{1}^{0} ln(\sqrt{(x-1)^2 + \frac{1}{4}})dx = \frac{arctan(2) + ln(\frac{5}{4})-2}{4 \pi} = −0.05329364789913541
G23=∫CDu∗ds=∫CD−2π1lnrds=−2π1∫10ln((x−1)2+41)dx=4πarctan(2)+ln(45)−2=−0.05329364789913541
其中源点(
S
o
u
r
c
e
P
o
i
n
t
Source \ Point
Source Point)为单元
B
C
BC
BC 中点
(
1
,
1
2
)
(1, \frac{1}{2})
(1,21),场点(
F
i
e
l
d
P
o
i
n
t
Field \ Point
Field Point) 为单元
C
D
CD
CD 上任一点
(
x
,
1
)
(x, 1)
(x,1),故源点到被积分场点的向量
r
⃗
=
(
x
−
1
,
1
2
)
\vec{r} = (x-1, \frac{1}{2})
r=(x−1,21),单元
C
D
CD
CD 的单位法向量为
n
⃗
=
(
0
,
1
)
\vec{n} = (0, 1)
n=(0,1)。
综上有
[
0.5
−
0.1762
−
0.1476
−
0.1762
−
0.1762
0.5
−
0.1762
−
0.1476
−
0.1476
−
0.1762
0.5
−
0.1762
−
0.1762
−
0.1476
−
0.1762
0.5
]
[
u
1
u
2
u
3
u
4
]
=
[
0.2695
0.0533
−
0.0062
0.0533
0.0533
0.2695
0.0533
−
0.0062
−
0.0062
0.0533
0.2695
0.0533
0.0533
−
0.0062
0.0533
0.2695
]
[
q
1
q
2
q
3
q
4
]
\begin{bmatrix} 0.5 & -0.1762 & -0.1476 & -0.1762\\ -0.1762 & 0.5 & -0.1762 & -0.1476\\ -0.1476 & -0.1762 & 0.5 & -0.1762\\ -0.1762 & -0.1476 & -0.1762 & 0.5 \end{bmatrix} \begin{bmatrix} u1\\ u2\\ u3\\ u4 \end{bmatrix}= \begin{bmatrix} 0.2695 & 0.0533 & -0.0062 & 0.0533\\ 0.0533 & 0.2695 & 0.0533 & -0.0062\\ -0.0062 & 0.0533 & 0.2695 & 0.0533\\ 0.0533 & -0.0062 & 0.0533 & 0.2695 \end{bmatrix} \begin{bmatrix} q1\\ q2\\ q3\\ q4 \end{bmatrix}
⎣
⎡0.5−0.1762−0.1476−0.1762−0.17620.5−0.1762−0.1476−0.1476−0.17620.5−0.1762−0.1762−0.1476−0.17620.5⎦
⎤⎣
⎡u1u2u3u4⎦
⎤=⎣
⎡0.26950.0533−0.00620.05330.05330.26950.0533−0.0062−0.00620.05330.26950.05330.0533−0.00620.05330.2695⎦
⎤⎣
⎡q1q2q3q4⎦
⎤
注: 当均匀位势作用在整个边界上时, q q q 的值必为零, 据此可计算 H H H 的对角线项。这时可由 [ H ] { u } = [ G ] { q } [H]\{u\}=[G]\{q\} [H]{u}=[G]{q} 推导出 [ H ] [ I ] = { 0 } [H][I] = \{0\} [H][I]={0} 此式子表明矩阵 H H H 的 一行所有元素的总和等于零。于是,一旦非对角线上的系数值全部已知时,则对角线上的系数就容易计算出来了, 即 H i i = − ∑ i ≠ j H i j H_{ii} = -\sum_{i\neq j}H_{ij} Hii=−∑i=jHij 。
根据边界条件其中
u
1
=
1
,
u
3
=
0
,
q
2
=
0
,
q
4
=
0
u_1 = 1, \ \ u_3 = 0, \ \ q_2 = 0, \ \ q_4 = 0
u1=1, u3=0, q2=0, q4=0
可得如下线性方程组:
[
−
0.2695
−
0.1762
0.0062
−
0.1762
−
0.0533
0.5
−
0.0533
−
0.1476
0.0062
−
0.1762
−
0.2695
−
0.1762
−
0.0533
−
0.1476
−
0.0533
0.5
]
[
q
1
u
2
q
3
u
4
]
=
[
−
0.5
0.1762
0.1476
0.1762
]
\begin{bmatrix} -0.2695 & -0.1762 & 0.0062 & -0.1762\\ -0.0533 & 0.5 & -0.0533 & -0.1476\\ 0.0062 & -0.1762 & -0.2695 & -0.1762\\ -0.0533 & -0.1476 & -0.0533 & 0.5 \end{bmatrix} \begin{bmatrix} q1\\ u2\\ q3\\ u4 \end{bmatrix}= \begin{bmatrix} -0.5\\ 0.1762\\ 0.1476\\ 0.1762 \end{bmatrix}
⎣
⎡−0.2695−0.05330.0062−0.0533−0.17620.5−0.1762−0.14760.0062−0.0533−0.2695−0.0533−0.1762−0.1476−0.17620.5⎦
⎤⎣
⎡q1u2q3u4⎦
⎤=⎣
⎡−0.50.17620.14760.1762⎦
⎤
求解得:
q
1
=
1.174
,
q
3
=
−
1.174
u
2
=
0.5
,
u
4
=
0.5
q_1 = 1.174, \ \ q_3 = -1.174\\ u_2 = 0.5, \ \ u_4 = 0.5
q1=1.174, q3=−1.174u2=0.5, u4=0.5
多区域问题
如上图所示, 在各自区域离散化后,得到各自线性方程组:
[
H
i
]
{
u
i
}
=
[
G
i
]
{
q
i
}
,
(
i
=
1
,
2
)
(
1
)
[H^i]\{u^i\} = [G^i]\{q^i\}, \ \ \ \ (i = 1, 2) \ \ \ \ \ \ \ (1)
[Hi]{ui}=[Gi]{qi}, (i=1,2) (1)
此处
i
i
i 表示变量所关联的区域编号。 在公共的交界面
Γ
\Gamma
Γ 上有如下的连续方程(不妨设
q
q
q 之间的比例系数为1):
u 12 1 = u 12 2 , q 12 1 = − q 12 2 ( 2 ) u_{12}^{1} = u_{12}^{2}, \ \ \ q_{12}^{1} = -q_{12}^{2} \ \ \ \ \ \ (2) u121=u122, q121=−q122 (2)
将离散变量 u 、 q u、q u、q 分为在区域 12 交界面上和不在交界面上的两部分,方程(1)可写为:
[ H 11 1 H 12 1 ] { u 11 1 u 12 1 } = [ G 11 1 G 12 1 ] { q 11 1 q 12 1 } , [ H 12 2 H 22 2 ] { u 11 2 u 22 2 } = [ G 12 2 G 22 2 ] { q 12 2 q 22 2 } . ( 3 ) \begin{array}{l} {\left[\begin{array}{ll} H_{11}^{1} & H_{12}^{1} \end{array}\right]\left\{\begin{array}{l} u_{11}^{1} \\ u_{12}^{1} \end{array}\right\}=\left[\begin{array}{ll} G_{11}^{1} & G_{12}^{1} \end{array}\right]\left\{\begin{array}{l} q_{11}^{1} \\ q_{12}^{1} \end{array}\right\},} \\ {\left[\begin{array}{ll} H_{12}^{2} & H_{22}^{2} \end{array}\right]\left\{\begin{array}{l} u_{11}^{2} \\ u_{22}^{2} \end{array}\right\}=\left[\begin{array}{ll} G_{12}^{2} & G_{22}^{2} \end{array}\right]\left\{\begin{array}{l} q_{12}^{2} \\ q_{22}^{2} \end{array}\right\} .} \end{array} \ \ \ \ \ \ \ (3) [H111H121]{u111u121}=[G111G121]{q111q121},[H122H222]{u112u222}=[G122G222]{q122q222}. (3)
利用交界面 Γ \Gamma Γ 上连续性方程(2),可将方程 (3) 耦合成一整体方程。假设给定的边界条件是 q 值已知的 Neumann 边界条件,则整体方程可组织为:
[ H 11 1 H 12 1 − G 12 1 [ 0 ] [ 0 ] H 12 2 G 12 2 H 22 2 ] [ u 11 1 u 12 1 q 12 1 u 22 2 ] = [ G 11 1 [ 0 ] [ 0 ] [ 0 ] [ 0 ] [ 0 ] [ 0 ] G 22 2 ] [ q 11 1 [ 0 ] [ 0 ] q 22 2 ] ( 4 ) \begin{bmatrix} H_{11}^1 & H_{12}^1 & -G_{12}^1 & [0]\\ [0] & H_{12}^2 & G_{12}^2 & H_{22}^2 \end{bmatrix} \begin{bmatrix} u_{11}^1 \\ u_{12}^1 \\ q_{12}^1 \\ u_{22}^2 \end{bmatrix} = \begin{bmatrix} G_{11}^1 & [0] & [0] & [0] \\ [0] & [0] & [0] & G_{22}^2 \end{bmatrix} \begin{bmatrix} q_{11}^1 \\ [0] \\ [0] \\ q_{22}^2 \end{bmatrix} \ \ \ \ \ (4) [H111[0]H121H122−G121G122[0]H222]⎣ ⎡u111u121q121u222⎦ ⎤=[G111[0][0][0][0][0][0]G222]⎣ ⎡q111[0][0]q222⎦ ⎤ (4)