text:
% This is a Heidelberg University LaTeX template, optimized for R Markdown.

% -------------------------------
% --- PREAMBLE ---
% -------------------------------
\documentclass[a4paper,11pt]{article}

\usepackage{amsmath,amssymb,amsfonts,amsthm}    % Typical maths resource packages
\usepackage{graphicx}                           % Packages to allow inclusion of graphics
\usepackage[authoryear]{natbib}                 % literature reference style
\usepackage[bf]{caption}
\usepackage{textcomp}                           % For single quotes
\usepackage{floatrow}                           % For image and table position
\usepackage{booktabs}                           % For tables
% \usepackage[colorlinks=true]{hyperref}
% \usepackage[bottom]{footmisc}
\usepackage[bottom, flushmargin]{footmisc}                   % For footnotes
\usepackage[citebordercolor={0 1 0}]{hyperref}                           % For creating hyperlinks in cross references
\usepackage{footnotebackref}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

$if(highlighting-macros)$
$highlighting-macros$
$endif$       % For being able to set `echo = TRUE` in code chunk options, and thus in-line representation of code

% -------------------------------
% --- some layout definitions ---
% -------------------------------

% define topline
\usepackage[automark]{scrlayer-scrpage}
\pagestyle{scrheadings}
\automark{section}
\clearscrheadings
\ohead{\headmark}

% define citation style
\bibliographystyle{ecta}

% define page size, margin size
\setlength{\headheight}{1.1\baselineskip}
\voffset=-2cm
\hoffset=-3cm
\textheight24cm
\textwidth15.5cm
\topmargin1cm
\oddsidemargin3cm
\evensidemargin3cm
\setcounter{secnumdepth}{3}
\setcounter{tocdepth}{3}
$if(space_between_paragraphs)$
  \usepackage[parfill]{parskip}
$endif$

% define line spacing = 1.5
\renewcommand{\baselinestretch}{1.5}

% define position of graphics
\floatsetup[figure]{capposition=bottom}
\floatsetup[table]{capposition=top}
\floatplacement{figure}{ht}
\floatplacement{table}{ht}

% save thesis parameters for later
\newcommand{\thesistype}{$type$}
\newcommand{\thesisauthor}{$author$}
\newcommand{\thesisdate}{$date$}

% define tightlist to work with newer versions of pandoc
\providecommand{\tightlist}{%
  \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}

% change spacing
\setlength {\parskip}{1em}

% Additional LaTeX parameters added in the YAML header of index.Rmd
$for(header-includes)$
  $header-includes$
$endfor$

$if(list-of-publications)$
\usepackage{bibentry}
$endif$
% --------------------------------------
% --------------------------------------
% --------------------------------------
% --- the structure the tex document ---
% ---  (this our recommendation) -------
% frontmatter:
%   - titlepage (mandatory),
%   - acknowledgement,
%   - abstract,
%   - table of contents (mandatory),
%   - list of abbreviations (not mandatory),
%   - list of figures (not mandatory),
%   - list of tables  (not mandatory) .
%
% body of the thesis (the structure of the thesis body is not mandatory, but the list of literature is mandatory):
%   - introduction,
%   - methods,
%   - data,
%   - results,
%   - conclusion,
%   - literature (mandatory),
%   - appendix (figures, tables).
%
% last page:
%   - declaration of authorship (mandatory).
% --------------------------------------
% --------------------------------------
% --------------------------------------

\begin{document}
% -------------------------------
% --- frontmatter: Title page ---
% -------------------------------
\thispagestyle{empty}
\begin{center}
  {\Large{Dissertation\\
    submitted to the\\
    Combined Faculty of Natural Sciences and Mathematics\\
    of the Ruperto Carola University Heidelberg, Germany\\
    for the degree of\\
    Doctor of Natural Sciences\\}} \vspace*{\fill}

  \Large{Presented by} \\\vspace{0.5cm}
  \Large{$authordegree$ $author$} \\
  \Large{born in $birthplace$} \\
  \Large{Oral examination: $examdate$}

\end{center}
\newpage\null\thispagestyle{empty}\newpage

% ------------------------------------
% --- frontmatter: Secound Page ------
% ------------------------------------

\pagebreak
\thispagestyle{empty}
\null
\begin{center}
\Large{$title$} \\
\vspace*{\fill}
\begin{tabular}{ c c }
Referees: & $referee1$ \\
          & $referee2$
\end{tabular}
\end{center}
\newpage\null\thispagestyle{empty}\newpage

% --------------------------------------------
% -------- Declaration of Authorship ---------
% --------------------------------------------

\newpage
\thispagestyle{empty}
\hypertarget{declaration-of-authorship}{%
\section*{Declaration of Authorship}\label{declaration-of-authorship}}

I hereby confirm that I have authored this \thesistype{} independently and
without the use of others sources than the ones indicated. I have not yet
presented this thesis or parts thereof to a university as part of an
examination or degree. This work was carried out in the $department$ at
the $institute$ $instituteshort$ in the group of $supervisor$.
\vspace{1cm}

Heidelberg, \thesisdate{}
\vspace{3cm}

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
\vspace{0.1cm}

\thesisauthor{}
\newpage
\vspace*{\fill}
$author$, \textit{$title$}, \textcopyright\,\thesisdate{}
\newpage

% --------------------------------------------
% --------------- Dedication -----------------
% --------------------------------------------
$if(dedication)$
\null
\vspace{5cm}
\begin{center}
\textit{$dedication$}
\end{center}
\newpage\null\thispagestyle{empty}\newpage
$endif$

% ------------------------------------
% --- frontmatter: Acknowledgement ---
% ------------------------------------

$if(acknowledge)$
\newpage
$acknowledge$
$endif$
\pagestyle{plain}
\pagenumbering{roman}   % define page number in roman style
\setcounter{page}{1}    % start page numbering
\newpage\null\thispagestyle{empty}\newpage

% --------------------------------------------
% ---------- List of publications ------------
% --------------------------------------------

$if(list-of-publications)$
$list-of-publications$
\newpage\null\thispagestyle{empty}\newpage
$endif$

% -------------------------------------
% --- frontmatter: Zusammendfassung ---
% -------------------------------------

$zusammenfassung$
\newpage\null\thispagestyle{empty}\newpage

% -----------------------------
% --- frontmatter: Abstract ---
% -----------------------------

$abstract$
\newpage\null\thispagestyle{empty}\newpage

% -----------------------------
% --- frontmatter: Contents ---
% -----------------------------
\newpage
\tableofcontents
\clearpage

% ----------------------------------------------------------
% --- frontmatter: List of Abbreviations (not mandatory) ---
% ----------------------------------------------------------
$if(abbreviations)$
\newpage
$abbreviations$
$endif$

% ----------------------------------------------------
% --- frontmatter: List of Figures (not mandatory) ---
% ----------------------------------------------------
$if(lof)$
\newpage
\listoffigures
\addcontentsline{toc}{section}{List of Figures}
$endif$

% ---------------------------------------------------
% --- frontmatter: List of Tables (not mandatory) ---
% ---------------------------------------------------
$if(lot)$
\newpage
\listoftables
\addcontentsline{toc}{section}{List of Tables}
$endif$

% -------------------------------
% --- main body of the thesis ---
% -------------------------------
\newpage
\pagestyle{plain}
\setcounter{page}{1}    % start page numbering anew
\pagenumbering{arabic}  % page numbers in arabic style

$body$

\end{document}

max_stars_repo_name: nicohuttmann/geegeedown

max_issues_repo_name: nicohuttmann/geegeedown

max_forks_repo_name: nicohuttmann/geegeedown


text:
\documentclass[review]{elsarticle}

\usepackage{amsmath}
\usepackage{lineno,hyperref}
\modulolinenumbers[5]

\journal{Project proposal}

%%%%%%%%%%%%%%%%%%%%%%%
%% Elsevier bibliography styles
%%%%%%%%%%%%%%%%%%%%%%%
%% To change the style, put a % in front of the second line of the current style and
%% remove the % from the second line of the style you would like to use.
%%%%%%%%%%%%%%%%%%%%%%%

%% Numbered
%\bibliographystyle{model1-num-names}

%% Numbered without titles
%\bibliographystyle{model1a-num-names}

%% Harvard
%\bibliographystyle{model2-names.bst}\biboptions{authoryear}

%% Vancouver numbered
%\usepackage{numcompress}\bibliographystyle{model3-num-names}

%% Vancouver name/year
%\usepackage{numcompress}\bibliographystyle{model4-names}\biboptions{authoryear}

%% APA style
%\bibliographystyle{model5-names}\biboptions{authoryear}

%% AMA style
%\usepackage{numcompress}\bibliographystyle{model6-num-names}

