Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
KU Leuven Arenberg Doctoral School PhD dissertation latex class
TeX Makefile Python Shell
branch: master

ADS PhD LaTeX template

This template is the result of a group effort. Please contribute updates and improvements. If you are familiar with Git you can submit changes using a GitHub pull request or a Git format-patch.


This package provides a template when submitting a Phd dissertation to the Arenberg Doctoral School at KU Leuven.

Latest version of the ADS PhD template is available at

Questions and issues can be submitted to the ADS PhD issues component at Github.

Directory structure

The directory structure looks like this

  • thesis.tex: Main tex file for the final booklet.
  • defs.tex: Put your own preamble settings here.
  • Simple compilation script.
  • Makefile
  • Makefile.settings: This file contains file names and other settings used by make.
  • biblatex.cfg: Biblatex settings.
  • chapters
    • chapter1: Per chapter a directory with
      • chapter1.tex: Tex file with identical name
      • image/: Images directory. Note that to include a figure in chapter1.tex, you should NOT include the relative path, i.e., \includegraphics{myfigure} and not {image/myfigure}!

Using Latex directly

The adsphd.cls can be used directly by latex:

pdflatex thesis
bibtex thesis
# biber thesis
makeindex thesis.glo -s -t thesis.glg -o thesis.gls
makeindex thesis.nlo -s -o thesis.nls
pdflatex thesis
pdflatex thesis

Any other Latex build tool like latexmk, rubber, SCons, TeXShop or TeXWorks should also work out of the box (makeindex might not run by default).

Using the simple Python compile script

There is a simple and naive Python compilation script supplied which should work cross-platform.

python3             # Compile to pdf
python3 clean       # Clean auxiliary files
python3 cleanall    # Clean everything
python3 newchapter  # Set up files for a new chapter
python3 --help      # Help and more options

Some settings are available at the top of the file.

Using make and other utility scripts

Some convenient Makefile targets:

In the main directory [./]:

make                       # create the full booklet thesis.pdf
make clean
make realclean             # cleanup all mess, including leftover
                           # {dvi,pdf,ps} files of main file or the
                           # chapters
make damnthatsreallyclean  # brutally remove all possible temporary
                           # files

In a chapter directory [./chapters/chapterX]:

For this to work you need to generate the chapter directory using the script which also generates a custom Makefile for the new chapter.

make                       # Creates chapterX.pdf containing the
                           # TOC, the contents of only chapterX and
                           # the bibliography.
make bare                  # Create chapterX.pdf containing only the 
                           # chapter text (no TOC, no bibliography).
make clean                 # remove temporary files left from
                           # compilation
make realclean             # clean + also remove {ps,pdf} files
make figurelist            # Print out the names of all figures that are
                             effectively used in ./chapters/chapterX/chapterX.tex
make cover                 # Generate a separate pdf the cover

Creating a chapter directory:

./chapters/ # Create the directory structure for a new
                               # chapter.


Settings for the Makefile script can be found in the makefile.settings file.

Options for the adsphd class

10pt, 11pt, 12pt      : text point size
oneside, twoside
showgit               : when showing extra info (with [info] or
                        [frame] option), also show git version.
                        You need to run latex with '-shell-escape'
                        for this to work! (default in Makefile)

british               : Use British spelling in cover (i.e.
                        fulfilment instead of fulfillment)

biblatex              : Use biblatex instead of bibtex.
biblatexstyle=<name>  : Change the biblatex style.
biber                 : Use the biber backend for biblatex.
custombibtex          : Don't load any bib(la)tex files. This way
                        the user can load and customize the
                        bibtex environments he wants. (For
                        advanced use)

showinstructions      : show instructions provided by the
                        faculty. These can be included anywhere
                        in the tex by commands of the form
                        \instructionsintroduction, ...  

pagebackref           : show in the bibliography in which page
                        each article is cited.
backref               : show in the bibliography in which section
                        each article is cited.

info                  : put logical page on physical A4 paper and
                        show some info (compilation time, ...)
draft                 : show info and compile the document as a
prelim                : generate a version of the document
                        suitable to send to the jury. This means
                        that the logical page is put on an A4
                        without info, frame, todos, ... 
final                 : generate true size (cropped!) pdf without
                        info, frame, todos, ...
print                 : generate true size (cropped!) pdf without
                        info, frame, todos, ... suitable for
                        printing (basically equal to final, but
                        forcing uncolored links, even when this
                        option is given explicitly)
online                : generate true size (cropped!) pdf without
                        info, frame, todos, ... suitable for
                        printing (basically equal to final, but
                        forcing colored links)
croppedpdf            : generate true size pdf
frame                 : put frame around the logical page and
                        place the result on an A4 page
cam                   : instead of a frame, use cropmarks
cropmarks             : identical to cam
subfig                : load package subfig (default)
subfigure             : load older package subfigure

covershowcommittee    : show the committee also on the cover.
coverfontpercent=<int>: change the cover title font size. Should
                        be an integer number between 1 and 100.

Most of the useful commands provided by this class can be found in the provided example file thesis.tex.


Inclusion of normal chapters

Use the command \includechapter{.}, e.g.,


includes ./chapters/introduction/introduction.tex.

If the chapter is an appendix, use \includeappendix{.}!

Inclusion of 'special' chapters

The term 'special' chapters refers to the

  • preface (preface)
  • dutch preface (prefacenl)
  • abstract (abstract)
  • dutch abstract (abstractnl)
  • list of publications (publications)
  • curriculum vitae (cv)

To include any of the above, use the command


where XXX stands for the name indicated in between brackets above, and filename is as in the \includechapter command. For instance,

\includeappendix{myappendix} % includes ./chapters/myappendix/myappendix.tex as an appendix

Other special chapters are

  • list of figures
  • list of tables
  • table of contents
  • bibliography

but these different from the above as they are generated using standard commands (\listoffigures, \listoftables, \tableofcontents, \includebibliography).

For typical usage, see the provided file thesis.tex.

Generating the cover page

Most printing services will create their own cover page based on the details you send them (title, name, affiliation, ...). The template generates only a front and back cover for the version you want to distribute online, not for the version you send to the printing service.

However, the template has some support to create a separate cover page. Use make cover or python cover to generate cover.tex and run.


  • To be able to make the chapter compilation work, you should make sure that the desired chapter is included in thesis.tex (e.g., using \includechapter{introduction})!!
  • If you get spurious empty pages when compiling a single chapter, this is probably due to the combination of \cleardoublepage and \includeonly. To avoid it, make sure you end all included chapters (and appendices) with \cleardoublepage (if you use to generate the chapter skeleton this is automatically done!)


We recommend the todonotes package for annotating your text with todo notes. Note that the adsphd automatically disables todo notes when making the final version.

\todo{This is a todo}%
\todo[inline]{This is a todo}%

Remark: to make the above commands interact as little as possible with your normal text, alway add a % directly after the closing bracket.

If you want to disable todo notes explicitly, you can change the call \usepackage{todonotes} in defs.tex to \usepackage[disable]{todonotes}.

Presentation template

A Beamer template has been created by Roland Pastorino and is available on the KU Leuven template page.


Wannes Meert, Yves Frederix, Bart Vandewoestyne, Nele Famaey, Tias Guns, Jan Hendrik Becker, Steven Op de beeck, Frederik Colle, Dominique Devriese, Marko van Dooren, Rutger Claes, Dirk Van Hertem, Anthony Van Herrewege.

vim: expandtab tw=79 ft=markdown

Something went wrong with that request. Please try again.