Skip to content
Snippets Groups Projects
Commit 5327216f authored by Sander, Oliver's avatar Sander, Oliver
Browse files

Verbessere Beschreibung der FE-Methode

parent 87916e7a
No related branches found
No related tags found
No related merge requests found
Pipeline #6183 passed
......@@ -149,7 +149,7 @@ $\Gamma_N$.}
Sei $\Omega \subset \R^d$ ein Gebiet und $f : \Omega \to \R$.
Der Rand $\partial \Omega$ von $\Omega$ sei zerlegt in zwei disjunkte Teile $\Gammatight{D}$ und $\Gammatight{N}$,
und wir bezeichnen die äußere Einheitsnormale mit $\nu$.
Wir betrachten als Beispiel die {\em Poisson-Gleichung}
Wir betrachten als Beispiel die \emph{Poisson-Gleichung}
\begin{equation}
\label{eq:starke_formulierung}
- \Delta u \colonequals - \sum_{i=1}^d \frac{\partial^2 u}{\partial x_i^2} = f
......@@ -200,18 +200,18 @@ einsetzen und erhalten
Wir schreiben dies als
\begin{equation}
\label{eq:schwache_formulierung}
a(u,v) = l(v)
a(u,v) = \ell(v)
\end{equation}
mit
\begin{equation*}
a(v,w) = \int_\Omega \nabla v \nabla w \, dx
\quad \text{und} \quad
l(v) = \int_{\Gamma_N} g v \, ds
a(v,w) \colonequals \int_\Omega \nabla v \nabla w \, dx
\qquad \text{und} \qquad
\ell(v) \colonequals \int_{\Gamma_N} g v \, ds
+
\int_\Omega f v \, dx.
\end{equation*}
Man nennt \eqref{eq:schwache_formulierung} die {\em schwache Formulierung}
(oder {\em Variationsformulierung})
Man nennt \eqref{eq:schwache_formulierung} die \emph{schwache Formulierung}
(oder \emph{Variationsformulierung})
von \eqref{eq:starke_formulierung}.
$a(\cdot, \cdot)$ ist eine symmetrische Bilinearform. Hat $\Gammatight{D}$
......@@ -233,10 +233,10 @@ Dann hat die Variationsgleichung
\begin{equation*}
u \in H
\quad : \quad
a(u,v) = l(v)
a(u,v) = \ell(v)
\qquad v \in H
\end{equation*}
for jedes $l \in H'$ eine eindeutig bestimmte Lösung.
for jedes $\ell \in H'$ eine eindeutig bestimmte Lösung.
\end{theorem}
......@@ -246,11 +246,11 @@ for jedes $l \in H'$ eine eindeutig bestimmte Lösung.
Sei $V_h$ ein endlichdimensionaler Teilraum von $H^1_{\Gammatight{D}}$ (mit Dimension $n$).
Der Index $h$
bezeichne einen Ordnungsparameter. Die {\em diskrete Variationsformulierung}
bezeichne einen Ordnungsparameter. Die \emph{diskrete Variationsformulierung}
lautet
\begin{equation}
\label{eq:diskrete_formulierung}
u_h \in V_h \quad : \quad a(u_h,v_h) = l(v_h)
u_h \in V_h \quad : \quad a(u_h,v_h) = \ell(v_h)
\qquad \text{für alle $v_h \in V_h$}.
\end{equation}
Anwendung des Lax--Milgram-Lemmas ergibt wieder Existenz und Eindeutigkeit
......@@ -260,40 +260,39 @@ Sei $\{\varphi_i\}, 0 \le i < n$, eine Basis von $V_h$. Dann ist
\eqref{eq:diskrete_formulierung} äquivalent zu
\begin{equation*}
%\label{eq:diskrete_formulierung}
u_h \in V_h \quad : \quad a(u_h, \varphi_i) = l(\varphi_i)
u_h \in V_h \quad : \quad a(u_h, \varphi_i) = \ell(\varphi_i)
\qquad \text{für alle $0 \le i < n$}.
\end{equation*}
Dies wiederum entspricht dem linearen Gleichungssystem
\begin{equation}
\label{eq:fe_lineares_gleichungssystem}
A\bar{u} = b,
Ax = b,
\end{equation}
wobei
\begin{alignat*}{2}
A &\in \R^{n \times n},
\qquad &A_{ij} & = a(\varphi_i, \varphi_j)
\qquad &A_{ij} & \colonequals a(\varphi_i, \varphi_j)
=
\int_\Omega \nabla \varphi_i \nabla \varphi_j \, dx \\
%
b &\in \R^n,
\qquad &
b_i & = l(\varphi_i)
b_i & \colonequals \ell(\varphi_i)
=
\int_{\Gamma_N} g \varphi_i \, ds
+
\int_\Omega f \varphi_i \, dx
\end{alignat*}
und $\bar{u} \in \R^n$ die Koeffizienten von $u_h$ bzgl.\ der Basis $\{\varphi_i\}$ sind.
und $x \in \R^n$ die Koeffizienten von $u_h$ bzgl.\ der Basis $\{\varphi_i\}$ sind.
Die Matrix $A$ nennt man {\em Steifigkeitsmatrix}. Dieser Ausdruck kommt aus den
\bigskip
Die Matrix $A$ nennt man \emph{Steifigkeitsmatrix}. Dieser Ausdruck kommt aus den
Anfangstagen der Finiten Elemente in der Ingenieurswelt, wo insbesondere mechanische
Probleme gelöst wurden. Die Matrix $A$ beschreibt dabei die Steifigkeit des simulierten
Objekts, und der Vektor $b$ beschreibt die von außen wirkenden Kräfte. Den Vektor $b$
nennt man deshalb manchmal auch {\em Lastvektor}.
nennt man deshalb manchmal auch \emph{Lastvektor}.
\emph{Beachte:} Ohne weitere Annahmen ist an dieser Stelle davon auszugehen, dass $A$
voll besetzt ist. Das bedeutet, dass fast jeder Eintrag von $A$ von Null verschieden ist,
wobei der Ausdruck \glqq fast jeder\grqq{} hier nicht mathematisch streng gemeint ist.
\section{Finite Elemente}
\label{sec:finite_elemente}
......@@ -301,8 +300,10 @@ wobei der Ausdruck \glqq fast jeder\grqq{} hier nicht mathematisch streng gemein
Finite Elemente sind eine bestimmte Möglichkeit, den Teilraum
$V_h$ zu wählen.
Sei $\Omega$ von jetzt ab {\em polygonal berandet}. Wir füllen
$\Omega$ mit einer Triangulierung / einem {\em Gitter}. Ein Beispielgitter für
\medskip
Sei $\Omega$ von jetzt ab \emph{polygonal berandet}. Wir füllen
$\Omega$ mit einer Triangulierung / einem \emph{Gitter}. Ein Beispielgitter für
ein zweidimensionales Gebiet sieht man in Abbildung~\ref{fig:2d-Beispielgitter}.
\begin{figure}
......@@ -317,11 +318,11 @@ ein zweidimensionales Gebiet sieht man in Abbildung~\ref{fig:2d-Beispielgitter}.
\label{def:triangulierung}
Es sei $\Omega \subset \R^2$ polygonal berandet, und $\Gammatight{D}$ auf dem
Rand aufgelöst. Eine Menge $\mathcal{T}$
von abgeschlossenen Dreiecken $t$ heißt {\em Triangulierung} von $\Omega$, falls gilt
von abgeschlossenen Dreiecken $T$ heißt \emph{Triangulierung} von $\Omega$, falls gilt
\begin{enumerate}
\item Die Menge der Dreiecke überdeckt den Abschluss des Gebiets
\begin{equation*}
\overline{\Omega} = \bigcup_{t \in \mathcal{T}} t.
\overline{\Omega} = \bigcup_{T \in \mathcal{T}} T.
\end{equation*}
%
\item Der Schnitt zweier Dreiecke aus $\mathcal T$ ist entweder eine
......@@ -330,21 +331,21 @@ gemeinsame Kante, ein gemeinsamer Eckpunkt, oder leer.
\end{definition}
Der Diskretisierungsparameter
\begin{equation*}
h = \max_{t \in \mathcal{T}} \operatorname{diam} t,
h \colonequals \max_{T \in \mathcal{T}} \operatorname{diam} T,
\end{equation*}
der als Index in $V_h$ auftaucht, beschreibt traditionell die Feinheit des Gitters.
Oft nennt man $h$ auch {\em Gitterweite}.
Oft nennt man $h$ auch \emph{Gitterweite}.
\begin{definition}
Der Raum
\begin{equation*}
V_h^{(1)}
V_h^{p}
\colonequals
\{ v \in C(\overline{\Omega})
\; | \;
\text{$v$ ist affin auf $t$ für alle $t \in \mathcal{T}$, und $v|_{\Gamma_D} = 0$} \}
\text{$v$ ist Polynom von Grad $\le p$ auf $T$ für alle $T \in \mathcal{T}$, und $v|_{\Gamma_D} = 0$} \}
\end{equation*}
heißt Raum der Lagrange-Elemente erster Ordnung
heißt Raum der Lagrange-Elemente $p$-Ordnung
bezüglich der Triangulierung $\mathcal{T}$.
\end{definition}
......@@ -353,41 +354,32 @@ bezüglich der Triangulierung $\mathcal{T}$.
\includegraphics[width=0.4\textwidth]{generalP1function}
\includegraphics[width=0.4\textwidth]{nodalP1basis}
\end{center}
\caption{Links: eine Finite-Elemente Funktion. Rechts: ein Element der Knotenbasis}
\caption{Links: eine Finite-Elemente Funktion. Rechts: ein Element der Knotenbasis erster Ordnung}
\label{fig:beispiel-fe-funktion}
\end{figure}
Als Basis von $V_h^{(1)}$ wählt man gewöhnlich die {\em Knotenbasis}. Sei $\mathcal V$
die Menge der Knoten des Gitters. Dann ist die Knotenbasis die Menge
der Funktionen $\varphi_i \in V_h^{(1)}$ mit
Als Basis von $V_h^{p}$ wählt man gewöhnlich die \emph{Knotenbasis}. Sei $\mathcal L$
die Menge der Lagrange-Knoten des Gitters. Dann ist die Knotenbasis die Menge
der Funktionen $\varphi_i \in V_h^{p}$ mit
\begin{equation*}
\varphi_i (v_j) = \delta_{ij}
\qquad
\text{für alle $v_j \in \mathcal{V}$}.
\text{für alle $v_j \in \mathcal{L}$}.
\end{equation*}
Es ist also insbesondere $\dim V_h^{(1)} = \abs{\mathcal V \setminus \mathcal{V}_{\Gamma_D}}$
Es ist also insbesondere $\dim V_h^{p} = \abs{\mathcal L \setminus \mathcal{L}_{\Gamma_D}}$
(Abbildung~\ref{fig:beispiel-fe-funktion}).
{\em Wichtig:} Da die Basisfunktionen $\varphi_i$ einen `lokalen'
Träger haben, so sind die meisten Matrixeinträge
\begin{equation*}
A_{ij} = a(\varphi_i, \varphi_j)
=
\int_\Omega \nabla \varphi_i \nabla \varphi_j \, dx
\end{equation*}
gleich Null! Die Matrix $A$ ist also {\em dünnbesetzt}.
Das ist eine wichtige Eigenschaft, denn müsste man alle Einträge von $A$ in Betracht ziehen,
so wären das \glqq zu viele\grqq{} (nämlich quadratisch viele).
Nur bei einer dünnbesetzten Matrix bleibt der Aufwand handhabbar.
Denn $n$ kann sehr groß werden; aktuell sind Werte im Bereich weniger Millionen auf einem
einzelnen Rechner realistisch. Auf einem großen Parallelrechner können es durchaus einige
Milliarden werden.
\bigskip
Der Diskretisierungsfehler hängt hauptsächlich von der Gitterauflösung $h$,
der Ordnung $p$ der Finite-Elemente-Funktionen, und der Glattheit von $u$ ab.
\begin{theorem}
Es sei $h$ klein genug, $u \in H^1_0(\Omega) \cap H^{2}(\Omega)$,
$\Omega \in \R^2$. Dann gilt die a priori Abschätzung
Es sei $h$ klein genug, $u \in H^1_0(\Omega) \cap H^{p+1}(\Omega)$ die Lösung
der schwachen Formulierung, und $u_h$ die entsprechende Finite-Elemente-Lösung in $V_h^p$.
Dann gilt die a priori Abschätzung
\begin{equation*}
\norm{u - u_h}_1 \le C h \abs{u}_{2}
\norm{u - u_h}_1 \le C h^p \abs{u}_{p+1}
\end{equation*}
mit einer Konstanten $C$.
\end{theorem}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment