Add TODOs; Add magnified plot to other figure

This commit is contained in:
2026-05-02 17:28:20 +02:00
parent 5687499b5b
commit 6b1821fd6b

View File

@@ -1657,6 +1657,32 @@ In the context of \ac{qec}, however, the relevant figure of merit is
not total compute but decoding latency, and in terms of latency the not total compute but decoding latency, and in terms of latency the
sliding-window approach is still at an advantage. sliding-window approach is still at an advantage.
% [Thread] Exploration of the effect of the step size
% TODO: Write
% [Experimental parameters] Figure 4.10
% tex-fmt: off
\red{\textbf{overall:}[warm, cold $F\in\{1,2,3\}$][$W=5$]}
\red{\textbf{a)}[$p \in \{\ldots\}$][$n_\text{iter} = 200$]}
\red{\textbf{b)}[$p = 0.0025$][$n_\text{iter}\in\{...\}$]}
% [Description] Figure 4.10
\red{\textbf{a)}[lower F -> better performance, lower p -> larger
gain of warm vs soft, \textbf{TODO}: find more]}
\red{\textbf{b)}[lower F -> better performance, lower $n_\text{iter}$
-> larger gain of warm vs soft, no real saturation, \textbf{TODO}: find more]}
% tex-fmt: on
% [Interpretation] Figure 4.10
\red{[lower $n_\text{iter}$ -> larger gain is same behavior as seen
in plot before]}
\red{[lower F -> better performance makes sense for the same reason
larger W -> better performance: greater overlap]}
% At some later point % At some later point
\content{When looking at max iterations: Callback to diminishing \content{When looking at max iterations: Callback to diminishing
returns with growing window size: More iterations more beneficial returns with growing window size: More iterations more beneficial
@@ -1735,41 +1761,14 @@ than larger window (+1 for warm-start)}
\hfill% \hfill%
\begin{subfigure}{0.48\textwidth} \begin{subfigure}{0.48\textwidth}
\centering \centering
\hspace*{-3mm} \hspace*{-27mm}
\begin{tikzpicture} \begin{tikzpicture}
\begin{axis}[ \def\spyxmin{32}
width=8cm, \def\spyxmax{512}
height=6cm, \def\spyymin{5e-3}
ymode=log, \def\spyymax{5e-2}
% xmode=log,
legend style={
cells={anchor=west},
cells={align=left},
},
enlargelimits=false,
ymin=1e-3, ymax=1e-1,
grid=both,
legend pos = north east,
xtick={32,512,1024,2048,4096},
% xtick={0.001,0.0015,...,0.004},
xticklabels =
{$32$, $512$,$1{,}024$,,$2{,}048$,,$3{,}072$,,$4{,}096$},
xtick={32, 512, 1024, 1536, 2048, 2560, 3072, 3584, 4096},
xticklabel style={/pgf/number format/fixed},
xticklabel style={/pgf/number format/precision=4},
x tick label style={rotate=45, anchor=north east,
inner sep=1mm},
scaled x ticks=false,
xlabel={Number of BP iterations},
% yticklabels={\empty},
% ylabel={Per-round-LER},
extra description/.code={
\node[rotate=90, anchor=south]
at ([xshift=10mm]current axis.east)
{Warm s. (---), Cold s. (- - -)};
},
]
\newcommand{\plotcurvesb}{%
\foreach \F/\col/\mark in \foreach \F/\col/\mark in
{3/KITred/triangle,2/KITblue/diamond,1/KITorange/square} { {3/KITred/triangle,2/KITblue/diamond,1/KITorange/square} {
\edef\temp{\noexpand \edef\temp{\noexpand
@@ -1783,12 +1782,11 @@ than larger window (+1 for warm-start)}
} }
\temp \temp
} }
\foreach \F/\col/\mark in \foreach \F/\col/\mark in
{3/KITred/triangle*,2/KITblue/diamond*,1/KITorange/square*} { {3/KITred/triangle*,2/KITblue/diamond*,1/KITorange/square*} {
\edef\temp{\noexpand \edef\temp{\noexpand
\addplot+[mark=\mark, solid, mark \addplot+[mark=\mark, solid, mark
options={fill=\col}, \col] options={fill=\col}, \col, forget plot]
table[ table[
col sep=comma, x=max_iter, col sep=comma, x=max_iter,
y=LER_per_round, y=LER_per_round,
@@ -1796,10 +1794,72 @@ than larger window (+1 for warm-start)}
{res/sim/max_iter/WindowingSyndromeMinSumDecoder/p_0.0025/pass_soft_info_True/F_\F/W_5/LERs.csv}; {res/sim/max_iter/WindowingSyndromeMinSumDecoder/p_0.0025/pass_soft_info_True/F_\F/W_5/LERs.csv};
} }
\temp \temp
\addlegendentryexpanded{$F = \F$}
} }
}
\begin{axis}[
name=main,
width=8cm,
height=6cm,
ymode=log,
legend style={
cells={anchor=west},
cells={align=left},
},
enlargelimits=false,
ymin=1e-3, ymax=1e-1,
grid=both,
legend pos = north east,
xtick={32, 512, 1024, 1536, 2048, 2560, 3072, 3584, 4096},
xticklabels =
{$32$, $512$,$1{,}024$,,$2{,}048$,,$3{,}072$,,$4{,}096$},
xticklabel style={/pgf/number format/fixed},
xticklabel style={/pgf/number format/precision=4},
x tick label style={rotate=45, anchor=north east,
inner sep=1mm},
scaled x ticks=false,
xlabel={Number of BP iterations},
extra description/.code={
\node[rotate=90, anchor=south]
at ([xshift=10mm]current axis.east)
{Warm s. (---), Cold s. (- - -)};
},
]
\plotcurvesb
\addlegendimage{KITorange, mark=square*}
\addlegendentry{$F = 1$}
\addlegendimage{KITblue, mark=diamond*}
\addlegendentry{$F = 2$}
\addlegendimage{KITred, mark=triangle*}
\addlegendentry{$F = 3$}
\node[draw=black, fit={(axis cs:\spyxmin,\spyymin) (axis
cs:\spyxmax,\spyymax)}, inner sep=0pt, name=spybox] {};
\end{axis} \end{axis}
\begin{axis}[
name=inset,
at={(main.north west)},
anchor=south,
xshift=-6mm, yshift=6mm,
width=6.5cm, height=4.875cm,
ymode=log,
enlargelimits=false,
xmin=\spyxmin, xmax=\spyxmax,
ymin=\spyymin, ymax=\spyymax,
xtick={32,128,256,512},
yticklabels={\empty},
xticklabels={\empty},
grid=both,
axis background/.style={fill=white},
]
\plotcurvesb
\end{axis}
\draw (spybox.north east) -- (inset.south east);
\end{tikzpicture} \end{tikzpicture}
\vspace{-3.2mm} \vspace{-3.2mm}