Track the research dossiers, section freezes, supporting manuscript materials, and round-aware agent controls so future drafting decisions can be reviewed across both repository mirrors. Co-authored-by: Cursor <cursoragent@cursor.com>
469 lines
13 KiB
OpenEdge ABL
469 lines
13 KiB
OpenEdge ABL
%%
|
|
%% This is file `Thesis.cls', based on 'ECSthesis.cls', by Steve R. Gunn
|
|
%% generated with the docstrip utility.
|
|
%%
|
|
%% Created by Steve R. Gunn, modified by Sunil Patel: www.sunilpatel.co.uk
|
|
|
|
\NeedsTeXFormat{LaTeX2e}[1996/12/01]
|
|
\ProvidesClass{Thesis}
|
|
[2007/22/02 v1.0
|
|
LaTeX document class]
|
|
\def\baseclass{book}
|
|
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\baseclass}}
|
|
\def\@checkoptions#1#2{
|
|
\edef\@curroptions{\@ptionlist{\@currname.\@currext}}
|
|
\@tempswafalse
|
|
\@tfor\@this:=#2\do{
|
|
\@expandtwoargs\in@{,\@this,}{,\@curroptions,}
|
|
\ifin@ \@tempswatrue \@break@tfor \fi}
|
|
\let\@this\@empty
|
|
\if@tempswa \else \PassOptionsToClass{#1}{\baseclass}\fi
|
|
}
|
|
\@checkoptions{11pt}{{10pt}{11pt}{12pt}}
|
|
\PassOptionsToClass{a4paper}{\baseclass}
|
|
\ProcessOptions\relax
|
|
\LoadClass{\baseclass}
|
|
\newcommand\bhrule{\typeout{------------------------------------------------------------------------------}}
|
|
|
|
\newcommand\Declaration[1]{
|
|
\btypeout{Certificate of Originality}
|
|
\addtotoc{Certificate of Originality}
|
|
\thispagestyle{plain}
|
|
\null\vfil
|
|
%\vskip 60\p@
|
|
\begin{center}{\huge\bf CERTIFICATE OF ORIGINALITY\par}\end{center}
|
|
%\vskip 60\p@
|
|
{\normalsize #1}
|
|
\vfil\vfil\null
|
|
%\cleardoublepage
|
|
}
|
|
|
|
\newcommand\btypeout[1]{\bhrule\typeout{\space #1}\bhrule}
|
|
\def\today{\ifcase\month\or
|
|
January\or February\or March\or April\or May\or June\or
|
|
July\or August\or September\or October\or November\or December\fi
|
|
\space \number\year}
|
|
\usepackage{setspace}
|
|
\onehalfspacing
|
|
\setlength{\parindent}{0pt}
|
|
\setlength{\parskip}{2.0ex plus0.5ex minus0.2ex}
|
|
\usepackage{vmargin}
|
|
\setmarginsrb { 1.5in} % left margin
|
|
{ 0.6in} % top margin
|
|
{ 1.0in} % right margin
|
|
{ 0.8in} % bottom margin
|
|
{ 20pt} % head height
|
|
{0.25in} % head sep
|
|
{ 9pt} % foot height
|
|
{ 0.3in} % foot sep
|
|
\raggedbottom
|
|
\setlength{\topskip}{1\topskip \@plus 5\p@}
|
|
\doublehyphendemerits=10000 % No consecutive line hyphens.
|
|
\brokenpenalty=10000 % No broken words across columns/pages.
|
|
\widowpenalty=9999 % Almost no widows at bottom of page.
|
|
\clubpenalty=9999 % Almost no orphans at top of page.
|
|
\interfootnotelinepenalty=9999 % Almost never break footnotes.
|
|
\usepackage{fancyhdr}
|
|
\lhead[\rm\thepage]{\fancyplain{}{\sl{\rightmark}}}
|
|
\rhead[\fancyplain{}{\sl{\leftmark}}]{\rm\thepage}
|
|
\chead{}\lfoot{}\rfoot{}\cfoot{}
|
|
|
|
\pagestyle{fancy}
|
|
|
|
\renewcommand{\chaptermark}[1]{\btypeout{\thechapter\space #1}\markboth{\@chapapp\ \thechapter\ #1}{\@chapapp\ \thechapter\ #1}}
|
|
|
|
\renewcommand{\sectionmark}[1]{}
|
|
|
|
\renewcommand{\subsectionmark}[1]{}
|
|
|
|
\def\cleardoublepage{\clearpage\if@twoside \ifodd\c@page\else
|
|
\hbox{}
|
|
\thispagestyle{empty}
|
|
% \newpage
|
|
\if@twocolumn\hbox{}\newpage\fi\fi\fi}
|
|
|
|
% packages----------------------------------------------------
|
|
|
|
% Table configuration packages
|
|
\usepackage{array,graphicx}
|
|
\usepackage{booktabs}
|
|
\usepackage{pifont}
|
|
\usepackage{tabu}
|
|
\usepackage{longtable}
|
|
\usepackage{xcolor}
|
|
\usepackage{tcolorbox}
|
|
\usepackage{textcomp}
|
|
\usepackage{multicol}
|
|
\usepackage{url}
|
|
\def\UrlBreaks{\do\A\do\B\do\C\do\D\do\E\do\F\do\G\do\H\do\I\do\J
|
|
\do\K\do\L\do\M\do\N\do\O\do\P\do\Q\do\R\do\S\do\T\do\U\do\V
|
|
\do\W\do\X\do\Y\do\Z\do\[\do\\\do\]\do\^\do\_\do\`\do\a\do\b
|
|
\do\c\do\d\do\e\do\f\do\g\do\h\do\i\do\j\do\k\do\l\do\m\do\n
|
|
\do\o\do\p\do\q\do\r\do\s\do\t\do\u\do\v\do\w\do\x\do\y\do\z
|
|
\do\.\do\@\do\\\do\/\do\!\do\_\do\|\do\;\do\>\do\]\do\)\do\,
|
|
\do\?\do\'\do+\do\=\do\#}
|
|
|
|
|
|
|
|
%----------------------------
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\usepackage{amsmath,amsfonts,amssymb,amscd,amsthm,xspace}
|
|
\theoremstyle{plain}
|
|
\newtheorem{example}{Example}[chapter]
|
|
\newtheorem{theorem}{Theorem}[chapter]
|
|
\newtheorem{corollary}[theorem]{Corollary}
|
|
\newtheorem{lemma}[theorem]{Lemma}
|
|
\newtheorem{proposition}[theorem]{Proposition}
|
|
\newtheorem{axiom}[theorem]{Axiom}
|
|
\theoremstyle{definition}
|
|
\newtheorem{definition}[theorem]{Definition}
|
|
\theoremstyle{remark}
|
|
\newtheorem{remark}[theorem]{Remark}
|
|
\usepackage[centerlast,small,sc]{caption}
|
|
\setlength{\captionmargin}{20pt}
|
|
\newcommand{\fref}[1]{Fig.~\ref{#1}}
|
|
\newcommand{\tref}[1]{Table~\ref{#1}}
|
|
\newcommand{\eref}[1]{Equation~\ref{#1}}
|
|
\newcommand{\cref}[1]{Chapter~\ref{#1}}
|
|
\newcommand{\sref}[1]{Section~\ref{#1}}
|
|
\newcommand{\aref}[1]{Appendix~\ref{#1}}
|
|
\renewcommand{\topfraction}{0.85}
|
|
\renewcommand{\bottomfraction}{.85}
|
|
\renewcommand{\textfraction}{0.1}
|
|
\renewcommand{\dbltopfraction}{.85}
|
|
\renewcommand{\floatpagefraction}{0.75}
|
|
\renewcommand{\dblfloatpagefraction}{.75}
|
|
\setcounter{topnumber}{9}
|
|
\setcounter{bottomnumber}{9}
|
|
\setcounter{totalnumber}{20}
|
|
\setcounter{dbltopnumber}{9}
|
|
\usepackage{graphicx}
|
|
\usepackage{epstopdf}
|
|
%\usepackage[scriptsize]{subfigure}
|
|
\usepackage{booktabs}
|
|
\usepackage{rotating}
|
|
\usepackage{listings}
|
|
\usepackage{Format/lstpatch}
|
|
\lstset{captionpos=b,
|
|
frame=tb,
|
|
basicstyle=\scriptsize\ttfamily,
|
|
showstringspaces=false,
|
|
keepspaces=true}
|
|
\lstdefinestyle{matlab} {
|
|
language=Matlab,
|
|
keywordstyle=\color{blue},
|
|
commentstyle=\color[rgb]{0.13,0.55,0.13}\em,
|
|
stringstyle=\color[rgb]{0.7,0,0} }
|
|
\usepackage[pdfpagemode={UseOutlines},bookmarks=true,bookmarksopen=true,
|
|
bookmarksopenlevel=0,bookmarksnumbered=true,hypertexnames=false,
|
|
colorlinks,linkcolor={blue},citecolor={blue},urlcolor={red},
|
|
pdfstartview={FitV},unicode,breaklinks=true]{hyperref}
|
|
|
|
\pdfstringdefDisableCommands{
|
|
\let\\\space
|
|
}
|
|
\newcommand*{\examiner}[1]{\def\examname{#1}}
|
|
%\newcommand*{\degree}[1]{\def\degreename{#1}}
|
|
\newcommand*{\authors}[1]{\def\authornames{#1}}
|
|
\newcommand*{\addresses}[1]{\def\addressnames{#1}}
|
|
\newcommand*{\university}[1]{\def\univname{#1}}
|
|
\newcommand*{\UNIVERSITY}[1]{\def\UNIVNAME{#1}}
|
|
\newcommand*{\department}[1]{\def\deptname{#1}}
|
|
\newcommand*{\DEPARTMENT}[1]{\def\DEPTNAME{#1}}
|
|
\newcommand*{\group}[1]{\def\groupname{#1}}
|
|
\newcommand*{\GROUP}[1]{\def\GROUPNAME{#1}}
|
|
\newcommand*{\faculty}[1]{\def\facname{#1}}
|
|
\newcommand*{\FACULTY}[1]{\def\FACNAME{#1}}
|
|
\newcommand*{\subject}[1]{\def\subjectname{#1}}
|
|
\newcommand*{\keywords}[1]{\def\keywordnames{#1}}
|
|
\newcommand*{\supervisor}[1]{\def\supname{#1}}
|
|
\examiner {}
|
|
%\degree {}
|
|
\authors {}
|
|
\university {\texorpdfstring{\href{https://www.auth.gr}
|
|
{The Hong Kong Polytechnic University}}
|
|
{University name}}
|
|
\UNIVERSITY {\texorpdfstring{
|
|
{\Large The Hong Kong Polytechnic University}}
|
|
{UNIVERSITY NAME (IN BLOCK CAPITALS)}}
|
|
\department {\texorpdfstring{
|
|
{Department of Mechanical Engineering}}
|
|
{Department or School Name}}
|
|
\DEPARTMENT {\texorpdfstring{
|
|
{Department of Mechanical Engineering}}
|
|
{DEPARTMENT OR SCHOOL NAME (IN BLOCK CAPITALS)}}
|
|
\group {\texorpdfstring{\href{https://datalab.csd.auth.gr/}
|
|
{Datalab: Tang Group}}
|
|
{Research Group Name}}
|
|
\GROUP {\texorpdfstring{\href{https://datalab.csd.auth.gr/}
|
|
{DATALAB: Tang Group}}
|
|
{RESEARCH GROUP NAME (IN BLOCK CAPITALS)}}
|
|
\faculty {\texorpdfstring{
|
|
{Faculty of Engineering}}
|
|
{Faculty Name}}
|
|
\FACULTY {\texorpdfstring{\href{http://www.sci.auth.gr/}
|
|
{FACULTY OF Engineering}}
|
|
{FACULTY NAME (IN BLOCK CAPITALS)}}
|
|
\supervisor {\texorpdfstring{
|
|
{Supervising Professor: Tang Hui, Chen Shiyi}}
|
|
{Supervising Professor's name}}
|
|
\addresses {}
|
|
\subject {}
|
|
\keywords {}
|
|
|
|
|
|
\renewcommand\maketitle{
|
|
\btypeout{Title Page}
|
|
\hypersetup{pdftitle={\@title}}
|
|
\hypersetup{pdfsubject=\subjectname}
|
|
\hypersetup{pdfauthor=\authornames}
|
|
\hypersetup{pdfkeywords=\keywordnames}
|
|
\thispagestyle{empty}
|
|
\begin{titlepage}
|
|
\let\footnotesize\small
|
|
\let\footnoterule\relax
|
|
\let \footnote \thanks
|
|
\setcounter{footnote}{0}
|
|
\null\vfil
|
|
\vskip 60\p@
|
|
\begin{center}
|
|
% \begin{figure}
|
|
% \centering
|
|
% \includegraphics[scale=0.45]{Figures/Logo_polyu}
|
|
% \end{figure}
|
|
\setlength{\parskip}{0pt}
|
|
{\Huge \UNIVNAME \par}
|
|
\par
|
|
{\large \deptname \par}
|
|
\vfill
|
|
{\huge \bf \@title \par}
|
|
\vfill
|
|
%{\large by \par}
|
|
% \bigskip
|
|
% \bigskip
|
|
{\LARGE \authornames \par}
|
|
\vfill
|
|
{\large \textit{A report submitted in partial fulfilment of the requirements} \par}
|
|
{\large \textit{for the confirmation of} \par}
|
|
{\large \textit{\textbf{Doctor of Philosophy}} \par}
|
|
\bigskip
|
|
\bigskip
|
|
%{\large \textit{in the} \par}
|
|
%{\large \deptname \par}
|
|
%{\large \facname \par}
|
|
\bigskip
|
|
\bigskip
|
|
% {\large \supname \par}
|
|
\bigskip
|
|
\bigskip
|
|
\bigskip
|
|
\bigskip
|
|
{\Large \@date \par}
|
|
\end{center}
|
|
\par
|
|
\@thanks
|
|
\vfil\null
|
|
\end{titlepage}
|
|
\setcounter{footnote}{0}%
|
|
\global\let\thanks\relax
|
|
\global\let\maketitle\relax
|
|
\global\let\@thanks\@empty
|
|
\global\let\@author\@empty
|
|
\global\let\@date\@empty
|
|
\global\let\@title\@empty
|
|
\global\let\title\relax
|
|
\global\let\author\relax
|
|
\global\let\date\relax
|
|
\global\let\and\relax
|
|
\clearpage
|
|
}
|
|
|
|
|
|
|
|
% \newenvironment{abstract}
|
|
% {
|
|
% \btypeout{Abstract Page}
|
|
% \thispagestyle{empty}
|
|
% \null\vfil
|
|
% \begin{center}
|
|
% \setlength{\parskip}{0pt}
|
|
% {\normalsize \UNIVNAME \par}
|
|
% \bigskip
|
|
% {\huge{\textit{Abstract}} \par}
|
|
% \bigskip
|
|
% {\normalsize \facname \par}
|
|
% {\normalsize \deptname \par}
|
|
% \bigskip
|
|
% {\normalsize Undergraduate Degree\par}
|
|
% \bigskip
|
|
% {\normalsize\bf \@title \par}
|
|
% \medskip
|
|
% {\normalsize by \authornames \par}
|
|
% \bigskip
|
|
% \end{center}
|
|
% }
|
|
|
|
\newenvironment{abstract}
|
|
{
|
|
\btypeout{Abstract Page}
|
|
\thispagestyle{plain}
|
|
%\null\vfil
|
|
\begin{center}
|
|
{\huge{\textit{Abstract}} \par}
|
|
\end{center}
|
|
}
|
|
{
|
|
\vfil\vfil\vfil\null
|
|
\clearpage
|
|
}
|
|
\addtocounter{secnumdepth}{1}
|
|
\setcounter{tocdepth}{6}
|
|
\newcounter{dummy}
|
|
|
|
|
|
\newcommand\addtotoc[1]{
|
|
\refstepcounter{dummy}
|
|
\addcontentsline{toc}{chapter}{#1}}
|
|
|
|
\renewcommand\tableofcontents{
|
|
\btypeout{Table of Contents}
|
|
\begin{spacing}{1}{
|
|
\setlength{\parskip}{1pt}
|
|
\if@twocolumn
|
|
\@restonecoltrue\onecolumn
|
|
\else
|
|
\@restonecolfalse
|
|
\fi
|
|
\chapter*{\contentsname
|
|
\@mkboth{
|
|
\MakeUppercase\contentsname}{\MakeUppercase\contentsname}}
|
|
\@starttoc{toc}
|
|
\if@restonecol\twocolumn\fi
|
|
\clearpage
|
|
}\end{spacing}
|
|
}
|
|
|
|
\renewcommand\listoffigures{
|
|
\btypeout{List of Figures}
|
|
\addtotoc{List of Figures}
|
|
\begin{spacing}{1}{
|
|
\setlength{\parskip}{1pt}
|
|
\if@twocolumn
|
|
\@restonecoltrue\onecolumn
|
|
\else
|
|
\@restonecolfalse
|
|
\fi
|
|
\chapter*{\listfigurename
|
|
\@mkboth{\MakeUppercase\listfigurename}
|
|
{\MakeUppercase\listfigurename}}
|
|
\@starttoc{lof}
|
|
\if@restonecol\twocolumn\fi
|
|
\clearpage
|
|
}\end{spacing}
|
|
}
|
|
\renewcommand\listoftables{
|
|
\btypeout{List of Tables}
|
|
\addtotoc{List of Tables}
|
|
\begin{spacing}{1}{
|
|
\setlength{\parskip}{1pt}
|
|
\if@twocolumn
|
|
\@restonecoltrue\onecolumn
|
|
\else
|
|
\@restonecolfalse
|
|
\fi
|
|
\chapter*{\listtablename
|
|
\@mkboth{
|
|
\MakeUppercase\listtablename}{\MakeUppercase\listtablename}}
|
|
\@starttoc{lot}
|
|
\if@restonecol\twocolumn\fi
|
|
\clearpage
|
|
}\end{spacing}
|
|
}
|
|
\newcommand\listsymbolname{Abbreviations}
|
|
\usepackage{longtable}
|
|
\newcommand\listofsymbols[2]{
|
|
\btypeout{\listsymbolname}
|
|
\addtotoc{\listsymbolname}
|
|
\chapter*{\listsymbolname
|
|
\@mkboth{
|
|
\MakeUppercase\listsymbolname}{\MakeUppercase\listsymbolname}}
|
|
\begin{longtable}[c]{#1}#2\end{longtable}\par
|
|
\cleardoublepage
|
|
}
|
|
\newcommand\listconstants{Physical Constants}
|
|
\usepackage{longtable}
|
|
\newcommand\listofconstants[2]{
|
|
\btypeout{\listconstants}
|
|
\addtotoc{\listconstants}
|
|
\chapter*{\listconstants
|
|
\@mkboth{
|
|
\MakeUppercase\listconstants}{\MakeUppercase\listconstants}}
|
|
\begin{longtable}[c]{#1}#2\end{longtable}\par
|
|
\cleardoublepage
|
|
}
|
|
\newcommand\listnomenclature{Symbols}
|
|
\usepackage{longtable}
|
|
\newcommand\listofnomenclature[2]{
|
|
\btypeout{\listnomenclature}
|
|
\addtotoc{\listnomenclature}
|
|
\chapter*{\listnomenclature
|
|
\@mkboth{
|
|
\MakeUppercase\listnomenclature}{\MakeUppercase\listnomenclature}}
|
|
\begin{longtable}[c]{#1}#2\end{longtable}\par
|
|
\cleardoublepage
|
|
}
|
|
|
|
|
|
\newcommand\acknowledgements[1]{
|
|
\btypeout{Acknowledgements}
|
|
\addtotoc{Acknowledgements}
|
|
\thispagestyle{plain}
|
|
\begin{center}{\huge{\textit{Acknowledgements}} \par}\end{center}
|
|
{\normalsize #1}
|
|
\vfil\vfil\null
|
|
}
|
|
|
|
\newcommand\publications[1]{
|
|
\btypeout{Publications}
|
|
\addtotoc{Publications Arising from the Thesis}
|
|
\thispagestyle{plain}
|
|
\begin{center}{\huge{\textit{Publications Arising from the Thesis}} \par}\end{center}
|
|
{\normalsize #1}
|
|
\vfil\vfil\null
|
|
}
|
|
|
|
|
|
|
|
\newcommand\dedicatory[1]{
|
|
\btypeout{Dedicatory}
|
|
\thispagestyle{plain}
|
|
\null\vfil
|
|
\vskip 60\p@
|
|
\begin{center}{\Large \sl #1}\end{center}
|
|
\vfil\null
|
|
% \cleardoublepage
|
|
\clearpage
|
|
}
|
|
\renewcommand\backmatter{
|
|
\if@openright
|
|
% \cleardoublepage
|
|
\clearpage
|
|
\else
|
|
\clearpage
|
|
\fi
|
|
\addtotoc{\bibname}
|
|
\btypeout{\bibname}
|
|
\@mainmatterfalse}
|
|
\endinput
|
|
%%
|
|
%% End of file `Thesis.cls'.
|