ba-thesis/latex/presentations/02_12_2022/presentation.tex

793 lines
31 KiB
TeX

\documentclass[aspectratio=169]{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
% \usepackage[ngerman]{babel}
%\usepackage{amsmath}
\usepackage{float}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usepackage{subcaption}
\usepackage{listings}
\usepackage{graphicx}
\usepackage{xcolor}
\usepgfplotslibrary{colorbrewer}
\usepgfplotslibrary{external}
\tikzexternalize[prefix=build/]
\pgfplotsset{
discard if/.style 2 args={
x filter/.code={
\edef\tempa{\thisrow{#1}}
\edef\tempb{#2}
\ifx\tempa\tempb
\def\pgfmathresult{inf}
\fi
}
},
discard if not/.style 2 args={
x filter/.code={
\edef\tempa{\thisrow{#1}}
\edef\tempb{#2}
\ifx\tempa\tempb
\else
\def\pgfmathresult{inf}
\fi
}
}
}
\DeclareCaptionLabelFormat{algocaption}{Algorithm} % defines a new caption label as Algorithm x.y
\lstnewenvironment{algorithm}[1][] %defines the algorithm listing environment
{
\captionsetup{labelformat=algocaption,labelsep=colon} %defines the caption setup for: it ises label format as the declared caption label above and makes label and caption text to be separated by a ':'
\lstset{ %this is the stype
mathescape=true,
frame=tB,
numbers=left,
numberstyle=\tiny,
basicstyle=\tiny\normalfont,
columns=fullflexible,
keywordstyle=\color{black}\bfseries,
keywords={a, for, end, do, b} %add the keywords you want, or load a language as Rubens explains in his comment above.
numbers=left,
xleftmargin=.04\textwidth,
#1 % this is to add specific settings to an usage of this environment (for instnce, the caption and referable label)
}
}
{}
\pgfplotsset{
/pgfplots/colormap/mako/.style={
colormap={mako}{
rgb=(0.18195582, 0.11955283, 0.23136943)
rgb=(0.25307401, 0.23772973, 0.48316271)
rgb=(0.21607792, 0.39736958, 0.61948028)
rgb=(0.20344718, 0.56074869, 0.65649508)
rgb=(0.25187832, 0.71827158, 0.67872193)
rgb=(0.54578602, 0.8544913, 0.69848331)
}
},
/pgfplots/colormap/rocket/.style={
colormap={rocket}{
rgb=(0.20973515, 0.09747934, 0.24238489)
rgb=(0.43860848, 0.12177004, 0.34119475)
rgb=(0.67824099, 0.09192342, 0.3504148)
rgb=(0.8833417, 0.19830556, 0.26014181)
rgb=(0.95381595, 0.46373781, 0.31769923)
rgb=(0.96516917, 0.70776351, 0.5606593)
}
},
/pgfplots/colormap/cividis/.style={
colormap={cividis}{
rgb=(0.130669, 0.231458, 0.43284)
rgb=(0.298421, 0.332247, 0.423973)
rgb=(0.42512, 0.431334, 0.447692)
rgb=(0.555393, 0.537807, 0.471147)
rgb=(0.695985, 0.648334, 0.440072)
rgb=(0.849223, 0.771947, 0.359729)
}
},
colormap/cividis,
colormap/mako,
colormap/rocket,
}
\title{BA Besprechung}
\author{Andreas Tsouchlos}
\begin{document}
\frame{\titlepage}
% ================================
% BER
% ================================
\begin{frame}[t]
\frametitle{Proximal Decoder}
\framesubtitle{BER ($\omega = 0.05, K=200, \eta = 1.5$)}
\begin{figure}[H]
\centering
\begin{subfigure}{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.52]
\begin{semilogyaxis}[xlabel={SNR},ylabel={BER}, grid=both, grid style={line width=.1pt}, legend style={at={(0.05,0.05)},anchor=south west}]
\foreach \gamma in {0.01, 0.05, 0.15}{
\addplot table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{\gamma}] {res/BER_FER_DFR_20433486alist.csv};
\legend{\gamma}
}
\legend{$\gamma=0.01$, $\gamma=0.05$, $\gamma=0.15$}
\end{semilogyaxis}
\end{tikzpicture}
\caption{BER of 204.33.486}
\end{subfigure}%
\begin{subfigure}{0.5\textwidth}
\centering
\includegraphics[scale=0.215]{res/paper_results}
\caption{Results from ``Prox. Dec. for LDPC Codes''}
\end{subfigure}
\end{figure}
\end{frame}
% ================================
% Average Error value
% ================================
\begin{frame}[t]
\frametitle{Proximal Decoder}
\framesubtitle{Average Error Value ($\omega = 0.05, \gamma = 0.05, \eta=1.5$)}
\begin{figure}[H]
\centering
\begin{subfigure}{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.4]
\begin{axis}[grid=both, grid style={line width=.1pt}, xlabel={k}, ylabel={Average $ \left| \boldsymbol{x} - \boldsymbol{\hat{x}} \right| $}, xtick={0, 25, ..., 100}]
\addplot table [x=k, y=err, col sep=comma, mark=none] {res/avg_err_val_8_dB_20433486alist.csv};
\end{axis}
\end{tikzpicture}
\includegraphics[scale=0.2]{res/paper_avg_error_8dB}
\caption{$\text{SNR} = 8dB$}
\end{subfigure}%
\begin{subfigure}{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.4]
\begin{axis}[grid=both, grid style={line width=.1pt}, xlabel={k}, ylabel={Average $ \left| \boldsymbol{x} - \boldsymbol{\hat{x}} \right| $}, xtick={0, 25, ..., 100}]
\addplot table [x=k, y=err, col sep=comma, mark=none] {res/avg_err_val_10_dB_20433486alist.csv};
\end{axis}
\end{tikzpicture}
\includegraphics[scale=0.2]{res/paper_avg_error_10dB}
\caption{$\text{SNR} = 10dB$}
\end{subfigure}
\end{figure}
\end{frame}
% ================================
% 3d Average error
% ================================
\begin{frame}[t, fragile]
\frametitle{Proximal Decoder}
\framesubtitle{Average Error Value ($\text{SNR}=8dB, \gamma = 0.05, \eta = 1.5$)}
\begin{figure}[H]
\centering
\begin{subfigure}[c]{0.5\textwidth}
\centering
\begin{subfigure}{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.4]
\begin{axis}[grid=both, grid style={line width=.1pt}, xlabel={k}, ylabel={Average $ \left| \boldsymbol{x} - \boldsymbol{\hat{x}} \right| $}, xtick={0, 25, ..., 100}]
\addplot table [x=k, y=err, col sep=comma, mark=none] {res/avg_err_val_8_dB_20433486alist.csv};
\end{axis}
\end{tikzpicture}
\end{subfigure}
\vspace{5mm}
\begin{subfigure}{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.52]
\begin{semilogyaxis}[view={35}{60}, xlabel={$\textcolor{orange}{k}$}, ylabel={$\textcolor{red}{\omega}$}, zlabel={Average $\left| \boldsymbol{x} - \boldsymbol{\hat{x}} \right| $}, point meta min = -0.5, point meta max = 5]
\addplot3[surf, mesh/rows=50, mesh/cols=40] table [col sep=comma] {res/2d_avg_err_8dB_20433486alist.csv};
\addplot3[mark=none, blue, line width=1] table [col sep=comma, discard if not={omega}{0.052233450742668434}] {res/2d_avg_err_8dB_20433486alist.csv};
\addlegendentry{\tiny $n=204, k=102, r=0.5$}
\end{semilogyaxis}
\end{tikzpicture}
\end{subfigure}
\end{subfigure}%
\begin{subfigure}[c]{0.5\textwidth}
\centering
\begin{algorithm}[caption={}, label={}]
$\boldsymbol{s}^{\left( 0 \right)} = \boldsymbol{0}$
for $\textcolor{orange}{k}=0$ to $K-1$ do
$\boldsymbol{r}^{\left( k+1 \right)} = \boldsymbol{s}^{(k)} - \textcolor{red}{\omega} \nabla L \left( \boldsymbol{s}^{(k)}; \boldsymbol{y} \right) $
Compute $\nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right)$
$\boldsymbol{s}^{\left( k+1 \right)} = \boldsymbol{r}^{(k+1)} - \gamma \nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right) $
$\boldsymbol{\hat{x}} = \text{sign}\left( \boldsymbol{s}^{\left( k+1 \right) } \right) $
If $\boldsymbol{\hat{x}}$ passes the parity check condition, break the loop.
end for
Output $\boldsymbol{\hat{x}}$
\end{algorithm}
\end{subfigure}
\end{figure}
\end{frame}
% ================================
% Average Gradient of H
% ================================
\begin{frame}[t]
\frametitle{Proximal Decoder}
\framesubtitle{Average $\left| \nabla h \right|$ and $\left| \nabla L \right|$ ($\omega = 0.05, \gamma = 0.05, \eta = 1.5$)}
\begin{figure}[H]
\centering
\begin{subfigure}{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.52]
\begin{axis}[grid=both, grid style={line width=.1pt}, xlabel={k}, xtick={0, 25, ..., 100}]
\addplot table [x=k, y=grad_h, col sep=comma, mark=none] {res/avg_grad_8dB_20433486alist.csv};
\addlegendentry{$\left| \nabla h \right| $}
\addplot table [x=k, y=grad_l, col sep=comma, mark=none] {res/avg_grad_8dB_20433486alist.csv};
\addlegendentry{$\left| \nabla L \right| $}
\end{axis}
\end{tikzpicture}
\caption{$\text{SNR} = 8dB$}
\end{subfigure}%
\begin{subfigure}{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.52]
\begin{axis}[grid=both, grid style={line width=.1pt}, xlabel={k}, xtick={0, 25, ..., 100}]
\addplot table [x=k, y=grad_h, col sep=comma, mark=none] {res/avg_grad_10dB_20433486alist.csv};
\addlegendentry{$\left| \nabla h \right| $}
\addplot table [x=k, y=grad_l, col sep=comma, mark=none] {res/avg_grad_10dB_20433486alist.csv};
\addlegendentry{$\left| \nabla L \right| $}
\end{axis}
\end{tikzpicture}
\caption{$\text{SNR} = 10dB$}
\end{subfigure}
\end{figure}
\end{frame}
% ================================
% BER vs FER vs Decoding Failure Rate
% ================================
\begin{frame}[t]
\frametitle{Proximal Decoder}
\framesubtitle{BER vs FER vs Decoding Failure Rate ($\omega = 0.05, K=200, \eta = 1.5$)}
\begin{figure}[H]
\centering
\begin{subfigure}{0.32\textwidth}
\centering
\begin{tikzpicture}[scale=0.52]
\begin{semilogyaxis}[xlabel={SNR},ylabel={BER}, ymin=8e-5, ymax=2e0, grid=both, grid style={line width=.1pt}, legend style={at={(0.05,0.05)},anchor=south west}]
\foreach \gamma in {0.01, 0.05, 0.15}{
\addplot table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{\gamma}] {res/BER_FER_DFR_20433486alist.csv};
}
\legend{$\gamma=0.01$, $\gamma=0.05$, $\gamma=0.15$}
\end{semilogyaxis}
\end{tikzpicture}
\caption{BER of 204.33.486}
\end{subfigure}%
\begin{subfigure}{0.32\textwidth}
\centering
\begin{tikzpicture}[scale=0.52]
\begin{semilogyaxis}[xlabel={SNR},ylabel={FER}, ymin=8e-5, ymax=2e0, grid=both, grid style={line width=.1pt}, legend style={at={(0.05,0.05)},anchor=south west}]
\foreach \gamma in {0.01, 0.05, 0.15}{
\addplot table [x=SNR, y=FER, col sep=comma, discard if not={gamma}{\gamma}] {res/BER_FER_DFR_20433486alist.csv};
}
\legend{$\gamma=0.01$, $\gamma=0.05$, $\gamma=0.15$}
\end{semilogyaxis}
\end{tikzpicture}
\caption{FER of 204.33.486}
\end{subfigure}%
\begin{subfigure}{0.32\textwidth}
\centering
\begin{tikzpicture}[scale=0.52]
\begin{semilogyaxis}[xlabel={SNR},ylabel={DFR}, ymin=8e-5, ymax=2e0, grid=both, grid style={line width=.1pt}, legend style={at={(0.05,0.05)},anchor=south west}]
\foreach \gamma in {0.01, 0.05, 0.15}{
\addplot table [x=SNR, y=DFR, col sep=comma, discard if not={gamma}{\gamma}] {res/BER_FER_DFR_20433486alist.csv};
}
\legend{$\gamma=0.01$, $\gamma=0.05$, $\gamma=0.15$}
\end{semilogyaxis}
\end{tikzpicture}
\caption{DFR of 204.33.486}
\end{subfigure}
\end{figure}
\end{frame}
% ================================
% Average Error multiple SNRs
% ================================
\begin{frame}[t]
\frametitle{Proximal Decoder}
\framesubtitle{Average Error Value ($\omega = 0.05, \gamma = 0.05, \eta = 1.5$)}
\begin{figure}[H]
\centering
\begin{subfigure}{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.52]
\begin{axis}[grid=both, reverse legend, grid style={line width=.1pt}, xlabel={k}, ylabel={Average $ \left| \boldsymbol{x} - \boldsymbol{\hat{x}} \right| $}, xtick={0, 25, ..., 100}]
\addplot table [x=k, y=err, col sep=comma, mark=none] {res/avg_err_val_8_dB_20433486alist.csv};
\addplot table [x=k, y=err, col sep=comma, mark=none] {res/avg_err_val_5dB_20433486alist.csv};
\addplot table [x=k, y=err, col sep=comma, mark=none] {res/avg_err_val_3dB_20433486alist.csv};
\addlegendentry{$\text{SNR=8dB}$}
\addlegendentry{$\text{SNR=5dB}$}
\addlegendentry{$\text{SNR=3dB}$}
\end{axis}
\end{tikzpicture}
\end{subfigure}%
\begin{subfigure}{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.6]
\begin{axis}[reverse legend, xlabel={$K$}, ylabel={$\omega$}, xtick={20, 60, 100, 140, 180}, ytick={1e-9, 1e-6, 1e-3, 1e-0}, zlabel={Average $\left| \boldsymbol{x} - \boldsymbol{\hat{x}} \right| $}, view={35}{60}, point meta min=-2, point meta max=8, ymode=log,]
\addplot3[surf, mesh/rows=50, mesh/cols=40, colormap/mako] table [col sep=comma] {res/2d_avg_err_8dB_20433486alist.csv};
\addlegendentry{\tiny $\text{SNR} = 8dB$}
\addplot3[surf, mesh/rows=50, mesh/cols=40, colormap/rocket] table [col sep=comma] {res/2d_avg_err_5dB_20433486alist.csv};
\addlegendentry{\tiny $\text{SNR} = 5dB$}
\addplot3[surf, mesh/rows=50, mesh/cols=40, colormap/cividis] table [col sep=comma] {res/2d_avg_err_3dB_20433486alist.csv};
\addlegendentry{\tiny $\text{SNR} = 3dB$}
\end{axis}
\end{tikzpicture}
\end{subfigure}
\end{figure}
\end{frame}
% ================================
% Average Error multiple SNRs
% ================================
\begin{frame}[t]
\frametitle{Proximal Decoder}
\framesubtitle{Average $\left| \nabla h \right| $ and $\left| \nabla L \right| $, ($\omega = 0.05, \gamma = 0.05, \eta = 1.5$)}
\begin{figure}[H]
\centering
\begin{subfigure}{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.4]
\begin{axis}[grid=both, xlabel={k}, xtick={0, 25, ..., 100}]
\addplot table[mark=none, col sep=comma, x=k, y=grad_h] {res/avg_grad_3dB_20433486alist.csv};
\addlegendentry{$\left| \nabla h \right| $}
\addplot table[mark=none, col sep=comma, x=k, y=grad_l] {res/avg_grad_3dB_20433486alist.csv};
\addlegendentry{$\left| \nabla L \right| $}
\end{axis}
\end{tikzpicture}
\caption{$\text{SNR}=3dB$}
\end{subfigure}%
\begin{subfigure}{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.4]
\begin{axis}[grid=both, xlabel={k}, xtick={0, 25, ..., 100}]
\addplot table[mark=none, col sep=comma, x=k, y=grad_h] {res/avg_grad_5dB_20433486alist.csv};
\addlegendentry{$\left| \nabla h \right| $}
\addplot table[mark=none, col sep=comma, x=k, y=grad_l] {res/avg_grad_5dB_20433486alist.csv};
\addlegendentry{$\left| \nabla L \right| $}
\end{axis}
\end{tikzpicture}
\caption{$\text{SNR}=5dB$}
\end{subfigure}
\begin{subfigure}{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.4]
\begin{axis}[grid=both, xlabel={k}, xtick={0, 25, ..., 100}]
\addplot table[mark=none, col sep=comma, x=k, y=grad_h] {res/avg_grad_8dB_20433486alist.csv};
\addlegendentry{$\left| \nabla h \right| $}
\addplot table[mark=none, col sep=comma, x=k, y=grad_l] {res/avg_grad_8dB_20433486alist.csv};
\addlegendentry{$\left| \nabla L \right| $}
\end{axis}
\end{tikzpicture}
\caption{$\text{SNR}=8dB$}
\end{subfigure}%
\begin{subfigure}{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.4]
\begin{axis}[grid=both, xlabel={k}, xtick={0, 25, ..., 100}]
\addplot table[mark=none, col sep=comma, x=k, y=grad_h] {res/avg_grad_10dB_20433486alist.csv};
\addlegendentry{$\left| \nabla h \right| $}
\addplot table[mark=none, col sep=comma, x=k, y=grad_l] {res/avg_grad_10dB_20433486alist.csv};
\addlegendentry{$\left| \nabla L \right| $}
\end{axis}
\end{tikzpicture}
\caption{$\text{SNR}=10dB$}
\end{subfigure}
\end{figure}
\end{frame}
\begin{frame}[t]
\frametitle{Proximal Decoder}
\framesubtitle{BER ($\omega = 0.05, \eta = 1.5, K = 100$)}
\begin{figure}[H]
\centering
\begin{subfigure}[c]{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.52]
\begin{semilogyaxis}[xlabel={SNR},ylabel={BER}, grid=both, grid style={line width=.1pt}, legend style={at={(0.05,0.05)},anchor=south west}]
\foreach \gamma in {0.01, 0.05, 0.15}{
\addplot table [x=SNR, y=BER, col sep=comma, discard if not={gamma}{\gamma}] {res/BER_FER_DFR_20433486alist.csv};
\legend{\gamma}
}
\legend{$\gamma=0.01$, $\gamma=0.05$, $\gamma=0.15$}
\end{semilogyaxis}
\end{tikzpicture}
\end{subfigure}%
\begin{subfigure}[c]{0.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.7]
\begin{axis}[view={75}{60}, zmode=log, xlabel={SNR}, ylabel={$\gamma$}, zlabel={BER}]
\addplot3[surf, mesh/rows=17, mesh/cols=10, colormap/mako] table [col sep=comma, x=SNR, y=gamma, z=BER] {res/2d_BER_FER_DFR_20433486alist.csv};
\addlegendentry{$\gamma = \left[ 0\text{:}.01\text{:}.16 \right] $}
\addplot3[red, line width=1.5] table[col sep=comma, discard if not={gamma}{0.05}, x=SNR, y=gamma, z=BER] {res/2d_BER_FER_DFR_20433486alist.csv};
\addlegendentry{$\gamma = 0.05$}
\addplot3[blue, line width=1.5] table[col sep=comma, discard if not={gamma}{0.01}, x=SNR, y=gamma, z=BER] {res/2d_BER_FER_DFR_20433486alist.csv};
\addlegendentry{$\gamma = 0.01$}
\addplot3[brown, line width=1.5] table[col sep=comma, discard if not={gamma}{0.15}, x=SNR, y=gamma, z=BER] {res/2d_BER_FER_DFR_20433486alist.csv};
\addlegendentry{$\gamma = 0.15$}
\end{axis}
\end{tikzpicture}
\end{subfigure}
\end{figure}
\end{frame}
% \begin{frame}[t]
% \frametitle{Proximal Decoder}
% \framesubtitle{Average Error Value ($\gamma = 0.05, \eta = 1.5$)}
%
% \begin{figure}[H]
% \centering
%
% \begin{subfigure}{0.5\textwidth}
% \centering
%
% \begin{tikzpicture}[scale=0.4]
% \begin{semilogyaxis}[view={35}{60}, xlabel={$\textcolor{blue}{K}$}, ylabel={$\textcolor{red}{\omega}$}]
% \addplot3[surf, mesh/rows=50, mesh/cols=40] table [col sep=comma] {res/2d_avg_err_3dB_20433486alist.csv};
% \addlegendentry{\tiny $n=204, k=102, r=0.5$}
% \end{semilogyaxis}
% \end{tikzpicture}
%
% \caption{$\text{SNR} = 3dB$}
% \end{subfigure}%
% \begin{subfigure}{0.5\textwidth}
% \centering
%
% \begin{tikzpicture}[scale=0.4]
% \begin{semilogyaxis}[view={35}{60}, xlabel={$\textcolor{blue}{K}$}, ylabel={$\textcolor{red}{\omega}$}]
% \addplot3[surf, mesh/rows=50, mesh/cols=40] table [col sep=comma] {res/2d_avg_err_5dB_20433486alist.csv};
% \addlegendentry{\tiny $n=204, k=102, r=0.5$}
% \end{semilogyaxis}
% \end{tikzpicture}
%
%
% \caption{$\text{SNR} = 5dB$}
% \end{subfigure}
%
% \begin{subfigure}{0.5\textwidth}
% \centering
%
% \begin{tikzpicture}[scale=0.4]
% \begin{semilogyaxis}[view={35}{60}, xlabel={$\textcolor{blue}{K}$}, ylabel={$\textcolor{red}{\omega}$}]
% \addplot3[surf, mesh/rows=50, mesh/cols=40] table [col sep=comma] {res/2d_avg_err_8dB_20433486alist.csv};
% \addlegendentry{\tiny $n=204, k=102, r=0.5$}
% \end{semilogyaxis}
% \end{tikzpicture}
%
% \caption{$\text{SNR} = 8dB$}
% \end{subfigure}%
% \begin{subfigure}{0.5\textwidth}
% \centering
%
% \begin{tikzpicture}[scale=0.4]
% \begin{semilogyaxis}[view={35}{60}, xlabel={$\textcolor{blue}{K}$}, ylabel={$\textcolor{red}{\omega}$}]
% \addplot3[surf, mesh/rows=50, mesh/cols=40] table [col sep=comma] {res/2d_avg_err_10dB_20433486alist.csv};
% \addlegendentry{\tiny $n=204, k=102, r=0.5$}
% \end{semilogyaxis}
% \end{tikzpicture}
%
%
% \caption{$\text{SNR} = 10dB$}
% \end{subfigure}
% \end{figure}
% \end{frame}
% % ================================
% % Decoding Failure Rate 3d
% % ================================
%
%
% \begin{frame}[fragile, t]
% \frametitle{Proximal Decoder}
% \framesubtitle{Decoding Failure Rate ($\text{SNR} = 3dB, \gamma = 0.05$)}
%
% \begin{figure}[H]
% \centering
%
% \begin{subfigure}{0.5\textwidth}
% \centering
%
% \begin{tikzpicture}[scale=0.6]
% \begin{semilogyaxis}[xlabel={$\textcolor{blue}{K}$}, ylabel={$\textcolor{red}{\omega}$}, xtick={20, 60, 100, 140, 180}, ytick={1e-9, 1e-6, 1e-3, 1e-0}, zlabel={DFR}, view={35}{60}, point meta min=0, point meta max=1]
% \addplot3[surf, mesh/rows=40, mesh/cols=40] table [col sep=comma] {res/2d_dec_fails_w_log_k_lin_20433486alist_pgf.csv};
% \addlegendentry{\tiny $n=204, k=102, r=0.5$}
% \end{semilogyaxis}
% \end{tikzpicture}
%
% \caption{DFR of 204.33.486}
% \end{subfigure}%
% \begin{subfigure}{0.5\textwidth}
% \centering
%
% \begin{algorithm}[caption={}, label={}]
%$\boldsymbol{s}^{\left( 0 \right)} = \boldsymbol{0}$
%for $k=0$ to $\textcolor{blue}{K}-1$ do
% $\boldsymbol{r}^{\left( k+1 \right)} = \boldsymbol{s}^{(k)} - \textcolor{red}{\omega} \nabla L \left( \boldsymbol{s}^{(k)}; \boldsymbol{y} \right) $
% Compute $\nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right)$
% $\boldsymbol{s}^{\left( k+1 \right)} = \boldsymbol{r}^{(k+1)} - \gamma \nabla h\left( \boldsymbol{r}^{\left( k+1 \right) } \right) $
% $\boldsymbol{\hat{x}} = \text{sign}\left( \boldsymbol{s}^{\left( k+1 \right) } \right) $
% If $\boldsymbol{\hat{x}}$ passes the parity check condition, break the loop.
%end for
%Output $\boldsymbol{\hat{x}}$
%
% \end{algorithm}
%
% \caption{Proximal decoding algorithm}
% \end{subfigure}
% \end{figure}
% \end{frame}
%
% % ================================
% % Decoding Failure Rate
% % ================================
%
%% \begin{frame}[t]
%% \frametitle{Proximal Decoder}
%% \framesubtitle{Decoding Failure Rate}
%%
%% \begin{figure}[H]
%% \centering
%%
%% \begin{subfigure}{0.32\textwidth}
%% \centering
%%
%% \begin{tikzpicture}[scale=0.4]
%% \begin{semilogyaxis}[colorbar, xlabel={$K$}, ylabel={$\omega$}, at={(0,0)}, view={0}{90}, point meta min=0, point meta max=1]
%% \addplot3[surf, shader=flat, mesh/rows=40, mesh/cols=40] table [col sep=comma] {res/2d_dec_fails_w_log_k_lin_bch_7_4alist_pgf.csv};
%% \end{semilogyaxis}
%% \end{tikzpicture}
%%
%% \caption{DFR of BCH 7 4}
%% \end{subfigure}%
%% \begin{subfigure}{0.32\textwidth}
%% \centering
%%
%% \begin{tikzpicture}[scale=0.4]
%% \begin{semilogyaxis}[colorbar, xlabel={$K$}, ylabel={$\omega$}, at={(0,0)}, view={0}{90}, point meta min=0, point meta max=1]
%% \addplot3[surf, shader=flat, mesh/rows=40, mesh/cols=40] table [col sep=comma] {res/2d_dec_fails_w_log_k_lin_bch_31_26alist_pgf.csv};
%% \end{semilogyaxis}
%% \end{tikzpicture}
%%
%% \caption{DFR of BCH 31 26}
%% \end{subfigure}%
%% \begin{subfigure}{0.32\textwidth}
%% \centering
%%
%% \begin{tikzpicture}[scale=0.4]
%% \begin{semilogyaxis}[colorbar, xlabel={$K$}, ylabel={$\omega$}, at={(0,0)}, view={0}{90}, point meta min=0, point meta max=1]
%% \addplot3[surf, shader=flat, mesh/rows=40, mesh/cols=40] table [col sep=comma] {res/2d_dec_fails_w_log_k_lin_bch_31_11alist_pgf.csv};
%% \end{semilogyaxis}
%% \end{tikzpicture}
%%
%% \caption{DFR of BCH 31 11}
%% \end{subfigure}
%%
%% \begin{subfigure}{0.32\textwidth}
%% \centering
%%
%% \begin{tikzpicture}[scale=0.4]
%% \begin{semilogyaxis}[colorbar, xlabel={$K$}, ylabel={$\omega$}, at={(0,0)}, view={0}{90}, point meta min=0, point meta max=1]
%% \addplot3[surf, shader=flat, mesh/rows=40, mesh/cols=40] table [col sep=comma] {res/2d_dec_fails_w_log_k_lin_963965alist_pgf.csv};
%% \end{semilogyaxis}
%% \end{tikzpicture}
%%
%% \caption{DFR of 96.3.965}
%% \end{subfigure}%
%% \begin{subfigure}{0.32\textwidth}
%% \centering
%%
%% \begin{tikzpicture}[scale=0.4]
%% \begin{semilogyaxis}[colorbar, xlabel={$K$}, ylabel={$\omega$}, at={(0,0)}, view={0}{90}, point meta min=0, point meta max=1]
%% \addplot3[surf, shader=flat, mesh/rows=40, mesh/cols=40] table [col sep=comma] {res/2d_dec_fails_w_log_k_lin_20433486alist_pgf.csv};
%% \end{semilogyaxis}
%% \end{tikzpicture}
%%
%% \caption{DFR of 204.33.486}
%% \end{subfigure}%
%% \begin{subfigure}{0.32\textwidth}
%% \centering
%%
%% \begin{tikzpicture}[scale=0.4]
%% \begin{semilogyaxis}[colorbar, xlabel={$K$}, ylabel={$\omega$}, at={(0,0)}, view={0}{90}, point meta min=0, point meta max=1]
%% \addplot3[surf, shader=flat, mesh/rows=40, mesh/cols=40] table [col sep=comma] {res/2d_dec_fails_w_log_k_lin_40833844alist_pgf.csv};
%% \end{semilogyaxis}
%% \end{tikzpicture}
%%
%% \caption{DFR of 408.33.844}
%% \end{subfigure}
%% \end{figure}
%% \end{frame}
%
% \begin{frame}[t]
% \frametitle{Proximal Decoder}
% \framesubtitle{Decoding Failure Rate ($\text{SNR}=3dB, \gamma = 0.05$)}
%
%
% \begin{figure}
% \centering
% \begin{subfigure}{0.5\textwidth}
% \centering
%
% \begin{tikzpicture}[scale=0.6]
% \begin{axis}[colorbar, reverse legend, xlabel={$K$}, ylabel={$\omega$}, xtick={20, 60, 100, 140, 180}, ytick={1e-9, 1e-6, 1e-3, 1e-0}, zlabel={DFR}, view={35}{60}, point meta min=0, point meta max=1, ymode=log,
% colorbar style={
% colormap/mako,
% at={(1.1, 1)},
% ytick={-1, -0.5}
% },
% colorbar/draw/.append code={
% \begin{axis}[
% every colorbar,
% colormap/rocket,
% point meta min=0,
% point meta max=1,
% at={(1.2,1)},
% ytick={-1, -0.5},
% ]
% \pgfkeysvalueof{/pgfplots/colorbar addplot}
% \end{axis}
% \begin{axis}[
% every colorbar,
% colormap/cividis,
% point meta min=0,
% point meta max=1,
% at={(1.3,1)},
% ytick={0, 0.2, ..., 1},
% ]
% \pgfkeysvalueof{/pgfplots/colorbar addplot}
% \end{axis}
%}]
% \addplot3[surf, mesh/rows=40, mesh/cols=40, colormap/mako] table [col sep=comma] {res/2d_dec_fails_w_log_k_lin_bch_7_4alist_pgf.csv};
% \addlegendentry{\tiny $n=7, k=4, r=0.57$}
% \addplot3[surf, mesh/rows=40, mesh/cols=40, colormap/rocket] table [col sep=comma] {res/2d_dec_fails_w_log_k_lin_bch_31_26alist_pgf.csv};
% \addlegendentry{\tiny $n=31, k=26, r=0.84$}
% \addplot3[surf, mesh/rows=40, mesh/cols=40, colormap/cividis] table [col sep=comma] {res/2d_dec_fails_w_log_k_lin_bch_31_11alist_pgf.csv};
% \addlegendentry{\tiny $n=31, k=11, r=0.35$}
% \end{axis}
% \end{tikzpicture}
% \end{subfigure}%
% \begin{subfigure}{0.5\textwidth}
% \centering
%
% \begin{tikzpicture}[scale=0.6]
% \begin{semilogyaxis}[reverse legend, xlabel={$K$}, ylabel={$\omega$}, xtick={20, 60, 100, 140, 180}, ytick={1e-9, 1e-6, 1e-3, 1e-0}, zlabel={DFR}, view={35}{60}, point meta min=0, point meta max=1, colorbar, colorbar style={
% colormap/mako,
% at={(1.1, 1)},
% ytick={-1, -0.5}
% },
% colorbar/draw/.append code={
% \begin{axis}[
% every colorbar,
% colormap/rocket,
% point meta min=0,
% point meta max=1,
% at={(1.2,1)},
% ytick={-1, -0.5},
% ]
% \pgfkeysvalueof{/pgfplots/colorbar addplot}
% \end{axis}
% \begin{axis}[
% every colorbar,
% colormap/cividis,
% point meta min=0,
% point meta max=1,
% at={(1.3,1)},
% ytick={0, 0.2, ..., 1},
% ]
% \pgfkeysvalueof{/pgfplots/colorbar addplot}
% \end{axis}
% }
% ]
% \addplot3[surf, mesh/rows=40, mesh/cols=40, colormap/mako] table [col sep=comma] {res/2d_dec_fails_w_log_k_lin_963965alist_pgf.csv};
% \addlegendentry{\tiny $n=96, k=48, r=0.5$}
% \addplot3[surf, mesh/rows=40, mesh/cols=40, colormap/rocket] table [col sep=comma] {res/2d_dec_fails_w_log_k_lin_20433486alist_pgf.csv};
% \addlegendentry{\tiny $n=204, k=102, r=0.5$}
% \addplot3[surf, mesh/rows=40, mesh/cols=40, colormap/cividis] table [col sep=comma] {res/2d_dec_fails_w_log_k_lin_40833844alist_pgf.csv};
% \addlegendentry{\tiny $n=408, k=204, r=0.5$}
% \end{semilogyaxis}
% \end{tikzpicture}
% \end{subfigure}
% \end{figure}
% \end{frame}
\end{document}