aboutsummaryrefslogtreecommitdiffstats
path: root/vorlesungen
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--vorlesungen/13_msegraphwavelets/Makefile33
-rw-r--r--vorlesungen/13_msegraphwavelets/MathSemMSE-13-graphwavelets.tex14
-rw-r--r--vorlesungen/13_msegraphwavelets/common.tex16
-rw-r--r--vorlesungen/13_msegraphwavelets/graphwavelets-handout.tex11
-rw-r--r--vorlesungen/13_msegraphwavelets/slides.tex35
-rw-r--r--vorlesungen/slides/8/Makefile.inc3
-rw-r--r--vorlesungen/slides/8/chapter.tex3
-rw-r--r--vorlesungen/slides/8/wavelets/Makefile8
-rw-r--r--vorlesungen/slides/8/wavelets/ev.m97
-rw-r--r--vorlesungen/slides/8/wavelets/fourier.tex19
-rw-r--r--vorlesungen/slides/8/wavelets/funktionen.tex76
-rw-r--r--vorlesungen/slides/8/wavelets/laplacebasis.tex62
-rw-r--r--vorlesungen/slides/8/wavelets/vektoren.tex200
13 files changed, 577 insertions, 0 deletions
diff --git a/vorlesungen/13_msegraphwavelets/Makefile b/vorlesungen/13_msegraphwavelets/Makefile
new file mode 100644
index 0000000..6dba66c
--- /dev/null
+++ b/vorlesungen/13_msegraphwavelets/Makefile
@@ -0,0 +1,33 @@
+#
+# Makefile -- graphwavelets
+#
+# (c) 2017 Prof Dr Andreas Müller, Hochschule Rapperswil
+#
+all: graphwavelets-handout.pdf MathSemMSE-13-graphwavelets.pdf
+
+include ../slides/Makefile.inc
+
+SOURCES = common.tex slides.tex $(slides)
+
+MathSemMSE-13-graphwavelets.pdf: MathSemMSE-13-graphwavelets.tex $(SOURCES)
+ pdflatex MathSemMSE-13-graphwavelets.tex
+
+graphwavelets-handout.pdf: graphwavelets-handout.tex $(SOURCES)
+ pdflatex graphwavelets-handout.tex
+
+thumbnail: thumbnail.jpg # fix1.jpg
+
+thumbnail.pdf: MathSemMSE-13-graphwavelets.pdf
+ pdfjam --outfile thumbnail.pdf --papersize '{16cm,9cm}' \
+ MathSemMSE-13-graphwavelets.pdf 1
+thumbnail.jpg: thumbnail.pdf
+ convert -density 300 thumbnail.pdf \
+ -resize 1920x1080 -units PixelsPerInch thumbnail.jpg
+
+fix1.pdf: MathSemMSE-13-graphwavelets.pdf
+ pdfjam --outfile fix1.pdf --papersize '{16cm,9cm}' \
+ MathSemMSE-13-graphwavelets.pdf 1
+fix1.jpg: fix1.pdf
+ convert -density 300 fix1.pdf \
+ -resize 1920x1080 -units PixelsPerInch fix1.jpg
+
diff --git a/vorlesungen/13_msegraphwavelets/MathSemMSE-13-graphwavelets.tex b/vorlesungen/13_msegraphwavelets/MathSemMSE-13-graphwavelets.tex
new file mode 100644
index 0000000..112d952
--- /dev/null
+++ b/vorlesungen/13_msegraphwavelets/MathSemMSE-13-graphwavelets.tex
@@ -0,0 +1,14 @@
+%
+% MathSem-13-msegraphwavelets.tex -- Präsentation
+%
+% (c) 2017 Prof Dr Andreas Müller, Hochschule Rapperswil
+%
+\documentclass[aspectratio=169]{beamer}
+\input{common.tex}
+\setboolean{presentation}{true}
+\begin{document}
+\begin{frame}
+\titlepage
+\end{frame}
+\input{slides.tex}
+\end{document}
diff --git a/vorlesungen/13_msegraphwavelets/common.tex b/vorlesungen/13_msegraphwavelets/common.tex
new file mode 100644
index 0000000..b9799f0
--- /dev/null
+++ b/vorlesungen/13_msegraphwavelets/common.tex
@@ -0,0 +1,16 @@
+%
+% common.tex -- gemeinsame definition
+%
+% (c) 2017 Prof Dr Andreas Müller, Hochschule Rapperswil
+%
+\input{../common/packages.tex}
+\input{../common/common.tex}
+\mode<beamer>{%
+\usetheme[hideothersubsections,hidetitle]{Hannover}
+}
+\beamertemplatenavigationsymbolsempty
+\title[SGWT]{Wavelets auf Graphen}
+\author[A.~Müller]{Prof. Dr. Andreas Müller}
+\date[]{}
+\newboolean{presentation}
+
diff --git a/vorlesungen/13_msegraphwavelets/graphwavelets-handout.tex b/vorlesungen/13_msegraphwavelets/graphwavelets-handout.tex
new file mode 100644
index 0000000..98789e5
--- /dev/null
+++ b/vorlesungen/13_msegraphwavelets/graphwavelets-handout.tex
@@ -0,0 +1,11 @@
+%
+% msegraphwavelets-handout.tex -- Handout XXX
+%
+% (c) 2017 Prof Dr Andreas Müller, Hochschule Rapperswil
+%
+\documentclass[handout,aspectratio=169]{beamer}
+\input{common.tex}
+\setboolean{presentation}{false}
+\begin{document}
+\input{slides.tex}
+\end{document}
diff --git a/vorlesungen/13_msegraphwavelets/slides.tex b/vorlesungen/13_msegraphwavelets/slides.tex
new file mode 100644
index 0000000..f016e72
--- /dev/null
+++ b/vorlesungen/13_msegraphwavelets/slides.tex
@@ -0,0 +1,35 @@
+%
+% slides.tex -- XXX
+%
+% (c) 2017 Prof Dr Andreas Müller, Hochschule Rapperswil
+%
+
+% XXX Funktionen auf einem Graphen
+\folie{8/wavelets/funktionen.tex}
+
+% XXX Laplace-Basis auf dem Graphen
+\folie{8/wavelets/laplacebasis.tex}
+
+% XXX Fourier-Transformation auf einem Graphen
+% XXX \folie{8/wavelets/fourier.tex}
+
+% XXX Lokalisierung in Standardbasis und Fourier-Basis
+% XXX \folie{8/wavelets/lokalisierungvergleich.tex}
+
+% XXX Lokalisierung auf dem Graphen
+% XXX \folie{8/wavelets/lokalisierung.tex}
+
+% XXX Lokalisierung im Frequenzraum
+% XXX \folie{8/wavelets/frequenzlokalisierung.tex}
+
+% XXX Funktionen g und h
+% XXX \folie{8/wavelets/gundh.tex}
+
+% XXX Wavelet Frame
+% XXX \folie{8/wavelets/frame.tex}
+
+% XXX Framekonstante
+% XXX \folie{8/wavelets/framekonstanten.tex}
+
+
+
diff --git a/vorlesungen/slides/8/Makefile.inc b/vorlesungen/slides/8/Makefile.inc
index 81f91d0..9a059b3 100644
--- a/vorlesungen/slides/8/Makefile.inc
+++ b/vorlesungen/slides/8/Makefile.inc
@@ -35,5 +35,8 @@ chapter8 = \
../slides/8/subgraph.tex \
../slides/8/chrwilf.tex \
../slides/8/weitere.tex \
+ ../slides/8/wavelets/funktionen.tex \
+ ../slides/8/wavelets/laplacebasis.tex \
+ ../slides/8/wavelets/vektoren.tex \
../slides/8/chapter.tex
diff --git a/vorlesungen/slides/8/chapter.tex b/vorlesungen/slides/8/chapter.tex
index 7511e3e..dc6b522 100644
--- a/vorlesungen/slides/8/chapter.tex
+++ b/vorlesungen/slides/8/chapter.tex
@@ -38,3 +38,6 @@
\folie{8/chrwilf.tex}
\folie{8/weitere.tex}
+\folie{8/wavelets/funktionen.tex}
+\folie{8/wavelets/laplacebasis.tex}
+
diff --git a/vorlesungen/slides/8/wavelets/Makefile b/vorlesungen/slides/8/wavelets/Makefile
new file mode 100644
index 0000000..3b4a5ce
--- /dev/null
+++ b/vorlesungen/slides/8/wavelets/Makefile
@@ -0,0 +1,8 @@
+#
+# Makefile
+#
+# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+#
+
+vektoren.tex: ev.m
+ octave ev.m
diff --git a/vorlesungen/slides/8/wavelets/ev.m b/vorlesungen/slides/8/wavelets/ev.m
new file mode 100644
index 0000000..7f4dd55
--- /dev/null
+++ b/vorlesungen/slides/8/wavelets/ev.m
@@ -0,0 +1,97 @@
+#
+# ev.m
+#
+# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+#
+
+L = [
+ 2, -1, 0, -1, 0;
+ -1, 4, -1, -1, -1;
+ 0, -1, 2, 0, -1;
+ -1, -1, 0, 3, -1;
+ 0, -1, -1, -1, 3
+];
+
+[v, lambda] = eig(L);
+
+function knoten(fn, wert, punkt)
+ if (wert > 0)
+ farbe = sprintf("red!%02d", round(100 * wert));
+ else
+ farbe = sprintf("blue!%02d", round(-100 * wert));
+ end
+ fprintf(fn, "\t\\fill[color=%s] %s circle[radius=0.25];\n",
+ farbe, punkt);
+ fprintf(fn, "\t\\draw %s circle[radius=0.25];\n", punkt);
+endfunction
+
+function vektor(fn, v, name, lambda)
+ fprintf(fn, "\\def\\%s{\n", name);
+ fprintf(fn, "\t\\coordinate (A) at ({0*\\a},0);\n");
+ fprintf(fn, "\t\\coordinate (B) at ({1*\\a},0);\n");
+ fprintf(fn, "\t\\coordinate (C) at ({2*\\a},0);\n");
+ fprintf(fn, "\t\\coordinate (D) at ({0.5*\\a},{-\\b});\n");
+ fprintf(fn, "\t\\coordinate (E) at ({1.5*\\a},{-\\b});\n");
+ fprintf(fn, "\t\\draw (A) -- (B);\n");
+ fprintf(fn, "\t\\draw (A) -- (D);\n");
+ fprintf(fn, "\t\\draw (B) -- (C);\n");
+ fprintf(fn, "\t\\draw (B) -- (D);\n");
+ fprintf(fn, "\t\\draw (B) -- (E);\n");
+ fprintf(fn, "\t\\draw (C) -- (E);\n");
+ fprintf(fn, "\t\\draw (D) -- (E);\n");
+ fprintf(fn, "\t\\node at (-2.8,{-0.5*\\b}) [right] {$\\lambda=%.4f$};\n",
+ round(1000 * abs(lambda)) / 10000);
+ w = v / max(abs(v));
+ knoten(fn, w(1,1), "(A)");
+ knoten(fn, w(2,1), "(B)");
+ knoten(fn, w(3,1), "(C)");
+ knoten(fn, w(4,1), "(D)");
+ knoten(fn, w(5,1), "(E)");
+ fprintf(fn, "}\n");
+endfunction
+
+function punkt(fn, x, wert)
+ fprintf(fn, "({%.4f*\\c},{%.4f*\\d})", x, wert);
+endfunction
+
+function funktion(fn, v, name, lambda)
+ fprintf(fn, "\\def\\%s{\n", name);
+ fprintf(fn, "\t\\draw[color=red,line width=1.4pt]\n\t\t");
+ punkt(fn, -2, v(1,1));
+ fprintf(fn, " --\n\t\t");
+ punkt(fn, -1, v(4,1));
+ fprintf(fn, " --\n\t\t");
+ punkt(fn, 0, v(2,1));
+ fprintf(fn, " --\n\t\t");
+ punkt(fn, 1, v(5,1));
+ fprintf(fn, " --\n\t\t");
+ punkt(fn, 2, v(3,1));
+ fprintf(fn, ";\n");
+ fprintf(fn, "\t\\draw[->] ({-2.1*\\c},0) -- ({2.1*\\c},0);\n");
+ fprintf(fn, "\t\\draw[->] (0,{-1.1*\\d}) -- (0,{1.1*\\d});\n");
+ for x = (-2:2)
+ fprintf(fn, "\t\\fill ({%d*\\c},0) circle[radius=0.05];\n", x);
+ endfor
+ fprintf(fn, "}\n");
+endfunction
+
+fn = fopen("vektoren.tex", "w");
+
+vektor(fn, v(:,1), "vnull", lambda(1,1));
+funktion(fn, v(:,1), "fnull", lambda(1,1));
+
+vektor(fn, v(:,2), "vone", lambda(2,2));
+funktion(fn, v(:,2), "fone", lambda(2,2));
+
+vektor(fn, v(:,3), "vtwo", lambda(3,3));
+funktion(fn, v(:,3), "ftwo", lambda(3,3));
+
+vektor(fn, v(:,4), "vthree", lambda(4,4));
+funktion(fn, v(:,4), "fthree", lambda(4,4));
+
+vektor(fn, v(:,5), "vfour", lambda(5,5));
+funktion(fn, v(:,5), "ffour", lambda(5,5));
+
+fclose(fn);
+
+
diff --git a/vorlesungen/slides/8/wavelets/fourier.tex b/vorlesungen/slides/8/wavelets/fourier.tex
new file mode 100644
index 0000000..4bd507b
--- /dev/null
+++ b/vorlesungen/slides/8/wavelets/fourier.tex
@@ -0,0 +1,19 @@
+%
+% fourier.tex -- slide template
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\bgroup
+\begin{frame}[t]
+\setlength{\abovedisplayskip}{5pt}
+\setlength{\belowdisplayskip}{5pt}
+\frametitle{Fourier}
+\vspace{-20pt}
+\begin{columns}[t,onlytextwidth]
+\begin{column}{0.48\textwidth}
+\end{column}
+\begin{column}{0.48\textwidth}
+\end{column}
+\end{columns}
+\end{frame}
+\egroup
diff --git a/vorlesungen/slides/8/wavelets/funktionen.tex b/vorlesungen/slides/8/wavelets/funktionen.tex
new file mode 100644
index 0000000..f9667ee
--- /dev/null
+++ b/vorlesungen/slides/8/wavelets/funktionen.tex
@@ -0,0 +1,76 @@
+%
+% funktionen.tex -- slide template
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\bgroup
+\def\knoten#1#2{
+ \draw #1 circle[radius=0.25];
+ \node at #1 {$#2$};
+}
+\def\kante#1#2{
+ \draw[shorten >= 0.25cm,shorten <= 0.25cm] #1 -- #2;
+}
+\begin{frame}[t]
+\setlength{\abovedisplayskip}{5pt}
+\setlength{\belowdisplayskip}{5pt}
+\frametitle{Funktionen auf einem Graphen}
+\vspace{-20pt}
+\begin{columns}[t,onlytextwidth]
+\begin{column}{0.48\textwidth}
+\begin{block}{Definition}
+Ein Graph $G=(V,E)$, eine Funktion auf dem Graphen ist
+\[
+f\colon V \to \mathbb{R} : v\mapsto f(v)
+\]
+Knoten: $V=\{1,\dots,n\}$
+\\
+Vektorschreibweise
+\[
+f = \begin{pmatrix}
+f(1)\\f(2)\\\vdots\\f(n)
+\end{pmatrix}
+\]
+\end{block}
+\end{column}
+\begin{column}{0.48\textwidth}
+\begin{block}{Matrizen}
+Adjazenz-, Grad- und Laplace-Matrix operieren auf Funktionen auf Graphen:
+\[
+L
+=
+\begin{pmatrix*}[r]
+ 2&-1& 0&-1& 0\\
+-1& 4&-1&-1&-1\\
+ 0&-1& 2& 0&-1\\
+-1&-1& 0& 3&-1\\
+ 0&-1&-1&-1& 3\\
+\end{pmatrix*}
+\]
+\end{block}
+\begin{center}
+\begin{tikzpicture}[>=latex,thick]
+\def\a{2}
+\coordinate (A) at (0,0);
+\coordinate (B) at (\a,0);
+\coordinate (C) at ({2*\a},0);
+\coordinate (D) at ({0.5*\a},{-0.5*sqrt(3)*\a});
+\coordinate (E) at ({1.5*\a},{-0.5*sqrt(3)*\a});
+\knoten{(A)}{1}
+\knoten{(B)}{2}
+\knoten{(C)}{3}
+\knoten{(D)}{4}
+\knoten{(E)}{5}
+\kante{(A)}{(B)}
+\kante{(B)}{(C)}
+\kante{(A)}{(D)}
+\kante{(B)}{(D)}
+\kante{(B)}{(E)}
+\kante{(C)}{(E)}
+\kante{(D)}{(E)}
+\end{tikzpicture}
+\end{center}
+\end{column}
+\end{columns}
+\end{frame}
+\egroup
diff --git a/vorlesungen/slides/8/wavelets/laplacebasis.tex b/vorlesungen/slides/8/wavelets/laplacebasis.tex
new file mode 100644
index 0000000..a59fbaa
--- /dev/null
+++ b/vorlesungen/slides/8/wavelets/laplacebasis.tex
@@ -0,0 +1,62 @@
+%
+% template.tex -- slide template
+%
+% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+%
+\bgroup
+\def\a{2}
+\def\b{0.8}
+\def\c{1}
+\def\d{0.6}
+\input{../slides/8/wavelets/vektoren.tex}
+\begin{frame}[t]
+\setlength{\abovedisplayskip}{5pt}
+\setlength{\belowdisplayskip}{5pt}
+\frametitle{Laplace-Basis}
+\begin{center}
+\begin{tikzpicture}[>=latex,thick]
+
+\begin{scope}[yshift=-0.4cm,xshift=-5.5cm]]
+\fnull
+\end{scope}
+
+\begin{scope}[yshift=-1.8cm,xshift=-5.5cm]]
+\fone
+\end{scope}
+
+\begin{scope}[yshift=-3.2cm,xshift=-5.5cm]]
+\ftwo
+\end{scope}
+
+\begin{scope}[yshift=-4.6cm,xshift=-5.5cm]]
+\fthree
+\end{scope}
+
+\begin{scope}[yshift=-6.0cm,xshift=-5.5cm]]
+\ffour
+\end{scope}
+
+\begin{scope}[yshift=0cm]
+\vnull
+\end{scope}
+
+\begin{scope}[yshift=-1.4cm]
+\vone
+\end{scope}
+
+\begin{scope}[yshift=-2.8cm]
+\vtwo
+\end{scope}
+
+\begin{scope}[yshift=-4.2cm]
+\vthree
+\end{scope}
+
+\begin{scope}[yshift=-5.6cm]
+\vfour
+\end{scope}
+
+\end{tikzpicture}
+\end{center}
+\end{frame}
+\egroup
diff --git a/vorlesungen/slides/8/wavelets/vektoren.tex b/vorlesungen/slides/8/wavelets/vektoren.tex
new file mode 100644
index 0000000..2315d53
--- /dev/null
+++ b/vorlesungen/slides/8/wavelets/vektoren.tex
@@ -0,0 +1,200 @@
+\def\vnull{
+ \coordinate (A) at ({0*\a},0);
+ \coordinate (B) at ({1*\a},0);
+ \coordinate (C) at ({2*\a},0);
+ \coordinate (D) at ({0.5*\a},{-\b});
+ \coordinate (E) at ({1.5*\a},{-\b});
+ \draw (A) -- (B);
+ \draw (A) -- (D);
+ \draw (B) -- (C);
+ \draw (B) -- (D);
+ \draw (B) -- (E);
+ \draw (C) -- (E);
+ \draw (D) -- (E);
+ \node at (-2.8,{-0.5*\b}) [right] {$\lambda=0.0000$};
+ \fill[color=red!100] (A) circle[radius=0.25];
+ \draw (A) circle[radius=0.25];
+ \fill[color=red!100] (B) circle[radius=0.25];
+ \draw (B) circle[radius=0.25];
+ \fill[color=red!100] (C) circle[radius=0.25];
+ \draw (C) circle[radius=0.25];
+ \fill[color=red!100] (D) circle[radius=0.25];
+ \draw (D) circle[radius=0.25];
+ \fill[color=red!100] (E) circle[radius=0.25];
+ \draw (E) circle[radius=0.25];
+}
+\def\fnull{
+ \draw[color=red,line width=1.4pt]
+ ({-2.0000*\c},{0.4472*\d}) --
+ ({-1.0000*\c},{0.4472*\d}) --
+ ({0.0000*\c},{0.4472*\d}) --
+ ({1.0000*\c},{0.4472*\d}) --
+ ({2.0000*\c},{0.4472*\d});
+ \draw[->] ({-2.1*\c},0) -- ({2.1*\c},0);
+ \draw[->] (0,{-1.1*\d}) -- (0,{1.1*\d});
+ \fill ({-2*\c},0) circle[radius=0.05];
+ \fill ({-1*\c},0) circle[radius=0.05];
+ \fill ({0*\c},0) circle[radius=0.05];
+ \fill ({1*\c},0) circle[radius=0.05];
+ \fill ({2*\c},0) circle[radius=0.05];
+}
+\def\vone{
+ \coordinate (A) at ({0*\a},0);
+ \coordinate (B) at ({1*\a},0);
+ \coordinate (C) at ({2*\a},0);
+ \coordinate (D) at ({0.5*\a},{-\b});
+ \coordinate (E) at ({1.5*\a},{-\b});
+ \draw (A) -- (B);
+ \draw (A) -- (D);
+ \draw (B) -- (C);
+ \draw (B) -- (D);
+ \draw (B) -- (E);
+ \draw (C) -- (E);
+ \draw (D) -- (E);
+ \node at (-2.8,{-0.5*\b}) [right] {$\lambda=0.1586$};
+ \fill[color=blue!100] (A) circle[radius=0.25];
+ \draw (A) circle[radius=0.25];
+ \fill[color=blue!00] (B) circle[radius=0.25];
+ \draw (B) circle[radius=0.25];
+ \fill[color=red!100] (C) circle[radius=0.25];
+ \draw (C) circle[radius=0.25];
+ \fill[color=blue!41] (D) circle[radius=0.25];
+ \draw (D) circle[radius=0.25];
+ \fill[color=red!41] (E) circle[radius=0.25];
+ \draw (E) circle[radius=0.25];
+}
+\def\fone{
+ \draw[color=red,line width=1.4pt]
+ ({-2.0000*\c},{-0.6533*\d}) --
+ ({-1.0000*\c},{-0.2706*\d}) --
+ ({0.0000*\c},{-0.0000*\d}) --
+ ({1.0000*\c},{0.2706*\d}) --
+ ({2.0000*\c},{0.6533*\d});
+ \draw[->] ({-2.1*\c},0) -- ({2.1*\c},0);
+ \draw[->] (0,{-1.1*\d}) -- (0,{1.1*\d});
+ \fill ({-2*\c},0) circle[radius=0.05];
+ \fill ({-1*\c},0) circle[radius=0.05];
+ \fill ({0*\c},0) circle[radius=0.05];
+ \fill ({1*\c},0) circle[radius=0.05];
+ \fill ({2*\c},0) circle[radius=0.05];
+}
+\def\vtwo{
+ \coordinate (A) at ({0*\a},0);
+ \coordinate (B) at ({1*\a},0);
+ \coordinate (C) at ({2*\a},0);
+ \coordinate (D) at ({0.5*\a},{-\b});
+ \coordinate (E) at ({1.5*\a},{-\b});
+ \draw (A) -- (B);
+ \draw (A) -- (D);
+ \draw (B) -- (C);
+ \draw (B) -- (D);
+ \draw (B) -- (E);
+ \draw (C) -- (E);
+ \draw (D) -- (E);
+ \node at (-2.8,{-0.5*\b}) [right] {$\lambda=0.3000$};
+ \fill[color=red!100] (A) circle[radius=0.25];
+ \draw (A) circle[radius=0.25];
+ \fill[color=blue!00] (B) circle[radius=0.25];
+ \draw (B) circle[radius=0.25];
+ \fill[color=red!100] (C) circle[radius=0.25];
+ \draw (C) circle[radius=0.25];
+ \fill[color=blue!100] (D) circle[radius=0.25];
+ \draw (D) circle[radius=0.25];
+ \fill[color=blue!100] (E) circle[radius=0.25];
+ \draw (E) circle[radius=0.25];
+}
+\def\ftwo{
+ \draw[color=red,line width=1.4pt]
+ ({-2.0000*\c},{0.5000*\d}) --
+ ({-1.0000*\c},{-0.5000*\d}) --
+ ({0.0000*\c},{-0.0000*\d}) --
+ ({1.0000*\c},{-0.5000*\d}) --
+ ({2.0000*\c},{0.5000*\d});
+ \draw[->] ({-2.1*\c},0) -- ({2.1*\c},0);
+ \draw[->] (0,{-1.1*\d}) -- (0,{1.1*\d});
+ \fill ({-2*\c},0) circle[radius=0.05];
+ \fill ({-1*\c},0) circle[radius=0.05];
+ \fill ({0*\c},0) circle[radius=0.05];
+ \fill ({1*\c},0) circle[radius=0.05];
+ \fill ({2*\c},0) circle[radius=0.05];
+}
+\def\vthree{
+ \coordinate (A) at ({0*\a},0);
+ \coordinate (B) at ({1*\a},0);
+ \coordinate (C) at ({2*\a},0);
+ \coordinate (D) at ({0.5*\a},{-\b});
+ \coordinate (E) at ({1.5*\a},{-\b});
+ \draw (A) -- (B);
+ \draw (A) -- (D);
+ \draw (B) -- (C);
+ \draw (B) -- (D);
+ \draw (B) -- (E);
+ \draw (C) -- (E);
+ \draw (D) -- (E);
+ \node at (-2.8,{-0.5*\b}) [right] {$\lambda=0.4414$};
+ \fill[color=red!41] (A) circle[radius=0.25];
+ \draw (A) circle[radius=0.25];
+ \fill[color=red!00] (B) circle[radius=0.25];
+ \draw (B) circle[radius=0.25];
+ \fill[color=blue!41] (C) circle[radius=0.25];
+ \draw (C) circle[radius=0.25];
+ \fill[color=blue!100] (D) circle[radius=0.25];
+ \draw (D) circle[radius=0.25];
+ \fill[color=red!100] (E) circle[radius=0.25];
+ \draw (E) circle[radius=0.25];
+}
+\def\fthree{
+ \draw[color=red,line width=1.4pt]
+ ({-2.0000*\c},{0.2706*\d}) --
+ ({-1.0000*\c},{-0.6533*\d}) --
+ ({0.0000*\c},{0.0000*\d}) --
+ ({1.0000*\c},{0.6533*\d}) --
+ ({2.0000*\c},{-0.2706*\d});
+ \draw[->] ({-2.1*\c},0) -- ({2.1*\c},0);
+ \draw[->] (0,{-1.1*\d}) -- (0,{1.1*\d});
+ \fill ({-2*\c},0) circle[radius=0.05];
+ \fill ({-1*\c},0) circle[radius=0.05];
+ \fill ({0*\c},0) circle[radius=0.05];
+ \fill ({1*\c},0) circle[radius=0.05];
+ \fill ({2*\c},0) circle[radius=0.05];
+}
+\def\vfour{
+ \coordinate (A) at ({0*\a},0);
+ \coordinate (B) at ({1*\a},0);
+ \coordinate (C) at ({2*\a},0);
+ \coordinate (D) at ({0.5*\a},{-\b});
+ \coordinate (E) at ({1.5*\a},{-\b});
+ \draw (A) -- (B);
+ \draw (A) -- (D);
+ \draw (B) -- (C);
+ \draw (B) -- (D);
+ \draw (B) -- (E);
+ \draw (C) -- (E);
+ \draw (D) -- (E);
+ \node at (-2.8,{-0.5*\b}) [right] {$\lambda=0.5000$};
+ \fill[color=red!25] (A) circle[radius=0.25];
+ \draw (A) circle[radius=0.25];
+ \fill[color=blue!100] (B) circle[radius=0.25];
+ \draw (B) circle[radius=0.25];
+ \fill[color=red!25] (C) circle[radius=0.25];
+ \draw (C) circle[radius=0.25];
+ \fill[color=red!25] (D) circle[radius=0.25];
+ \draw (D) circle[radius=0.25];
+ \fill[color=red!25] (E) circle[radius=0.25];
+ \draw (E) circle[radius=0.25];
+}
+\def\ffour{
+ \draw[color=red,line width=1.4pt]
+ ({-2.0000*\c},{0.2236*\d}) --
+ ({-1.0000*\c},{0.2236*\d}) --
+ ({0.0000*\c},{-0.8944*\d}) --
+ ({1.0000*\c},{0.2236*\d}) --
+ ({2.0000*\c},{0.2236*\d});
+ \draw[->] ({-2.1*\c},0) -- ({2.1*\c},0);
+ \draw[->] (0,{-1.1*\d}) -- (0,{1.1*\d});
+ \fill ({-2*\c},0) circle[radius=0.05];
+ \fill ({-1*\c},0) circle[radius=0.05];
+ \fill ({0*\c},0) circle[radius=0.05];
+ \fill ({1*\c},0) circle[radius=0.05];
+ \fill ({2*\c},0) circle[radius=0.05];
+}