aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdrian Kummerlaender2019-01-25 16:13:42 +0100
committerAdrian Kummerlaender2019-01-25 16:13:42 +0100
commit742568b658dae0361e8bd182cec7fd101c48a101 (patch)
tree43fa2b82b7f63abfbc7fe577a551e599a30bcde2
parentc3099c0a7b9042ab5393a14eb7f6bf187fdd1ca2 (diff)
downloadgrid_refinement_bsc_thesis-742568b658dae0361e8bd182cec7fd101c48a101.tar
grid_refinement_bsc_thesis-742568b658dae0361e8bd182cec7fd101c48a101.tar.gz
grid_refinement_bsc_thesis-742568b658dae0361e8bd182cec7fd101c48a101.tar.bz2
grid_refinement_bsc_thesis-742568b658dae0361e8bd182cec7fd101c48a101.tar.lz
grid_refinement_bsc_thesis-742568b658dae0361e8bd182cec7fd101c48a101.tar.xz
grid_refinement_bsc_thesis-742568b658dae0361e8bd182cec7fd101c48a101.tar.zst
grid_refinement_bsc_thesis-742568b658dae0361e8bd182cec7fd101c48a101.zip
Add poiseuille2d error plot
-rw-r--r--content.tex23
-rw-r--r--img/poiseuille2d_error_comparison.tikz52
-rw-r--r--img/poiseuille2d_velocity_outflow.tikz14
3 files changed, 65 insertions, 24 deletions
diff --git a/content.tex b/content.tex
index f619023..a61bbd5 100644
--- a/content.tex
+++ b/content.tex
@@ -859,23 +859,11 @@ Bei erster Betrachtung lässt sich erkennen, dass die Strömung den Gitterüberg
Zur formalen Qualitätsbewertung ziehen wir im Folgenden die analytische Lösung~\ref{def:analyticPoiseuille} von Geschwindigkeit und Druck des Poiseuille-Flusses heran. Wir können diese in \mbox{OpenLB} einfach mit Hilfe des \class{SuperRelativeErrorL2Norm2D} Funktors auf beiden Gittern mit der simulierten Lösung vergleichen:
-\begin{table}[h]
+\begin{figure}[h]
\centering
-\begin{tabular}{l l l l}
-Gitterstruktur & Geschwindigkeitsfehler & Druckfehler \\
-\hline
-\(11 \times 41\) & 1.88337e-3 & 3.11534e-3 \\
-\hline
-\(21 \times 81\) & 1.16253e-3 & 2.27404e-3 \\
-\hline
-\(11 \times 21\) & 1.00761e-2 & 2.71447e-2 \\
-\hphantom{\(11 \times 21\)} \(21 \times 43\) & 1.02424e-2 & 2.07924e-2 \\
-\hline
-\(11 \times 41\) & 1.77561e-3 & 3.11244e-3 \\
-\hphantom{\(11 \times 41\)} \(17 \times 41\) & 2.04335e-3 & 3.39432e-3 \\
-\end{tabular}
-\caption{L2 Normen der Geschwindigkeits- und Druckfehler in verschiedenen Gittern}
-\end{table}
+\input{img/poiseuille2d_error_comparison.tikz}
+\caption{Geschwindigkeits- und Druckfehler in verschiedenen Gittern}
+\end{figure}
\noindent
Die halbseitig verfeinerte Lösung aus Abbildung~\ref{fig:PoiseuilleGridSetup} ist zunächst also um eine Größenordnung schlechter als eine gleichmäßig mit \(n=20\) aufgelöste Berechnung. Etwas überraschend ist ihr Fehler auch deutlich größer als der Fehler einer uniform mit \(n=10\) aufgelösten Simulation -- zumindest in diesem speziellen Beispiel hat Gitterverfeinerung also einen messbar negativen Einfluss auf die Genauigkeit der Simulation.
@@ -887,10 +875,9 @@ Eine Besonderheit ist in diesem Kontext auch die Existenz von Randbedingungen im
Abschließend erscheint es beispielübergreifend intuitiv erwartbar, dass eine nicht aus dem konkreten Strömungsproblem informierte Anwendung von Gitterverfeinerung -- und damit eine unbegründete Erhöhung der Simulationskomplexität gegenüber einem uniformen Gitter -- einer Verbesserung der Präzision nicht zuträglich ist.
-\newpage
\subsubsection{Vergleich der Interpolationsverfahren}
-Den Poiseuille Simulationsaufbau können wir an dieser Stelle auch zur Nachvollziehung des, von Lagrava et al. für die Verwendung eines Verfahrens vierter Ordnung in der räumlichen Interpolation feiner Übergangsknoten ohne koinzidierende grobe Stützpunkte hervorgebrachten, Arguments verwenden.
+Den halbseitig verfeinerten Poiseuille Simulationsaufbau können wir an dieser Stelle auch zur Nachvollziehung des, von Lagrava et al. für die Verwendung eines Verfahrens vierter Ordnung in der räumlichen Interpolation feiner Übergangsknoten ohne koinzidierende grobe Stützpunkte hervorgebrachten, Arguments verwenden.
\begin{figure}[h]
\begin{adjustbox}{center}
diff --git a/img/poiseuille2d_error_comparison.tikz b/img/poiseuille2d_error_comparison.tikz
new file mode 100644
index 0000000..54e4ac8
--- /dev/null
+++ b/img/poiseuille2d_error_comparison.tikz
@@ -0,0 +1,52 @@
+\begin{tikzpicture}
+\begin{axis}[
+ scale only axis,
+ height=8cm,
+ width=0.7*\textwidth,
+ symbolic x coords={\texttt{uN10},\texttt{uN20},\texttt{vN10A},\texttt{vN20A},\texttt{vN10B},\texttt{vN20B}},
+ xtick=data,
+ ylabel=L2-genormter Fehler,
+ ymode=log,
+ log origin=infty,
+ y tick label style={/pgf/number format/sci},
+ ybar=5pt,
+ bar width=9pt,
+ legend cell align={left}
+]
+
+\addplot coordinates {
+(\texttt{uN10},1.88337e-3)
+(\texttt{uN20},1.16253e-3)
+(\texttt{vN10A},1.00761e-2)
+(\texttt{vN20A},1.02424e-2)
+(\texttt{vN10B},1.77561e-3)
+(\texttt{vN20B},2.04335e-3)
+};
+
+\addplot coordinates {
+(\texttt{uN10},3.11534e-3)
+(\texttt{uN20},2.27404e-3)
+(\texttt{vN10A},2.71447e-2)
+(\texttt{vN20A},2.07924e-2)
+(\texttt{vN10B},3.11244e-3)
+(\texttt{vN20B},3.39432e-3)
+};
+
+\legend{Geschwindigkeit,Druck}
+\end{axis}
+\end{tikzpicture}
+
+\bigskip
+\begin{tabular}{l l l l}
+& Gitterstruktur & Geschwindigkeitsfehler & Druckfehler \\
+\hline
+\texttt{uN10} & \(11 \times 41\) & 1.88337e-3 & 3.11534e-3 \\
+\hline
+\texttt{uN20} & \(21 \times 81\) & 1.16253e-3 & 2.27404e-3 \\
+\hline
+\texttt{vN10A} & \(11 \times 21\) & 1.00761e-2 & 2.71447e-2 \\
+\texttt{vN20A} & \hphantom{\(11 \times 21\)} \(21 \times 43\) & 1.02424e-2 & 2.07924e-2 \\
+\hline
+\texttt{vN10B} & \(11 \times 41\) & 1.77561e-3 & 3.11244e-3 \\
+\texttt{vN20B} & \hphantom{\(11 \times 41\)} \(17 \times 41\) & 2.04335e-3 & 3.39432e-3 \\
+\end{tabular}
diff --git a/img/poiseuille2d_velocity_outflow.tikz b/img/poiseuille2d_velocity_outflow.tikz
index e6897e8..96eec84 100644
--- a/img/poiseuille2d_velocity_outflow.tikz
+++ b/img/poiseuille2d_velocity_outflow.tikz
@@ -11,9 +11,10 @@
width=0.4*\textwidth,
mark size=3,
legend cell align=left,
- legend style={at={(0.9,-0.1)},anchor=north},
+ legend style={at={(1.05,-0.2)},anchor=north},
grid=both,
ylabel=\(x\)-Geschwindigkeit,
+ xlabel=\(y\)-Position,
xtick={0,0.25,0.5,0.75,1},
title=Geschwindigkeitsprofil,
every axis plot/.append style={thick}
@@ -26,7 +27,7 @@
] table [
x=y, y=ux
] {\refinedCubicIpol};
-\addlegendentry{Halbseitig verfeinertes Gitter mit kubischer Interpolation};
+\addlegendentry{Halbseitig verfeinertes \(n=10\) Gitter mit kubischer Interpolation};
\addplot[
only marks,
@@ -35,7 +36,7 @@
] table [
x=y, y=ux
] {\refinedLinearIpol};
-\addlegendentry{Halbseitig verfeinertes Gitter mit linearer Interpolation};
+\addlegendentry{Halbseitig verfeinertes \(n=10\) Gitter mit linearer Interpolation};
\addplot[
only marks,
@@ -44,7 +45,7 @@
] table [
x=y, y=ux
] {\borderlessRefine};
-\addlegendentry{Halbseitig randlos verfeinertes Gitter mit kubischer Interpolation};
+\addlegendentry{Halbseitig randlos verfeinertes \(n=10\) Gitter mit kubischer Interpolation};
\addplot[
only marks,
@@ -53,7 +54,7 @@
] table[
x=y, y=ux
] {\unrefinedFine};
-\addlegendentry{Uniform fein aufgelöstes Gitter};
+\addlegendentry{Uniform fein mit \(n=20\) aufgelöstes Gitter};
\addplot [domain=0:1, samples=100]{-4*x*(x-1)};
\addlegendentry{Analytische Lösung}
@@ -68,9 +69,10 @@
xtick={0,0.25,0.5,0.75,1},
xshift=7cm,
scaled y ticks=false,
+ y tick label style={/pgf/number format/sci},
ylabel=Fehler,
+ xlabel=\(y\)-Position,
yticklabel pos=right,
- y tick label style={/pgf/number format/sci},
title=Fehler zur analytischen Lösung,
every axis plot/.append style={thick}
]