← All templates

University of Naples Federico II PhD thesis, Information Technology and Electrical Engineering (ITEE)

The ITEE PhD programme's thesis template (39th cycle, 2026) in B5 book format: cover page with the programme, cycle, advisor and co-advisor, dedication, front page, declaration, English and Italian abstracts, acknowledgements, acronyms, list of symbols, four sample chapters, conclusions, BibTeX bibliography, appendix and list of publications (English).

Create an account to use this
Category
Thesis
Document class
book (book.cls) — ships with TeX Live
Workflow
Thesis / dissertation — submissions and revision rounds
Author
University of Naples Federico II, PhD Program in Information Technology and Electrical Engineering (DIETI) (department)
Source
University of Naples Federico II, PhD Program in Information Technology and Electrical Engineering (DIETI) (department)
Licence
book.cls: LaTeX Project Public License (installed with TeX). The sample text is University of Naples Federico II, PhD Program in Information Technology and Electrical Engineering (DIETI) (department)'s, provided for authors preparing a submission.

These are the publisher’s own files. This project starts from University of Naples Federico II, PhD Program in Information Technology and Electrical Engineering (DIETI) (department)’s package for this publication — their manuscript, their book.cls, their bibliography style — so what compiles here is what they would have given you.

University of Naples Federico II, PhD Program in Information Technology and Electrical Engineering (DIETI) (department) serves this exact file to University of Naples Federico II. Check University of Naples Federico II, PhD Program in Information Technology and Electrical Engineering (DIETI) (department)’s author pages for the current instructions.

What you get

  • 0.settings.tex · 1 KB
  • 1.coverpage.tex · 2 KB
  • 2.dedicationpage.tex · 283 B
  • 3.frontpage.tex · 1 KB
  • 4.declarationpage.tex · 667 B
  • 5.abstract.tex · 2 KB
  • 6.abstract_IT.tex · 2 KB
  • 7.acknowledgements.tex · 1 KB
  • 8.acronyms.tex · 144 B
  • MyITEEphdThesis.tex — the file that is compiled · 7 KB
  • acknowledgements.tex · 954 B
  • appendix.tex · 2 KB
  • chapter1.tex · 693 B
  • chapter2.tex · 2 KB
  • chapter3.tex · 333 B
  • chapter4.tex · 249 B
  • conclusions.tex · 32 B
  • figs/MUR.png · 173 KB
  • figs/PON.png · 41 KB
  • figs/SPSB.png · 185 KB
  • figs/UE.png · 2 KB
  • figs/UNINA-DIETI-Ecc2018-Ecc2023.pdf · 86 KB
  • figs/UNINA-DIETI-Ecc2018-Ecc2023.png · 33 KB
  • figs/Unina-ITEE-SPSB-DIETI.pdf · 82 KB
  • figs/logo-ITEE-PhD-text-big-signet.jpg · 50 KB
  • figs/logo-ITEE-PhD.jpg · 692 KB
  • figs/logoUNINAblu.png · 934 KB
  • psfig.sty · 28 KB
  • publications.tex · 459 B
  • thesis_references.bib · 445 B

These become your files. Editing them afterwards changes your project and nothing else — a project owns its files from the moment it is made.

Source