%% `Elsevier LaTeX' style
\bibliographystyle{elsarticle-num}
%%%%%%%%%%%%%%%%%%%%%%%

\begin{document}

\begin{frontmatter}

\title{{\bf - Project proposal -}\\Automated detection of fiber/matrix interface cracks in cross-ply laminates}
%\tnotetext[mytitlenote]{Fully documented templates are available in the elsarticle package on \href{http://www.ctan.org/tex-archive/macros/latex/contrib/elsarticle}{CTAN}.}

%% Group authors per affiliation:
%\author{Luca Di Stasio\fnref{myfootnote}}
%\address{Radarweg 29, Amsterdam}
%\fntext[myfootnote]{Since 1880.}

%% or include affiliations in footnotes:
\author{Luca Di Stasio}
\author{Janis Varna}
%\ead[url]{www.elsevier.com}

%\author[mysecondaryaddress]{Global Customer Service\corref{mycorrespondingauthor}}
%\cortext[mycorrespondingauthor]{Corresponding author}
%\ead{support@elsevier.com}

%\address[nancy]{Universit\'e de Lorraine, EEIGM, IJL, 6 Rue Bastien Lepage, F-54010 Nancy, France}
%\address[lulea]{Lule\aa\ University of Technology, University Campus, SE-97187 Lule\aa, Sweden}

%\begin{abstract}

%\end{abstract}

%\begin{keyword}
%\texttt{elsarticle.cls}\sep \LaTeX\sep Elsevier \sep template
%\MSC[2010] 00-01\sep  99-00
%\end{keyword}

\end{frontmatter}

\linenumbers

\section{Introduction}

Detection and geometric characterization of fiber/matrix interface cracks (or debonds) in carbon and glass fiber reinforced polymers is important to develop a correct understanding of the mechanisms underpinning the onset and propagation of transverse cracks at the microscopic level. Given the many variables at play, a statistical treatment of the problem is unavoidable, which requires large amount of data to provide reliable results. However, characterization of debonds can today be performed on an optical microscope only in a manual, where the operator identifies the debonds and performs the necessary measurements. Automation of these tasks would thus translate into significant gain in terms of a reduced tests' time as well as in an increased number of measurements, and thus more reliable statistics. The development of an algorithm for automatic detection of debonds represents the first towards automating the characterization of the fiber/matrix interface crack.

\section{Objectives}

Develop an algorithm that, given an image of a ply at $90^{\circ}$, is capable of

\begin{enumerate}
\item identify each debond, and for each one
\item measure the radius of the fiber,
\item measure the angular size of the debond,
\item measure the position of the crack tips,
\item measure starting position and direction of kinked cracks,
\item measure angular position and distance of the closest fiber.
\end{enumerate}

\section{Materials}

Images recorded with the optical microscope of glass and carbon fiber reinforced cross-ply laminates after being loaded in transverse strain.

\section{Methods}

OpenCV in conjunction with C/C++ or Python. Matlab with its Image Processing and Computer Vision Toolbox is also an option.

\section{Expected outcomes}

\section{Audience}

1-2 students for Project Course or Master thesis.

\end{document}

ext: tex

max_stars_repo_name: LucaDiStasio/thinPlyMechanics

max_issues_repo_name: LucaDiStasio/thinPlyMechanics

max_forks_repo_name: LucaDiStasio/thinPlyMechanics


text:
% \documentclass{article}
% \usepackage{graphicx}
% \usepackage[a4paper, margin=0.5in]{geometry}
% \usepackage{subcaption}
% \usepackage{printlen}
% \uselengthunit{cm}

% \newlength\imageheight
% \newlength\imagewidth

% \begin{document}

\section{MSP\_A TX2 MSP\_C RX17 Minipod Loopback}\label{sec:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}

\begin{figure}[h] % "[t!]" placement specifier just for this example
\begin{subfigure}{0.33\textwidth}
\hyperref[sec:MSPAFPGATX200RX1700MSPCFPGA9.6-optimized]{\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-00--RX17-00-MSP_C_FPGA.pdf}}
\end{subfigure}\hspace*{\fill}
\begin{subfigure}{0.33\textwidth}
\hyperref[sec:MSPAFPGATX201RX1701MSPCFPGA9.6-optimized]{\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-01--RX17-01-MSP_C_FPGA.pdf}}
\end{subfigure}\hspace*{\fill}
\begin{subfigure}{0.33\textwidth}
\hyperref[sec:MSPAFPGATX202RX1702MSPCFPGA9.6-optimized]{\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-02--RX17-02-MSP_C_FPGA.pdf}}
\end{subfigure}

\begin{subfigure}{0.33\textwidth}
\hyperref[sec:MSPAFPGATX203RX1703MSPCFPGA9.6-optimized]{\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-03--RX17-03-MSP_C_FPGA.pdf}}
\end{subfigure}\hspace*{\fill}
\begin{subfigure}{0.33\textwidth}
\hyperref[sec:MSPAFPGATX204RX1704MSPCFPGA9.6-optimized]{\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-04--RX17-04-MSP_C_FPGA.pdf}}
\end{subfigure}\hspace*{\fill}
\begin{subfigure}{0.33\textwidth}
\hyperref[sec:MSPAFPGATX205RX1705MSPCFPGA9.6-optimized]{\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-05--RX17-05-MSP_C_FPGA.pdf}}
\end{subfigure}

\begin{subfigure}{0.33\textwidth}
\hyperref[sec:MSPAFPGATX206RX1706MSPCFPGA9.6-optimized]{\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-06--RX17-06-MSP_C_FPGA.pdf}}
\end{subfigure}\hspace*{\fill}
\begin{subfigure}{0.33\textwidth}
\hyperref[sec:MSPAFPGATX207RX1707MSPCFPGA9.6-optimized]{\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-07--RX17-07-MSP_C_FPGA.pdf}}
\end{subfigure}\hspace*{\fill}
\begin{subfigure}{0.33\textwidth}
\hyperref[sec:MSPAFPGATX208RX1708MSPCFPGA9.6-optimized]{\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-08--RX17-08-MSP_C_FPGA.pdf}}
\end{subfigure}

\begin{subfigure}{0.33\textwidth}
\hyperref[sec:MSPAFPGATX209RX1709MSPCFPGA9.6-optimized]{\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-09--RX17-09-MSP_C_FPGA.pdf}}
\end{subfigure}\hspace*{\fill}
\begin{subfigure}{0.33\textwidth}
\hyperref[sec:MSPAFPGATX210RX1710MSPCFPGA9.6-optimized]{\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-10--RX17-10-MSP_C_FPGA.pdf}}
\end{subfigure}\hspace*{\fill}
\begin{subfigure}{0.33\textwidth}
\hyperref[sec:MSPAFPGATX211RX1711MSPCFPGA9.6-optimized]{\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-11--RX17-11-MSP_C_FPGA.pdf}}
\end{subfigure}

\caption{MSP\_A TX2 MSP\_C RX17 Minipod Loopback} \label{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}
\end{figure}

A cross-reference to Figure~\ref{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}.
Sibling eye diagrams: \hyperref[sec:MSPATX2MSPCRX17MinipodLoopback6.4-optimized]{6.4-optimized}, \hyperref[sec:MSPATX2MSPCRX17MinipodLoopback12.8-optimized]{12.8-optimized}. \\
Next summary Figure~\ref{fig:MSPCTX3MSPARX9MinipodLoopback9.6-optimized}.
\clearpage
% \end{document}
\subsection{MSP\_A\_FPGA-TX2-00--RX17-00-MSP\_C\_FPGA}\label{sec:MSPAFPGATX200RX1700MSPCFPGA9.6-optimized}

% Please add the following required packages to your document preamble:
% \usepackage{booktabs}
\begin{table}[h]
\centering
\caption{MSP\_A\_FPGA-TX2-00--RX17-00-MSP\_C\_FPGA}
\label{tab:MSPAFPGATX200RX1700MSPCFPGA9.6-optimized}
\begin{tabular}{@{}|l|l|l|l|l|l|@{}}
\toprule
\textbf{SW Version}                & \textbf{GT Type}   & \multicolumn{2}{l|}{\textbf{Date and Time Started}}            & \multicolumn{2}{l|}{\textbf{Date and Time Ended}}        \\ \midrule
2017.2                       & UltraScale GTH          & \multicolumn{2}{l|}{2018-Jan-24 20:58:55}                   & \multicolumn{2}{l|}{2018-Jan-24 20:59:25}               \\ \midrule
\textbf{Reset RX}                  & \textbf{OA} & \textbf{HO}   & \textbf{HO (\%)} & \textbf{VO} & \textbf{VO (\%)} \\ \midrule
true & 9626        & 44          & 67.69\%        & 255        & 100.00\%       \\ \midrule
\textbf{Dwell Type}                & \textbf{Dwell BER} & \textbf{Horizontal Increment} & \textbf{Vertical Increment}    & \multicolumn{2}{l|}{\textbf{Misc Info}}                  \\ \midrule
BER                            & 1e-7        & 1        & 1           & \multicolumn{2}{l|}{ELF Version: 0xC002 SVN: 0}                         \\ \bottomrule
\end{tabular}
\end{table}

\begin{figure}[h]
\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-00--RX17-00-MSP_C_FPGA.pdf}
\caption{MSP\_A\_FPGA-TX2-00--RX17-00-MSP\_C\_FPGA} \label{fig:MSPAFPGATX200RX1700MSPCFPGA9.6-optimized}
\end{figure}

Call back to summary Figure~\ref{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}.
Sibling eye diagrams: \hyperref[sec:MSPAFPGATX200RX1700MSPCFPGA6.4-optimized]{6.4-optimized}, \hyperref[sec:MSPAFPGATX200RX1700MSPCFPGA12.8-optimized]{12.8-optimized}.

\clearpage
\newpage

\subsection{MSP\_A\_FPGA-TX2-01--RX17-01-MSP\_C\_FPGA}\label{sec:MSPAFPGATX201RX1701MSPCFPGA9.6-optimized}

% Please add the following required packages to your document preamble:
% \usepackage{booktabs}
\begin{table}[h]
\centering
\caption{MSP\_A\_FPGA-TX2-01--RX17-01-MSP\_C\_FPGA}
\label{tab:MSPAFPGATX201RX1701MSPCFPGA9.6-optimized}
\begin{tabular}{@{}|l|l|l|l|l|l|@{}}
\toprule
\textbf{SW Version}                & \textbf{GT Type}   & \multicolumn{2}{l|}{\textbf{Date and Time Started}}            & \multicolumn{2}{l|}{\textbf{Date and Time Ended}}        \\ \midrule
2017.2                       & UltraScale GTH          & \multicolumn{2}{l|}{2018-Jan-24 20:57:53}                   & \multicolumn{2}{l|}{2018-Jan-24 20:58:25}               \\ \midrule
\textbf{Reset RX}                  & \textbf{OA} & \textbf{HO}   & \textbf{HO (\%)} & \textbf{VO} & \textbf{VO (\%)} \\ \midrule
true & 9471        & 44          & 67.69\%        & 255        & 100.00\%       \\ \midrule
\textbf{Dwell Type}                & \textbf{Dwell BER} & \textbf{Horizontal Increment} & \textbf{Vertical Increment}    & \multicolumn{2}{l|}{\textbf{Misc Info}}                  \\ \midrule
BER                            & 1e-7        & 1        & 1           & \multicolumn{2}{l|}{ELF Version: 0xC002 SVN: 0}                         \\ \bottomrule
\end{tabular}
\end{table}

\begin{figure}[h]
\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-01--RX17-01-MSP_C_FPGA.pdf}
\caption{MSP\_A\_FPGA-TX2-01--RX17-01-MSP\_C\_FPGA} \label{fig:MSPAFPGATX201RX1701MSPCFPGA9.6-optimized}
\end{figure}

Call back to summary Figure~\ref{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}.
Sibling eye diagrams: \hyperref[sec:MSPAFPGATX201RX1701MSPCFPGA6.4-optimized]{6.4-optimized}, \hyperref[sec:MSPAFPGATX201RX1701MSPCFPGA12.8-optimized]{12.8-optimized}.

\clearpage
\newpage

\subsection{MSP\_A\_FPGA-TX2-02--RX17-02-MSP\_C\_FPGA}\label{sec:MSPAFPGATX202RX1702MSPCFPGA9.6-optimized}

% Please add the following required packages to your document preamble:
% \usepackage{booktabs}
\begin{table}[h]
\centering
\caption{MSP\_A\_FPGA-TX2-02--RX17-02-MSP\_C\_FPGA}
\label{tab:MSPAFPGATX202RX1702MSPCFPGA9.6-optimized}
\begin{tabular}{@{}|l|l|l|l|l|l|@{}}
\toprule
\textbf{SW Version}                & \textbf{GT Type}   & \multicolumn{2}{l|}{\textbf{Date and Time Started}}            & \multicolumn{2}{l|}{\textbf{Date and Time Ended}}        \\ \midrule
2017.2                       & UltraScale GTH          & \multicolumn{2}{l|}{2018-Jan-24 21:00:24}                   & \multicolumn{2}{l|}{2018-Jan-24 21:00:53}               \\ \midrule
\textbf{Reset RX}                  & \textbf{OA} & \textbf{HO}   & \textbf{HO (\%)} & \textbf{VO} & \textbf{VO (\%)} \\ \midrule
true & 9877        & 44          & 67.69\%        & 255        & 100.00\%       \\ \midrule
\textbf{Dwell Type}                & \textbf{Dwell BER} & \textbf{Horizontal Increment} & \textbf{Vertical Increment}    & \multicolumn{2}{l|}{\textbf{Misc Info}}                  \\ \midrule
BER                            & 1e-7        & 1        & 1           & \multicolumn{2}{l|}{ELF Version: 0xC002 SVN: 0}                         \\ \bottomrule
\end{tabular}
\end{table}

\begin{figure}[h]
\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-02--RX17-02-MSP_C_FPGA.pdf}
\caption{MSP\_A\_FPGA-TX2-02--RX17-02-MSP\_C\_FPGA} \label{fig:MSPAFPGATX202RX1702MSPCFPGA9.6-optimized}
\end{figure}

Call back to summary Figure~\ref{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}.
Sibling eye diagrams: \hyperref[sec:MSPAFPGATX202RX1702MSPCFPGA6.4-optimized]{6.4-optimized}, \hyperref[sec:MSPAFPGATX202RX1702MSPCFPGA12.8-optimized]{12.8-optimized}.

\clearpage
\newpage

\subsection{MSP\_A\_FPGA-TX2-03--RX17-03-MSP\_C\_FPGA}\label{sec:MSPAFPGATX203RX1703MSPCFPGA9.6-optimized}

% Please add the following required packages to your document preamble:
% \usepackage{booktabs}
\begin{table}[h]
\centering
\caption{MSP\_A\_FPGA-TX2-03--RX17-03-MSP\_C\_FPGA}
\label{tab:MSPAFPGATX203RX1703MSPCFPGA9.6-optimized}
\begin{tabular}{@{}|l|l|l|l|l|l|@{}}
\toprule
\textbf{SW Version}                & \textbf{GT Type}   & \multicolumn{2}{l|}{\textbf{Date and Time Started}}            & \multicolumn{2}{l|}{\textbf{Date and Time Ended}}        \\ \midrule
2017.2                       & UltraScale GTH          & \multicolumn{2}{l|}{2018-Jan-24 20:57:20}                   & \multicolumn{2}{l|}{2018-Jan-24 20:57:53}               \\ \midrule
\textbf{Reset RX}                  & \textbf{OA} & \textbf{HO}   & \textbf{HO (\%)} & \textbf{VO} & \textbf{VO (\%)} \\ \midrule
true & 9841        & 44          & 67.69\%        & 255        & 100.00\%       \\ \midrule
\textbf{Dwell Type}                & \textbf{Dwell BER} & \textbf{Horizontal Increment} & \textbf{Vertical Increment}    & \multicolumn{2}{l|}{\textbf{Misc Info}}                  \\ \midrule
BER                            & 1e-7        & 1        & 1           & \multicolumn{2}{l|}{ELF Version: 0xC002 SVN: 0}                         \\ \bottomrule
\end{tabular}
\end{table}

\begin{figure}[h]
\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-03--RX17-03-MSP_C_FPGA.pdf}
\caption{MSP\_A\_FPGA-TX2-03--RX17-03-MSP\_C\_FPGA} \label{fig:MSPAFPGATX203RX1703MSPCFPGA9.6-optimized}
\end{figure}

Call back to summary Figure~\ref{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}.
Sibling eye diagrams: \hyperref[sec:MSPAFPGATX203RX1703MSPCFPGA6.4-optimized]{6.4-optimized}, \hyperref[sec:MSPAFPGATX203RX1703MSPCFPGA12.8-optimized]{12.8-optimized}.

\clearpage
\newpage

\subsection{MSP\_A\_FPGA-TX2-04--RX17-04-MSP\_C\_FPGA}\label{sec:MSPAFPGATX204RX1704MSPCFPGA9.6-optimized}

% Please add the following required packages to your document preamble:
% \usepackage{booktabs}
\begin{table}[h]
\centering
\caption{MSP\_A\_FPGA-TX2-04--RX17-04-MSP\_C\_FPGA}
\label{tab:MSPAFPGATX204RX1704MSPCFPGA9.6-optimized}
\begin{tabular}{@{}|l|l|l|l|l|l|@{}}
\toprule
\textbf{SW Version}                & \textbf{GT Type}   & \multicolumn{2}{l|}{\textbf{Date and Time Started}}            & \multicolumn{2}{l|}{\textbf{Date and Time Ended}}        \\ \midrule
2017.2                       & UltraScale GTH          & \multicolumn{2}{l|}{2018-Jan-24 21:01:56}                   & \multicolumn{2}{l|}{2018-Jan-24 21:02:26}               \\ \midrule
\textbf{Reset RX}                  & \textbf{OA} & \textbf{HO}   & \textbf{HO (\%)} & \textbf{VO} & \textbf{VO (\%)} \\ \midrule
true & 9629        & 44          & 67.69\%        & 255        & 100.00\%       \\ \midrule
\textbf{Dwell Type}                & \textbf{Dwell BER} & \textbf{Horizontal Increment} & \textbf{Vertical Increment}    & \multicolumn{2}{l|}{\textbf{Misc Info}}                  \\ \midrule
BER                            & 1e-7        & 1        & 1           & \multicolumn{2}{l|}{ELF Version: 0xC002 SVN: 0}                         \\ \bottomrule
\end{tabular}
\end{table}

\begin{figure}[h]
\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-04--RX17-04-MSP_C_FPGA.pdf}
\caption{MSP\_A\_FPGA-TX2-04--RX17-04-MSP\_C\_FPGA} \label{fig:MSPAFPGATX204RX1704MSPCFPGA9.6-optimized}
\end{figure}

Call back to summary Figure~\ref{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}.
Sibling eye diagrams: \hyperref[sec:MSPAFPGATX204RX1704MSPCFPGA6.4-optimized]{6.4-optimized}, \hyperref[sec:MSPAFPGATX204RX1704MSPCFPGA12.8-optimized]{12.8-optimized}.

\clearpage
\newpage

\subsection{MSP\_A\_FPGA-TX2-05--RX17-05-MSP\_C\_FPGA}\label{sec:MSPAFPGATX205RX1705MSPCFPGA9.6-optimized}

% Please add the following required packages to your document preamble:
% \usepackage{booktabs}
\begin{table}[h]
\centering
\caption{MSP\_A\_FPGA-TX2-05--RX17-05-MSP\_C\_FPGA}
\label{tab:MSPAFPGATX205RX1705MSPCFPGA9.6-optimized}
\begin{tabular}{@{}|l|l|l|l|l|l|@{}}
\toprule
\textbf{SW Version}                & \textbf{GT Type}   & \multicolumn{2}{l|}{\textbf{Date and Time Started}}            & \multicolumn{2}{l|}{\textbf{Date and Time Ended}}        \\ \midrule
2017.2                       & UltraScale GTH          & \multicolumn{2}{l|}{2018-Jan-24 20:58:25}                   & \multicolumn{2}{l|}{2018-Jan-24 20:58:55}               \\ \midrule
\textbf{Reset RX}                  & \textbf{OA} & \textbf{HO}   & \textbf{HO (\%)} & \textbf{VO} & \textbf{VO (\%)} \\ \midrule
true & 8927        & 42          & 64.62\%        & 255        & 100.00\%       \\ \midrule
\textbf{Dwell Type}                & \textbf{Dwell BER} & \textbf{Horizontal Increment} & \textbf{Vertical Increment}    & \multicolumn{2}{l|}{\textbf{Misc Info}}                  \\ \midrule
BER                            & 1e-7        & 1        & 1           & \multicolumn{2}{l|}{ELF Version: 0xC002 SVN: 0}                         \\ \bottomrule
\end{tabular}
\end{table}

\begin{figure}[h]
\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-05--RX17-05-MSP_C_FPGA.pdf}
\caption{MSP\_A\_FPGA-TX2-05--RX17-05-MSP\_C\_FPGA} \label{fig:MSPAFPGATX205RX1705MSPCFPGA9.6-optimized}
\end{figure}

Call back to summary Figure~\ref{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}.
Sibling eye diagrams: \hyperref[sec:MSPAFPGATX205RX1705MSPCFPGA6.4-optimized]{6.4-optimized}, \hyperref[sec:MSPAFPGATX205RX1705MSPCFPGA12.8-optimized]{12.8-optimized}.

\clearpage
\newpage

\subsection{MSP\_A\_FPGA-TX2-06--RX17-06-MSP\_C\_FPGA}\label{sec:MSPAFPGATX206RX1706MSPCFPGA9.6-optimized}

% Please add the following required packages to your document preamble:
% \usepackage{booktabs}
\begin{table}[h]
\centering
\caption{MSP\_A\_FPGA-TX2-06--RX17-06-MSP\_C\_FPGA}
\label{tab:MSPAFPGATX206RX1706MSPCFPGA9.6-optimized}
\begin{tabular}{@{}|l|l|l|l|l|l|@{}}
\toprule
\textbf{SW Version}                & \textbf{GT Type}   & \multicolumn{2}{l|}{\textbf{Date and Time Started}}            & \multicolumn{2}{l|}{\textbf{Date and Time Ended}}        \\ \midrule
2017.2                       & UltraScale GTH          & \multicolumn{2}{l|}{2018-Jan-24 21:02:56}                   & \multicolumn{2}{l|}{2018-Jan-24 21:03:26}               \\ \midrule
\textbf{Reset RX}                  & \textbf{OA} & \textbf{HO}   & \textbf{HO (\%)} & \textbf{VO} & \textbf{VO (\%)} \\ \midrule
true & 10512        & 47          & 72.31\%        & 255        & 100.00\%       \\ \midrule
\textbf{Dwell Type}                & \textbf{Dwell BER} & \textbf{Horizontal Increment} & \textbf{Vertical Increment}    & \multicolumn{2}{l|}{\textbf{Misc Info}}                  \\ \midrule
BER                            & 1e-7        & 1        & 1           & \multicolumn{2}{l|}{ELF Version: 0xC002 SVN: 0}                         \\ \bottomrule
\end{tabular}
\end{table}

\begin{figure}[h]
\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-06--RX17-06-MSP_C_FPGA.pdf}
\caption{MSP\_A\_FPGA-TX2-06--RX17-06-MSP\_C\_FPGA} \label{fig:MSPAFPGATX206RX1706MSPCFPGA9.6-optimized}
\end{figure}

Call back to summary Figure~\ref{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}.
Sibling eye diagrams: \hyperref[sec:MSPAFPGATX206RX1706MSPCFPGA6.4-optimized]{6.4-optimized}, \hyperref[sec:MSPAFPGATX206RX1706MSPCFPGA12.8-optimized]{12.8-optimized}.

\clearpage
\newpage

\subsection{MSP\_A\_FPGA-TX2-07--RX17-07-MSP\_C\_FPGA}\label{sec:MSPAFPGATX207RX1707MSPCFPGA9.6-optimized}

% Please add the following required packages to your document preamble:
% \usepackage{booktabs}
\begin{table}[h]
\centering
\caption{MSP\_A\_FPGA-TX2-07--RX17-07-MSP\_C\_FPGA}
\label{tab:MSPAFPGATX207RX1707MSPCFPGA9.6-optimized}
\begin{tabular}{@{}|l|l|l|l|l|l|@{}}
\toprule
\textbf{SW Version}                & \textbf{GT Type}   & \multicolumn{2}{l|}{\textbf{Date and Time Started}}            & \multicolumn{2}{l|}{\textbf{Date and Time Ended}}        \\ \midrule
2017.2                       & UltraScale GTH          & \multicolumn{2}{l|}{2018-Jan-24 20:59:25}                   & \multicolumn{2}{l|}{2018-Jan-24 20:59:54}               \\ \midrule
\textbf{Reset RX}                  & \textbf{OA} & \textbf{HO}   & \textbf{HO (\%)} & \textbf{VO} & \textbf{VO (\%)} \\ \midrule
true & 9573        & 43          & 66.15\%        & 255        & 100.00\%       \\ \midrule
\textbf{Dwell Type}                & \textbf{Dwell BER} & \textbf{Horizontal Increment} & \textbf{Vertical Increment}    & \multicolumn{2}{l|}{\textbf{Misc Info}}                  \\ \midrule
BER                            & 1e-7        & 1        & 1           & \multicolumn{2}{l|}{ELF Version: 0xC002 SVN: 0}                         \\ \bottomrule
\end{tabular}
\end{table}

\begin{figure}[h]
\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-07--RX17-07-MSP_C_FPGA.pdf}
\caption{MSP\_A\_FPGA-TX2-07--RX17-07-MSP\_C\_FPGA} \label{fig:MSPAFPGATX207RX1707MSPCFPGA9.6-optimized}
\end{figure}

Call back to summary Figure~\ref{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}.
Sibling eye diagrams: \hyperref[sec:MSPAFPGATX207RX1707MSPCFPGA6.4-optimized]{6.4-optimized}, \hyperref[sec:MSPAFPGATX207RX1707MSPCFPGA12.8-optimized]{12.8-optimized}.

\clearpage
\newpage

\subsection{MSP\_A\_FPGA-TX2-08--RX17-08-MSP\_C\_FPGA}\label{sec:MSPAFPGATX208RX1708MSPCFPGA9.6-optimized}

% Please add the following required packages to your document preamble:
% \usepackage{booktabs}
\begin{table}[h]
\centering
\caption{MSP\_A\_FPGA-TX2-08--RX17-08-MSP\_C\_FPGA}
\label{tab:MSPAFPGATX208RX1708MSPCFPGA9.6-optimized}
\begin{tabular}{@{}|l|l|l|l|l|l|@{}}
\toprule
\textbf{SW Version}                & \textbf{GT Type}   & \multicolumn{2}{l|}{\textbf{Date and Time Started}}            & \multicolumn{2}{l|}{\textbf{Date and Time Ended}}        \\ \midrule
2017.2                       & UltraScale GTH          & \multicolumn{2}{l|}{2018-Jan-24 21:02:26}                   & \multicolumn{2}{l|}{2018-Jan-24 21:02:56}               \\ \midrule
\textbf{Reset RX}                  & \textbf{OA} & \textbf{HO}   & \textbf{HO (\%)} & \textbf{VO} & \textbf{VO (\%)} \\ \midrule
true & 10289        & 44          & 67.69\%        & 255        & 100.00\%       \\ \midrule
\textbf{Dwell Type}                & \textbf{Dwell BER} & \textbf{Horizontal Increment} & \textbf{Vertical Increment}    & \multicolumn{2}{l|}{\textbf{Misc Info}}                  \\ \midrule
BER                            & 1e-7        & 1        & 1           & \multicolumn{2}{l|}{ELF Version: 0xC002 SVN: 0}                         \\ \bottomrule
\end{tabular}
\end{table}

\begin{figure}[h]
\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-08--RX17-08-MSP_C_FPGA.pdf}
\caption{MSP\_A\_FPGA-TX2-08--RX17-08-MSP\_C\_FPGA} \label{fig:MSPAFPGATX208RX1708MSPCFPGA9.6-optimized}
\end{figure}

Call back to summary Figure~\ref{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}.
Sibling eye diagrams: \hyperref[sec:MSPAFPGATX208RX1708MSPCFPGA6.4-optimized]{6.4-optimized}, \hyperref[sec:MSPAFPGATX208RX1708MSPCFPGA12.8-optimized]{12.8-optimized}.

\clearpage
\newpage

\subsection{MSP\_A\_FPGA-TX2-09--RX17-09-MSP\_C\_FPGA}\label{sec:MSPAFPGATX209RX1709MSPCFPGA9.6-optimized}

% Please add the following required packages to your document preamble:
% \usepackage{booktabs}
\begin{table}[h]
\centering
\caption{MSP\_A\_FPGA-TX2-09--RX17-09-MSP\_C\_FPGA}
\label{tab:MSPAFPGATX209RX1709MSPCFPGA9.6-optimized}
\begin{tabular}{@{}|l|l|l|l|l|l|@{}}
\toprule
\textbf{SW Version}                & \textbf{GT Type}   & \multicolumn{2}{l|}{\textbf{Date and Time Started}}            & \multicolumn{2}{l|}{\textbf{Date and Time Ended}}        \\ \midrule
2017.2                       & UltraScale GTH          & \multicolumn{2}{l|}{2018-Jan-24 20:59:54}                   & \multicolumn{2}{l|}{2018-Jan-24 21:00:24}               \\ \midrule
\textbf{Reset RX}                  & \textbf{OA} & \textbf{HO}   & \textbf{HO (\%)} & \textbf{VO} & \textbf{VO (\%)} \\ \midrule
true & 10532        & 47          & 72.31\%        & 255        & 100.00\%       \\ \midrule
\textbf{Dwell Type}                & \textbf{Dwell BER} & \textbf{Horizontal Increment} & \textbf{Vertical Increment}    & \multicolumn{2}{l|}{\textbf{Misc Info}}                  \\ \midrule
BER                            & 1e-7        & 1        & 1           & \multicolumn{2}{l|}{ELF Version: 0xC002 SVN: 0}                         \\ \bottomrule
\end{tabular}
\end{table}

\begin{figure}[h]
\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-09--RX17-09-MSP_C_FPGA.pdf}
\caption{MSP\_A\_FPGA-TX2-09--RX17-09-MSP\_C\_FPGA} \label{fig:MSPAFPGATX209RX1709MSPCFPGA9.6-optimized}
\end{figure}

Call back to summary Figure~\ref{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}.
Sibling eye diagrams: \hyperref[sec:MSPAFPGATX209RX1709MSPCFPGA6.4-optimized]{6.4-optimized}, \hyperref[sec:MSPAFPGATX209RX1709MSPCFPGA12.8-optimized]{12.8-optimized}.

\clearpage
\newpage

\subsection{MSP\_A\_FPGA-TX2-10--RX17-10-MSP\_C\_FPGA}\label{sec:MSPAFPGATX210RX1710MSPCFPGA9.6-optimized}

% Please add the following required packages to your document preamble:
% \usepackage{booktabs}
\begin{table}[h]
\centering
\caption{MSP\_A\_FPGA-TX2-10--RX17-10-MSP\_C\_FPGA}
\label{tab:MSPAFPGATX210RX1710MSPCFPGA9.6-optimized}
\begin{tabular}{@{}|l|l|l|l|l|l|@{}}
\toprule
\textbf{SW Version}                & \textbf{GT Type}   & \multicolumn{2}{l|}{\textbf{Date and Time Started}}            & \multicolumn{2}{l|}{\textbf{Date and Time Ended}}        \\ \midrule
2017.2                       & UltraScale GTH          & \multicolumn{2}{l|}{2018-Jan-24 21:01:26}                   & \multicolumn{2}{l|}{2018-Jan-24 21:01:56}               \\ \midrule
\textbf{Reset RX}                  & \textbf{OA} & \textbf{HO}   & \textbf{HO (\%)} & \textbf{VO} & \textbf{VO (\%)} \\ \midrule
true & 10263        & 46          & 70.77\%        & 255        & 100.00\%       \\ \midrule
\textbf{Dwell Type}                & \textbf{Dwell BER} & \textbf{Horizontal Increment} & \textbf{Vertical Increment}    & \multicolumn{2}{l|}{\textbf{Misc Info}}                  \\ \midrule
BER                            & 1e-7        & 1        & 1           & \multicolumn{2}{l|}{ELF Version: 0xC002 SVN: 0}                         \\ \bottomrule
\end{tabular}
\end{table}

\begin{figure}[h]
\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-10--RX17-10-MSP_C_FPGA.pdf}
\caption{MSP\_A\_FPGA-TX2-10--RX17-10-MSP\_C\_FPGA} \label{fig:MSPAFPGATX210RX1710MSPCFPGA9.6-optimized}
\end{figure}

Call back to summary Figure~\ref{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}.
Sibling eye diagrams: \hyperref[sec:MSPAFPGATX210RX1710MSPCFPGA6.4-optimized]{6.4-optimized}, \hyperref[sec:MSPAFPGATX210RX1710MSPCFPGA12.8-optimized]{12.8-optimized}.

\clearpage
\newpage

\subsection{MSP\_A\_FPGA-TX2-11--RX17-11-MSP\_C\_FPGA}\label{sec:MSPAFPGATX211RX1711MSPCFPGA9.6-optimized}

% Please add the following required packages to your document preamble:
% \usepackage{booktabs}
\begin{table}[h]
\centering
\caption{MSP\_A\_FPGA-TX2-11--RX17-11-MSP\_C\_FPGA}
\label{tab:MSPAFPGATX211RX1711MSPCFPGA9.6-optimized}
\begin{tabular}{@{}|l|l|l|l|l|l|@{}}
\toprule
\textbf{SW Version}                & \textbf{GT Type}   & \multicolumn{2}{l|}{\textbf{Date and Time Started}}            & \multicolumn{2}{l|}{\textbf{Date and Time Ended}}        \\ \midrule
2017.2                       & UltraScale GTH          & \multicolumn{2}{l|}{2018-Jan-24 21:00:54}                   & \multicolumn{2}{l|}{2018-Jan-24 21:01:26}               \\ \midrule
\textbf{Reset RX}                  & \textbf{OA} & \textbf{HO}   & \textbf{HO (\%)} & \textbf{VO} & \textbf{VO (\%)} \\ \midrule
true & 9883        & 45          & 69.23\%        & 255        & 100.00\%       \\ \midrule
\textbf{Dwell Type}                & \textbf{Dwell BER} & \textbf{Horizontal Increment} & \textbf{Vertical Increment}    & \multicolumn{2}{l|}{\textbf{Misc Info}}                  \\ \midrule
BER                            & 1e-7        & 1        & 1           & \multicolumn{2}{l|}{ELF Version: 0xC002 SVN: 0}                         \\ \bottomrule
\end{tabular}
\end{table}

\begin{figure}[h]
\includegraphicsmaybe{../scans/pdf/9.6-optimized/MSP_A_FPGA-TX2-11--RX17-11-MSP_C_FPGA.pdf}
\caption{MSP\_A\_FPGA-TX2-11--RX17-11-MSP\_C\_FPGA} \label{fig:MSPAFPGATX211RX1711MSPCFPGA9.6-optimized}
\end{figure}

Call back to summary Figure~\ref{fig:MSPATX2MSPCRX17MinipodLoopback9.6-optimized}.
Sibling eye diagrams: \hyperref[sec:MSPAFPGATX211RX1711MSPCFPGA6.4-optimized]{6.4-optimized}, \hyperref[sec:MSPAFPGATX211RX1711MSPCFPGA12.8-optimized]{12.8-optimized}.

\clearpage
\newpage

max_stars_repo_name: mvsoliveira/IBERTpy

max_issues_repo_name: mvsoliveira/IBERTpy

max_forks_repo_name: mvsoliveira/IBERTpy


text:
%% bare_adv.tex
%% V1.4
%% 2012/12/27
%% by Michael Shell
%% See:
%% http://www.michaelshell.org/
%% for current contact information.
%%
%% This is a skeleton file demonstrating the advanced use of IEEEtran.cls
%% (requires IEEEtran.cls version 1.8 or later) with an IEEE Computer
%% Society journal paper.
%%
%% Support sites:
%% http://www.michaelshell.org/tex/ieeetran/
%% http://www.ctan.org/tex-archive/macros/latex/contrib/IEEEtran/
%% and
%% http://www.ieee.org/

%%***********************************************
\documentclass[12pt,journal,compsoc]{IEEEtran}

\newcommand\MYhyperrefoptions{bookmarks=true,bookmarksnumbered=true,
pdfpagemode={UseOutlines},plainpages=false,pdfpagelabels=true,
colorlinks=true,linkcolor={black},citecolor={black},urlcolor={black},
pdftitle={Bare Demo of IEEEtran.cls for Computer Society Journals},%<!CHANGE!
pdfsubject={Typesetting},%<!CHANGE!
pdfauthor={Michael D. Shell},%<!CHANGE!
pdfkeywords={Computer Society, IEEEtran, journal, LaTeX, paper,
             template}}%<^!CHANGE!

\hyphenation{op-tical net-works semi-conduc-tor}
\usepackage{graphicx}
\graphicspath{ {./images/} }
\usepackage[justification=centering]{caption}
\usepackage{subfig}
\usepackage{mathrsfs}
\usepackage{mathtools}
\DeclarePairedDelimiter\ceil{\lceil}{\rceil}
\DeclarePairedDelimiter\floor{\lfloor}{\rfloor}
\begin{document}

\title{CNN for Single Image Super-Resolution\\ and HEVC Sub-pixel Interpolation}

\author{Yixu Chen,~\IEEEmembership{Electric \& Computer Engineerings}
% <-this % stops a space
\IEEEcompsocitemizethanks{\IEEEcompsocthanksitem
E-mail: cyx709671676@gmail.com}% <-this % stops a space
\IEEEcompsocitemizethanks{\IEEEcompsocthanksitem
UIN: 627008228}
\thanks{}}

\IEEEtitleabstractindextext{
\begin{abstract}
In HEVC video coding standard, the intre-prediction between picture need sub-pixel level accuracy for motion estimation. HEVC current using 1/4 precision for luminance and 1/8 precision for chrominance. In this work we compare a few convolutional neural networks methods for single image super-resolution and the HEVC's 7 and 8 taps filter for sub-pixel interpolation.

The CNN used for SISR includes Super-Resolution Convolutional Neural Network (SRCNN) and the Efficient Sub-Pixel Convolutional Neural Network (ESPCN). As we will see in the result, the better interpolation we can do, the more compression ratio we can get.
\end{abstract}

\begin{IEEEkeywords}
Single Image Super-Resolution, HEVC, Sub-pixel Interpolation, ESPCN, SRCNN, motion estimation.
\end{IEEEkeywords}}

% make the title area
\maketitle

\IEEEdisplaynontitleabstractindextext

\IEEEpeerreviewmaketitle

\section{Introduction}
\subsection{Image super-resolution}
In computer vision, the super resolution(SR) is a techniques used for recovering high resolution (HR) image from low resolution (LR) image. This problem is highly ill-posed since the detail in LR image is completely lost and there are no single ground truth for the HR images recovered from it.

It is an inverse problem in mathematics.

\begin{equation}
\label{eqn_example}
F(I_h) = I_l
\end{equation}
$F$ is the continuous mapping from the high rank matrix $I_h$ to the low rank matrix $I_l$ . $I_h$ and $I_l$ are the image representation matrices.

Constructing $I_h$ from $I_l$ is to compute the inverse $F^{-1}$. This is an underdetermined inverse problem of which the solution is not unique.

\subsection{Sup-pixel Interpolation}
The interpolation methods we usually used for image upscaling are nearest neighbor, bilinear and bicubic interpolation which are naive super-resolution methods.

In HEVC, the motion compensation(MC) is used for inter-picture predictive coding. Finding a best motion vector(MV) for a predictive unit in the current frame based on several reference frames and then code the residual can significantly reduce the bitrate.

The location of the reference block is indicated by the MV. In other words, the content inside the current block is assumed to have a translation relationship between the current picture and the reference picture. However, the translation may not be aligned with the pixels, thus simply moving the reference block in integer pixel length is not enough. Therefore, sub-pixel MC is put forward to generate the pixel in the fractional level to serve for prediction. Fig. \ref{fig_1} is an illustration of sub-pixel MC.

\begin{figure}[!t]
\centering
\includegraphics[width=2.5in]{1_ME.png}
\caption{Sub-pixel Motion Compensation}
\label{fig_1}
\end{figure}

Nowadays HEVC using separable 8-tap DCT interpolation filter(DCTIF) for half-sample positions luma interpolation and 7-tap filter for the quarter-sample positions. In contrast to H.264/AVC which adopts a 6-tap finite impulse response filter for half-pixel interpolation and additionally adopts simple linear interpolation for quarter-pixel interpolation.

 Although in HEVC we are using 7 or 8 pixels near the predicted one to do the interpolation. It is still very limited compared to the reception field of neural network method, for example, SRCNN uses 169 pixels in a three layer structure to predicted one pixel.

Due to the non-stationary properties of natural videos, fixed interpolation filters may not work well enough for different videos. In this work we try to implement two different neural network to do super-resolution instead of interpolation.

\section{SRCNN}
\subsection{Networks structure}
Super-Resolution Convolutional Neural Network (SRCNN)\cite{DBLP:journals/corr/DongLHT15} was put forward as the first work of using convolutional neural network to do image super-resolution. It have achieved great result but not fast enough for video.

In this network, the original low resolution(LR) images are upsampled to the desired size using traditional bicubic interpolation method. And then go through 3 layers of CNN to refine the high frequency detail. It is fully feed-forward convolutional neural network that learns an end-to-end mapping between low and high-resolution images, with little pre-processing or post-processing beyond the optimization.

To map a low resolution image $Y$ to its hight resolution counterpart $X$, first, we upscale $Y$ using bicubic interpolation to the same size as $X$. Then, for each  overlapping patches from it, we extract a set of feature map. Next, a nonlinear mapping is performed to convert low resolution patches from Y into high resolution patches. Finally, these high resolution patches are aggregated into a high resolution image $X'$. We expect $X'$ to be as close as possible to $X$, based on which we can define the loss function for the training process.

\begin{enumerate}
  \item Patch extraction and representation: The first layer of the CNN has $n_1$ filters with kernel size $c \times f_1 \times f_1$ where $c$ is the number of channels and $f_1$ is the spatial size of the kernel. This layer extracts an $n_1$ dimensional feature for each patch.
  \begin{equation}
  	F_1(Y) = max(0,W_1*Y+B_1)
  \end{equation}
  $W_1$ and $B_1$ are the filters and biases and $*$ denotes the convolution operation. ReLU is used as the activation function.
  \item Nonlinear mapping: The second layer has $n_2$ filters with size $n_1 \times f_2 \times f_2$ . This layer map each of the $n_1$ dimensional feature to an $n_2$ dimensional one. Conceptually, each of the $n_2$ dimensional feature is a representation of a high-resolution patch.
  \begin{equation}
  	F_2(Y) = max(0,W_2*F_1(Y)+B_2)
  \end{equation}

  \item Reconstruction: The last convolutional layer produces the final high-resolution image with kernel size $n_2 \times f_3 \times f_3$
  \begin{equation}
  	F(Y) = W_3*F_2(Y)+B_3
  \end{equation}
  \end{enumerate}

\begin{figure*}[!t]
\normalsize
\centering
\includegraphics[width=7in]{2_SRCNN.png}
\vspace*{4pt}
\caption{Sub-pixel Motion Compensation}
\label{fig_2}
\end{figure*}

Fig. \ref{fig_2} is an illustration of SRCNN network structure.

\subsection{Training}

\subsubsection{Data}
We use the benchmark dataset in \cite{DBLP:journals/corr/DongLHT15}. It includes a small training set of 91 images which can be decomposed into many sub-image pairs.
\begin{enumerate}
  \item Convert the original image from RGB to YCbCr and only use the Y channel.
  \item Then we downsample the HR image to LR image using bicubic method to the scale of $n$.
  \item Crop the LR images into LR sub-images of size $f_{sub} \times f_{sub} \times c$ with the $stride_{lr}$.
  \item Crop the HR images into HR sub-images of size $nf_{sub} \times nf_{sub} \times c$ with the $stride_{hr} = n \times stride_{lr}$
\end{enumerate}
As depicted in the \cite{DBLP:journals/corr/DongLHT15}, The performance of using Y channel is even better than using YCbCr 3 channels as the training may falls into a bad local minimum, due to the inherently different characteristics of the Y and Cb, Cr channels. Here, we use only Y channel.

We tried scale of 3 and 4. For the scale $n = 3$ with the $stride_{lr} = 5$, $stride_{hr} = 15$, $f_{sub} = 11$ we have $19382$ sub-images.
For $n = 4$ with the $stride_{lr} = 5$, $stride_{hr} = 20$,  $f_{sub} = 11$ we have $10087$ sub-images.
Combine them into sub-image pairs and used as input and ground truth.

\subsubsection{Parameters}
For the SRCNN 9-1-5 network parameters is shown in the Table \ref{table_1}. Here, we use padding to make the network have same size of output. Since we only use Y channel $c = 1$.

For the SRCNN 9-5-5 network, just let $f_2 = 5$, we tried both setting.

\begin{table*}[]
\normalsize
%\renewcommand{\arraystretch}{1.3}
\caption{SRCNN 9-1-5 network}
\label{table_1}
\centering
\begin{tabular}{|l|l|l|l|l|}
\hline
              & filter size   & parameters      & output size & \# of parameters 	\\ \hline
image patches &               & $f_{sub}=11$    & $11*11*1$   & $0$  	\\
    \hline
bicubic upscale &               &    & $33*33*1$   & $0$  	\\ \hline
1st layer     & $9*9*1$       & $f_1=9, n_1=64$ & $33*33*64$  & $5248$ 	\\ \hline
2nd layer     & $1*1*64$      & $f_2=1, n_2=32$ & $33*33*32$  & $2080$ 	\\ \hline
3rd layer     & $5*5*32$      & $f_3=5,n_3=1$   & $33*33*1$   & $801$  	\\ \hline
\end{tabular}
\vspace*{4pt}
\end{table*}

\section{ESPCN}
For ESPCN\cite{DBLP:journals/corr/ShiCHTABRW16}, the upsampling process is realized by deconvolution instead of bicubic interpolation. The network structure is illustrated in Fig. \ref{fig_espcn}.
To avoid upscaling LR image before feeding it into the network. ESPCN first apply a 3 layers convolutional neural network directly to the LR image, and then apply a sub-pixel convolution layer that upscales the LR feature maps to produce the HR image. The calculation is significantly reduced as the feature calculation is done in LR space with less pixels to calculate.

The sub-pixel convolution layer

ESPCN use periodic shuffling $\mathcal{PS}$ operator in the last layer. Before the last layer, we get $Cr^2$ features and then $\mathcal{PS}$ rearranges a $H\times W \times r^2 C$ tensor to a $Hr \times Wr \times C$ tensor:

\begin{equation}
\mathcal{PS}(T)_{x,y,c} = T_{\floor*{x/r},\floor*{y/r},Cr \cdot mod(x,r)+C \cdot mod(y,r) + c}
\end{equation}
The parameters of ESPCN is listed in the Table \ref{table_2}.

\begin{table*}[]
\normalsize
\renewcommand{\arraystretch}{1.3}
\caption{ESPCN network}
\label{table_2}
\centering
\begin{tabular}{|l|l|l|l|l|}
\hline
              & filter size   & parameters      & output size & \# of parameters 	\\ \hline
image patches &               & $f_{sub}=11$    & $11*11*1$   & $0$  	\\ \hline
1st layer     & $5*5*1$       & $f_1=5, n_1=64$ & $11*11*64$  & $1664$ 	\\ \hline
2nd layer     & $3*3*64$      & $f_2=3, n_2=32$ & $11*11*32$  & $18464$ 	\\ \hline
3rd layer     & $3*3*32$      & $f_3=3, n_3=9$  & $11*11*9$   & $2601$  	\\ \hline
sub-pixel convolution     &       &   & $33*33*1$   & $0$  	\\
	\hline
\end{tabular}
\vspace*{4pt}
\end{table*}

\begin{figure*}[!t]
\normalsize
\centering
\includegraphics[width=7in]{3_espcn.png}
\vspace*{4pt}
\caption{ESPCN network structure}
\label{fig_espcn}
\end{figure*}

\section{HEVC sub-pixel interpolation}
The fractional sample interpolation for luma samples in HEVC uses separable application of an eight-tap filter for the half-sample positions and a seven-tap filter for the quartersample positions.

In Fig \ref{hevc}, the positions labeled with upper-case letters, $A_{i,j}$, represent the available luma samples at integer sample locations, whereas the other positions labeled with lower-case letters represent samples at noninteger sample locations, which need to be generated by interpolation.
For detailed implementation, see \cite{6316136} and my code.
\begin{figure}[!t]
\centering
\includegraphics[width=3in]{hevc.png}
\vspace*{4pt}
\caption{HEVC sub-pixel interpolation}
\label{hevc}
\end{figure}

\section{Result}
\subsection{Training}
We use Mean Squared Error as the loss function for both SRCNN and ESPCN:
\begin{equation}
	L = \frac{1}{n} || F(Y_i) - X_i ||^2
\end{equation}
where $n$ is the number of training samples, $F$ maps the LR image $Y_i$ to the reconstructed SR image, and $X_i$ is the ground truth HR image.
The loss function is optimized by an Adam optimizer.

For SRCNN, an initial learning rate $\eta= 1 \times 10^{-5}$ is used.
For ESPCN, an initial learning rate $\eta= 1 \times 10^{-4}$ is used.

\subsection{PSNR vs. epoch}
We plot the PSNR on the test set vs. epochs for all the networks in Fig. \ref{fig_3}. It can be seen that SRCNN 9-5-5 learns better than 9-1-5 (higher PSNR). This is because 9-5-5 uses larger filter size in the middle layer and has more parameters and this will enlarge the reception field from $(9+5-1)^2 = 196$ to $(9+5-1+5-1)^2 = 289$. Utilizing more neighborhood information in the mapping stage is beneficial to the network performance as well as increase the computation needed to run the network.

\begin{figure}[!t]
\centering
\includegraphics[width=2.5in]{history-sc3.png}
\caption{Scale 3 training history}
\label{fig_3}
\end{figure}

It's worth notice that in this plot the learning rate of ESPCN is $10^{-4}$ while SRCNN 's learning rate is $10^{-3}$, and it takes 2000 epochs for ESPCN to achieve the same PSNR as SRCNN indicating that ESPCN is much harder to learn than SRCNN. The same learning rate as SRCNN for ESPCN is too large as we can see in Fig. \ref{fig_4}. The PSNR is jumping around the minimum.

\begin{figure}[!t]
\centering
\includegraphics[width=2.5in]{history-sc3_largerrate.png}
\caption{ESPCN $10^{-3}$ learning rate}
\label{fig_4}
\end{figure}

\subsection{PSNR vs. Run Time}
The speed of predicting a HR image from a LR image determines whether it can be used in video and codec. The run time is the time it takes to make a HR prediction per LR image after the network has been trained. We test ESPCN, SRCNN 9-1-5, SRCNN 9-5-5, HEVC and Bicubic on two test set, one with 5 images, one with 14 images. The performance is shown in Fig. \ref{fig_5} and Fig. \ref{fig_6}.
As we can see in both results, SRCNN 9-5-5 have the highest PSNR while it's the slowest one except for HEVC. My implementation of HEVC interpolation use python and have no optimization while in the video coding standard they have specific hardware for this tasks. However, the performance of HEVC DCTIF is not as good as expected. The ESPCN is not only fast but also have great performance which is almost the same as SRCNN 9-5-5.
Apparently, there is a trade off between PSNR and Run Time. But ESPCN have the best overall performance although it's harder to train than SRCNN.

\begin{figure}[!t]
\centering
\includegraphics[width=2.5in]{performance-sc4-Set5.png}
\caption{Performance of scale 4 on Set5}
\label{fig_5}
\end{figure}

\begin{figure}[!t]
\centering
\includegraphics[width=2.5in]{performance-sc4-Set14.png}
\caption{Performance of scale 4 on Set14}
\label{fig_6}
\end{figure}

\subsection{Example}
In this section, Fig. \ref{fig_example} gives some example images used different method .
\begin{figure*}[!t]
\normalsize
\centering
\subfloat[original]{
	\includegraphics[width=2.5in]{barbara_original.png}
}
\hfil
\subfloat[down sampling input]{
	\includegraphics[width=2.5in]{barbara_input.png}
	\label{fig_second_case}
}
\hfil
\subfloat[SRCNN915]{
	\includegraphics[width=2.5in]{barbara_SRCNN915.png}
	\label{fig_second_case}
}
\hfil
\subfloat[SRCNN955]{
	\includegraphics[width=2.5in]{barbara_SRCNN955.png}
	\label{fig_second_case}
}
\hfil
\subfloat[ESPCN]{
	\includegraphics[width=2.5in]{barbara_espcn.png}
	\label{fig_second_case}
}
\hfil
\subfloat[Bicubic]{
	\includegraphics[width=2.5in]{barbara_bicubic.png}
	\label{fig_second_case}
}
\hfil
\subfloat[Bicubic]{
	\includegraphics[width=2.5in]{barbara_hevc.png}
	\label{fig_second_case}
}
\caption{Example images}
\label{fig_example}
\end{figure*}

\subsection{Discussion and Conclusions}
We have compared two different models of image super-resolution, SRCNN and ESPCN, with the traditional Bicubic and HEVC methods.

Both PSNR and run time of the SRCNN model scale with the number of parameters, as can be seen by comparing SRCNN 9-1-5 with SRCNN 9-5-5 where the latter has more parameters. SRCNN 9-5-5 is the best super-resolution among all the methods we tried. However, due to the upscaling (deconvolution) is at the front of the network. The speed is not fast enough to be useful for video super-resolution.

From ESPCN result, we know that there is a trade-off between quality (measured by PSNR) and run time. If the time cost is negligible, earlier deconvolution makes the HR image reconstruction better.

All in all, ESPCN can achieved fast speed and relatively good performance. From the result we can see that HEVC interpolation isn't good enough. If we can use ESPCN in video codec for sub-pixel interpolation, the accuracy of motion estimation and motion compensation can be further improved.

\ifCLASSOPTIONcaptionsoff
  \newpage
\fi

\bibliography{refer.bib}
\bibliographystyle{ieeetr}

\end{document}

max_stars_repo_name: Easoncyx/srcnn

max_issues_repo_name: Easoncyx/srcnn

max_forks_repo_name: Easoncyx/srcnn


text:
\documentclass[12pt]{article}
\usepackage{amssymb,latexsym,amsmath,bm}

\newif\ifpdf
\ifx\pdfoutput\undefined
\pdffalse % we are not running PDFLaTeX
\else
\pdfoutput=1 % we are running PDFLaTeX
\pdftrue
\fi
\ifpdf
\usepackage[pdftex]{graphicx}
\else
\usepackage{graphicx}
\fi
\ifpdf
\DeclareGraphicsExtensions{.pdf, .jpg, .tif}
\else
\DeclareGraphicsExtensions{.eps, .jpg}
\fi

\textwidth = 6.5 in
\textheight = 9 in
\oddsidemargin = 0.0 in
\evensidemargin = 0.0 in
\topmargin = 0.0 in
\headheight = 0.0 in
\headsep = 0.0 in
\parskip = 0.2 in
\parindent = 0.0 in

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\newcommand{\khat}{\hat{\mathbf k}}
\newcommand{\uv}{\mathbf u}
\newcommand{\up}{\mathbf u'}
\newcommand{\w}{\mathbf w}
\newcommand{\grad}{\nabla}
\newcommand{\curlp}{\gradp \times}
\newcommand{\curl}{\grad \times}
\newcommand{\gradp}{\nabla'}

\newcommand{\commentout}[1]

\DeclareMathOperator{\Span}{span}

\title{Rotation matrix for transforming the strain tensor}

\begin{document}
%\maketitle
\section*{Shear tensor}
There are 9 components of the shear (strain rate) $S_{ij} = \grad {\bm u} =
\partial_j u_i$. We can compute all these components in the
grid-coordinate system ($\bm{{\hat x}}_1,\bm{{\hat x}}_2, \bm{{\hat
x}}_3$). We would like to be able to say what these components are in
a coordinate system whose $x_1$-axis is along $\bm{{\hat r}}$, one of
the 73 directions we compute in our angle averaging procedure.

\section*{New coordinate system}
Let $\bm{{\hat r}}$, $\bm{{\hat t}}_1$
and $\bm{{\hat t}}_2$ (which are determined by the existing code in the grid-coordinate system) form our new coordinate system.
The axis of the new system $\bm{{\hat x}}_1',\bm{{\hat x}}_2',
\bm{{\hat x}}_3'$ are obviously
given in the transformed coordinate system as $\bm{{\hat x}}_1' =
\left(\begin{array}{c} 1 \\ 0 \\0
\end{array}\right)$, $\bm{{\hat x}}_2' = \left(\begin{array}{c} 0 \\ 1
\\0 \end{array}\right)$ and $\bm{{\hat x}}_3' = \left(\begin{array}{c}
0 \\ 0 \\1 \end{array}\right)$.

The transformation between the two coordinate systems is governed by
the rotation matrix ${\bf A}$ which can be written in terms of the
known components of the new coordinate system. That is, we have

$$
\bm{{\hat x}}_1' = \left(\begin{array}{c} 1 \\ 0 \\0\end{array}\right) = {\bf A}\left(\begin{array}{c} \bm{{\hat r}}\cdot \bm{{\hat x}}_1 \\ \bm{{\hat r}}\cdot \bm{{\hat x}}_2 \\\bm{{\hat r}}\cdot \bm{{\hat x}}_3\end{array}\right);~~
\bm{{\hat x}}_2' = \left(\begin{array}{c} 0 \\ 1 \\0\end{array}\right) = {\bf A}\left(\begin{array}{c}\bm{{\hat t}}_1\cdot \bm{{\hat x}}_1 \\ \bm{{\hat t}}_1 \cdot\bm{{\hat x}}_2 \\\bm{{\hat t}}_1 \cdot \bm{{\hat x}}_3 \end{array}\right);~~
\bm{{\hat x}}_3' = \left(\begin{array}{c} 0 \\ 0 \\1 \end{array}\right)= {\bf A}\left(\begin{array}{c}\bm{{\hat t}}_2\cdot \bm{{\hat x}}_1 \\ \bm{{\hat t}}_2 \cdot\bm{{\hat x}}_2 \\\bm{{\hat t}}_2 \cdot \bm{{\hat x}}_3 \end{array}\right)
$$

From these relations we can immediately write down
${\bf A}^{-1}$.  Since the vectors are ortho-normal,
${\bf A A}^{T} = {\bf I}$, so ${\bf A} = {\bf A}^{-T}$ and thus
\begin{equation}
{\bf A} =  \left(\begin{array}{ccc}
\bm{{\hat r}}\cdot \bm{{\hat x}}_1 & \bm{{\hat r}}\cdot \bm{{\hat x}}_2 &\bm{{\hat r}}\cdot \bm{{\hat x}}_3 \\
\bm{{\hat t}}_1\cdot \bm{{\hat x}}_1 & \bm{{\hat t}}_1 \cdot\bm{{\hat x}}_2 & \bm{{\hat t}}_1 \cdot \bm{{\hat x}}_3 \\
\bm{{\hat t}}_2\cdot \bm{{\hat x}}_1 & \bm{{\hat t}}_2 \cdot\bm{{\hat x}}_2 & \bm{{\hat t}}_2 \cdot \bm{{\hat x}}_3
\end{array}
\right)
\end{equation}

So the strain tensor in the new coordinate system is  given by
${\bf S}' = {\bf A S A}^{T}$, or component-wise
$S_{ij}' = A_{ik} S_{kl} A_{jl}$.

We cycle through the 73 different $\bm{{\hat r}}$ in this way to find the one
which give the largest off-diagonal
contribution to $S_{1j}'$.  That is, we find the
direction with the largest value of $S_{12}'^2 + S_{13}'^2$.

We then construct the {\em tilde} coordinate system which consists
of $\bm{{\hat r}}$ and new tangent vectors $( \bm{{\tilde t}}_1,
\bm{{\tilde t}}_2 )$ given by a rotation of $( \bm{{\hat t}}_1, \bm{{\hat t}}_2 )$
about the $\bm{{\hat r}}$ axis.  The rotation is chosen so that the
tangential derivative of $u_1'$ is entirely in the $\bm{{\tilde t}}_1$
direction.  The strain tensor in this coordinate system
is given by ${\bf \tilde S}$, and the velocity vector by
$( \tilde u_1, \tilde u_2, \tilde u_3)$.

The tilde-tangent vectors are given by

\begin{equation}
\bm{{\tilde t}}_1 = \frac{S_{12}'  \bm{{\hat t}}_1 +  S_{13}'  \bm{{\hat t}}_2 }
                         {\sqrt{ S_{12}'^2 +  S_{13}'^2 } }
\qquad
\bm{{\tilde t}}_2 = \bm{{\hat r}} \times \bm{{\tilde t}}_1
\end{equation}
so that
\begin{equation}
\tilde S_{12} =
\begin{pmatrix}  S_{11}' \\
                 S_{12}' \\
                 S_{13}'
\end{pmatrix}
\cdot \bm{{\tilde t}}_1 =
 \sqrt{ S_{12}'^2 + S_{13}'^2 }
\end{equation}
and
\begin{equation}
\tilde S_{13} =
\begin{pmatrix}  S_{11}' \\
                 S_{12}' \\
                 S_{13}'
\end{pmatrix}
\cdot \bm{{\tilde t}}_2 =  0
\end{equation}
THE ABOVE TWO EQUATIONS (3-4) ARE WRONG. SEE KURIEN SECTION.

We then compute the mixed structure function $\langle \Delta \tilde u_1 (r)
\Delta \tilde u_2 (r)\rangle$ and
$\langle \Delta \tilde u_1 (r) \Delta \tilde u_3 (r)\rangle$ for that direction of $\bm{{\hat r}}$.

\section*{Redundancies}

In the above procedure, we looked for the direction $ \bm{{\hat r}}$
which gave the maximum value of $S_{12}'^2 + S_{13}'^2$.
Is this sufficient, or should we also consider the other
components $S_{21}'^2 + S_{23}'^2$ and
$S_{31}'^2 + S_{32}'^2$?

In isoave.F90, we construct the set of vectors $\bm{{\hat r}}$
by taking all directions expressible as a vector with integer
coefficients of norm less than $\sqrt{11}$. Call this set
of directions $V$.   If we consider all the components mentioned
above, this amounts to maximizing $S_{12}'^2 + S_{13}'^2$ over
all directions in $V$ as well as all directions given by
all of the $\bm{{\hat t}}_1$ and $\bm{{\hat t}}_2$ vectors.

In isoave.F90, from each $\bm{{\hat r}}$ we construct its associated
$\bm{{\hat t}}_1$ by permutation of indices of $\bm{{\hat r}}$.
This means that $\bm{{\hat t}}_1$ is in a direction given by integer coefficients
with norm less than $\sqrt{11}$, and so $\bm{{\hat t}}_1 \in V$.
Thus it is redundant to maximize
both $S_{12}'^2 + S_{13}'^2$ and $S_{21}'^2 + S_{23}'^2$.

However, $\bm{{\hat t}}_2 = \bm{{\hat r}} \times \bm{{\hat t}}_1$.
Most of these vectors are also in $V$, but there are 32 of them
which are not in $V$.  Thus it is not redundant to maximize over
both $S_{12}'^2 + S_{13}'^2$ and $S_{31}'^2 + S_{32}'^2$.
However, to compute the needed structure functions associated with
a direction which had a maximum value of $S_{31}'^2 + S_{32}'^2$, we
would need to compute increments in the $\bm{{\hat t}}_2$ direction.
This direction is not in $V$, and our code isoave.F90 can only
compute increments in directions in $V$.  Computing increments in
other directions would be very expensive, requiring much more communication
and interpolation to non-grid point locations.

In summary, we are thus capable of computing the mean shear in
the 73 directions in $V$, as well as a few extra directions given by the
$\bm{{\hat t}}_2$ vectors.   But we are only capable of computing
structure functions for increments in directions in $V$, and thus
we limit our search to maximizing $S_{31}'^2 + S_{32}'^2$ over
all directions in $V$.

\section*{Kurien's approach}

The above definition of $\bm{{\tilde t}}_1$ is confusing to me because
it is seems to be a definition which mixes two coordinate systems. On
the one hand, $S'_{1j}$ is the $j$-component (in the coordinate system
where $\hat{\bm{ r}} \rightarrow 1$-component, $\hat{\bm{t}}_1
\rightarrow 2$-component and $\hat{\bm{ t}}_2 \rightarrow
3$-component) of the gradient of the velocity along $\hat{\bm{
r}}$. In general $S'_{1j}$ is a three component vector expressed in
the ($\hat{\bm{ r}}$, $\hat{\bm{t}_1}$, $\hat{\bm{t}_2}$) coordinate
system. On the other hand $\hat{\bm{t}}_1$ and $\hat{\bm{t}}_2$ are
expressed (in the code) in the grid-coordinate system.

We must first find what the $vector$ $S'_{1j}$ looks like in the
grid-coordinate system. So it seems to me, that we should first
express the vector $S'_{1j}$ in the grid-coordinate system. Denote
this representation by (superscript $g$ for $grid$)

\begin{equation}S^g_{1j}  =  A_{kj} S'_{1k}\end{equation}

NOTE that $S^g_{1j} \neq S_{1j}$(!), the latter is the $j$-component
of the shear in the velocity along the grid-coordinate axis
$\bm{x}_1$.

Now, we can proceed with defining the tilde transverse coordinates as before but now using the $S^g_{1j}$ components.

The tilde-tangent vectors are given by
\begin{equation}
\bm{{\tilde t}}_1 = \frac{(S^g_{1}\cdot \hat{\bm{t}}_1) \bm{{\hat t}}_1 +  (S^g_{1}\cdot\hat{\bm{t}}_2) \bm{{\hat t}}_2 }
                         {\sqrt{ (S^g_{1}\cdot \hat{\bm{t}}_1)^2 +  (S^g_{1}\cdot\hat{\bm{t}}_2)^2 }}
\qquad
\bm{{\tilde t}}_2 = \bm{{\hat r}} \times \bm{{\tilde t}}_1
\end{equation}

The following is the relationship between $S_1^g$ and $S_1'$:
\begin{eqnarray}
S^g_{1}\cdot \hat{\bm {r}} = S'_{11}\\
S^g_{1}\cdot \hat{\bm {t}}_1 = S'_{12}\\
S^g_{1}\cdot \hat{\bm {t}}_2 = S'_{13}
\end{eqnarray}

Therefore in the tilde coordinate system we have
\begin{equation}
\tilde S_{12} =  S^g_{1} \cdot \bm{{\tilde t}}_1 =
 \sqrt{ S_{12}'^2 + S_{13}'^2 }
\end{equation}
and
\begin{equation}
\tilde S_{13} = S^g_{1}\cdot \bm{{\tilde t}}_2 =  0
\end{equation}

We then compute the mixed structure function $\langle \Delta \tilde u_1 (r)
\Delta \tilde u_2 (r)\rangle$ and
$\langle \Delta \tilde u_1 (r) \Delta \tilde u_3 (r)\rangle$ for that direction of $\bm{{\hat r}}$.

\section*{Implementation in the code}
Since we are only looking for maximization of $S_{12}$ in the
maximal shear direction, all we need to compute is the following:

For a given direction $\hat{\bm{r}}$
\begin{equation}
{S}_{12}' = \nabla (\hat {\bm{r}} \cdot \bm{u}) \cdot \hat{\bm{t}}_1
= \hat {\bm{r}}^T  S \cdot \hat{\bm{t}}_1
= A_{1k} S_{kj} \cdot \hat{\bm{ t}}_1
\end{equation}
and
\begin{equation}
{S}_{13}' = \nabla (\hat {\bm{r}} \cdot \bm{u}) \cdot \hat{\bm{t}}_2
= \hat {\bm{r}}^T  S \cdot \hat{\bm{t}}_2
= A_{1k} S_{kj} \cdot \hat{\bm{ t}}_2
\end{equation}

Cycle through the 73 directions to find the one for which ${S}_{12}'^2
+ {S}_{13}'^2$ is maximum. Then for this shear tensor in this maximal
strain directions, denoted by
${\bf S}_{max}'$, find the orientation of the tranverse directions (see
definition in previous section) which orient all the strain in the
$(1,2)$ component of the strain,

\begin{equation}
\bm{{\tilde t}}_1 = \frac{S_{max}'_{12} \bm{{\hat t}}_1 +  S_{max}'_{13} \bm{{\hat t}}_2 }
                         {\sqrt{S_{max}'_{12}^2 +  S_{max}'_{13}^2 }}
\qquad
\bm{{\tilde t}}_2 = \bm{{\hat r}} \times \bm{{\tilde t}}_1
\end{equation}

such that (this is the check for correctness):
\begin{equation}
{\tilde S}_{12} = \nabla (\hat{\bm{r}} \cdot \bm{u}) \cdot \tilde{\bm{t}}_1
= \sqrt{S_{max}'_{12}^2 +  S_{max}'_{13}^2 }
\end{equation}
and
\begin{equation}
{\tilde S}_{13} = \nabla (\hat{\bm{r}} \cdot \bm{u}) \cdot \tilde{\bm{t}}_2
= 0
\end{equation}

Return the maximum direction index, $\bm{{\tilde t}}_1$ and $\bm{{\tilde t}}_2$.

\commentout{
Comment by Mark:
  I think there is a mistake in your formula for $\tilde S_{12}$.

\begin{equation}
{\tilde S}_{12} = \nabla (\hat r \cdot u) \cdot {\tilde t}_1
= \hat r^T  S \cdot {\tilde t}_1
= A_{1k} S_{kj} \cdot {\tilde t}_1
\end{equation}
Now take
\[
   {\tilde t}_1  = \alpha {\hat t}_1 + \beta {\hat t}_1
\]
\[
   {\tilde t}_2  = \beta {\hat t}_1 - \alpha {\hat t}_1
\]
so that
\begin{equation}
A_{1k} S_{kj} \cdot {\tilde t}_1  =
\alpha A_{1k} S_{kj} \cdot {\hat t}_1  +
\beta A_{1k} S_{kj} \cdot {\hat t}_2
\end{equation}
\begin{equation}
 = \alpha S'_{12}  + \beta S'_{13}
\end{equation}
Similarly,
\[
{\tilde S}_{13} = A_{1k} S_{kj} \cdot {\tilde t}_2  =
\beta S'_{12}  - \alpha S'_{13}
\]
Thus, to summerize,
\[
{\tilde S}_{12} = \alpha S'_{12}  + \beta S'_{13}
\]
\[
{\tilde S}_{13} = \beta S'_{12}  - \alpha S'_{13}
\]
and thus we want to take
\[
  \alpha = S'_{12}  \qquad \beta = S'_{13}
\]

Response by Susan:
   I think there is a mistake in going from (9) to (10). I agree completely with (9). But according to (9), shouldn't
\begin{equation}S^g_{1j} = A_{1k} S_{kj}\quad ?\end{equation}
Eq. (11) which comes from your equation (9), is not the same as
(10). But I checked and (11) IS the same as (5) (since ${\bf A}$ is
orthogonal). That is,
\begin{eqnarray}S^g_{1j} &=& A_{kj} S'_{1k} \quad \mbox{(Kurien definition Eq (5))} \\
&=& A_{kj} A_{1p} S_{pq} A_{kq} \\
&=& \delta_{jq} A_{1p} S_{pq} \quad \mbox{(orthogonality $\Rightarrow A_{kj}A_{kq} == \delta_{jq}$)} \\
&=& A_{1p} S_{pj} \quad \mbox{(Taylor definition from Eq (9) (==Eq (11)))}
\end{eqnarray}
}
\end{document}