Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
Numerische Methoden in derAkustik
Prof.Dr.-Ing. Matthias BlauInstitut fur Hortechnik und Audiologie
FH Oldenburg/Ostfriesland/Wilhelmshaven
XXI. Winterschule der Deutschen Gesellschaft fur Medizinische PhysikPichl 2009
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
Ubersicht
1. Numerik?
2. Finite Differenzen - TLM
3. Finite Elemente - FEM
4. Randelemente - BEM
5. Vergleich TLM-FEM-BEM
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
1. Numerik?
• Motivation: Schallfelder konnen nur fur “akademi-sche” Spezialfalle analytisch berechnet werden
• Problemstellung: Losung der Wellengleichung
∆p(~r, t)− 1
c2∂2p(~r, t)
∂t2= 0
(d.h. Berechnung von p(~r, t)) fur interessierendePunkte ~r unter gegebenen Randbedingungen
• Randbedingungen
– vorgegebener Druck
– vorgegebene Normalenschnelle vn ∝ ∂p/∂~n
– vorgegebene (spezifische) Impedanz
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
2. Finite Differenzen - TLM
• Idee
– Approximation der Differenzialquotienten durchDifferenzenquotienten
– z.B. in kartesischen Koordinaten
yx
z
WW
W
Approximation
x(i+1)W
Ableitung bei x= iW
iW(i−1)W
pp
p
Wi+0.5
i−0.5
(i+0.5)W(i−0.5)W
∂p
∂x i,j,k(n) ≈ 1
W
pi+0.5,j,k(n)− pi−0.5,j,k(n)
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
2. Finite Differenzen - TLM
• Idee (cont’d)
– zweite Ableitungen
∂2p
∂x2i,j,k
(n) =∂
∂x
∂p
∂x
i,j,k
(n)
≈ 1
W
∂p
∂x i+0.5,j,k(n)− 1
W
∂p
∂x i−0.5,j,k(n)
≈ 1
W 2
p i+1,j,k(n)− p i,j,k(n)
− 1
W 2
p i,j,k(n)− p i−1,j,k(n)
=
1
W 2
p i+1,j,k(n)− 2p i,j,k(n) + p i−1,j,k(n)
analog wird fur Ableitungen nach y, z, t verfahren
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
2. Finite Differenzen - TLM
• Idee (cont’d)
– eingesetzt in Wellengleichung
1
W 2
6∑l=1
plter Nachbar(n)− 6pi,j,k(n)
− 1
c2T 2
pi,j,k(n + 1)− 2pi,j,k(n)pi,j,k(n− 1)
= 0
– “Finite Difference Time Domain” (FDTD)
– Stabilitatsbedingung: W/T ≥√d c
(d. . . Anzahl der Dimensionen)
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
2. Finite Differenzen - TLM
• Idee (cont’d)
– besonders einfach wird es, wenn W/T =√d c
(CFL-Grenze)
pi,j,k(n + 1) =1
d
2d∑l=1
plter Nachbar(n)− pi,j,k(n− 1)
– “Transmission Line Matrix” (TLM)
– 2D-Version zum Ausprobieren:www.hoertechnik-audiologie.de/downloads/Lambda
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
2. Finite Differenzen - TLM
• Grenzen/Probleme
– Dispersion: z.B. 3D-Formulierung
pi,j,k(n + 1) =1
3
6∑l=1
plter Nachbar(n)− pi,j,k(n− 1)
bedeutet cos(ω/Fs
)=
1
3cos(√
3 kx∆)
+1
3cos(√
3 ky∆)
+1
3cos(√
3 kz∆)
→ c abseits der Dia-gonalen geringer
→ Vermeidung:∆ ≤ λ/10
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
2. Finite Differenzen - TLM
• Randbedingungen in TLM
– Druck: einfach (es wird mit dem Druck gerechnet!)
– Schnelle: schwierig (Schnelle muss aus Druckgradi-enten berechnet werden)
– Impedanz: Umwandlung in Reflexionsfaktoren
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
2. Finite Differenzen - TLM
• praktische Benutzung
– creating *.sim file – Scilab example1 ysize=600; xsize=600; steps=0; c=343; w=0.01;
2 env=zeros(ysize,xsize);
3 env(320:600,300)=1; env(1:280,300)=1; // rigid walls (r=1)
45 sources=[];
6 for q=1:ysize
7 sources=[sources q 1 1 1 1500 0]; // x=q, y=1, sine, ampl=1,
8 // f=1500Hz, phase=0
9 end
89 filename=’example.sim’;
10 simFile = mopen(filename,’wb’);
11 mput([ysize xsize steps c w],’dl’,simFile);
12 mput(env.’,’dl’,simFile);
13 mput(sources,’dl’,simFile);
14 mclose(simFile); // Done.
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
2. Finite Differenzen - TLM
– Ergebnis
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• Idee: Uberfuhren der Helmholtzgleichung in Inte-gralform, Losen der Integrale fur raumlich begren-zte Elemente (Approximation der Ortsabhangigkeit desSchalldrucks) und Zusammenfuhrung der Losungen derEinzelelemente zu einem globalen Gleichungssystem
• Vorgehensweise
1. Integralform der Helmholtzgleichung
2. Reduzierung der Ordnung der Ortsableitungen
3. FE-Approximation (Knoten, Formfunktionen)
4. Integration innerhalb der einzelnen Elemente
5. Zusammenfuhren der Elementgleichungen zu einemglobalen Gleichungssystem
6. Randbedingungen berucksichtigen
7. globales Gleichungssystem losen
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• Beispiel 1D
1. Integralform der Helmholtzgleichung
d2p
dx2+ k2p = 0 0 ≤ x ≤ L
ˆ L
0
(w
d2p
dx2+ wk2p
)dx = 0 “gewichtete Residuen”
(Wichtungsfunktion w)
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• Beispiel 1D (cont’d)
2. Reduzierung der Ordnung der Ortsableitungendurch partielle Integration
f = w, g =dp
dx,
ˆ L
0f
dg
dxdx = fg
L
0−ˆ L
0
df
dxg dx
also
wdp
dx
L
0−ˆ L
0
dw
dx
dp
dxdx +
ˆ L
0w k2p dx = 0
oderL
0
dw
dx
dp
dxdx− k2
L
0w p dx = w
dp
dx
L
0
→ nur noch 1. Ableitungen nach x!
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• Beispiel 1D (cont’d)
3. FE-Approximation, Knoten, Formfunktionen
x
Rep
Element 1 Element 2 Element 3
Knoten 1Knoten 2
Knoten 3Knoten 4
0 L
wahr
FE−Approximation
L/3 2L/3
lineare Formfunktionen
pinnerhalb Element
≈ plinks
(1− ξ) + prechts
ξ
ξ . . . lokale Elementkoordinate 0 ≤ ξ ≤ 1
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• Beispiel 1D (cont’d)
3. weiter mit Formfunktionen
pinnerhalb Element
≈ plinks
(1− ξ) + prechts
ξ
=[
(1− ξ) ξ][ p
linksp
rechts
]= ~ϕT~p
Galerkin-Ansatz (1915): w = ~ϕ
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• Beispiel 1D (cont’d)
4. Integration innerhalb der Elemente
ˆ x2
x1
· dx =
ˆ 1
0· J dξ mit J =
dx
dξ
im Beispiel sind x = ξ/3 und dx/dξ = 1/3.Fur jedes Element gilt
ˆ 1
0
dw
dx
dp
dxJ dξ − k2
1
0w p J dξ
≈ˆ 1
0
d~ϕ
dξ
dξ
dx
d~ϕT
dξ
dξ
dx~p J dξ − k2
1
0~ϕ ~ϕT ~p J dξ
= K(Element) ~p− k2 M(Element) ~p
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• Beispiel 1D (cont’d)
4. weiter mit der Integration innerhalb der Elemente
K(Element) =
´ 1
0
(dϕ1
dξ
)2(dξdx
)2J dξ
´ 10
dϕ1
dξdϕ2
dξ
(dξdx
)2J dξ
´ 10
dϕ2
dξdϕ1
dξ
(dξdx
)2J dξ
´ 10
(dϕ2
dξ
)2(dξdx
)2J dξ
=
(3 −3−3 3
)
M(Element) =
( ´ 10 ϕ
21J dξ
´ 10 ϕ1ϕ2J dξ
´ 10 ϕ2ϕ1J dξ
´ 10 ϕ
22J dξ
)
=
(1/9 1/181/18 1/9
)
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• Beispiel 1D (cont’d)
5. lokal → globalErinnerung:
ˆ L
0
dw
dx
dp
dxdx− k2
L
0w p dx = w
dp
dx
L
0
a) linke Seite:ˆ L
0· dx =
ˆ(E1)
· dx +
ˆ(E2)
· dx +
ˆ(E3)
· dx
= K(E1) ~p (E1) − k2 M(E1) ~p (E1)
+ K(E2) ~p (E2) − k2 M(E2) ~p (E2)
+ K(E3) ~p (E3) − k2 M(E3) ~p (E3)
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• Beispiel 1D (cont’d)
5. weiter mit linker Seiteˆ L
0· dx =
(K(global) − k2 M(global)
) p
K1p
K2p
K3p
K4
K(global) =
k(E1)11 k
(E1)12
k(E1)21 k
(E1)22 + k
(E2)11 k
(E2)12
k(E2)21 k
(E2)22 + k
(E3)11 k
(E3)12
k(E3)21 k
(E3)22
M(global) =
m(E1)11 m
(E1)12
m(E1)21 m
(E1)22 +m
(E2)11 m
(E2)12
m(E2)21 m
(E2)22 +m
(E3)11 m
(E3)12
m(E3)21 m
(E3)22
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• Beispiel 1D (cont’d)
5. weiter mit rechter Seite
wdp
dx
L
0= w
dp
dx x=L− w
dp
dx x=0
globale Gewichtsfunktionen
x
w
0
1
K1 K2 K3 K4
Knoten 1: wdp
dx x=L= 0, w
dp
dx x=0= −jω% vx,K1
Knoten 2,3: wdp
dx x=L= 0, w
dp
dx x=0= 0
Knoten 4: wdp
dx x=L= −jω% vx,K4, w
dp
dx x=0= 0
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• Beispiel 1D (cont’d)
5. globales Gleichungssystem
(K(global) − k2 M(global)
) p
K1p
K2p
K3p
K4
= −jω%
−vx,K1
00
vx,K4
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• Beispiel 1D (cont’d)
5. Randbedingungen
– Schnellen vboundary(K(global) − k2 M(global)
)(~p) = −jω% (~vboundary)
– Drucke pboundary(K(global)−k2 M(global)
) ( ~pboundary
~pgesucht
)= ~0
↓(A11 A12
A21 A22
)→ A22 ~pgesucht = −A21 ~pboundary
– Impedanzen: haufig nicht implementiert, abermoglich
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• praktische Benutzung
– Ablauf
1. Preprocessing: Geometrieimport, Vernetzung,Materialkenngroßen (% , c), Randbedingungen
2. Losung: pro interessierender Frequenz Kno-tendrucke berechnen
3. Postprocessing: Ausgabe bzw. grafische Darstel-lung
– zum Ausprobieren: www.csc.fi/english/pages/elmer
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
3. Finite Elemente
• Beispiel 2D: schallhartes Rohr, L = 30 mm, d = 8 mm
– Frequenz f = 5 kHz
– links mit Schnelle v0 angeregt
– rechts mit r = 0.7 ejπ/4 abgeschlossen
analytischmesh 1mesh3
distance in m0 0.01 0.02 0.03
p r
e v0
in P
a re
m/s
100
1000
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
4. Randelemente
• Idee (Innenraumproblem): Benutzung der partikularenLosung G(~r−~r0) der Helmholtzgleichung fur das freieSchallfeld eines Punktstrahlers bei ~r = ~r0 fuhrt zurKirchhoff-Helmholtz-Integralgleichung‹
S
(p(~r)
∂G(~r − ~r0)
∂~n−G(~r − ~r0)
∂p(~r)
∂~n
)d~S
=
˚
V
δ(~r − ~r0) dV
mit der Greenschen Funktion fur das freie Schallfeldin 3D
G(~r − ~r0) =e−jk ~r−~r0
4π ~r − ~r0
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
4. Randelemente
• Idee (cont’d)
– rechte Seite hangt davon ab, ob ~r0 innerhalb V ,außerhalb V oder auf dem Rand liegt˚
V
δ(~r − ~r0) dV = p(~r0)C(~r0)
mit C(~r0) =
0 ~r0 außerhalb VΩ/4π ~r0 auf S1 ~r0 innerhalb V
Ω. . . Raumwinkel (= 2π fur glatte Flachen)
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
4. Randelemente
• Idee (cont’d)
– mit Definition ~r auf Rand Q und ~r0 Zielpunkt P :
‹
S
(p(Q)
∂G(P,Q)
∂~n−G(P,Q)
∂p(Q)
∂~n
)d~S = p(P )C(P )
Interpretation: p an Zielpunkt P innerhalb von V(inklusive Berandung) hangt ab von der Verteilungvon p und vn ∝ ∂p/∂~n auf der Oberflache Q
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
4. Randelemente
• numerische Losung: ahnlich FE
– Zerlegung des Randes in Elemente/Knoten
– Interpolation von p und ∂p/∂~n auf Rand durchFormfunktionen mit Bezug auf die Knotendruckepj
– damit∑j
pjhjk −∑j
∂pj∂~n
gjk = ckpk
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
4. Randelemente
• numerische Losung (cont’d)
– Kollokationsverfahren:
1. pk auf den Rand legen(H−C
)~pKnoten = G~vn,Knoten(−jω% )
Randbedingungen vorgeben (pj, vn,j, pj/vn,j),Gleichungssystem fur “ubrige” pj, vn,j losen
2. Losung fur interessierende Punkte P innerhalb V
p(P ) =∑j
pjhj(P ) + jω%∑j
vn,jgj(P )
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
4. Randelemente
• praktische Benutzung
– Ablauf - ahnlich FE
1. Preprocessing: Geometrieimport, Vernetzung(des Randes!), Materialkenngroßen (% , c),Randbedingungen
2. Losung: pro interessierender FrequenzSchalldrucke an interessierenden Punktenberechnen
3. Postprocessing: Ausgabe bzw. grafische Darstel-lung
– zum Ausprobieren: www.openbem.dk
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
5. Vergleich TLM-FEM-BEM
• akustische Probleme prinzipiell mit allen 3 Verfahrenlosbar
TLM FEM BEM
Netz Volumen Volumen Flacheregelmaßig
Netzdichte ≤ 10λ ≤ 6λ ≤ 6λ
RB v schwierig Z haufig nichtimplementiert
Implementierg. einfach mittel schwierig
• kommerzielle Programme in der Regel mit integriertemPra- und Postprozessor
• Solver fur alle Verfahren haufig im Internet verfugbar,Problem: Pra- und Postprozessor?
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
5. Vergleich TLM-FEM-BEM
• Alternative separater Pra-/Postprozessor?
Numerik?
Finite Differenzen - . . .
Finite Elemente
Randelemente
Vergleich TLM- . . .
Vielen Dank fur Ihre Aufmerksamkeit!