0.settings.tex · 1 KB
% !TEX root = MyITEEphdThesis.tex
%SET HERE COMMANDS FOR PHD COURSE, PHD URL, CYCLE, CHAIRMAN, AUTHOR, TITLE, ...
\newcommand{\university}{Universit\`a degli Studi di Napoli Federico II }
\newcommand{\phdprogram}{Information Technology and Electrical Engineering }
\newcommand{\phdprogramURL}{http://itee.dieti.unina.it}
\newcommand{\phdcycle}{XXXIX }
\newcommand{\phdchairman}{Prof. Stefano Russo}
\newcommand{\thesistitle}{Title First Row\\Title Second Row}
\newcommand{\thesisauthor}{Given\_name Family\_Name}
\newcommand{\advisor}{Prof. X Y}
\newcommand{\coadvisor}{Prof. W Z}

%BACKGROUND IMAGE
%TRANSPARENT AND LOW OPACITY UNINA LOGO FOR EVEN (LEFT) EMPTY PAGES
\usepackage[pages=some]{background}
\backgroundsetup{
 scale=0.8,
 opacity=0.05,
 angle=0,
 contents={\includegraphics[width=0.5\paperwidth]{figs/logoUNINAblu.png}}
}
\makeatletter
    \def\cleardoublepage{\clearpage%
        \if@twoside
            \ifodd\c@page\else
                \vspace*{\fill}
                \hfill
	        \BgThispage
                \begin{center}
%               \small Page intentionally left blank. %You may wish to comment this line for camera-ready 
                \end{center}
                \vspace{\fill}
                \thispagestyle{empty}
                \newpage
                \if@twocolumn\hbox{}\newpage\fi
            \fi
        \fi
    }
\makeatother

1.coverpage.tex · 2 KB
% !TEX root = MyITEEphdThesis.tex
%COVER PAGE
	\begin{titlepage}
%		\centering{\includegraphics[width=\columnwidth]{figs/Unina-ITEE-SPSB-DIETI.pdf}}\\
		\centering{\includegraphics[width=\columnwidth]{figs/UNINA-DIETI-Ecc2018-Ecc2023.pdf}}\\

		\begin{center}
         	{\color{darkblue}\Large{\university \par}}
		\vspace{-0.4cm}
		{\color{darkblue}\singlespacing \large {Ph.D. Program in\\
		\color{red}I\color{darkblue}nformation \color{red}T\color{darkblue}echnology and  \color{red}E\color{red}\color{darkblue}lectrical \color{red}E\color{darkblue}ngineering\par\footnotesize{\vspace{3pt}\phdcycle Cycle\par}}}
		\vspace{0.5cm}
		{\color{darkblue} \bfseries\large{\textsc{Thesis for the Degree of Doctor of Philosophy }}\par}
		\vspace{0.5 cm}
		{\color{blue} \singlespacing \huge \bfseries \thesistitle \par}
		{\color{blue}\center{by\\\bfseries{\textsc\thesisauthor \par}}}
		\end{center}
		\vspace{0.4 cm}
		\begin{flushleft}
			\color{darkblue}{\normalsize{Advisor: \advisor\par}}
			\vspace{6pt}
			\color{darkblue}{\small{Co-advisor: \coadvisor\par}}
		\end{flushleft}
		\vspace*{\fill}
		\begin{center}
			\centering{\includegraphics[width=0.1\columnwidth]{figs/logoUNINAblu.png}\par}
			\vspace{2pt}
			\color{darkblue}{\bfseries\tiny\textsc{Scuola Politecnica e delle Scienze di Base}\par}
			\vspace{3pt}
			\bfseries\tiny\textsc{\color{red}D\color{darkblue}{ipartimento di} \color{red}{I}\color{darkblue}{ngegneria} \color{red}{E}\color{darkblue}{lettrica e delle }\color{red}{T}\color{darkblue}{ecnologie dell'}\color{red}{I}\color{darkblue}{nformazione }}
		\end{center}
	\end{titlepage}
2.dedicationpage.tex · 283 B
% !TEX root = MyDISGRSphdThesis.tex
%DEDICATION PAGE
\thispagestyle{empty} 
\begin{dedication}
\vspace*{.25\textheight}
{\fontfamily{calligra}\selectfont

{\Large
\textcolor{darkblue}{
Dedication
}

or 

\textcolor{darkblue}{
Some quote
}
}
}
\end{dedication}
\thispagestyle{empty} 
3.frontpage.tex · 1 KB
% !TEX root = MyITEEphdThesis.tex
%INTERNAL FRONT PAGE
\thispagestyle{empty} 
\centering{\LARGE\textsc{\textcolor{blue}{\textbf{\thesistitle}}}}

\vspace{0.8cm}
\centering{\textcolor{darkblue}{Ph.D. Thesis presented}}\\
\centering{\textcolor{darkblue}{for the fulfillment of the Degree of Doctor of Philosophy}}\\
\centering{\textcolor{darkblue}{in \phdprogram}}\\

\centering{\textcolor{blue}{by}}
 
\vspace{0.2cm}
\centering{\large\textsc{\textcolor{blue}{\textbf{\thesisauthor}}}}

\vspace{0.7cm}
\centering{\large{October 2025}}\\


\vspace{0.3cm}
\centering{\includegraphics[width=0.1\columnwidth]{figs/logoUNINAblu.png}}\\
\vspace{1.cm}
\raggedright Approved as to style and content by \\

\vspace{0.5cm}
\raggedright \rule{4cm}{0.5pt} \\
\raggedright \advisor, Advisor

\vspace{0.5cm}
\raggedright \rule{4cm}{0.5pt} \\ 
\raggedright \coadvisor, Co-advisor

\vspace{1.cm}
\textcolor{darkblue}{
\university \\
Ph.D. Program in \phdprogram\\
\scriptsize{\phdcycle cycle - Chairman: \phdchairman}\\
\includegraphics[width=0.3\columnwidth]{figs/logo-ITEE-PhD-text-big-signet.jpg}\\\hspace{0.25cm}\scriptsize{\phdprogramURL}
}
\clearpage
4.declarationpage.tex · 667 B
% !TEX root = MyITEEphdThesis.tex
%AUTHOR DECLARATION
\thispagestyle{empty} 
\textbf{Candidate's declaration} \\

\vspace{0.5cm}
I hereby declare that this thesis submitted to obtain the academic degree of Philosophi\ae~Doctor (Ph.D.) in \phdprogram is my own unaided work, that I have not used other than the sources indicated, and that all direct and indirect sources are acknowledged as references. \\

Parts of this dissertation have been published in international journals and/or conference articles (see list of the author's publications at the end of the thesis).\\

\vspace{1cm}
Napoli, \today

\vspace{1cm}
\rule{5cm}{0.5pt} 

\vspace{0.5cm}

\thesisauthor
5.abstract.tex · 2 KB
% !TEX root = MyITEEphdThesis.tex
%ABSTRACT AND KEYWORDS
According to the PhD program regulations, theses are written in English. An abstract and keywords are mandatory, both in English and in Italian.  Try to make each fit on one page.

Start with a short paragraph setting up the context.
Move to a motivation paragraph for your research,
synthetically explaining the problem you targeted.
State the original contribution(s).

The abstract is followed by a list of four to six keywords. To be relevant and effective for indexing purposes, keywords must be chosen carefully.

\small
\textit{The PhD thesis is expected to present original research contributions developed during the PhD studies of the candidate. The thesis, as well as the research work, is developed under the guidance of a supervisor.}

\textit{The thesis may include previously published work by the candidate, provided that the previously published material is cited appropriately in the thesis and the contribution of the author is clarified. Materials derived from the work of other authors must be properly referenced in the thesis and, if the exact words are reported, they must be cited in quotes.}

\normalsize
According to the national legislation, all PhD theses are deposited at the National Libraries of Rome and Florence, where they can be consulted locally. The University takes care of the deposit into the National libraries. The candidates admitted to the final exam must deposit their thesis electronically before the final exam; the University stores and after the defense makes publicly available the electronic copy of the thesis through the federated open \texttt{fedOAtd} archive, where all theses are indexed and listed. 
Before depositing the thesis, the candidate may ask the PhD Board - through the PhD program Chairman - to determine restricted access to (parts of) the thesis, possibly setting a time limit, on the basis of motivated needs related to the use of data protected by trade or industrial secrets, according to the current national legislation.

% KEYWORDS (FROM 4 to SIX)
\vfill
\noindent\textbf{Keywords}: list from four to six keywords, separated by commas.
6.abstract_IT.tex · 2 KB
% !TEX root = MyITEEphdThesis.tex
%ABSTRACT AND KEYWORDS IN ITALIAN
La tesi di dottorato \`e redatta in lingua inglese. La tesi deve essere corredata da una sintesi (abstract) in lingua inglese e in lingua italiana. 
Cercare di limitare ciascuna sintesi ad una pagina.

\small
L'abstract \`e seguito da una lista da quattro a sei parole chiave. 
Le parole chiave devono essere scelte accuratamente per l'efficacia dell'indicizzazione e delle ricerche nelle banche dati.

La tesi \`e valutata da almeno due valutatori, anche appartenenti a istituzioni estere, non appartenenti all?ente che rilascia il titolo di dottorato e in possesso di elevata qualificazione, di cui almeno uno \`e un docente universitario. 

I valutatori, che possono appartenere a istituzioni estere o internazionali, entro trenta giorni dal ricevimento della tesi, esprimono un giudizio analitico scritto, proponendo l'ammissione alla discussione pubblica o il rinvio della discussione della tesi per un periodo non superiore a sei mesi se ritengono necessarie significative integrazioni o correzioni.

Trascorso il periodo di rinvio fissato dai valutatori, la tesi \`e in ogni caso ammessa alla discussione pubblica, corredata dal nuovo parere scritto dei medesimi valutatori. Il rinvio comporta l'obbligo di integrare e/o correggere la tesi e non determina un prolungamento della durata del corso di dottorato.

I candidati all'esame finale di dottorato devono depositare la propria tesi nel sistema di Ateneo \texttt{fedOAtd}. L'archivio garantisce la non consultabilit\`a on line di tutte le tesi ivi depositate e non ancora discusse. 

L'Universit\`a entro trenta giorni dalla discussione e approvazione della tesi deposita copia della stessa, in formato elettronico, nella banca dati ministeriale.

L'Universit\`a, inoltre, archivia e rende consultabile in rete il testo completo della tesi di dottorato attraverso l'Archivio istituzionale ad accesso aperto \texttt{fedOAtd} e cura il deposito della tesi stessa presso le biblioteche nazionali di Roma e di Firenze.

Previa autorizzazione del Collegio dei Docenti, possono essere rese indisponibili, eventualmente anche fissando un limite temporale, parti della tesi in relazione all'utilizzo di dati tutelati da segreto industriale ai sensi della normativa vigente.

\normalsize

% KEYWORDS (FROM 4 to SIX)
\vfill
\textbf{Parole chiave}: da quattro, a sei, parole chiave, separate da virgola.
7.acknowledgements.tex · 1 KB
% !TEX root = MyITEEphdThesis.tex
\section*{Acknowledgements}
Put acknowledgements here, e.g. to fundings (PON, company-funded scholarship, EU project, CERN Doctoral Student Program, INPS Dottorati innovativi Intersettoriali ``Industria 4.0'', etc.), to hosting labs, to used resources, to foreign hosting institutions for research periods spent abroad, etc. 

Examples: \\
The research presented in this dissertation has been supported by the Italian Ministry of University and Research (MUR) under program PON 2014-2020 ...\\ 


The author's work has been supported by a PhD scholarship funded by ... company name ... \\ 

The author's work has been carried out in the framework of the PRIN 2018 (Progetti di Rilevante Interesse Nazionale) project ``Project Title'', grant nr. ... \\ 

The author's work has been partially carried out in the framework of the European Union project of the Horizon program ``PROJECT ACRONYM - Title'', grant nr. ... \\

Candidates with fellowship funded by PON or other EU-supported funds: put here the necessary logos.\\

\includegraphics[width=0.25\columnwidth]{figs/UE.png}\hspace{1cm}\includegraphics[width=0.2\columnwidth]{figs/MUR.png}\hspace{1cm}\includegraphics[width=0.25\columnwidth]{figs/PON.png}
8.acronyms.tex · 144 B
% !TEX root = MyITEEphdThesis.tex
%ACRONYMS LIST
\begin{acronym}[MAXACR]
\acro{ML}{Machine Learning}
\acro{RQ}{Research Question}
\end{acronym}
MyITEEphdThesis.tex — the file that is compiled · 7 KB
%Università di Napoli Federico II
%PhD Program in Information Technology and Electrical Engineering
%ITEE PhD THESIS TEMPLATE  
%Version: Cycle XXXIX - v.1 2 July 2026 - by prof. Stefano Russo

\documentclass [pdftex,b5paper,11pt,titlepage,twoside]{book}

\usepackage[b5paper,verbose]{geometry}
\usepackage[Lenny]{fncychap}
\makeatletter
%MODIFICATIONS TO LENNY FNCYCHAP
%redefine color for chapter heading of the Lenny style
%  \ChNameVar{\Large\rm\color{darkblue}}
%  \renewcommand{\DOCH}{%
%  \setlength{\fboxrule}{\RW} % Let fbox lines be controlled by \ChRuleWidth
%  \fbox{\CNV\FmN{\@chapapp}\space \CNoV\thechapter}\par\nobreak 
%  \vskip 20\p@}
%reduce space before and after the title to 20pt
  \renewcommand{\DOTI}[1]{% 
    \CTV\FmTi{#1}\par\nobreak 
    \vskip 20\p@}
  \renewcommand{\DOTIS}[1]{% 
    \CTV\FmTi{#1}\par\nobreak 
    \vskip 20\p@}
\makeatother

% PACKAGES FOR TITLES
\usepackage{titlesec}
\titlespacing*{\paragraph} {0pt}{1\baselineskip}{1\baselineskip}
  
% GRAPHIC AND IMAGES PACKAGES
\usepackage{graphicx}
\usepackage[subrefformat=parens,labelformat=parens]{subfig}
\usepackage[labelsep=period]{caption}
\DeclareGraphicsExtensions{.pdf,.png,.jpeg,.mps,.bmp,.eps, .gif}
\usepackage{pdfpages}
\usepackage{psfig}
\usepackage{epsfig}
\usepackage{tikz}
\usepackage{tikz-qtree}
\usepackage{picinpar}
\usepackage{bmpsize}
\usepackage{textcomp} 
\usetikzlibrary{trees} 
\usepackage[most]{tcolorbox}

%FONT, INDENT, SPACES, RAGGED TEXT, ... PACKAGES
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{newlfont}
\usepackage{verbatim}
\usepackage{indentfirst}
\usepackage{ragged2e}
\usepackage{setspace}
\usepackage{chngpage}
\usepackage{url}
\usepackage{ifoddpage}
\usepackage{textcomp}
\usepackage{calligra}
\usepackage{hyperref} %cross-referencing commands to produce hypertext links 
\DeclareUrlCommand\uri{}
\newcommand{\tabitem}{~~\llap{\textbullet}~~}
\usepackage{threeparttable}
\usepackage[margin=6pt, font=small, labelfont=bf]{caption}
\hypersetup{
 pdftitle={},%
 pdfauthor={},%
 pdfsubject={},%
 pdfkeywords={},%
 colorlinks=true,%
 linkcolor=blue,%
 linktocpage=true,%
 pageanchor=true,
 citecolor=blue
 }
\usepackage{lipsum}  % this package is for creating filler text
\usepackage{blindtext}
\renewcommand{\baselinestretch}{1.1}
\newlength{\defbaselineskip}
\setlength{\defbaselineskip}{\baselineskip}

\newcommand{\setlinespacing}[1]%
           {\setlength{\baselineskip}{#1 \defbaselineskip}}
           
% MATH PACKAGES
\usepackage{mathtools}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{bm}
\usepackage{calc} 
\usepackage{calrsfs}
\usepackage{siunitx}
\usepackage{bigints} % big integrals
\usepackage{framed}

% PACKAGES FOR TABLES
\usepackage{tabularx}
\usepackage{tabulary}
\usepackage{xcolor,colortbl}
\usepackage{array}
\usepackage{booktabs} % To thicken table lines
\usepackage{multirow}
\usepackage{rotating}
\usepackage{supertabular}

% PACKAGES FOR ALGORITHMS
\usepackage{algorithmic}
\usepackage{algorithm}
\renewcommand{\algorithmiccomment}[1]{#1}

%ACRONYMS, NOMENCLATURE, EPIGRAPH, INDEX, ... PACKAGES
\usepackage{acronym}
\usepackage{epigraph} %for citations at the beginning of chapters
\usepackage{nomencl}
%IF YOU WISH, YOU MAY COMMENT THE LINE BELOW TO AVOID RENAMING "NOMENCLATURE" INTO "LIST OF SYMBOLS"
\renewcommand{\nomname}{List of Symbols}
\renewcommand{\nompreamble}{The following symbols are used within the thesis}
\makenomenclature
\usepackage{makeidx}

% correct bad hyphenation here; some examples:
\hyphenation{op-tical net-works semi-conduc-tor software-im-ple-ment-ed para-virtualization}

%CUSTOM COLORS
\definecolor{black}{rgb}{0, 0, 0}
\definecolor{cobalt}{rgb}{0.0, 0.28, 0.67}
\definecolor{darkblue}{rgb}{0.0, 0.0, 0.55}

\usepackage{fancyhdr}
%Dedication environment
\newenvironment{dedication}
{
  \phantom{.}
  \vspace{13cm}
  \begin{quote} \begin{flushright}}
{\end{flushright} \end{quote}}

%PAGE RUNNING HEADS
\usepackage{etoolbox}
\makeatletter
\patchcmd{\footrule}
  {\if@fancyplain}
  {\color{darkblue}\if@fancyplain}
  {}
\makeatother
\pagestyle{fancy}\addtolength{\headwidth}{20pt}
\fancyhf{}
\fancyhead[LE,RO]{\scshape\textcolor{darkblue}{\thepage}}
\fancyhead[LO]{\scshape\scriptsize\nouppercase{\textcolor{darkblue}{\rightmark}}} 
\fancyhead[RE]{\scshape\scriptsize\nouppercase{\textcolor{darkblue}{\leftmark}}}
\renewcommand{\headrulewidth}{0.2pt}
\renewcommand{\footrulewidth}{0.1pt}
\addtolength{\headheight}{1.6pt}
\onehalfspacing

\usepackage{enumitem}


%SET HERE COMMANDS FOR PHD COURSE, PHD URL, CYCLE, CHAIRMAN, AUTHOR, TITLE, ...
\input{0.settings.tex}

%DOCUMENT START
\begin{document}

\frontmatter

%COVER PAGE
\input{1.coverpage.tex}
\newpage

%DEDICATION PAGE
\input{2.dedicationpage.tex}
\cleardoublepage
 
%INTERNAL FRONT PAGE
\input{3.frontpage.tex}
\normalsize

%AUTHOR DECLARATION
\input{4.declarationpage.tex}
\clearpage

%FRONT MATTER PAGES NUMBERED ROMAN
\pagenumbering{roman}

%ABSTRACT IN ENGLISH
\section*{Abstract}
\thispagestyle{empty} 
\setlength{\parindent}{1em}
\justifying
\addcontentsline{toc}{section}{Abstract}
\input{5.abstract.tex}
\cleardoublepage

%ABSTRACT IN ITALIAN
\section*{Sintesi in lingua italiana}
\thispagestyle{empty} 
\setlength{\parindent}{1em}
\justifying
\addcontentsline{toc}{section}{Sintesi in lingua italiana}
\input{6.abstract_IT.tex}
\cleardoublepage

%ACKNOWLEDGEMENTS
\pagestyle{plain}
\input{7.acknowledgements.tex}
\addcontentsline{toc}{section}{Acknowledgements}
\cleardoublepage

%TOC
\pagestyle{plain}
\tableofcontents
\clearpage

%ACRONYMS LIST
\chapter*{List of Acronyms}
The following acronyms are used throughout the thesis.
\addcontentsline{toc}{section}{List of Acronyms}
\input{8.acronyms.tex}

%FIGURES LIST
\phantomsection
\listoffigures
\addcontentsline{toc}{section}{\listfigurename}

%TABLES LIST
\phantomsection
\listoftables
\addcontentsline{toc}{section}{\listtablename}
\cleardoublepage

%NOMENCLATURE (SYMBOLS)
%Remember to run:
% makeindex MyITEEphdThesis.nlo -s nomencl.ist -o MyITEEphdThesis.nls
\thispagestyle{empty} 
\nomenclature{\(c\)}{Speed of light in a vacuum}
\nomenclature{\(h\)}{Planck constant}
\printnomenclature
\addcontentsline{toc}{section}{\nomname}
\cleardoublepage

%MAIN MATTER PAGES NUMBERED ROMAN

%CHAPTERS
\pagestyle{fancy}
\pagenumbering{arabic}
\mainmatter
\setlength{\parindent}{1em}
\justifying
\singlespacing

\chapter{Introduction}
\thispagestyle{empty} 
\label{Introduction}
\input{chapter1.tex}

\chapter{Title, e.g.: Background and related work}
\thispagestyle{empty} 
\label{Chapter2}
\input{chapter2.tex}

\chapter{Title of chapter 3}
\thispagestyle{empty} 
\label{Chapter3}
\input{chapter3.tex}

\chapter{Title of chapter 4}
\thispagestyle{empty} 
\label{Chapter4}
\input{chapter4.tex}

\chapter{Conclusions}
\thispagestyle{empty} 
\label{Conclusions}
\input{conclusions.tex}
\cleardoublepage

%APPENDIXES
%To be commented out if you have no appendixes
%\appendix % to tell LaTeX that the following chapters are appendices
%\thispagestyle{empty} 
%\input{appendix.tex}
\cleardoublepage

%BIBLIOGRAPHY
\small
\bibliographystyle{plain}
\singlespacing
\setlength{\parskip}{0.2em}
\thispagestyle{empty} 
\addcontentsline{toc}{chapter}{Bibliography}
\bibliography{thesis_references}
\cleardoublepage

%LIST OF AUTHOR'S PUBLICATIONS
\chapter*{Author's publications}
\addcontentsline{toc}{chapter}{Author's publications}
\thispagestyle{empty} 
\input{publications.tex}
\cleardoublepage

\end{document}
acknowledgements.tex · 954 B
% !TEX root = MyITEEphdThesis.tex

\section*{Acknowledgements}
Write acknowledgements here, e.g. to fundings (PON, company-funded scholarship, EU project, CERN Doctoral Student Program, INPS Dottorati innovativi Intersettoriali ``Industria 4.0'', etc.), to hosting labs, to used resources, to foreign hosting institutions for research periods spent abroad, etc. 

Examples: \\
The research presented in this dissertation has been supported by the Italian Ministry of University and Research (MUR) under program PON 2014-2020 ...\\ 


The author's work has been supported by a PhD scholarship funded by ... company name ... \\ 

The author's work has been carried out in the framework of the PRIN 2018 (Progetti di Rilevante Interesse Nazionale) project ``Project Title'', grant nr. ... \\ 

The author's work has been partially carried out in the framework of the European Union project of the Horizon program ``PROJECT ACRONYM - Title'', grant nr. ... 
appendix.tex · 2 KB
% !TEX root = MyITEEphdThesis.tex

\chapter{Appendix title}

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus at pulvinar nisi. Phasellus hendrerit, diam placerat interdum iaculis, mauris justo cursus risus, in viverra purus eros at ligula. Ut metus justo, consequat a tristique posuere, laoreet nec nibh. Etiam et scelerisque mauris. Phasellus vel massa magna. Ut non neque id tortor pharetra bibendum vitae sit amet nisi. Duis nec quam quam, sed euismod justo. Pellentesque eu tellus vitae ante tempus malesuada. Nunc accumsan, quam in congue consequat, lectus lectus dapibus erat, id aliquet urna neque at massa. Nulla facilisi. Morbi ullamcorper eleifend posuere. 

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus at pulvinar nisi. Phasellus hendrerit, diam placerat interdum iaculis, mauris justo cursus risus, in viverra purus eros at ligula. Ut metus justo, consequat a tristique posuere, laoreet nec nibh. Etiam et scelerisque mauris. Phasellus vel massa magna. Ut non neque id tortor pharetra bibendum vitae sit amet nisi. Duis nec quam quam, sed euismod justo. Pellentesque eu tellus vitae ante tempus malesuada. Nunc accumsan, quam in congue consequat, lectus lectus dapibus erat, id aliquet urna neque at massa. Nulla facilisi. Morbi ullamcorper eleifend posuere. 

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus at pulvinar nisi. Phasellus hendrerit, diam placerat interdum iaculis, mauris justo cursus risus, in viverra purus eros at ligula. Ut metus justo, consequat a tristique posuere, laoreet nec nibh. Etiam et scelerisque mauris. Phasellus vel massa magna. Ut non neque id tortor pharetra bibendum vitae sit amet nisi. Duis nec quam quam, sed euismod justo. Pellentesque eu tellus vitae ante tempus malesuada. Nunc accumsan, quam in congue consequat, lectus lectus dapibus erat, id aliquet urna neque at massa. Nulla facilisi. Morbi ullamcorper eleifend posuere. 
chapter1.tex · 693 B
% !TEX root = MyITEEphdThesis.tex

\epigraph{\scriptsize{\emph{Experience is the hardest kind of teacher: it gives you the test first and the lesson afterward.}}}%
         {\scriptsize{Oscar Wilde}}
 
The thesis page format is B5, double side.

Chapters start at odd page numbers (right pages).
Optionally, an epigraph may be added like above.

...

Just an example of how to conclude the introduction:

The rest of the thesis is structured as follows. 

Chapter \ref{Introduction} introduces ... 

Chapter \ref{Chapter2} presents ... 

Chapter \ref{Chapter3} ... 

Chapter \ref{Chapter4} ... 

Chapter \ref{Conclusions} summarizes ... \\

\textit{next page left empty if this is an odd page}
chapter2.tex · 2 KB
% !TEX root = MyITEEphdThesis.tex
   
\epigraph{\scriptsize{\emph{Experience is the hardest kind of teacher: it gives you the test first and the lesson afterward.}}}%
         {\scriptsize{Oscar Wilde}}
     
Chapters start at odd page numbers (right pages).
Optionally, an epigraph may be added like above.

Previous page left empty if previous chapter ends with odd page number.

Text continues.

Text

This chapter presents ...

\section{Section title}
\subsection{Subsection title}
Text

Text

\subsection{Subsection title}
Sample text with reference to Figure~\ref{samplefig}.

\begin{figure}[t]
	 \centering
	 \includegraphics[width=0.6\columnwidth]{figs/logo-ITEE-PhD.jpg}
	 \caption{Figure caption goes below the figure}
	 \label{samplefig}
\end{figure}

Text with citation to ref. \cite{knuth1989}.


\subsubsection{Subsubsection title (no numbering)}
Sample text with reference to Table~\ref{sampletab}.

\begin{table}[b]
\caption{Table caption goes above the table}
\label{sampletab}
\centering
\begin{tabular}{ll} \hline\hline
Name & Command\\ \hline
Chapter & \textbackslash\texttt{chapter\{Chapter name\}}\\
Section & \textbackslash\texttt{section\{Section name\}}\\
Subsection & \textbackslash\texttt{subsection\{Subsection name\}}\\
Subsubsection & \textbackslash\texttt{subsubsection\{Subsubsection name\}}\\
Paragraph & \textbackslash\texttt{paragraph\{Paragraph name\}}\\
Subparagraph & \textbackslash\texttt{paragraph\{Subparagraph name\}}\\ \hline\hline
\end{tabular}
\end{table}


Text

\subsubsection{Subsubsection title}
Left page of a chapter  (even page number) -  note the page heading\\



\section{Section title}
\subsection{Subsection title}
Right page of a chapter  (odd page number) -  note the page heading\\

Text

\subsubsection{Subsubsection title (no numbering)}
Text


\subsection{Subsection title}
Text\\

Example of itemization:
\begin{itemize}
\item Item 1 text
\item Item 2 text
\item Item 3 text
\item Item 4 text
\end{itemize}

\subsubsection{Subsubsection title (no numbering)}
Text\\

Example of enumeration:
\begin{enumerate}
\item Item 1 text
\item Item 2 text
\item Item 3 text
\item Item 4 text
\end{enumerate}

Text



\subsection{Subsection title}
Text

Text


chapter3.tex · 333 B
% !TEX root = MyITEEphdThesis.tex
Chapters start at odd page numbers (right pages).

Previous page left empty if previous chapter ends with odd page number.

\section{Section title}

\subsection{Subsection title}
Text

Text

\subsubsection{Subsubsection title}
Text

Text

Text

Text

\subsection{Subsection title}
Text

Text

Text

chapter4.tex · 249 B
% !TEX root = MyITEEphdThesis.tex
Chapters start at odd page numbers (right pages).

Previous page left empty if previous chapter ends with odd page number

\section{Section title}

\subsection{Subsection title}

\subsubsection{Subsubsection title}
conclusions.tex · 32 B
% !TEX root = MyThesis.tex

Text

figs/MUR.png — binary, 173 KB

figs/PON.png — binary, 41 KB

figs/SPSB.png — binary, 185 KB

figs/UE.png — binary, 2 KB

figs/UNINA-DIETI-Ecc2018-Ecc2023.pdf — binary, 86 KB

figs/UNINA-DIETI-Ecc2018-Ecc2023.png — binary, 33 KB

figs/Unina-ITEE-SPSB-DIETI.pdf — binary, 82 KB

figs/logo-ITEE-PhD-text-big-signet.jpg — binary, 50 KB

figs/logo-ITEE-PhD.jpg — binary, 692 KB

figs/logoUNINAblu.png — binary, 934 KB

psfig.sty · 28 KB
% Psfig/TeX 
\def\PsfigVersion{1.10}
\def\setDriver{\DvipsDriver} % \DvipsDriver or \OzTeXDriver
%
% All software, documentation, and related files in this distribution of
% psfig/tex are Copyright 1993 Trevor J. Darrell
%
% Permission is granted for use and non-profit distribution of psfig/tex 
% providing that this notice is clearly maintained. The right to
% distribute any portion of psfig/tex for profit or as part of any commercial
% product is specifically reserved for the author(s) of that portion.
%
% To use with LaTeX, use \documentstyle[psfig,...]{...}
% To use with TeX, use \input psfig.sty
%
% Bugs and improvements to [email protected].
%
% Thanks to Ned Batchelder, Greg Hager (GDH), J. Daniel Smith (JDS),
% Tom Rokicki (TR), Robert Russell (RR), George V. Reilly (GVR),
% Ken McGlothlen (KHC), Baron Grey (BG), Gerhard Tobermann (GT).
% and all others who have contributed code and comments to this project!
%
% ======================================================================
% Modification History:
%
%  9 Oct 1990   JDS	used more robust bbox reading code from Tom Rokicki
% 29 Mar 1991   JDS	implemented rotation= option
% 25 Jun 1991   RR	if bb specified on cmd line don't check
%			for .ps file.
%  3 Jul 1991	JDS	check if file already read in once
%  4 Sep 1991	JDS	fixed incorrect computation of rotated
%			bounding box
% 25 Sep 1991	GVR	expanded synopsis of \psfig
% 14 Oct 1991	JDS	\fbox code from LaTeX so \psdraft works with TeX
%			changed \typeout to \ps@typeout
% 17 Oct 1991	JDS	added \psscalefirst and \psrotatefirst
% 23 Jun 1993   KHC     ``doclip'' must appear before ``rotate''
% 27 Oct 1993   TJD	removed printing of filename to avoid 
%			underscore problems. changed \frame to \fbox.
%			Added OzTeX support from BG. Added new
%			figure search path code from GT.
%
% ======================================================================
%
% Command synopsis:
%
% \psdraft	draws an outline box, but doesn't include the figure
%		in the DVI file.  Useful for previewing.
%
% \psfull	includes the figure in the DVI file (default).
%
% \psscalefirst width= or height= specifies the size of the figure
% 		before rotation.
% \psrotatefirst (default) width= or height= specifies the size of the
% 		 figure after rotation.  Asymetric figures will
% 		 appear to shrink.
%
% \psfigurepath{dir:dir:...}  sets the path to search for the figure
%
% \psfig
% usage: \psfig{file=, figure=, height=, width=,
%			bbllx=, bblly=, bburx=, bbury=,
%			rheight=, rwidth=, clip=, angle=, silent=}
%
%	"file" is the filename.  If no path name is specified and the
%		file is not found in the current directory,
%		it will be looked for in directory \psfigurepath.
%	"figure" is a synonym for "file".
%	By default, the width and height of the figure are taken from
%		the BoundingBox of the figure.
%	If "width" is specified, the figure is scaled so that it has
%		the specified width.  Its height changes proportionately.
%	If "height" is specified, the figure is scaled so that it has
%		the specified height.  Its width changes proportionately.
%	If both "width" and "height" are specified, the figure is scaled
%		anamorphically.
%	"bbllx", "bblly", "bburx", and "bbury" control the PostScript
%		BoundingBox.  If these four values are specified
%               *before* the "file" option, the PSFIG will not try to
%               open the PostScript file.
%	"rheight" and "rwidth" are the reserved height and width
%		of the figure, i.e., how big TeX actually thinks
%		the figure is.  They default to "width" and "height".
%	The "clip" option ensures that no portion of the figure will
%		appear outside its BoundingBox.  "clip=" is a switch and
%		takes no value, but the `=' must be present.
%	The "angle" option specifies the angle of rotation (degrees, ccw).
%	The "silent" option makes \psfig work silently.
%
% ======================================================================
% check to see if macros already loaded in (maybe some other file says
% "\input psfig") ...
\ifx\undefined\psfig\else\endinput\fi
%
% from a suggestion by [email protected] to allow
% loading as a style file. Changed to avoid problems
% with amstex per suggestion by [email protected]

\let\LaTeXAtSign=\@
\let\@=\relax
\edef\psfigRestoreAt{\catcode`\@=\number\catcode`@\relax}
%\edef\psfigRestoreAt{\catcode`@=\number\catcode`@\relax}
\catcode`\@=11\relax
\newwrite\@unused
\def\ps@typeout#1{{\let\protect\string\immediate\write\@unused{#1}}}

\def\DvipsDriver{
	\ps@typeout{psfig/tex \PsfigVersion -dvips}
\def\PsfigSpecials{\DvipsSpecials} 	\def\ps@dir{/}
\def\ps@predir{} }
\def\OzTeXDriver{
	\ps@typeout{psfig/tex \PsfigVersion -oztex}
	\def\PsfigSpecials{\OzTeXSpecials}
	\def\ps@dir{:}
	\def\ps@predir{:}
	\catcode`\^^J=5
}

