| 1 | %======================================================================
|
|---|
| 2 | % University of Waterloo Thesis Template for LaTeX
|
|---|
| 3 | % Last Updated November, 2020
|
|---|
| 4 | % by Stephen Carr, IST Client Services,
|
|---|
| 5 | % University of Waterloo, 200 University Ave. W., Waterloo, Ontario, Canada
|
|---|
| 6 | % FOR ASSISTANCE, please send mail to request@uwaterloo.ca
|
|---|
| 7 |
|
|---|
| 8 | % DISCLAIMER
|
|---|
| 9 | % To the best of our knowledge, this template satisfies the current uWaterloo
|
|---|
| 10 | % thesis requirements. However, it is your responsibility to assure that you
|
|---|
| 11 | % have met all requirements of the University and your particular department.
|
|---|
| 12 |
|
|---|
| 13 | % Many thanks for the feedback from many graduates who assisted the
|
|---|
| 14 | % development of this template. Also note that there are explanatory comments
|
|---|
| 15 | % and tips throughout this template.
|
|---|
| 16 | %======================================================================
|
|---|
| 17 | % Some important notes on using this template and making it your own...
|
|---|
| 18 |
|
|---|
| 19 | % The University of Waterloo has required electronic thesis submission since
|
|---|
| 20 | % October 2006. See the uWaterloo thesis regulations at:
|
|---|
| 21 | % https://uwaterloo.ca/graduate-studies/thesis.
|
|---|
| 22 | % This thesis template is geared towards generating a PDF version optimized
|
|---|
| 23 | % for viewing on an electronic display, including hyperlinks within the PDF.
|
|---|
| 24 |
|
|---|
| 25 | % DON'T FORGET TO ADD YOUR OWN NAME AND TITLE in the "hyperref" package
|
|---|
| 26 | % configuration below. THIS INFORMATION GETS EMBEDDED IN THE FINAL PDF
|
|---|
| 27 | % DOCUMENT. You can view the information if you view properties of the PDF.
|
|---|
| 28 |
|
|---|
| 29 | % Many faculties/departments also require one or more printed copies.
|
|---|
| 30 | % This template attempts to satisfy both types of output.
|
|---|
| 31 | % See additional notes below.
|
|---|
| 32 | % It is based on the standard "book" document class which provides all
|
|---|
| 33 | % necessary sectioning structures and allows multi-part theses.
|
|---|
| 34 |
|
|---|
| 35 | % If you are using this template in Overleaf (cloud-based collaboration
|
|---|
| 36 | % service), then it is automatically processed and previewed for you as you
|
|---|
| 37 | % edit.
|
|---|
| 38 |
|
|---|
| 39 | % For people who prefer to install their own LaTeX distributions on their own
|
|---|
| 40 | % computers, and process the source files manually, the following notes
|
|---|
| 41 | % provide the sequence of tasks:
|
|---|
| 42 |
|
|---|
| 43 | % E.g. to process a thesis called "mythesis.tex" based on this template, run:
|
|---|
| 44 |
|
|---|
| 45 | % pdflatex mythesis -- first pass of the pdflatex processor
|
|---|
| 46 | % bibtex mythesis -- generates bibliography from .bib data file(s)
|
|---|
| 47 | % makeindex -- should be run only if an index is used
|
|---|
| 48 | % pdflatex mythesis -- fixes numbering in cross-references, bibliographic
|
|---|
| 49 | % references, glossaries, index, etc.
|
|---|
| 50 | % pdflatex mythesis -- it takes a couple of passes to completely process all
|
|---|
| 51 | % cross-references
|
|---|
| 52 |
|
|---|
| 53 | % If you use the recommended LaTeX editor, Texmaker, you would open the
|
|---|
| 54 | % mythesis.tex file, then click the PDFLaTeX button. Then run BibTeX (under
|
|---|
| 55 | % the Tools menu). Then click the PDFLaTeX button two more times.
|
|---|
| 56 | % If you have an index as well, you'll need to run MakeIndex from the Tools
|
|---|
| 57 | % menu as well, before running pdflatex the last two times.
|
|---|
| 58 |
|
|---|
| 59 | % N.B. The "pdftex" program allows graphics in the following formats to be
|
|---|
| 60 | % included with the "\includegraphics" command: PNG, PDF, JPEG, TIFF
|
|---|
| 61 | % Tip: Generate your figures and photos in the size you want them to appear
|
|---|
| 62 | % in your thesis, rather than scaling them with \includegraphics options.
|
|---|
| 63 | % Tip: Any drawings you do should be in scalable vector graphic formats: SVG,
|
|---|
| 64 | % PNG, WMF, EPS and then converted to PNG or PDF, so they are scalable in the
|
|---|
| 65 | % final PDF as well.
|
|---|
| 66 | % Tip: Photographs should be cropped and compressed so as not to be too large.
|
|---|
| 67 |
|
|---|
| 68 | % To create a PDF output that is optimized for double-sided printing:
|
|---|
| 69 | % 1) comment-out the \documentclass statement in the preamble below, and
|
|---|
| 70 | % un-comment the second \documentclass line.
|
|---|
| 71 | % 2) change the value assigned below to the boolean variable "PrintVersion"
|
|---|
| 72 | % from "false" to "true".
|
|---|
| 73 |
|
|---|
| 74 | % ======================================================================
|
|---|
| 75 | % D O C U M E N T P R E A M B L E
|
|---|
| 76 | % Specify the document class, default style attributes, page dimensions, etc.
|
|---|
| 77 | % For hyperlinked PDF, suitable for viewing on a computer, use this:
|
|---|
| 78 | \documentclass[letterpaper,12pt,titlepage,oneside,final]{book}
|
|---|
| 79 |
|
|---|
| 80 | % For PDF, suitable for double-sided printing, change the PrintVersion
|
|---|
| 81 | % variable below to "true" and use this \documentclass line instead of the
|
|---|
| 82 | % one above:
|
|---|
| 83 | %\documentclass[letterpaper,12pt,titlepage,openright,twoside,final]{book}
|
|---|
| 84 |
|
|---|
| 85 | \usepackage{etoolbox}
|
|---|
| 86 |
|
|---|
| 87 | % Some LaTeX commands I define for my own nomenclature.
|
|---|
| 88 | % If you have to, it's easier to make changes to nomenclature once here than
|
|---|
| 89 | % in a million places throughout your thesis!
|
|---|
| 90 | \newcommand{\package}[1]{\textbf{#1}} % package names in bold text
|
|---|
| 91 | \newcommand{\cmmd}[1]{\textbackslash\texttt{#1}} % command name in tt font
|
|---|
| 92 | \newcommand{\href}[1]{#1} % does nothing, but defines the command so the
|
|---|
| 93 | % print-optimized version will ignore \href tags (redefined by hyperref pkg).
|
|---|
| 94 | % Anything defined here may be redefined by packages added below...
|
|---|
| 95 |
|
|---|
| 96 | % This package allows if-then-else control structures.
|
|---|
| 97 | \usepackage{ifthen}
|
|---|
| 98 | \newboolean{PrintVersion}
|
|---|
| 99 | \setboolean{PrintVersion}{false}
|
|---|
| 100 | % CHANGE THIS VALUE TO "true" as necessary, to improve printed results for
|
|---|
| 101 | % hard copies by overriding some options of the hyperref package, called below.
|
|---|
| 102 |
|
|---|
| 103 | %\usepackage{nomencl} % For a nomenclature (optional; available from ctan.org)
|
|---|
| 104 | % Lots of math symbols and environments
|
|---|
| 105 | \usepackage{amsmath,amssymb,amstext}
|
|---|
| 106 | % For including graphics N.B. pdftex graphics driver
|
|---|
| 107 | %\usepackage[pdftex]{graphicx}
|
|---|
| 108 | \usepackage{epic,eepic}
|
|---|
| 109 | \usepackage{graphicx}
|
|---|
| 110 | % Removes large sections of the document.
|
|---|
| 111 | \usepackage{comment}
|
|---|
| 112 | % Adds todos (Must be included after comment.)
|
|---|
| 113 | \usepackage{todonotes}
|
|---|
| 114 |
|
|---|
| 115 |
|
|---|
| 116 | % Hyperlinks make it very easy to navigate an electronic document.
|
|---|
| 117 | % In addition, this is where you should specify the thesis title and author as
|
|---|
| 118 | % they appear in the properties of the PDF document.
|
|---|
| 119 | % Use the "hyperref" package
|
|---|
| 120 | % N.B. HYPERREF MUST BE THE LAST PACKAGE LOADED; ADD ADDITIONAL PKGS ABOVE
|
|---|
| 121 | %\usepackage[pdftex,pagebackref=true]{hyperref} % with basic options
|
|---|
| 122 | \usepackage[pagebackref=true]{hyperref} % with basic options
|
|---|
| 123 | %\usepackage[pdftex,pagebackref=true]{hyperref}
|
|---|
| 124 | % N.B. pagebackref=true provides links back from the References to the body
|
|---|
| 125 | % text. This can cause trouble for printing.
|
|---|
| 126 | \hypersetup{
|
|---|
| 127 | plainpages=false, % needed if Roman numbers in frontpages
|
|---|
| 128 | unicode=false, % non-Latin characters in Acrobat's bookmarks
|
|---|
| 129 | pdftoolbar=true, % show Acrobat's toolbar?
|
|---|
| 130 | pdfmenubar=true, % show Acrobat's menu?
|
|---|
| 131 | pdffitwindow=false, % window fit to page when opened
|
|---|
| 132 | pdfstartview={FitH}, % fits the width of the page to the window
|
|---|
| 133 | % pdftitle={uWaterloo\ LaTeX\ Thesis\ Template}, % title: CHANGE THIS TEXT!
|
|---|
| 134 | % pdfauthor={Author}, % author: CHANGE THIS TEXT! and uncomment this line
|
|---|
| 135 | % pdfsubject={Subject}, % subject: CHANGE THIS TEXT! and uncomment this line
|
|---|
| 136 | % pdfkeywords={keyword1} {key2} {key3}, % optional list of keywords
|
|---|
| 137 | pdfnewwindow=true, % links in new window
|
|---|
| 138 | colorlinks=true, % false: boxed links; true: colored links
|
|---|
| 139 | linkcolor=blue, % color of internal links
|
|---|
| 140 | citecolor=green, % color of links to bibliography
|
|---|
| 141 | filecolor=magenta, % color of file links
|
|---|
| 142 | urlcolor=cyan % color of external links
|
|---|
| 143 | }
|
|---|
| 144 | % for improved print quality, change some hyperref options
|
|---|
| 145 | \ifthenelse{\boolean{PrintVersion}}{
|
|---|
| 146 | \hypersetup{ % override some previously defined hyperref options
|
|---|
| 147 | % colorlinks,%
|
|---|
| 148 | citecolor=black,%
|
|---|
| 149 | filecolor=black,%
|
|---|
| 150 | linkcolor=black,%
|
|---|
| 151 | urlcolor=black}
|
|---|
| 152 | }{} % end of ifthenelse (no else)
|
|---|
| 153 |
|
|---|
| 154 | % Exception to the rule of hyperref being the last add-on package
|
|---|
| 155 | \usepackage[automake,toc,abbreviations]{glossaries-extra}
|
|---|
| 156 | % If glossaries-extra is not in your LaTeX distribution, get it from CTAN
|
|---|
| 157 | % (http://ctan.org/pkg/glossaries-extra), although it's supposed to be in
|
|---|
| 158 | % both the TeX Live and MikTeX distributions. There are also documentation
|
|---|
| 159 | % and installation instructions there.
|
|---|
| 160 |
|
|---|
| 161 | % Setting up the page margins...
|
|---|
| 162 | \setlength{\textheight}{9in}
|
|---|
| 163 | \setlength{\topmargin}{-0.45in}
|
|---|
| 164 | \setlength{\headsep}{0.25in}
|
|---|
| 165 | % uWaterloo thesis requirements specify a minimum of 1 inch (72pt) margin at
|
|---|
| 166 | % the top, bottom, and outside page edges and a 1.125 in. (81pt) gutter margin
|
|---|
| 167 | % (on binding side). While this is not an issue for electronic viewing, a PDF
|
|---|
| 168 | % may be printed, and so we have the same page layout for both printed and
|
|---|
| 169 | % electronic versions, we leave the gutter margin in. Set margins to minimum
|
|---|
| 170 | % permitted by uWaterloo thesis regulations:
|
|---|
| 171 | \setlength{\marginparwidth}{0pt} % width of margin notes
|
|---|
| 172 | % N.B. If margin notes are used, you must adjust \textwidth, \marginparwidth
|
|---|
| 173 | % and \marginparsep so that the space left between the margin notes and page
|
|---|
| 174 | % edge is less than 15 mm (0.6 in.)
|
|---|
| 175 | % width of space between body text and margin notes
|
|---|
| 176 | \setlength{\marginparsep}{0pt}
|
|---|
| 177 | % Adds 1/8 in. to binding side of all
|
|---|
| 178 | % even-numbered pages when the "twoside" printing option is selected
|
|---|
| 179 | \setlength{\evensidemargin}{0.125in}
|
|---|
| 180 | % Adds 1/8 in. to the left of all pages when "oneside" printing is selected,
|
|---|
| 181 | % and to the left of all odd-numbered pages when "twoside" printing is selected
|
|---|
| 182 | \setlength{\oddsidemargin}{0.125in}
|
|---|
| 183 | % assuming US letter paper (8.5 in. x 11 in.) and side margins as above
|
|---|
| 184 | \setlength{\textwidth}{6.375in}
|
|---|
| 185 | \raggedbottom
|
|---|
| 186 |
|
|---|
| 187 | % The following statement specifies the amount of space between paragraphs.
|
|---|
| 188 | % Other reasonable specifications are \bigskipamount and \smallskipamount.
|
|---|
| 189 | \setlength{\parskip}{\medskipamount}
|
|---|
| 190 |
|
|---|
| 191 | % The following statement controls the line spacing.
|
|---|
| 192 | % The default spacing corresponds to good typographic conventions and only
|
|---|
| 193 | % slight changes (e.g., perhaps "1.2"), if any, should be made.
|
|---|
| 194 | \renewcommand{\baselinestretch}{1} % this is the default line space setting
|
|---|
| 195 |
|
|---|
| 196 | % By default, each chapter will start on a recto (right-hand side) page.
|
|---|
| 197 | % We also force each section of the front pages to start on a recto page by
|
|---|
| 198 | % inserting \cleardoublepage commands. In many cases, this will require that
|
|---|
| 199 | % the verso (left-hand) page be blank, and while it should be counted, a page
|
|---|
| 200 | % number should not be printed. The following statements ensure a page number
|
|---|
| 201 | % is not printed on an otherwise blank verso page.
|
|---|
| 202 | \let\origdoublepage\cleardoublepage
|
|---|
| 203 | \newcommand{\clearemptydoublepage}{%
|
|---|
| 204 | \clearpage{\pagestyle{empty}\origdoublepage}}
|
|---|
| 205 | \let\cleardoublepage\clearemptydoublepage
|
|---|
| 206 |
|
|---|
| 207 | % Define Glossary terms (This is properly done here, in the preamble and
|
|---|
| 208 | % could also be \input{} from a separate file...)
|
|---|
| 209 | \input{glossaries}
|
|---|
| 210 | \makeglossaries
|
|---|
| 211 |
|
|---|
| 212 | % cfa macros used in the document
|
|---|
| 213 | %\usepackage{cfalab}
|
|---|
| 214 | % I'm going to bring back eventually.
|
|---|
| 215 | \makeatletter
|
|---|
| 216 | % Combines all \CC* commands:
|
|---|
| 217 | \newrobustcmd*\Cpp[1][\xspace]{\cfalab@Cpp#1}
|
|---|
| 218 | \newcommand\cfalab@Cpp{C\kern-.1em\hbox{+\kern-.25em+}}
|
|---|
| 219 | % Optional arguments do not work with pdf string. (Some fix-up required.)
|
|---|
| 220 | \pdfstringdefDisableCommands{\def\Cpp{C++}}
|
|---|
| 221 |
|
|---|
| 222 | % Colour text, formatted in LaTeX style instead of TeX style.
|
|---|
| 223 | \newcommand*\colour[2]{{\color{#1}#2}}
|
|---|
| 224 | \makeatother
|
|---|
| 225 |
|
|---|
| 226 | \input{common}
|
|---|
| 227 | % CFA code-style for all languages
|
|---|
| 228 | \CFAStyle
|
|---|
| 229 | % CFA default lnaguage
|
|---|
| 230 | \lstset{language=CFA,basicstyle=\linespread{0.9}\tt}
|
|---|
| 231 | % Annotations from Peter:
|
|---|
| 232 | \newcommand{\PAB}[1]{{\color{blue}PAB: #1}}
|
|---|
| 233 | % Change the style of abbreviations:
|
|---|
| 234 | \renewcommand{\abbrevFont}{}
|
|---|
| 235 |
|
|---|
| 236 | %======================================================================
|
|---|
| 237 | % L O G I C A L D O C U M E N T
|
|---|
| 238 | % The logical document contains the main content of your thesis.
|
|---|
| 239 | % Being a large document, it is a good idea to divide your thesis into several
|
|---|
| 240 | % files, each one containing one chapter or other significant chunk of content,
|
|---|
| 241 | % so you can easily shuffle things around later if desired.
|
|---|
| 242 | %======================================================================
|
|---|
| 243 | \begin{document}
|
|---|
| 244 |
|
|---|
| 245 | %----------------------------------------------------------------------
|
|---|
| 246 | % FRONT MATERIAL
|
|---|
| 247 | % title page,declaration, borrowers' page, abstract, acknowledgements,
|
|---|
| 248 | % dedication, table of contents, list of tables, list of figures,
|
|---|
| 249 | % nomenclature, etc.
|
|---|
| 250 | %----------------------------------------------------------------------
|
|---|
| 251 | \input{uw-ethesis-frontpgs}
|
|---|
| 252 |
|
|---|
| 253 | %----------------------------------------------------------------------
|
|---|
| 254 | % MAIN BODY
|
|---|
| 255 | % We suggest using a separate file for each chapter of your thesis.
|
|---|
| 256 | % Start each chapter file with the \chapter command. Only use \documentclass,
|
|---|
| 257 | % \begin{document} and \end{document} commands in this master document.
|
|---|
| 258 | % Tip: Putting each sentence on a new line is a way to simplify later editing.
|
|---|
| 259 | %----------------------------------------------------------------------
|
|---|
| 260 | \input{existing}
|
|---|
| 261 | \input{features}
|
|---|
| 262 | \input{implement}
|
|---|
| 263 | %\input{unwinding}
|
|---|
| 264 | \input{future}
|
|---|
| 265 |
|
|---|
| 266 | %----------------------------------------------------------------------
|
|---|
| 267 | % END MATERIAL
|
|---|
| 268 | % Bibliography, Appendices, Index, etc.
|
|---|
| 269 | %----------------------------------------------------------------------
|
|---|
| 270 |
|
|---|
| 271 | % Bibliography
|
|---|
| 272 |
|
|---|
| 273 | % The following statement selects the style to use for references.
|
|---|
| 274 | % It controls the sort order of the entries in the bibliography and also the
|
|---|
| 275 | % formatting for the in-text labels.
|
|---|
| 276 | \bibliographystyle{plain}
|
|---|
| 277 | % This specifies the location of the file containing the bibliographic
|
|---|
| 278 | % information. It assumes you're using BibTeX to manage your references (if
|
|---|
| 279 | % not, why not?).
|
|---|
| 280 | \cleardoublepage % This is needed if the "book" document class is used, to
|
|---|
| 281 | % place the anchor in the correct page, because the bibliography will start
|
|---|
| 282 | % on its own page.
|
|---|
| 283 | % Use \clearpage instead if the document class uses the "oneside" argument.
|
|---|
| 284 | \phantomsection % With hyperref package, enables hyperlinking from the table
|
|---|
| 285 | % of contents to bibliography.
|
|---|
| 286 | % The following statement causes the title "References" to be used for the
|
|---|
| 287 | % bibliography section:
|
|---|
| 288 | \renewcommand*{\bibname}{References}
|
|---|
| 289 |
|
|---|
| 290 | % Add the References to the Table of Contents
|
|---|
| 291 | \addcontentsline{toc}{chapter}{\textbf{References}}
|
|---|
| 292 |
|
|---|
| 293 | \bibliography{uw-ethesis,pl}
|
|---|
| 294 | % Tip: You can create multiple .bib files to organize your references. Just
|
|---|
| 295 | % list them all in the \bibliogaphy command, separated by commas (no spaces).
|
|---|
| 296 |
|
|---|
| 297 | % The following statement causes the specified references to be added to the
|
|---|
| 298 | % bibliography even if they were not cited in the text. The asterisk is a
|
|---|
| 299 | % wildcard that causes all entries in the bibliographic database to be
|
|---|
| 300 | % included (optional).
|
|---|
| 301 | % \nocite{*}
|
|---|
| 302 | %----------------------------------------------------------------------
|
|---|
| 303 |
|
|---|
| 304 | % Appendices
|
|---|
| 305 |
|
|---|
| 306 | % The \appendix statement indicates the beginning of the appendices.
|
|---|
| 307 | \appendix
|
|---|
| 308 | % Add an un-numbered title page before the appendices and a line in the Table
|
|---|
| 309 | % of Contents
|
|---|
| 310 | % \chapter*{APPENDICES}
|
|---|
| 311 | % \addcontentsline{toc}{chapter}{APPENDICES}
|
|---|
| 312 | % Appendices are just more chapters, with different labeling (letters instead
|
|---|
| 313 | % of numbers).
|
|---|
| 314 | % \input{appendix-matlab_plots.tex}
|
|---|
| 315 |
|
|---|
| 316 | % GLOSSARIES (Lists of definitions, abbreviations, symbols, etc.
|
|---|
| 317 | % provided by the glossaries-extra package)
|
|---|
| 318 | % -----------------------------
|
|---|
| 319 | \printglossaries
|
|---|
| 320 | \cleardoublepage
|
|---|
| 321 | \phantomsection % allows hyperref to link to the correct page
|
|---|
| 322 |
|
|---|
| 323 | %----------------------------------------------------------------------
|
|---|
| 324 | \end{document} % end of logical document
|
|---|