%% Here's how you define your figure path.  Should be set up with null
%% default and a user useable definition.

\def\figurepath{./:}
\def\psfigurepath#1{\edef\figurepath{#1:}}

%%% inserted for Searching Unixpaths
%%% (the path must end with :)
%%% (call: \DoPaths\figurepath )
%%%------------------------------------------------------
\def\DoPaths#1{\expandafter\EachPath#1\stoplist}
%
\def\leer{}
\def\EachPath#1:#2\stoplist{% #1 part of the list (delimiter :)
  \ExistsFile{#1}{\SearchedFile}
  \ifx#2\leer
  \else
    \expandafter\EachPath#2\stoplist
  \fi}
%
% exists the file (does not work for directories!)
%
\def\ps@dir{/}
\def\ExistsFile#1#2{%
   \openin1=\ps@predir#1\ps@dir#2
   \ifeof1
       \closein1
       %\ps@typeout{...not: \ps@predir#1\ps@dir#2}
   \else
       \closein1
       %\ps@typeout{...in:  \ps@predir#1\ps@dir#2}
        \ifx\ps@founddir\leer
          %\ps@typeout{set founddir #1}
           \edef\ps@founddir{#1}
        \fi
   \fi}
%------------------------------------------------------
%
% Get dir in path or error
%
\def\get@dir#1{%
  \def\ps@founddir{}
  \def\SearchedFile{#1}
  \DoPaths\figurepath
%  \fi
}
%------------------------------------------------------
%%% END of Searching Unixpaths


%
% @psdo control structure -- similar to Latex @for.
% I redefined these with different names so that psfig can
% be used with TeX as well as LaTeX, and so that it will not 
% be vunerable to future changes in LaTeX's internal
% control structure,
%
\def\@nnil{\@nil}
\def\@empty{}
\def\@psdonoop#1\@@#2#3{}
\def\@psdo#1:=#2\do#3{\edef\@psdotmp{#2}\ifx\@psdotmp\@empty \else
    \expandafter\@psdoloop#2,\@nil,\@nil\@@#1{#3}\fi}
\def\@psdoloop#1,#2,#3\@@#4#5{\def#4{#1}\ifx #4\@nnil \else
       #5\def#4{#2}\ifx #4\@nnil \else#5\@ipsdoloop #3\@@#4{#5}\fi\fi}
\def\@ipsdoloop#1,#2\@@#3#4{\def#3{#1}\ifx #3\@nnil 
       \let\@nextwhile=\@psdonoop \else
      #4\relax\let\@nextwhile=\@ipsdoloop\fi\@nextwhile#2\@@#3{#4}}
\def\@tpsdo#1:=#2\do#3{\xdef\@psdotmp{#2}\ifx\@psdotmp\@empty \else
    \@tpsdoloop#2\@nil\@nil\@@#1{#3}\fi}
\def\@tpsdoloop#1#2\@@#3#4{\def#3{#1}\ifx #3\@nnil 
       \let\@nextwhile=\@psdonoop \else
      #4\relax\let\@nextwhile=\@tpsdoloop\fi\@nextwhile#2\@@#3{#4}}
% 
% \fbox is defined in latex.tex; so if \fbox is undefined, assume that
% we are not in LaTeX.
% Perhaps this could be done better???
\ifx\undefined\fbox
% \fbox code from modified slightly from LaTeX
\newdimen\fboxrule
\newdimen\fboxsep
\newdimen\ps@tempdima
\newbox\ps@tempboxa
\fboxsep = 3pt
\fboxrule = .4pt
\long\def\fbox#1{\leavevmode\setbox\ps@tempboxa\hbox{#1}\ps@tempdima\fboxrule
    \advance\ps@tempdima \fboxsep \advance\ps@tempdima \dp\ps@tempboxa
   \hbox{\lower \ps@tempdima\hbox
  {\vbox{\hrule height \fboxrule
          \hbox{\vrule width \fboxrule \hskip\fboxsep
          \vbox{\vskip\fboxsep \box\ps@tempboxa\vskip\fboxsep}\hskip 
                 \fboxsep\vrule width \fboxrule}
                 \hrule height \fboxrule}}}}
\fi
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% file reading stuff from epsf.tex
%   EPSF.TEX macro file:
%   Written by Tomas Rokicki of Radical Eye Software, 29 Mar 1989.
%   Revised by Don Knuth, 3 Jan 1990.
%   Revised by Tomas Rokicki to accept bounding boxes with no
%      space after the colon, 18 Jul 1990.
%   Portions modified/removed for use in PSFIG package by
%      J. Daniel Smith, 9 October 1990.
%
\newread\ps@stream
\newif\ifnot@eof       % continue looking for the bounding box?
\newif\if@noisy        % report what you're making?
\newif\if@atend        % %%BoundingBox: has (at end) specification
\newif\if@psfile       % does this look like a PostScript file?
%
% PostScript files should start with `%!'
%
{\catcode`\%=12\global\gdef\epsf@start{%!}}
\def\epsf@PS{PS}
%
\def\epsf@getbb#1{%
%
%   The first thing we need to do is to open the
%   PostScript file, if possible.
%
\openin\ps@stream=\ps@predir#1
\ifeof\ps@stream\ps@typeout{Error, File #1 not found}\else
%
%   Okay, we got it. Now we'll scan lines until we find one that doesn't
%   start with %. We're looking for the bounding box comment.
%
   {\not@eoftrue \chardef\other=12
    \def\do##1{\catcode`##1=\other}\dospecials \catcode`\ =10
    \loop
       \if@psfile
	  \read\ps@stream to \epsf@fileline
       \else{
	  \obeyspaces
          \read\ps@stream to \epsf@tmp\global\let\epsf@fileline\epsf@tmp}
       \fi
       \ifeof\ps@stream\not@eoffalse\else
%
%   Check the first line for `%!'.  Issue a warning message if its not
%   there, since the file might not be a PostScript file.
%
       \if@psfile\else
       \expandafter\epsf@test\epsf@fileline:. \\%
       \fi
%
%   We check to see if the first character is a % sign;
%   if so, we look further and stop only if the line begins with
%   `%%BoundingBox:' and the `(atend)' specification was not found.
%   That is, the only way to stop is when the end of file is reached,
%   or a `%%BoundingBox: llx lly urx ury' line is found.
%
          \expandafter\epsf@aux\epsf@fileline:. \\%
       \fi
   \ifnot@eof\repeat
   }\closein\ps@stream\fi}%
%
% This tests if the file we are reading looks like a PostScript file.
%
\long\def\epsf@test#1#2#3:#4\\{\def\epsf@testit{#1#2}
			\ifx\epsf@testit\epsf@start\else
\ps@typeout{Warning! File does not start with `\epsf@start'.  It may not be a PostScript file.}
			\fi
			\@psfiletrue} % don't test after 1st line
%
%   We still need to define the tricky \epsf@aux macro. This requires
%   a couple of magic constants for comparison purposes.
%
{\catcode`\%=12\global\let\epsf@percent=%\global\def\epsf@bblit{%BoundingBox}}
%
%
%   So we're ready to check for `%BoundingBox:' and to grab the
%   values if they are found.  We continue searching if `(at end)'
%   was found after the `%BoundingBox:'.
%
\long\def\epsf@aux#1#2:#3\\{\ifx#1\epsf@percent
   \def\epsf@testit{#2}\ifx\epsf@testit\epsf@bblit
	\@atendfalse
        \epsf@atend #3 . \\%
	\if@atend	
	   \if@verbose{
		\ps@typeout{psfig: found `(atend)'; continuing search}
	   }\fi
        \else
        \epsf@grab #3 . . . \\%
        \not@eoffalse
        \global\no@bbfalse
        \fi
   \fi\fi}%
%
%   Here we grab the values and stuff them in the appropriate definitions.
%
\def\epsf@grab #1 #2 #3 #4 #5\\{%
   \global\def\epsf@llx{#1}\ifx\epsf@llx\empty
      \epsf@grab #2 #3 #4 #5 .\\\else
   \global\def\epsf@lly{#2}%
   \global\def\epsf@urx{#3}\global\def\epsf@ury{#4}\fi}%
%
% Determine if the stuff following the %%BoundingBox is `(atend)'
% J. Daniel Smith.  Copied from \epsf@grab above.
%
\def\epsf@atendlit{(atend)} 
\def\epsf@atend #1 #2 #3\\{%
   \def\epsf@tmp{#1}\ifx\epsf@tmp\empty
      \epsf@atend #2 #3 .\\\else
   \ifx\epsf@tmp\epsf@atendlit\@atendtrue\fi\fi}


% End of file reading stuff from epsf.tex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% trigonometry stuff from "trig.tex"
\chardef\psletter = 11 % won't conflict with \begin{letter} now...
\chardef\other = 12

\newif \ifdebug %%% turn me on to see TeX hard at work ...
\newif\ifc@mpute %%% don't need to compute some values
\c@mputetrue % but assume that we do

\let\then = \relax
\def\r@dian{pt }
\let\r@dians = \r@dian
\let\dimensionless@nit = \r@dian
\let\dimensionless@nits = \dimensionless@nit
\def\internal@nit{sp }
\let\internal@nits = \internal@nit
\newif\ifstillc@nverging
\def \Mess@ge #1{\ifdebug \then \message {#1} \fi}

{ %%% Things that need abnormal catcodes %%%
	\catcode `\@ = \psletter
	\gdef \nodimen {\expandafter \n@dimen \the \dimen}
	\gdef \term #1 #2 #3%
	       {\edef \t@ {\the #1}%%% freeze parameter 1 (count, by value)
		\edef \t@@ {\expandafter \n@dimen \the #2\r@dian}%
				   %%% freeze parameter 2 (dimen, by value)
		\t@rm {\t@} {\t@@} {#3}%
	       }
	\gdef \t@rm #1 #2 #3%
	       {{%
		\count 0 = 0
		\dimen 0 = 1 \dimensionless@nit
		\dimen 2 = #2\relax
		\Mess@ge {Calculating term #1 of \nodimen 2}%
		\loop
		\ifnum	\count 0 < #1
		\then	\advance \count 0 by 1
			\Mess@ge {Iteration \the \count 0 \space}%
			\Multiply \dimen 0 by {\dimen 2}%
			\Mess@ge {After multiplication, term = \nodimen 0}%
			\Divide \dimen 0 by {\count 0}%
			\Mess@ge {After division, term = \nodimen 0}%
		\repeat
		\Mess@ge {Final value for term #1 of 
				\nodimen 2 \space is \nodimen 0}%
		\xdef \Term {#3 = \nodimen 0 \r@dians}%
		\aftergroup \Term
	       }}
	\catcode `\p = \other
	\catcode `\t = \other
	\gdef \n@dimen #1pt{#1} %%% throw away the ``pt''
}

\def \Divide #1by #2{\divide #1 by #2} %%% just a synonym

\def \Multiply #1by #2%%% allows division of a dimen by a dimen
       {{%%% should really freeze parameter 2 (dimen, passed by value)
	\count 0 = #1\relax
	\count 2 = #2\relax
	\count 4 = 65536
	\Mess@ge {Before scaling, count 0 = \the \count 0 \space and
			count 2 = \the \count 2}%
	\ifnum	\count 0 > 32767 %%% do our best to avoid overflow
	\then	\divide \count 0 by 4
		\divide \count 4 by 4
	\else	\ifnum	\count 0 < -32767
		\then	\divide \count 0 by 4
			\divide \count 4 by 4
		\else
		\fi
	\fi
	\ifnum	\count 2 > 32767 %%% while retaining reasonable accuracy
	\then	\divide \count 2 by 4
		\divide \count 4 by 4
	\else	\ifnum	\count 2 < -32767
		\then	\divide \count 2 by 4
			\divide \count 4 by 4
		\else
		\fi
	\fi
	\multiply \count 0 by \count 2
	\divide \count 0 by \count 4
	\xdef \product {#1 = \the \count 0 \internal@nits}%
	\aftergroup \product
       }}

\def\r@duce{\ifdim\dimen0 > 90\r@dian \then   % sin(x+90) = sin(180-x)
		\multiply\dimen0 by -1
		\advance\dimen0 by 180\r@dian
		\r@duce
	    \else \ifdim\dimen0 < -90\r@dian \then  % sin(-x) = sin(360+x)
		\advance\dimen0 by 360\r@dian
		\r@duce
		\fi
	    \fi}

\def\Sine#1%
       {{%
	\dimen 0 = #1 \r@dian
	\r@duce
	\ifdim\dimen0 = -90\r@dian \then
	   \dimen4 = -1\r@dian
	   \c@mputefalse
	\fi
	\ifdim\dimen0 = 90\r@dian \then
	   \dimen4 = 1\r@dian
	   \c@mputefalse
	\fi
	\ifdim\dimen0 = 0\r@dian \then
	   \dimen4 = 0\r@dian
	   \c@mputefalse
	\fi
%
	\ifc@mpute \then
        	% convert degrees to radians
		\divide\dimen0 by 180
		\dimen0=3.141592654\dimen0
%
		\dimen 2 = 3.1415926535897963\r@dian %%% a well-known constant
		\divide\dimen 2 by 2 %%% we only deal with -pi/2 : pi/2
		\Mess@ge {Sin: calculating Sin of \nodimen 0}%
		\count 0 = 1 %%% see power-series expansion for sine
		\dimen 2 = 1 \r@dian %%% ditto
		\dimen 4 = 0 \r@dian %%% ditto
		\loop
			\ifnum	\dimen 2 = 0 %%% then we've done
			\then	\stillc@nvergingfalse 
			\else	\stillc@nvergingtrue
			\fi
			\ifstillc@nverging %%% then calculate next term
			\then	\term {\count 0} {\dimen 0} {\dimen 2}%
				\advance \count 0 by 2
				\count 2 = \count 0
				\divide \count 2 by 2
				\ifodd	\count 2 %%% signs alternate
				\then	\advance \dimen 4 by \dimen 2
				\else	\advance \dimen 4 by -\dimen 2
				\fi
		\repeat
	\fi		
			\xdef \sine {\nodimen 4}%
       }}

% Now the Cosine can be calculated easily by calling \Sine
\def\Cosine#1{\ifx\sine\UnDefined\edef\Savesine{\relax}\else
		             \edef\Savesine{\sine}\fi
	{\dimen0=#1\r@dian\advance\dimen0 by 90\r@dian
	 \Sine{\nodimen 0}
	 \xdef\cosine{\sine}
	 \xdef\sine{\Savesine}}}	      
% end of trig stuff
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\def\psdraft{
	\def\@psdraft{0}
	%\ps@typeout{draft level now is \@psdraft \space . }
}
\def\psfull{
	\def\@psdraft{100}
	%\ps@typeout{draft level now is \@psdraft \space . }
}

\psfull

\newif\if@scalefirst
\def\psscalefirst{\@scalefirsttrue}
\def\psrotatefirst{\@scalefirstfalse}
\psrotatefirst

\newif\if@draftbox
\def\psnodraftbox{
	\@draftboxfalse
}
\def\psdraftbox{
	\@draftboxtrue
}
\@draftboxtrue

\newif\if@prologfile
\newif\if@postlogfile
\def\pssilent{
	\@noisyfalse
}
\def\psnoisy{
	\@noisytrue
}
\psnoisy
%%% These are for the option list.
%%% A specification of the form a = b maps to calling \@p@@sa{b}
\newif\if@bbllx
\newif\if@bblly
\newif\if@bburx
\newif\if@bbury
\newif\if@height
\newif\if@width
\newif\if@rheight
\newif\if@rwidth
\newif\if@angle
\newif\if@clip
\newif\if@verbose
\def\@p@@sclip#1{\@cliptrue}
%
%
\newif\if@decmpr
%
\def\@p@@sfigure#1{\def\@p@sfile{null}\def\@p@sbbfile{null}\@decmprfalse
   % look directly for file (e.g. absolute path)
   \openin1=\ps@predir#1
   \ifeof1
	\closein1
	% failed, search directories for file
	\get@dir{#1}
	\ifx\ps@founddir\leer
		% failed, search directly for file.bb
		\openin1=\ps@predir#1.bb
		\ifeof1
			\closein1
			% failed, search directories for file.bb
			\get@dir{#1.bb}
			\ifx\ps@founddir\leer
				% failed, lose.
				\ps@typeout{Can't find #1 in \figurepath}
			\else
				% found file.bb in search dir
				\@decmprtrue
				\def\@p@sfile{\ps@founddir\ps@dir#1}
				\def\@p@sbbfile{\ps@founddir\ps@dir#1.bb}
			\fi
		\else
			\closein1
			%found file.bb directly
			\@decmprtrue
			\def\@p@sfile{#1}
			\def\@p@sbbfile{#1.bb}
		\fi
	\else
		% found file in search dir
		\def\@p@sfile{\ps@founddir\ps@dir#1}
		\def\@p@sbbfile{\ps@founddir\ps@dir#1}
	\fi
   \else
	% found file directly
	\closein1
	\def\@p@sfile{#1}
	\def\@p@sbbfile{#1}
   \fi
}
%
%
%
\def\@p@@sfile#1{\@p@@sfigure{#1}}
%
\def\@p@@sbbllx#1{
		%\ps@typeout{bbllx is #1}
		\@bbllxtrue
		\dimen100=#1
		\edef\@p@sbbllx{\number\dimen100}
}
\def\@p@@sbblly#1{
		%\ps@typeout{bblly is #1}
		\@bbllytrue
		\dimen100=#1
		\edef\@p@sbblly{\number\dimen100}
}
\def\@p@@sbburx#1{
		%\ps@typeout{bburx is #1}
		\@bburxtrue
		\dimen100=#1
		\edef\@p@sbburx{\number\dimen100}
}
\def\@p@@sbbury#1{
		%\ps@typeout{bbury is #1}
		\@bburytrue
		\dimen100=#1
		\edef\@p@sbbury{\number\dimen100}
}
\def\@p@@sheight#1{
		\@heighttrue
		\dimen100=#1
   		\edef\@p@sheight{\number\dimen100}
		%\ps@typeout{Height is \@p@sheight}
}
\def\@p@@swidth#1{
		%\ps@typeout{Width is #1}
		\@widthtrue
		\dimen100=#1
		\edef\@p@swidth{\number\dimen100}
}
\def\@p@@srheight#1{
		%\ps@typeout{Reserved height is #1}
		\@rheighttrue
		\dimen100=#1
		\edef\@p@srheight{\number\dimen100}
}
\def\@p@@srwidth#1{
		%\ps@typeout{Reserved width is #1}
		\@rwidthtrue
		\dimen100=#1
		\edef\@p@srwidth{\number\dimen100}
}
\def\@p@@sangle#1{
		%\ps@typeout{Rotation is #1}
		\@angletrue
%		\dimen100=#1
		\edef\@p@sangle{#1} %\number\dimen100}
}
\def\@p@@ssilent#1{ 
		\@verbosefalse
}
\def\@p@@sprolog#1{\@prologfiletrue\def\@prologfileval{#1}}
\def\@p@@spostlog#1{\@postlogfiletrue\def\@postlogfileval{#1}}
\def\@cs@name#1{\csname #1\endcsname}
\def\@setparms#1=#2,{\@cs@name{@p@@s#1}{#2}}
%
% initialize the defaults (size the size of the figure)
%
\def\ps@init@parms{
		\@bbllxfalse \@bbllyfalse
		\@bburxfalse \@bburyfalse
		\@heightfalse \@widthfalse
		\@rheightfalse \@rwidthfalse
		\def\@p@sbbllx{}\def\@p@sbblly{}
		\def\@p@sbburx{}\def\@p@sbbury{}
		\def\@p@sheight{}\def\@p@swidth{}
		\def\@p@srheight{}\def\@p@srwidth{}
		\def\@p@sangle{0}
		\def\@p@sfile{} \def\@p@sbbfile{}
		\def\@p@scost{10}
		\def\@sc{}
		\@prologfilefalse
		\@postlogfilefalse
		\@clipfalse
		\if@noisy
			\@verbosetrue
		\else
			\@verbosefalse
		\fi
}
%
% Go through the options setting things up.
%
\def\parse@ps@parms#1{
	 	\@psdo\@psfiga:=#1\do
		   {\expandafter\@setparms\@psfiga,}}
%
% Compute bb height and width
%
\newif\ifno@bb
\def\bb@missing{
	\if@verbose{
		\ps@typeout{psfig: searching \@p@sbbfile \space  for bounding box}
	}\fi
	\no@bbtrue
	\epsf@getbb{\@p@sbbfile}
        \ifno@bb \else \bb@cull\epsf@llx\epsf@lly\epsf@urx\epsf@ury\fi
}	
\def\bb@cull#1#2#3#4{
	\dimen100=#1 bp\edef\@p@sbbllx{\number\dimen100}
	\dimen100=#2 bp\edef\@p@sbblly{\number\dimen100}
	\dimen100=#3 bp\edef\@p@sbburx{\number\dimen100}
	\dimen100=#4 bp\edef\@p@sbbury{\number\dimen100}
	\no@bbfalse
}
% rotate point (#1,#2) about (0,0).
% The sine and cosine of the angle are already stored in \sine and
% \cosine.  The result is placed in (\p@intvaluex, \p@intvaluey).
\newdimen\p@intvaluex
\newdimen\p@intvaluey
\def\rotate@#1#2{{\dimen0=#1 sp\dimen1=#2 sp
%            	calculate x' = x \cos\theta - y \sin\theta
		  \global\p@intvaluex=\cosine\dimen0
		  \dimen3=\sine\dimen1
		  \global\advance\p@intvaluex by -\dimen3
% 		calculate y' = x \sin\theta + y \cos\theta
		  \global\p@intvaluey=\sine\dimen0
		  \dimen3=\cosine\dimen1
		  \global\advance\p@intvaluey by \dimen3
		  }}
\def\compute@bb{
		\no@bbfalse
		\if@bbllx \else \no@bbtrue \fi
		\if@bblly \else \no@bbtrue \fi
		\if@bburx \else \no@bbtrue \fi
		\if@bbury \else \no@bbtrue \fi
		\ifno@bb \bb@missing \fi
		\ifno@bb \ps@typeout{FATAL ERROR: no bb supplied or found}
			\no-bb-error
		\fi
		%
%\ps@typeout{BB: \@p@sbbllx, \@p@sbblly, \@p@sbburx, \@p@sbbury} 
%
% store height/width of original (unrotated) bounding box
		\count203=\@p@sbburx
		\count204=\@p@sbbury
		\advance\count203 by -\@p@sbbllx
		\advance\count204 by -\@p@sbblly
		\edef\ps@bbw{\number\count203}
		\edef\ps@bbh{\number\count204}
		%\ps@typeout{ psbbh = \ps@bbh, psbbw = \ps@bbw }
		\if@angle 
			\Sine{\@p@sangle}\Cosine{\@p@sangle}
	        	{\dimen100=\maxdimen\xdef\r@p@sbbllx{\number\dimen100}
					    \xdef\r@p@sbblly{\number\dimen100}
			                    \xdef\r@p@sbburx{-\number\dimen100}
					    \xdef\r@p@sbbury{-\number\dimen100}}
%
% Need to rotate all four points and take the X-Y extremes of the new
% points as the new bounding box.
                        \def\minmaxtest{
			   \ifnum\number\p@intvaluex<\r@p@sbbllx
			      \xdef\r@p@sbbllx{\number\p@intvaluex}\fi
			   \ifnum\number\p@intvaluex>\r@p@sbburx
			      \xdef\r@p@sbburx{\number\p@intvaluex}\fi
			   \ifnum\number\p@intvaluey<\r@p@sbblly
			      \xdef\r@p@sbblly{\number\p@intvaluey}\fi
			   \ifnum\number\p@intvaluey>\r@p@sbbury
			      \xdef\r@p@sbbury{\number\p@intvaluey}\fi
			   }
%			lower left
			\rotate@{\@p@sbbllx}{\@p@sbblly}
			\minmaxtest
%			upper left
			\rotate@{\@p@sbbllx}{\@p@sbbury}
			\minmaxtest
%			lower right
			\rotate@{\@p@sbburx}{\@p@sbblly}
			\minmaxtest
%			upper right
			\rotate@{\@p@sbburx}{\@p@sbbury}
			\minmaxtest
			\edef\@p@sbbllx{\r@p@sbbllx}\edef\@p@sbblly{\r@p@sbblly}
			\edef\@p@sbburx{\r@p@sbburx}\edef\@p@sbbury{\r@p@sbbury}
%\ps@typeout{rotated BB: \r@p@sbbllx, \r@p@sbblly, \r@p@sbburx, \r@p@sbbury}
		\fi
		\count203=\@p@sbburx
		\count204=\@p@sbbury
		\advance\count203 by -\@p@sbbllx
		\advance\count204 by -\@p@sbblly
		\edef\@bbw{\number\count203}
		\edef\@bbh{\number\count204}
		%\ps@typeout{ bbh = \@bbh, bbw = \@bbw }
}
%
% \in@hundreds performs #1 * (#2 / #3) correct to the hundreds,
%	then leaves the result in @result
%
\def\in@hundreds#1#2#3{\count240=#2 \count241=#3
		     \count100=\count240	% 100 is first digit #2/#3
		     \divide\count100 by \count241
		     \count101=\count100
		     \multiply\count101 by \count241
		     \advance\count240 by -\count101
		     \multiply\count240 by 10
		     \count101=\count240	%101 is second digit of #2/#3
		     \divide\count101 by \count241
		     \count102=\count101
		     \multiply\count102 by \count241
		     \advance\count240 by -\count102
		     \multiply\count240 by 10
		     \count102=\count240	% 102 is the third digit
		     \divide\count102 by \count241
		     \count200=#1\count205=0
		     \count201=\count200
			\multiply\count201 by \count100
		 	\advance\count205 by \count201
		     \count201=\count200
			\divide\count201 by 10
			\multiply\count201 by \count101
			\advance\count205 by \count201
			%
		     \count201=\count200
			\divide\count201 by 100
			\multiply\count201 by \count102
			\advance\count205 by \count201
			%
		     \edef\@result{\number\count205}
}
\def\compute@wfromh{
		% computing : width = height * (bbw / bbh)
		\in@hundreds{\@p@sheight}{\@bbw}{\@bbh}
		%\ps@typeout{ \@p@sheight * \@bbw / \@bbh, = \@result }
		\edef\@p@swidth{\@result}
		%\ps@typeout{w from h: width is \@p@swidth}
}
\def\compute@hfromw{
		% computing : height = width * (bbh / bbw)
	        \in@hundreds{\@p@swidth}{\@bbh}{\@bbw}
		%\ps@typeout{ \@p@swidth * \@bbh / \@bbw = \@result }
		\edef\@p@sheight{\@result}
		%\ps@typeout{h from w : height is \@p@sheight}
}
\def\compute@handw{
		\if@height 
			\if@width
			\else
				\compute@wfromh
			\fi
		\else 
			\if@width
				\compute@hfromw
			\else
				\edef\@p@sheight{\@bbh}
				\edef\@p@swidth{\@bbw}
			\fi
		\fi
}
\def\compute@resv{
		\if@rheight \else \edef\@p@srheight{\@p@sheight} \fi
		\if@rwidth \else \edef\@p@srwidth{\@p@swidth} \fi
		%\ps@typeout{rheight = \@p@srheight, rwidth = \@p@srwidth}
}
%		
% Compute any missing values
\def\compute@sizes{
	\compute@bb
	\if@scalefirst\if@angle
% at this point the bounding box has been adjsuted correctly for
% rotation.  PSFIG does all of its scaling using \@bbh and \@bbw.  If
% a width= or height= was specified along with \psscalefirst, then the
% width=/height= value needs to be adjusted to match the new (rotated)
% bounding box size (specifed in \@bbw and \@bbh).
%    \ps@bbw       width=
%    -------  =  ---------- 
%    \@bbw       new width=
% so `new width=' = (width= * \@bbw) / \ps@bbw; where \ps@bbw is the
% width of the original (unrotated) bounding box.
	\if@width
	   \in@hundreds{\@p@swidth}{\@bbw}{\ps@bbw}
	   \edef\@p@swidth{\@result}
	\fi
	\if@height
	   \in@hundreds{\@p@sheight}{\@bbh}{\ps@bbh}
	   \edef\@p@sheight{\@result}
	\fi
	\fi\fi
	\compute@handw
	\compute@resv}
%
%
%
\def\OzTeXSpecials{
	\special{empty.ps /@isp {true} def}
	\special{empty.ps \@p@swidth \space \@p@sheight \space
			\@p@sbbllx \space \@p@sbblly \space
			\@p@sbburx \space \@p@sbbury \space
			startTexFig \space }
	\if@clip{
		\if@verbose{
			\ps@typeout{(clip)}
		}\fi
		\special{empty.ps doclip \space }
	}\fi
	\if@angle{
		\if@verbose{
			\ps@typeout{(rotate)}
		}\fi
		\special {empty.ps \@p@sangle \space rotate \space} 
	}\fi
	\if@prologfile
	    \special{\@prologfileval \space } \fi
	\if@decmpr{
		\if@verbose{
			\ps@typeout{psfig: Compression not available
			in OzTeX version \space }
		}\fi
	}\else{
		\if@verbose{
			\ps@typeout{psfig: including \@p@sfile \space }
		}\fi
		\special{epsf=\@p@sfile \space }
	}\fi
	\if@postlogfile
	    \special{\@postlogfileval \space } \fi
	\special{empty.ps /@isp {false} def}
}
\def\DvipsSpecials{
	%
	\special{ps::[begin] 	\@p@swidth \space \@p@sheight \space
			\@p@sbbllx \space \@p@sbblly \space
			\@p@sbburx \space \@p@sbbury \space
			startTexFig \space }
	\if@clip{
		\if@verbose{
			\ps@typeout{(clip)}
		}\fi
		\special{ps:: doclip \space }
	}\fi
	\if@angle
		\if@verbose{
			\ps@typeout{(clip)}
		}\fi
		\special {ps:: \@p@sangle \space rotate \space} 
	\fi
	\if@prologfile
	    \special{ps: plotfile \@prologfileval \space } \fi
	\if@decmpr{
		\if@verbose{
			\ps@typeout{psfig: including \@[email protected] \space }
		}\fi
		\special{ps: plotfile "`zcat \@[email protected]" \space }
	}\else{
		\if@verbose{
			\ps@typeout{psfig: including \@p@sfile \space }
		}\fi
		\special{ps: plotfile \@p@sfile \space }
	}\fi
	\if@postlogfile
	    \special{ps: plotfile \@postlogfileval \space } \fi
	\special{ps::[end] endTexFig \space }
}
%
% \psfig
% usage : \psfig{file=, height=, width=, bbllx=, bblly=, bburx=, bbury=,
%			rheight=, rwidth=, clip=}
%
% "clip=" is a switch and takes no value, but the `=' must be present.
\def\psfig#1{\vbox {
	% do a zero width hard space so that a single
	% \psfig in a centering enviornment will behave nicely
	%{\setbox0=\hbox{\ }\ \hskip-\wd0}
	%
	\ps@init@parms
	\parse@ps@parms{#1}
	\compute@sizes
	%
	\ifnum\@p@scost<\@psdraft{
		\PsfigSpecials 
		% Create the vbox to reserve the space for the figure.
		\vbox to \@p@srheight sp{
		% 1/92 TJD Changed from "true sp" to "sp" for magnification.
			\hbox to \@p@srwidth sp{
				\hss
			}
		\vss
		}
	}\else{
		% draft figure, just reserve the space and print the
		% path name.
		\if@draftbox{		
			% Verbose draft: print file name in box
			% 10/93 TJD changed to fbox from frame
			\hbox{\fbox{\vbox to \@p@srheight sp{
			\vss
			\hbox to \@p@srwidth sp{ \hss 
			        % 10/93 TJD deleted to avoid ``_'' problems
				% \@p@sfile
			 \hss }
			\vss
			}}}
		}\else{
			% Non-verbose draft
			\vbox to \@p@srheight sp{
			\vss
			\hbox to \@p@srwidth sp{\hss}
			\vss
			}
		}\fi	



	}\fi
}}
\psfigRestoreAt
\setDriver
\let\@=\LaTeXAtSign



publications.tex · 459 B
% !TEX root = MyITEEphdThesis.tex
% Insert here the list of your publications during the PhD

Insert here the list of your scientific publications during the PhD, e.g.: \\

\begin{enumerate}
\item D.E. Knuth. The errors of TEX. Software: Practice and Experience, 19(7), 1989. DOI: 10.1002/spe.4380190702.

\item D.E. Knuth. Structured Programming with go to Statements, ACM Computing Surveys, 6(4), 261-301, 1974. DOI: 10.1145/356635.356640. 
\end{enumerate}
thesis_references.bib · 445 B
%% This BibTeX bibliography file was created using BibDesk.
%% http://bibdesk.sourceforge.net/

%% Created for Stefano Russo at 2022-01-29 17:29:21 +0100 


%% Saved with string encoding Unicode (UTF-8) 



@article{knuth1989,
	Ages = {607--685},
	Author = {Knuth, D.E.},
	Date-Modified = {2022-01-29 16:29:00 +0000},
	Journal = {Software: Practice and Experience},
	Number = {7},
	Title = {{The errors of TEX}},
	Volume = {19},
	Year = {1989}}

The first page, as this template compiles today. Click it to enlarge, and again to shrink. Open the file ↗