Thesis Guide
User Manual:
Open the PDF directly: View PDF
.
Page Count: 121
| Download | |
| Open PDF In Browser | View PDF |
Users Guide to Writing a Thesis in a
Physics/Astronomy Institute of the University of
Bonn
Hinweise und Tipps
zur
Produktion einer Bachelor/Master/Diplom/Doktorarbeit
in der
Mathematisch-Naturwissenschaftlichen-Fakultät
der
Rheinischen Friedrich-Wilhelms-Universität Bonn
vorgelegt von
Ian C. Brock
aus
Stoke-on-Trent
Version 6.0
8th December 2018
Bonn 2018
1. Gutachter:
2. Gutachterin:
Tag der Promotion:
Erscheinungsjahr:
Prof. Dr. John Smith
Prof. Dr. Anne Jones
Acknowledgements
I would like to thank the members of my group who read and criticised different versions of this
guide. Questions and suggestions from students who used previous versions of the guide have led
to a number of improvements. The authors of the book “Physics at the Terascale” provided many
examples of different LATEX usage and conventions that were also very helpful. Andrii Verbytskyi
provided the tikz examples. Miriam Ramos provided advice and input on how to implement references
in the style usually used in astronomy publications and theses. Kaven Yau suggested the new (as of
version 4.0) way of steering which cover and title pages are included. Jan Schmidt provided many
useful suggestions that found their way into version 6.0.
Acknowledgements at the beginning should be a \chapter* so that they do not appear in the Table
of Contents.
iii
Contents
1
Introduction
1
2
Tips and tricks
5
2.1
2.2
2.3
2.4
2.5
How to use the ubonn-thesis style . . . . . .
Options that can be passed to ubonn-thesis
Do . . . . . . . . . . . . . . . . . . . . . . .
Do not . . . . . . . . . . . . . . . . . . . . .
Units . . . . . . . . . . . . . . . . . . . . . .
2.5.1 siunitx package . . . . . . . . . . . .
2.5.2 SIunits/hepunits packages . . . . . .
2.6 Definitions in particle physics . . . . . . . . .
2.7 Hints . . . . . . . . . . . . . . . . . . . . . .
2.8 Common English mistakes . . . . . . . . . .
2.9 Line numbering . . . . . . . . . . . . . . . .
2.10 Updating ubonn-thesis . . . . . . . . . . . .
3
3.2
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
PhD thesis . . . . . . . . . . . . . . . . . . . . . . . .
3.1.1 Submission . . . . . . . . . . . . . . . . . . .
3.1.2 Printing the final version . . . . . . . . . . . .
Master/Diplom/Bachelor thesis . . . . . . . . . . . . .
3.2.1 Submission . . . . . . . . . . . . . . . . . . .
3.2.2 MSc/Diplom theses for the department library .
3.2.3 BSc theses . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Layout and language
Appearance . . . . .
Other packages . . .
ToDo Notes . . . . .
Figures
5.1
5.2
5.3
5
7
9
11
13
13
15
16
17
18
19
20
21
Useful packages
4.1
4.2
4.3
4.4
5
.
.
.
.
.
.
.
.
.
.
.
.
Submitting your thesis
3.1
4
.
.
.
.
.
.
.
.
.
.
.
.
21
21
21
22
22
23
23
25
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
25
26
26
29
31
Simple figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Fancier figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Figure formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
v
5.4
5.5
5.6
6
7
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
34
35
35
38
38
38
39
41
Tables
43
References
51
6.1
6.2
6.3
7.1
7.2
7.3
7.4
7.5
7.6
7.7
7.8
8
TikZ and PGF . . . . . . . . . . . . .
5.4.1 Accelerator lattices . . . . . .
Placement . . . . . . . . . . . . . . .
5.5.1 standalone package and class
Feynman graphs . . . . . . . . . . . .
5.6.1 PyFeyn . . . . . . . . . . . .
5.6.2 FeynMF and FeynMP . . . . .
5.6.3 Feynman graphs with TikZ . .
Use of \phantom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Using siunitx and the S column option . . . . . . . . . . . . . . . . . . . . . . . . . 44
Using dcolumn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Formatting by hand . . . . . . . . . .
Using BibTEX and biblatex . . . . . .
BibTEX entries . . . . . . . . . . . .
7.3.1 Entry types . . . . . . . . . .
7.3.2 Entries from Inspire and CDS
7.3.3 More on names . . . . . . . .
Formatting references . . . . . . . . .
7.4.1 biblatex styles . . . . . . . . .
7.4.2 Traditional BibTEX styles . . .
Errata . . . . . . . . . . . . . . . . .
Sources for references . . . . . . . . .
Common wishes . . . . . . . . . . . .
Using mcite . . . . . . . . . . . . . .
Layout and language
8.1
8.2
8.3
8.4
8.5
8.6
8.7
Page layout . . .
Footnotes . . . .
Thesis in German
Fonts . . . . . .
Other languages .
Coloured links . .
Chapter headings
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
51
52
53
54
54
55
55
55
57
57
58
59
60
61
61
61
63
64
64
64
65
A Changes and plans
67
B TEX setup and packages
71
B.1 Integrated environments .
B.1.1 TEXstudio . . . . .
B.1.2 Visual Studio Code
B.1.3 Kile . . . . . . . .
vi
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
71
72
72
72
B.2 MacOS . . . . .
B.3 (Ku|Xu|U)buntu .
B.4 Windows . . . .
B.4.1 MiKTEX
B.4.2 TEX Live
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
73
73
75
76
77
C Print shops
79
D Making a glossary or list of acronyms
81
E
Plots with TikZ
85
F
Long tables
87
D.1 ZEUS detector description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
G A famous equation is E = mc
2
91
G.1 A slightly less famous equation F = ma . . . . . . . . . . . . . . . . . . . . . . . . 91
G.2 The cross-section is given by σ = N/L . . . . . . . . . . . . . . . . . . . . . . . . 91
H Old or obsolete information and instructions
H.1 More on feynmf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
93
Bibliography
97
List of Figures
99
List of Tables
101
Glossary
103
Acronyms
105
Acknowledgements
113
93
H.2 Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
H.2.1 Windows XP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
H.2.2 TEXnic Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
vii
CHAPTER
1
Introduction
LATEX file: ./guide_intro.tex
When you want to start writing your thesis you usually ask a (more senior) colleague if he or she has a
LATEX framework that you can start with. He or she in turn had asked their (more senior) colleague for
an example thesis several years earlier etc.! Maybe it is surprising that we are actually using LATEX
and not TEX to write theses!
LATEX (or more precisely the packages that one can use in LATEX) is actually in a state of continual
development and improvement, so it certainly makes sense to review what packages are available, how
they should be used and whether there are better ways of doing things than methods used 10 or more
years ago.
The aim of this guide is to break with the tradition of just adapting what your predecessor used and
provide up-to-date guidelines on the layout and packages that can or should be used for thesis writing.
The guide should also provide you with enough information for you to concentrate on the content of
your thesis, rather than having to spend too much time making it look nice!
You may ask why bother? First and foremost a thesis is something that you should be proud of!
I therefore think it is actually worth devoting some effort to not only making it look good, but also
to using correct and consistent notation when you write it. Figures and tables should be legible and
understandable (including the size of the axis labels!). You should, however, not have to spend too
much time working out how to make the thesis look the way you want it to. It is also good if you can
avoid annoying or irritating your supervisor if he or she also thinks that GeV/c2 should be written like
this and not as GeV/c2 or GeV/c2 etc. or some mixture of the two.
The recommendations are based on experience I gained:
• preparing the lecture course „EDV für Physiker“ for many years;
• editing the book “Physics at the Terascale”, which was published in April 2011;
• rewriting and maintaining the ATLAS LATEX document class and style files;
• regular reading of the „TeXnische Komödie“, which is published by Dante (Deutschsprachige
Anwendervereinigung TEX) 4 times a year;
• general interest in preparing good quality documents;
1
Chapter 1 Introduction
• reading quite a lot of theses!
This document does not attempt to explain how to write LATEX. I assume a basic level of knowledge.
The aim is more to give some practical tips and solutions to solve problems that often occur when you
are writing your thesis. There are many books and online documents to help you get started, so many
in fact that it is difficult to know where to start. My favourite is “Guide to LATEX” from Kopka [KD04].
Be sure to read the Fourth Edition though. It was originally written in German where the title is „LATEX:
Eine Einführung“. When you want to know what packages exist, what they can do and how to use them,
consult “The LATEX Companion” from M. Goossens et al. [MG04]. A fairly comprehensive online
guide is the “A (Not So) Short Introduction to LaTeX2e.” [Oet+], which is available in many languages.
Help on getting started and a list of online documents can be found on the CTAN (Comprehensive TEX
Archive Network) information page http://tug.ctan.org/starter.html. Other useful sources
of information that I and others use are:
• http://www.tex.ac.uk/faq: This contains an extensive FAQ (maybe even a bit better than
the German one maintained by Dante). An interesting feature is the “Visual FAQ” that serves as a
rather unorthodox, but very intuitive kind of index: http://www.tex.ac.uk/tex-archive/
info/visualFAQ/visualFAQ.pdf.
• http://tex.stackexchange.com often comes up in Google searches and contains a lot of
very useful tips.
• http://detexify.kirelabs.org/classify.html contains a little online tool to find LATEX
names of symbols. It works quite well and can be a lot quicker than searching through the
written documentation.
Not everyone knows about the texdoc command which should be available for Linux and MacOS
TEX installations. To get help on a package, you can simply give the command texdoc geometry,
etc. Note that to see the KOMA - Script manual you have to know the name of the PDF file: texdoc
scrguide or texdoc scrguien for the German and English versions, respectively. The AMS Math
users guide also does not have a totally obvious name — try texdoc amsldoc. It contains a whole
host of useful information on typesetting (complicated) equations.
The Physikalisches Institut is a member of Dante and so receives three copies of each issue of „der
TeXnische Komödie“, one of which is available in the department library in PI. The booklet often
contains useful hints on typesetting. We also get a DVD every year with TEX distributions for Unix,
MacOS and Windows. Details on how to install a LATEX distribution can be found in Appendix B.
If you write your thesis in English, questions are sure to occur on how things should be written
in English, what is the correct punctuation and hyphenation, and what do you have to worry about
when you construct sentences. I will not attempt to answer such questions here. “The guide to writing
ZEUS papers” from Brian Foster [Fos] contains a wealth of useful information. Brian kindly gave me
permission to package a PDF file of the note with this guide.
This document is structured as follows. Chapter 2 tells you how to get started with the files and the
package. It also contains several tips and tricks that it is probably good to include early. It is sometimes
not clear which version of the cover should be used when submitting and/or printing your thesis. Some
instructions are given in Chapter 3. This is followed by Chapter 4, which lists the packages used in
this document and says what they are good for. Chapters 5 and 6 give some guidelines for figures and
tables. Chapter 7 discusses the tricky business of references and their formatting. Some hints on how
2
to solve common layout problems, which fonts one can use and how to handle multiple languages in a
document are given in Chapter 8. In the appendix I include some more information on the TEX setup I
have used to test things. I have seen a glossary (list of acronyms) in a few theses and think this is a
nice idea. The appendix shows how you can create such a list. As big tables are often moved to the
appendix, an example of how to create such tables is given there as well.
While this guide is structured pretty much like a thesis, I have included a couple of extra features
that are usually not needed in a thesis. The first is a link to the relevant LATEX file at the beginning
of each chapter. I have also added an index, as that is probably a useful complement to the table of
contents.
Regular updates are made to the guide, so it is worth checking every so often to see if a new version
is available. Corrections and suggestions for improvements are very welcome.
3
CHAPTER
2
Tips and tricks
LATEX file: ./guide_tips.tex
Over time I have collected quite a lengthy list of things you should “Do” and “Not Do” (at least in my
head) that I think it is useful to write down early in the document, so that you may actually read them!
In this chapter I first tell you how to get and use the style file and then give some tips. I have also
started to add a list of common English mistakes, especially those made by German speakers!
2.1 How to use the ubonn-thesis style
The idea with this document is that you also look at the LATEX that is used to create it, in order to
find out how things are done. I will therefore usually not give the LATEX commands in the printed
document, but assume that you will have a look at the LATEX source. To help you with this, each
chapter contains a link to the relevant file at the top. This link should work if you have compiled the
guide yourself and are in the guide subdirectory of the ubonn-thesis directory tree. The files that
make up this document are available in a Git repository and as a tar file. To get the latest Git entries
give the command:
git clone https://git.physik.uni-bonn.de/cgit/projects/ubonn-thesis.git
If you want to checkout a particular version you can give the command:
git clone --branch vN.M https://git.physik.uni-bonn.de/cgit/projects/ubonn-thesis.git
The tar file (and the tag tree (as of version 1.5)) also includes the guide as a PDF file: thesis_guide.pdf.
It can be obtained from:
http://www.pi.uni-bonn.de/teaching/uni-bonn-thesis and
http://www.pi.uni-bonn.de/lehre/uni-bonn-thesis.
Once you have the files, you can then give the command:
make new [THESIS=dirname] [TEXLIVE=YYYY]
to create a new directory with several files to help you get started. By default the directory name will be
mythesis. If you want to write a thesis that uses the astronomy style of references (authoryear style
and a bibliography at the end of each chapter) give the command “make astro [THESIS=dirname]”.
To compile your thesis try:
5
Chapter 2 Tips and tricks
cd mythesis [or dirname]
make thesis
If your version of TEX Live is older than 2011, you should really update to a newer version! If this
is not possible, use the command “make new09” followed by “make thesis09” or “make thesis
BIBTEX=bibtex”. See Section 2.2 for a list of the options that can be passed to the package.
As of version 6.0, make thesis uses the latexmk command for compilation. latexmk looks at
your logfile and decides how many times pdflatex etc. have to be run. If you use feynmf or feynmp
you should use the commented out version of the LATEXMK variable that includes the -shell-escape
option.1 For details on how to compile a glossary with latexmk see Appendix D. If for some reason
latexmk does not work you can use the command make thesis11 instead. The tool pplatex2 is
supposed to provide a nicely formatted version of the LATEX output on the command line.
My original idea was that the style file should work for all recent TEX installations. However, some
of the packages I recommend have been changing quite a lot over the past few years. You should
therefore set the TEX Live version you are using appropriately. The default setting is 2016.3 This
is also the setting to use for an up-to-date version of MikTeX (2.9). Things should compile without
any changes if you use TEX Live 2013 or later. Look in the style file to see what changes are made
depending on the year you use. You can change the TEX Live version when you make a new thesis by
giving a command like “make new TEXLIVE=2011”.4 If you switch TEX Live versions do a “make
clean cleanbbl cleanblx” in between.
Note that as of version 2.1, the main file for the thesis (mythesis.tex), the Makefile and the
style file (ubonn-thesis.sty) are copied into your mythesis subdirectory. This means that if you
update the ubonn-thesis you can look for differences between the new style file and the one you have. It
also implies that if you want the update to have an effect on your thesis you should copy the Makefile
and ubonn-thesis.sty into the directory with your thesis. For more details see Section 2.10.
As of version 4.0 of the package, you specify the type of thesis and the stage as options to the
\documentclass or to the ubonn-thesis package. These options select the appropriate title and cover
pages. The following thesis types exist:
PhD a PhD thesis;
Master a Master thesis;
Diplom a Diplom thesis;
Bachelor a Bachelor thesis.
The following stages exist:
Draft you are still writing your thesis;
Submit you are ready to submit your thesis;
Final the final version of your thesis. For PhD theses this is the version that goes to ULB;
PILibrary final version of your thesis with an extra cover page including an abstract for the PI library.
1
I got this information from https://tex.stackexchange.com/questions/374160/how-to-have-latexmkalways-use-shell-escape.
2
Can be downloaded from https://github.com/stefanhepp/pplatex.
3
Setting the TEX Live version to one that is lower than your installation should not cause any problems.
4
For even older versions of TEX Live use the command “make new09”. This turns off the use of biblatex.
6
2.2 Options that can be passed to ubonn-thesis
See Chapter 3 for some more details about thesis submission.
If you are not a member of the „Physikalisches Institut“ you should also change \InstituteName,
\inInstitute and \InstituteAddress. The style file ubonn-thesis.sty already contains the
appropriate definitions for PI, HISKP, IAP and AIfA.
All packages that are needed should be part of your TEX installation. If not you may have to install
them or ask your system administrator to do so.
If you just want to make the cover pages, use the file cover_only.tex. Be sure to adapt the font
selected in ubonn-thesis.sty to the font you actually used in your thesis. Be aware that not all font
sizes are available in all font collections. If you used the default LATEX font in your thesis, then choose
lmodern in the style file.
The main file for this guide is guide/thesis_guide.tex and it includes the LATEX files in the
directory ./guide and some of the Feynman graphs in the directories ./feynmf and ./tikz. Again
this guide should compile without changes for TEX Live 2013 or later. For earlier versions set
\texlive in thesis_guide.tex to the appropriate value. Set the default font to txfonts for TEX
Live 2011 and older. If you want to compile the guide with TEX Live older than 2011, it is probably
easier to switch from biblatex to traditional BibTEX. This is done via the make new09 command.
2.2 Options that can be passed to ubonn-thesis
From version 3.0 onwards it is possible to change things in the style file by passing options to it. A
few default packages also changed with this version. subfig → subcaption and longtable → xtab. The
syntax siunitx and siunitx=true is equivalent. Use siunitx=false to turn off an option. The
following options exist:
Option
Default
Description
PhD
Master
Diplom
Bachelor
Draft
Submit
Final
PILibrary
thesistype
thesisversion
texlive
false
false
false
false
true
false
false
false
Unknown
Draft
2016
siunitx
eVkern
true
false
dcolumn
true
A PhD thesis.
A Master thesis.
A Diplom thesis.
A Bachelor thesis.
Draft version of the thesis.
Version of the thesis to be submitted.
Final version of the thesis (for PhD theses ready to go to ULB).
Final version including an extra cover page for the PI library.
Specify the thesis type.
Specify the stage of the thesis.
Specify the TEX Live version. You can also use the older command
\newcommand*{\texlive}{2016}.
Use the siunitx package for typesetting units.
Apply a kern of -0.1em to eV in order to move “e” and “V” closer together.
This is not necessary if you use the newtx font package.
A package for helping to align things in tables.
7
Chapter 2 Tips and tricks
Option
Default
Description
physics
hepparticles
false
true
hepitalic
mhchem
feynmf
feynmp
subcaption
subfig
subfigure
xtab
longtable
supertabular
newtx
txfonts
palatino
titlesec
floatopt
biblatex
astrobib
todonotes
shownotes
cleveref
clevercaps
backend
true
true
false
false
true
false
false
true
false
false
true
false
false
false
true
true
false
false
false
false
true
biber
backref
true
bibencoding
bibstyle
numeric-comp
firstinits
false
Useful mathematical constructions for physics.
Standardised names and formatting for particle physics. This loads
hepnicenames and heppennames.
Use italics rather than upright letters for particles.
A nice package for chemical elements and processes.
Include the feynmf package for Feynman graphs.
Include the feynmp package for Feynman graphs.
A package for making sub-figures (and sub-tables) and captions for them.
A package for making sub-figures and captions for them.
A package for making sub-figures and captions for them (deprecated).
A package for tables that are longer than one page.
Another package for tables that are longer than one page.
Another package for tables that are longer than one page.
Use the newtx font packages (newer version of txfonts).
Use a Times-Roman-like font.
Use a combination of Palatino, Courier and Helvetica fonts.
Use the titlesec package for formatting chapter titles.
Adjust settings that control the number and placement of floats.
Include biblatex.
Adjust biblatex options to conform to the usual astronomy style.
Turn on use of the todonotes package and define \mynote.
Show the ToDo notes (also turns on todonotes).
Turn on use of the cleveref package.
Capitalise Fig., Table etc.
Specify the backend to use for biblatex. Possibilities are biber, bibtex
or bibtex8.
The bibliography lists where the reference is cited. This option is very
useful when writing your thesis, but should probably be turned off for the
final version.
Set the encoding for the bibliography (usually not needed).
Specify the style to use for the references. Standard values are
numeric-comp or alphabetic.
Use firstinits instead of giveninits for biblatex.
Some default option values are adjusted depending on the TEX Live version. See the ubonn-thesis
style file to find out what is changed.
Depending on the font you use, you may find that the “e” and “V” in eV, MeV etc. are too far apart.
You can pass the option eVkern to ubonn-thesis in order to move them 0.1em closer together.5
5
8
This option has no effect for TEX Live 2011 and older, as siunitx adjusted the spacing internally using the parameter
eVcorra. It is not needed if you use the newtx font package.
2.3 Do
2.3 Do
• Have 1–2 other people read your thesis well before you are supposed to submit it. Do not ask
too many; everyone has their own opinions on how things should be written, how much detail
should be included etc. and these opinions will not necessarily agree with each other!
• Write “nice” LATEX. It makes it much easier to find mistakes in your document. If you like to use
the keyboard rather than the mouse when moving round in a document, turn on “auto-fill-mode
(emacs)” or its equivalent in any other editor, so that line breaks are inserted.
• Make sure every table and figure is referenced in the text. I get very irritated when I suddenly
find a figure that is not described in the text. A useful package to check this is refcheck.6 You
need to run LATEX one more time for it to work. It indicates both in the log file and the resulting
PDF which figures, tables, equations and sections are referenced.
• Use a units package to format numbers and their units. Recent versions of LATEX include the
siunitx package, which is a superior replacement of SIunits. I used to use SIunits, or rather
hepunits which is built on top of SIunits, and defines common particle physics units such as
GeV. Use of these packages is discussed in Section 2.5. An alternative is the units package.
• Define any complicated symbols once you use them more than once:
\newcommand*{\etajet}{\ensuremath{\eta_{\text{jet}}}\xspace}
If you decide at a later date that jet should be a superscript rather than a subscript you only have
to change this in one place!
Note that Kopka [KD04] recommends using \newcommand* rather than \newcommand for
short commands.
• If you use normal words in superscripts or subscripts (or anything else in math mode) enclose
them in \text. You can also use \mathrm or \textrm. However, if you then use the same
symbols in slides with a sans-serif font, the text may well continue to be in a serif font.
jet
Compare: A common jet energy cut at the LHC is now pT > 20 GeV, while at HERA we typically
jet
used pT > 6 GeV. The GeV in the first expression is in sans-serif. This is because the
\sisetup{detect-family=true}7 option is set in ubonn-thesis.sty (see Section 2.5.1).
I used the option detect-family=false8 for the \SI command in the 2nd expression. In the
first expression I use \text for “jet”, while I use \mathrm in the second expression.
• Use \xspace and \ensuremath in all commands where you would like to use a symbol both
in text mode and in math mode. Without \xspace you have to make sure that you end every
symbol with \ or {}, otherwise the space is used to signify the end of the symbol, e.g. in
LATEXwe have to pay attention otherwise the symbol and the next word run together.
6
There is a conflict if you use refcheck, subcaption and hyperref together. See http://tex.stackexchange.com/
questions/273970/conflict-refcheck-subcaption-packages-for-label-with-underscores for a workaround.
7
obeyall in TEX Live 2009.
8
obeyfamily=false in TEX Live 2009.
9
Chapter 2 Tips and tricks
• Decide how you want to write abbreviations for particles and stick to it — you should probably
define the particle names in your style file and always use them (also for quarks). There are
packages hepnicenames and heppennames, which use hepparticles.9 These packages have
many predefined particles and a standard convention for naming. It is easy to add further
definitions. See Section 2.6 for some more details on how to write particles that are relevant for
particle physics.
• Decide how you want to write coordinate axes and stick to it. Far too often I see text like: “The
proton beam defines the Z direction, while the interaction point is denoted as (x0, y0, z0 ). The
polar angle is measured with respect to the z axis and cot θ = p Z /pT ”. Which is the best way
of writing the coordinates? As x, y and z are often used for kinematic variables, there are
arguments in favour of (X,Y, Z).
• Use \enquote from the csquotes package to quote text rather than using explicit quotation
marks. This has the advantage that consistent quotation marks are used everywhere (also if they
are nested) and that they are also correct for the language (and dialect10 ) you are writing your
thesis in. You can also see in the Chapter 1 how this works, even when switching languages
inside a paragraph.
• Use sizes that depend on the font size, em (width of “M”) and ex (height of “x”), for spacing
that should change with the text size. Use absolute sizes cm, mm, pt etc. where they are
appropriate, e.g. title pages, boxes, etc. \quad and \qquad are also useful sizes in tables and
equations.
• Add a \ (or {}) after abbreviations that end with a full stop such as e.g. if followed directly by
text. If you do not, an end of sentence space is added rather than a normal interword space. Note
that \ is not needed (but does no harm) after abbreviations that only consist of capital letters:
compare “e.g. my name is Ian C. Brock” and “e.g. my name is Ian C. Brock”, where \ was
included in the second version. In this example the difference is small. However, if LATEX
increases the spacing between words to fill a line the effect is more obvious.
• If a capital letter ends a sentence you should add the command \@ before the full stop, e.g.
\ldots as discussed in the chapter on QCD\@. which produces . . . as discussed in
the chapter on QCD. This is necessary, as otherwise only an interword space is used before the
next sentence.
• Ask someone (me) if you cannot easily find out how to solve formatting problems. I once saw
a thesis in German, where the author wanted to use commas instead of full stops in numbers
and wrote numbers as $2,\!47$ to produce 2,47 instead of 2, 47. There are usually much
better solutions, e.g. \num{2.47} with the siunitx package produces 2.47 in English and 2,47
in German. In the end such solutions will save you time!
9
Note that hepnicenames automatically includes heppennames, so it is sufficient to include hepnicenames to be able to
use both sets of definitions.
10
By default, British (UK) English uses ‘British quoted text’ for outer quotation marks, while American (US) English uses
“American quoted text”. In this guide (and in ubonn-thesis.sty) “American (US) quotes” are used even if you write in
British (UK) English.
10
2.4 Do not
• Use punctuation in equations and “d”, i.e. \dif for derivatives, e.g.
∫
y dx .
This is also one of the the very few places, where it makes sense to put some spacing in by hand
— normally you should leave this to TEX. Note that the physics package provides the command
\dd{x}, which does the spacing for you.
• Pay attention to the alignment of numbers in tables. siunitx provides the S column specifier to
help with this. Packages such as dcolumn also provide assistance.
Not really a strict “Do”: I highly recommend that you use an integrated environment for editing and
compiling your thesis. If you are on a Mac or under Windows you probably get TEXshop or TEX Live
by default. TEXstudio is based on Texmaker and is available for Linux, Windows and MacOS. It used
to be my preferred LATEX environment under all systems! In the past couple of years, I have switched to
the Visual Studio Code editor instead. The main reason for this is so that I can use the same program
for editing scripts, e.g. a Makefile as I use for LATEX code. The LATEX Workshop extension is being
actively developed and is very nice. The Spell Right spelling checker works very well and I have
also activated the use of ChkTeX to improve my LATEX syntax. Under Linux you can also use Kile or
the way I used to work was to use emacs and AUCTeX. Note that the RefTeX mode in emacs also
provides powerful tools for finding cross-references and the names of citations easily.
One advantage of such environments is that it is usually possible to switch between a position in
your output file and the relevant place in the source code and vice versa. This makes it much quicker to
fix things when you spot an error in your output PDF file. You can usually also step through the errors
when you try to compile your file and fix them directly. In addition, they know which environments
and mathematical symbols exist, which can speed things up if you have not been working with LATEX
for the past 20 years!
More details on integrated environments and installing TEX for different systems can be found in
Appendix B.
2.4 Do not
• Don’t write symbols differently in math mode and in text. One of my pet hates is: “The most
famous equation in the world is:
E = mc2
(2.1)
where E is the energy of the particle and m is its mass”, i.e. E and m are in math mode in the
equation, but in text mode in the text where they are explained.
• Do not start a new paragraph when describing the elements in an equation. The equation above
is described correctly. Wrong would be: The most famous equation in the world is:
E = mc2
(2.2)
where E is the energy of the particle and m is its mass. Using the paragraph options of this
guide, you add extra space. If your paragraphs are indented, “where” would also be indented.
11
Chapter 2 Tips and tricks
If you want to leave a blank line in your LATEX file for clarity, you should make it a comment
line, i.e. “%”.
• Another example of how not to write things is something like “The scale factor, SF, used to correct
the MC is determined in an independent dataset using SF = Ndat a /NMC ”. Note the wrong
font and spacing of SF, data and MC. All should be enclosed in \text: SF = Ndata /NMC .
• Do not include the directory (or at least the top-level directory) or the extension of the file in
\includegraphics commands. Use \graphicspath instead to set up a list of directories
that hold the figures. Let LATEX or PDFLATEX pick the extension for the figure, so that you can
(in principle) easily switch between the two.
• Do not use the old font commands \rm, \tt, \sc etc. If you are running a recent version of
TEX Live, you may have seen warnings of the form:
Class scrartcl Warning: Usage of deprecated font command ‘\sc’!
(scrartcl)
You should note, that in 1994 font command ‘\sc’ has
(scrartcl)
been defined for compatibility to Script 2.0 only.
(scrartcl)
Now, after two decades of LaTeX2e and NFSS2, you
(scrartcl)
shouldn’t use such commands any longer and within
(scrartcl)
KOMA-Script usage of ‘\sc’ is definitely deprecated.
(scrartcl)
See ‘fntguide.pdf’ for more information about
(scrartcl)
recommended font commands.
(scrartcl)
Note also, that KOMA-Script will remove the definition
(scrartcl)
of ‘\sc’ anytime until release of about version 3.20.
(scrartcl)
But for now, KOMA-Script will replace deprecated ‘\sc’
(scrartcl)
by ‘\normalfont \scshape ’ on input line 94.
If you have TEX Live 2016 or later, you will find that KOMA-Script has gone ahead with its
threat and \sc etc. now give errors and compilation stops! Instead you should use \textsc
etc. You should also use \mathcal{L} instead of {\cal L}. A nice, brief explanation of
the differences can be found in „Das LATEX2e Sündenregister“, which you can find with the
command texdoc l2tabu. The English variant is called “An essential guide to LATEX2e usage:
Obsolete commands and packages” and can be found with the command texdoc l2tabuen. I
highly recommend you read this document to find out what constructs you should avoid in your
documents. You can read the font guide by giving the command texdoc fntguide.
• Do not try to end paragraphs with \\. These should be used sparingly when for some reason you
really have to start a new line. Just leave an empty line for a new paragraph.
• Do not draw conclusions or interpret figures in the caption. The caption should just describe
what is in the figure. Interpretation belongs in the main body of the text.
• Do not start trying to format figure and table captions inside each caption — use the options
available in KOMA-Script to set such things at the beginning of the document.
• Do not worry about overfull boxes, positions of figures and tables, etc. until you reach the final
version of your thesis.
12
2.5 Units
2.5 Units
As mentioned above, but I’ll say it again just to make the point, one of my pet hates is inconsistent and
poor typesetting and spacing of units. At least three standard packages exist to solve this problem:
siunitx, SIunits and units. My favourite is siunitx as it offers many extra features in addition to the
correct typesetting of numbers and their units.
Instead of SIunits, I used to use hepunits, which is based on SIunits but includes units commonly used
in particle physics such as GeV and pb. Unfortunately the syntax of the hepunits and units packages
is different even though they use the same macro name. In hepunits you write \unit{10}{\GeV},
while in units you write \unit[10]{\GeV}. The siunitx package is quite new and older versions were
supposed to have compatibility modes for both SIunits and units, but I had problems getting them
working. It uses the macros \SI and \num rather than \unit.
2.5.1 siunitx package
This package is a more modern and complete package than either SIunits or units. There were quite
a few changes from version 1 (TEX Live 2009) to version 2 (TEX Live 2011 or later), which means
that several of the examples I include here have somewhat different syntaxes depending on which
version of TEX Live is being used to compile this guide. If you use TEX Live 2011 or later, but want
to use units which were available in TEX Live 2009 or the older syntax you can include the option
version-1-compatibility. Note that TEX Live 2009 was the default version for Ubuntu releases
up to and including 12.04. I will give the siunitx version 2 options in the text and the version 1 options
as footnotes.
One very attractive feature is that it allows you to format computer-generated numbers such as
1.4E4 automatically, e.g. \num{1.4E4} produces 1.4 × 104 . Depending on the language or using
the option exponent-product11 you can also get −3.4 · 10−6 . It is even possible to set the number
of decimal places, cf. 2.99467 × 108 m s−1 and 3.0 × 108 m s−1 , which only differ by the use of the
round-mode and round-precision12 options, and even rounds correctly!
Another extremely nice feature of the package is that you can typeset numbers in a single way and
then a full stop or a comma will be used as the decimal point, depending on which language you
set for your document. This means that computer generated decimal numbers can be output with
commas in a German thesis just by changing the language of your thesis — this for me is LATEX at its
best! For example, writing \num{1.2345E-3} produces 1.2345 × 10−3 in the default language of the
document and 1,2345 · 10−3 if I say that this piece of text is in German (ngerman to be exact).
In keeping with LATEX philosophy, you can specify a number and its error using \num{2.88(32)}
to produce 2.88 ± 0.32 with the separate-uncertainty13 option (which I specify) or 2.88(32) with
the default option. Errors and powers can also be combined, e.g. \num{2.88(32)E-3} produces
(2.88 ± 0.32) × 10−3 . You also give as an option how units with negative powers of units should be
shown, e.g. per second. This can be changed for a single command.
Some examples are given below:
• c is 3 × 108 m s−1 — default \per;
11
expproduct in TEX Live 2009.
dp in TEX Live 2009
13
seperr in TEX Live 2009.
12
13
Chapter 2 Tips and tricks
• c is 3 × 108 m/s — using per-mode=fraction,fraction-function=\sfrac14
• written in displaymath or preferably equation*:
c = 2.99 × 108 m/s
with per-mode=symbol15 ;
• ~ is 1.054 × 10−34 J s.
You use “.” or “,” to make a space between the units, as illustrated in the last bullet. Angles are also
very straightforward — just use \ang as in 90°.
If you want to write something like 90(99) %, include the option parse-numbers=false with the
\SI command, so that it does not try to interpret 90(99).
If you also want to use siunitx in slides, where one usually uses a sans serif font, you may at
first be disappointed that siunitx uses a serif font for the units! Do not despair! You can use the
command \sisetup{detect-family=true}16 to ensure that the package uses the current font (in
all its aspects) rather than its default.
Have a look at the manual, texdoc siunitx, for many more examples. siunitx also contains useful
and powerful tools for typesetting tables and as mentioned above can be used to round numbers. These
aspects are discussed in Chapter 6.
Note that the \clight symbol that is used in the macro \MeVovercsq to produce MeV/c2 is
defined as c0 in siunitx version 2. As this is not the way it is usually written in particle physics I
redefined it using:
\DeclareSIUnit\clight{\text{\ensuremath{c}}}
Two things that are currently not built in are separate statistical and systematic errors and asymmetric
errors. From the author I got some suggestions on how to define such things. They are included
in guide_defs.sty at present and can be added to thesis_defs.sty. Two versions of a few of
the commands are defined depending on the value of \texlive, as some of the options changed
when moving from version 1 to version 2 of siunitx. Several new macros have been defined there:
\numerrt, \numpmerr and \numpmerrt to write errors with a description, which are asymmetric
and both, respectively. The corresponding macros for values and errors are \SIerrt, \SIpmerr and
\SIpmerrt. For the macros whose names end with “t”, you also have to provide the descriptive text.
If you have two errors then use \SIerrtt or \SIpmerrtt, which have two or three more arguments,
respectively. For the standard case of statistical and systematic errors, you can use the macros \SIerrs
and \SIpmerrs. Examples of their use are:
• σ = (3.42 ± 0.46 (stat.) ± 0.32 (sys.)) pb
• σ = (3.42 +0.46
−0.32 ) pb
• σ = (3.42 +0.46
−0.32 (stat.)) pb
+0.06
• σ = (3.42 +0.46
−0.32 (stat.) −0.04 (sys.)) pb
14
per=fraction,fraction=nice in TEX Live 2009
per=slash in TEX Live 2009
16
obeyall in TEX Live 2009.
15
14
2.5 Units
+0.06
• σ = (3.42 +0.46
−0.32 (stat.) −0.04 (sys.)) pb
The last two examples use \SIpmerrs and \SIpmerrtt just to show that they can both give the same
output. If you need even more complicated combinations of errors, or more errors, have a look at the
definitions, e.g.
σt t̄ = (164.6 ± 8.7 (stat.) +6.4
−5.3 (sys.) ± 8.2 (lumi.)) pb
2.5.2 SIunits/hepunits packages
Before I found siunitx these used to be my preferred units packages. This section therefore gives
examples on how to use hepunits and what you should be careful about. As siunitx has got stricter
about what it allows for a syntax, I have had to cheat in the LATEX code several times to show the effect.
Even though \xspace is used for some units in hepunits it does not appear to have the usual effect.
Hence, if you use units in normal text it is probably wise to terminate them with “\” or “{}”. Compare
• The GeVis a heavily used unit in particle physics and cross-sections measured in pbor nbare
quite common. Masses can be given in either MeV/c2 or MeV.
• The GeV is a heavily used unit in particle physics and cross-sections measured in pb or nb are
quite common. Masses can be given in either MeV/c2 or MeV.
In the first bullet the units were not terminated, while in the second they were.
Note that SIunits typesets the value in text mode and the unit in math mode. You only have to worry
about this if you want to use math mode symbols e.g. 108 in the value. Three different ways of writing
the velocity of light are:
•
•
•
•
c is \unit{$3 \cdot 10^{8}$}{\metre\per\second}
c is \unit{3$\cdot$\power{10}{8}}{\metre\reciprocal\second}
c is \unit{3 $\cdot$ \power{10}{8}}{\metre\usk\reciprocal\second}
Written in displaymath or preferably equation*:
\begin{equation*}
c = \unit{$3 \times \power{10}{8}$}{\metre\usk\reciprocal\second}
\end{equation*}
If you try these examples you will see differences in the spacing. The first example gives the best
result. Two different ways of handling the value are used in the second and third examples, either
without or with space between the number and $\cdot$. In the fourth example, where you use \unit
in math mode, you still need to enclose the value in $. . . $ if it includes characters from math mode.
Conversely if for some reason you want normal text in your units, you should put it inside \text, e.g.
the velocity of light is 3 × 108 metres per second. If you forgot the \text command using
\unit{$3 \cdot \power{10}{8}$}{metres per second} you would get: 3·108 metresper second
or if you tried to write the units yourself you would get 3 × 108 ms−1 .
If you have negative powers then you can play around with the \power command and the usual
superscript:
• ~ is \unit{$1.054 \times 10^{-34}$}{\joule\usk\second}
• ~ is \unit{1.054 $\times$ \power{10}{-34}}{\joule\usk\second}
15
Chapter 2 Tips and tricks
• ~ is \unit{1.054 $\times$ \power{10}{$-34$}}{\joule\usk\second}
Note the use of \usk to get a bit of space between the units. In the second example the minus sign
appears as a dash, “-”, rather than “−”, which is too small. Hence, if you use \power you should put
the power in math mode.
Just to complicate things further, if you use the Palatino font for example, then the standard TEX font
is used in math mode. You thus have to decide from the very beginning whether numbers should ALL
be in text or in math mode. This is clearly one of the disadvantages of using a font for which the math
mode is different from the text mode. ATLAS uses either the newtx or txfonts package, which do not
have this problem. This is why I use newtx in this guide. If you compile the guide with a different font
and the numbers 1234.56 and 1234.56 look the same then you do not have to worry! Recent versions
of this guide contain a Palatino font combination that works in both text and math mode — see the
style file. There are other ways to get around the problem with Palatino. You can try either the pxfonts
or the mathpazo packages — for my taste the sans serif font used in pxfonts looks a bit better.
2.6 Definitions in particle physics
At some point the CERN Computer Newsletter claimed that all particles should be written upright,
e.g. Z boson, b quark. However, nowadays it seems to be much more common to use italics. This
is also how the particles are written in the PDG. While ATLAS usually uses italics, CMS (and the
CERN Courier) use upright letters.
If you use the hepnicenames, heppennames and/or hepparticles packages, you can use the option
italic to switch from upright and italics. This is of course very nice! You just have to get used to
the conventions used there for particle names. Many particles are available in hepnicenames, while
heppennames is more complete.
Some examples from heppennames: \Pe produces e; \Pl produces `; \Pqt produces t; \PZ
produces Z; \PWpm produces W ± ; \PBz produces B0 ; \PBpm produces B± ; \PacB produces Bc− ;
\PBz{}\PaBz produces B0 B0 , while \PBz\PaBz produces B0 B0 .
+
Some examples from hepnicenames: \APelectron produces e ; \Plepton produces `; \Ptop
produces t; \PZ produces Z; \PWpm produces W ± ; \PBzero produces B0 ; \PBpm produces
B± ; \APBc produces Bc− ; \PBzero{}\PaBzero produces B0 B0 , while \PBzero\*APBzero
produces B0 B0 .
You can use commands like \HepParticle to define particles that are missing. There are also
macros for antiparticles and supersymmetric particles. If you define particles yourself, I would
recommend one of the following definitions:
\newcommand*{\Zo}{\ensuremath{Z}\xspace}
\newcommand*{\Zo}{\ensuremath{\text{Z}}\xspace}
\newcommand*{\bbarQ}{\ensuremath{\bar{b}}\xspace}
\newcommand*{\bbarQ}{\ensuremath{\bar{\text{b}}}\xspace}
which produce Z, Z, b̄, b̄. Note that you are not allowed to include numbers in the names of commands,
±
so \Z0 or \U1S are not valid commands. For B c and other particles whose names are capital letters,
16
2.7 Hints
±
it can be debated whether it better to use \overline than \bar. Compare B c and B̄c± . If you use
±
±
0
0
upright letters the choice is maybe easier: Bc and B̄c or KS and K̄L .
Another problem is that, depending on the font you use, the spacing between “e” and “V” on eV
and its derivatives, e.g. GeV, can be larger than you would like. As this is font dependent the siunitx
package does not try to fix this.17 The ubonn-thesis package contains an option eVkern that introduces
a -0.1em kerning, i.e. shift of “V” closer to “e” by 0.1em, which you can turn on if necessary.
2.7 Hints
0 0
xspace is great, but how do you write B B̄ when you have defined the symbols \Bo and \Bobar
with \xspace at the end. Here you need {} between the two commands, e.g. \Bo{}\Bobar produces
B0 B̄0 while \Bo\Bobar produces B0 B̄0 .
How should you write “between 104 and 105 ”? If you use math mode it looks like 104 − 105 , which is
not really what you want. Although it is rather clumsy, the best way to do it is $10^{4}$--$10^{5}$
which produces “104 –105 ”.
With siunitx and \num there is a built-in option. You simply write
\numrange{3e4}{7e4} to produce “3 × 104 to 7 × 104 ” or
\SIrange[range-phrase=- -]{5}{7}{\GeV} to produce “5–7 GeV”. If you only want the unit to
appear once write
\SIrange[range-units = single, range-phrase=- -]{5}{7}{\GeV} to produce 5–7 GeV.
In a single range, such settings are rather long-winded! However, they can be applied to the whole
document using the \sisetup macro.
With SIunits and \unit you can write \unit{\power{10}{4}--\power{10}{5}}{}, which
would look almost correct, but leaves some space for the unit! If you want to write between 5 and
7 GeV, then \unit works well: \unit{5--7}{\GeV}.
A similar problem is how do you write “about 10%”? Again the simple solution ∼ 10% or ∼ 10%
have too much space. In the file thesis_defs.sty two macros \mysim and \mysymeq are defined
that add some negative space so that you can simply put everything in math mode: ∼ 10% or ' 0.2.
An alternative is to use \SI or \unit, as there should actually be some space between the number and
the % sign, e.g. $\sim$\SI{10}{\%}, which produces ∼10 %, is completely correct and does not
need the use of \mysim.
What is the difference between \textrm and \mathrm? I used to worry about this and found a few
examples (which I then forgot) where the font size was better using one or the other. Then I learnt
about \text, converted all my predefined symbols to use \text rather than \mathrm or \textrm,
and don’t have to worry any more. However, I can given an example: the transverse energy of the
1st jet
1st jet
highest energy jet is denoted pT if one uses \mathrm, while it is denoted by pT
if you use
st
\textrm, where I used \text to produce 1 . As you can see from this example, the key difference is
that \mathrm switches to an upright font, but keeps you in math mode — hence ignoring any spaces.
\textrm switches to text mode (with a serif font) and therefore pays attention to spaces.
A perennial problem is bold math when it is needed in section headings etc. This is further
complicated by the fact that the table of contents is usually not typeset using a bold font (except for
17
A discussion of this can be found in http://tex.stackexchange.com/questions/219854/can-i-declare-anew-automatic-kern-for-ev-without-modifying-font-metrics.
17
Chapter 2 Tips and tricks
chapter titles, or whatever the highest level(s) of sectioning are). One way to get this right in both
cases is to give the heading twice, once with \boldmath for the real title and once without as the
optional title for the table of contents. An alternative solution is to add the command
\def\bfseries{\fontseries\bfdefault\selectfont\boldmath}. As of version 3.0 of ubonnthesis this command is included, so \boldmath should no longer be needed. An illustration of how
this works is given in Appendix G.
2.8 Common English mistakes
Several constructs are often used by German (and other non-native) speakers that are not grammatically
correct in English. Additions to the list are welcome. These are the ones I remember coming across
so far:
• “He has been living here since five years.” Correct: “He has been living here for five years.”
An example of the correct use of “since”: “Since becoming ATLAS spokesperson he has
implemented . . . .”
• “This allows to measure mH very accurately.” Correct: “This allows mH to be measured very
accurately.”
• “The table contains lots of informations.” Correct: “The table contains a lot of information.”
• “The table contains a lot of information, that is redundant.” Correct: “The table contains a lot
of information that is redundant.” You do not need a comma before “that” in English.
• “The main topics to discuss include: Building a new detector; . . . ” Correct: “The main topics
to discuss include: building a new detector; . . . ” Do not capitalise the word after a colon.
• “less” and “fewer”: use “fewer” for things that you can count and “less” for things you cannot
count: “less energy” and “fewer jets”.
• “The interaction occurs with a highly energetic hadron.” Correct: “The interaction occurs with
a high energy hadron.” One could argue that: “The interaction occurs with a high-energy
hadron.” is even better, as it makes clear that “high” is describing the energy of the hadron.
• “Energy is measured in the hadronic calorimeter.” Correct: “Energy is measured in the hadron
calorimeter.” This is somewhat controversial. There are in fact ATLAS publications that use
the term “hadronic calorimeter”.
• “We are not sensible to this effect.” Correct: “We are not sensitive to this effect.”
• “We have to choose between Xenon (Xe) and Argon (Ar).” Correct: “We have to choose between
xenon (Xe) and argon (Ar).”
• “We loose 50 % of the signal due to this cut.” Correct: “We lose 50 % of the signal due to this
cut.”
18
2.9 Line numbering
One further important point: decide early on if you are going to write your thesis in American or
British English. Typical American spellings include: flavor, color, hadronize. The British English
spellings are: flavour, colour, hadronise. Choose one or the other and do not mix them. Note that
the conventions on punctuation and where references appear relative to punctuation are different in
American and British English.
You should also decide how to capitalise your chapter and section headings. You can either capitalise
just the first word (and proper names and acronyms), or every important word. Most journals have
moved to the first option, but there are some that use the latter (most notably APS journals). Both are
fine — just be consistent!
2.9 Line numbering
You probably do not need line numbers when writing your thesis (who knows?). However, as this is a
very useful package that occasionally has some problems, I thought I would include some information
here.
lineno is the package to use to get line numbers in your text, but sometimes a block of lines is not
numbered — see Fig. 2.1a.
(a)
(b)
Figure 2.1: Example of (a) a problem with line numbers and (b) its solution.
Such problems are associated with text that is close to math mode environments. Some of the
problems can be solved by using a new version of the lineno package. However, this only works for
“standard” LATEX math environments: displaymath, equation and eqnarray, while it does not
work for recommended amsmath environments such as equation*, align(*) and alignat(*).
The solution is to enclose the equation in linenomath environment, e.g.
The total visible cross section for inclusive heavy-quark jet
production, $\sigma^{q}$, with $q\in\{b,c\}$ is given by
\begin{linenomath}
\begin{equation*}
\sigma^{q} = \frac{N_{q}^{\text{rec,Data}}}%
{\mathcal{A}_{q}\cdot\mathcal{L}_{\text{Data}}}.
\end{equation*}
\end{linenomath}
19
Chapter 2 Tips and tricks
Here, $\mathcal{L}_{\text{Data}}$ denotes the integrated luminosity,
$\mathcal{A}_{q}$ is the acceptance and $N_{q}^{\text{rec,Data}}$ the
number of reconstructed heavy-quark jets in data, which was determined
Then the line numbering will be correct, see Fig. 2.1b.
2.10 Updating ubonn-thesis
When you make a new thesis skeleton (as of version 2.1) the files thesis_skel/Makefile and
ubonn-thesis.sty (and ubonn-biblatex.sty) are copied to your mythesis directory. As of
version 6.0, your mythesis directory should be completely standalone and does not rely on any files
in the parent directory. If you want to profit from updates to ubonn-thesis, you therefore need to copy
the new version into mythesis again. The advantage of this scheme is that you can easily check what
the differences are before you do the copy. More importantly, if you have made your own changes to
the style file, it should be relatively easy to merge the two versions. Having all files in the mythesis
subdirectory also makes it much easier for you to use your own version manager for your thesis.
What is therefore the best way to update ubonn-thesis? If you are using Git, then you first need to
do a git pull in the ubonn-thesis directory. If you use a tar file, then you should unpack it and
copy over your mythesis directory tree to the new ubonn-thesis tree. As of version 6.0, you can
then use a command like make update THESIS=mythesis to copy the style files, the Makefile,
the bib file with the standard references and the covers to your mythesis directory. You will be asked
before existing files are overwritten. If you overwrite the Makefile make sure you update the value
of THESIS afterwards.
As a side remark, I would also recommend that you put all Feynman graphs etc. in subdirectories of
mythesis. You may have to change some variables that are set at the beginning of the Makefile so
that this works if you use feynmf. If you use feynmp just add \write18 statements. See Section 5.6
for some more details.
20
CHAPTER
3
Submitting your thesis
LATEX file: ./guide_submit.tex
Questions often come up when your thesis is finished and now you have to print it and submit it.
Both the „Promotionsbüro“ and the „Prüfungsamt“ have instructions on what you have to do, but it is
sometimes not clear what this means in terms of the cover pages offered by this thesis framework.
For the printed version of your thesis, you probably want hyperref links and the table of contents to
be black. In order to do this, you should uncomment the \hypersetup command that is in the thesis
main file, just after the \usepackage{thesis_defs}.
3.1 PhD thesis
3.1.1 Submission
1. Use the file PhD_Submit_Title.tex for the title pages. This is selected by passing the options
PhD, Submit. to the \documentclass or the ubonn-thesis package. Leave the „Tag der
Promotion“ and „Erscheinungsjahr“ blank.
2. You are required to also submit a CV and a summary of your thesis. A skeleton CV is provided
as the file thesis_cv.tex which you then include at the end of your thesis. The summary
should also be printed separately.
3. You have to print and bind five copies of your thesis for the Promotionsbüro. Nowadays these
are usually in colour. One of these copies will go to the department library.
4. The first and second referees for your thesis often like to also have an extra copy of the thesis so
that they can make comments when they read your thesis — ask them if they want one. You can
usually save the institute some money and print these copies in black & white.
3.1.2 Printing the final version
1. Use the file PhD_Final_Title.tex for the title page. This is selected by passing the options
PhD, Final. to the \documentclass or the ubonn-thesis package.
2. Do not include your CV.
21
Chapter 3 Submitting your thesis
3. There are probably some small corrections you or the referees found during the time between
submission and your examination. These should be corrected before you submit your thesis to
the university library (ULB).
4. Almost everyone submits their thesis electronically to the ULB. You still have to print two
copies for them as well.1 The ULB is quite strict on the quality of the binding etc. The university
print shop is not able to fulfil the requirements, so you have to print these versions externally.
When you do this do not forget to uncomment the \hypersetup command as mentioned above,
if you want to print them in colour.
5. The department library (in the Physikalisches Institut) needs seven printed copies with the
file PhD_Cover.tex as the cover and PhD_Final_Title.tex for the title pages. These are
selected by passing the options PhD, PILibrary to the \documentclass or the ubonn-thesis
package. You have to get the “BONN-IR-YYYY-nnn” number from the librarian. You should
also include an abstract (in English) on the cover page. You can also use this abstract when you
submit your thesis electronically to the ULB.
6. The department library version of the thesis is the one that you usually print if you need extra
copies for your experiment or research group.
Note that when you want to get your degree certificate, you will get some forms from the
Promotionsbüro that have to fill out. These forms have to be signed by your supervisor. One of the
forms asks you if you have published significant parts of your thesis elsewhere. This means your actual
thesis and not a paper that uses the results from your thesis. If you submit your thesis electronically to
the ULB, then you should not fill out this form. It only applies if you actually publish your thesis
elsewhere (which is allowed by the Promotionsordnung).
Appendix C suggests some print shops that can make copies of your thesis in good enough quality
to be accepted by the university library.
3.2 Master/Diplom/Bachelor thesis
3.2.1 Submission
1. Use the file Master_Submit_Title.tex, Diplom_Submit_Title.tex or
Bachelor_Title.tex for the title pages. These are selected by passing one of the options
Master, Diplom or Bachelor to the \documentclass or the ubonn-thesis package. In
addition, pass the option Submit to to the \documentclass or the ubonn-thesis package.
2. You have to print and bind three copies of your thesis to be submitted to the Prüfungsamt.
Nowadays these are usually in colour.
3. The first and second referees for your thesis often like to have an extra copy of the thesis so that
they can make comments when they read your thesis — ask them if they want one. You can
usually save the institute some money and print these copies in black & white.
Note that a CV does not have to be included in a Master/Diplom/Bachelor thesis. This is only
needed when you submit a PhD thesis.
1
This used to be five, but has recently (2015) been reduced.
22
3.2 Master/Diplom/Bachelor thesis
3.2.2 MSc/Diplom theses for the department library
1. Use the file Master_Cover.tex for the cover and Master_Final_Title.tex2 for the title
pages. These are selected by passing the options Master, PILibrary3 to the \documentclass
or the ubonn-thesis package.
2. There are probably some small corrections you or the referees found during the time between
submission and the completion of the referees’ reports and grades. These should be corrected
before you submit your thesis to the department library.
3. The department library (in the Physikalisches Institut) needs 1 printed copies with the file
Master_Cover.tex as the cover. This is selected by passing the options Master, PILibrary
to the \documentclass or the ubonn-thesis package. You have to get the “BONN-IB-YYYYnnn” number from the librarian. You should also include an abstract (in English) on the cover
page.
4. This version of the thesis is the one that you usually print if you need extra copies for your
experiment or research group.
3.2.3 BSc theses
1. There are probably some small corrections you or the referees found during the time between
submission and the completion of the referees’ reports and grades. These should be corrected
before you print some extra copies of your thesis if your group wants them.
2
3
Replace Master with Diplom as appropriate.
or Diplom, PILibrary
23
CHAPTER
4
Useful packages
LATEX file: ./guide_package.tex
LATEX has so many packages that it is often hard to find the correct or most useful ones. It is also not a
good idea to just take one of your friend’s theses and use his/her packages and conventions, as there is
a steady and regular improvement in the packages available.
This chapter lists some useful packages — maybe also some that are not so commonly known. Here
I only say what the package is used for. More detailed instructions on the usage can be found in the
relevant chapters. I first list the packages used in this guide and then give a bit of information on other
packages that may be useful.
From all that I have read, KOMA-Script seems to be the way to go for the overall classes. I have
therefore based the ubonn-thesis style on this. You replace article, report and book by scrartcl, scrreprt
and scrbook. For theses I think it is best to use scrbook, as this class also includes the commands
\frontmatter, \mainmatter and \backmatter that set up page numbering etc. appropriately.
Please try to use KOMA-Script version 3.0 or higher. The \KOMAoptions command is not available
in earlier versions, so you would have to modify the style file.
4.1 Layout and language
There are quite a few packages related to layout and also to handling of text input and languages. As
far as layout goes, KOMA-Script has many options with which you can already do a lot. You can either
use the built-in typearea package to do the page layout, which also includes nice options to allow for
the binding, or use the geometry package which also contains more than enough options. In the past I
have used geometry, but I also see no reason not to just use typearea. Note that you should not include
the typearea package, you should simply set the options using \KOMAoptions. Generally, all you
need to do is specify DIV (set by default to 12), which divides the page into a number of divisions and
BCOR (set by default to 5 mm), which leaves some space for the binding. The packages are listed in
Table 4.1.
The package scrlayer-scrpage has superseded scrpage2. If your version of LATEX is so old that it
does not know about scrlayer-scrpage adjust the ubonn-thesis style file accordingly.
25
Chapter 4 Useful packages
geometry
typearea
setspace
fontenc
inputenc
babel
csquotes
scrlayer-scrpage
xspace
Provides simple options for page layout such as scale=0.75 to cover 75 % of
the page.
Does much the same, but here you specify how many elements to split the page
into, e.g. DIV=12. You do not have to include this package explicitly if you use
KOMA-Script.
Useful options to change spacing.
The encoding used for fonts. Recommended is T1, which is given as an option.
Use either utf8 or latin1 so that you can input German letters such as ä, ü and
ß directly.
Language specific typesetting.
Package for quoting things using the correct language-dependent quotation marks.
Set headers and footer.
Avoid having to put “\ ” or “{}” after a macro.
Table 4.1: Useful packages for layout.
4.2 Appearance
It used to be the case that nearly all LATEX documents used the Computer Modern Fonts. That is no
longer necessary. There are rather complete font sets that are also free that you can use instead. The
default font for theses is newtx that is available as of TEX Live 2013. If you have this package, then
I would recommend using it. txfonts is an older version of this package that can be used instead,
if necessary. Some of the spacings in equations have been improved in newtx and there is a better
balance of the sizes of serif, sans serif and typewriter fonts. Other fonts that look quite nice (e.g.
Palatino) can also be used. The option palatino in ubonn-thesis can be used to select this. The
option actually selects the font packages mathpazo, courier and helvet. Another alternative is a package
such as pxfonts to get both text and math fonts in the same style. Some examples of other possible font
packages are given in the style file. As mentioned above, certain fonts can be selected directly via
options: txfonts, newtx or palatino.
Commonly used packages associated with fonts, tables and figures are listed in Table 4.2.
As alternatives to xtab, one can also use supertabular or longtable. All these packages also have the
advantage that you can specify header and footer text. If you use the mpxtabuar environment from
xtab you can include footnotes in a table. See the xtab documentation for more details. It is probably
best to only use one of these three packages to avoid conflicts.
Use of the titlesec package gives a warning when using KOMA-Script; hence as of version 3.0 the
chapter title formatting is done by hand in ubonn-thesis. You can switch back to using titlesec by
giving the option titlesec.
The package microtype declares itself to be responsible for “Subliminal refinements towards
typographical perfection”. Need I say more?
4.3 Other packages
Some other useful packages, some of which are included in ubonn-thesis.sty are listed in Table 4.3.
26
4.3 Other packages
siunitx
graphicx
rotating
array
xtab
booktabs
amsmath, amssymb
hepnicenames
heppennames
mhchem
xfrac
xcolor
titlesec
microtype
Typeset units properly with correct spacing.
The package to use for including graphics.
Package to use for rotating tables etc. The \includegraphics command
can rotate figures directly.
Adds extra column formatting capabilities.
Can produce tables that extend over more than one page.
Help for producing nicer tables.
Extra math commands and symbols from AMS.
A somewhat restricted list of predefined elementary particles.
A more complete list of predefined elementary particles. Note that hepnicenames also loads heppennames. The packages are based on hepparticles,
which you can use to define further particles.
Nice package for typesetting chemical elements correctly.
Some more options for typesetting fractions.
Add colour commands.
Change the appearance of chapter and section headings. See below for more
information.
Small adjustments to word spacings.
Table 4.2: Useful packages for appearance.
While the amsmath package solves many problems that occur if you just use the normal LATEX
math mode commands, there are some things that are not so nice with long and complicated multiline
equations. IEEEtrantools, in particular the IEEEeqnarray environment, can help here. See Ref. [Oet+]
or the package documentation for more details.
The packages physics, commath and skmath provide some additional maths commands. Differentials
etc. are particularly useful. The physics package contains a lot of nice and flexible definitions and also
handles the spacing around things like dx well, if you use the \dd{x} construction. The commath
package has not been updated for a while. skmath does quite a lot more then commath and even
modifies/enhances some standard commands.
The todonotes is a very nice package that enables you to add notes to your text. By default they will
be put in the margin of your document. More details can be found in Section 4.4.
The cleveref package is a great package for specifying references to figures, tables, sections etc.
You just give the command \cref{fig:plot} and it will add “Fig.” or whatever you set to the figure
number and an unbreakable space. This guide has been converted to use the cleveref everywhere.
standalone is both a package and a document class. It is available from TEX Live 2012 onwards.
It allows you to have a standalone document for a tikz or feynmf figure and also input this file into
another document. If you run PDFLATEX on the file it also automatically crops the resulting picture.
This is one of those packages where you think “Why didn’t someone create this years ago?”. The tikz
figures included in this guide make use of it.
I do not recommend the subfiles package by default as it is not included in TEX Live by default.
Have a look at http://en.wikibooks.org/wiki/LaTeX/General_Guidelines for example for
more information. If you want to use the package you have to download it and install for yourself.
You can do much the same thing using AUCTeX inside emacs.
27
Chapter 4 Useful packages
ifthen
IEEEtrantools
feynmp
axodraw
tikz
standalone
hyperref
cleveref
todonotes
background
subfiles
subcaption
tabularx
floatrow
physics
commath
skmath
adjustbox
wrapfig
floatflt
glossaries
dcolumn
refcheck
Provides the \ifthenelse command.
Contains useful environments for multiline equations.
Draw Feynman graphs with Metapost.
Draw Feynman graphs.
General drawing package that can also be used for Feynman graphs.
Allows you to have a document that you can directly compile for each figure and
also input to another document.
Adds \url command as well as ability to click on entries on table of contents etc.
Provides “Fig.”, “Table” etc. when you use the \cref{fig:plot} syntax.
Nice package to add notes to your text. You can also use it to indicate missing
figures.
Allows you to add things like DRAFT across the whole document page.
Provides a nice alternative to \include.
A newer alternative to subfig.
Allows fixed table width with flexible column widths.
Add ability to define own floats.
Some useful extra maths commands, especially for differentials.
Some useful extra maths commands — has not been updated for a while.
More maths commands that could be useful.
Add much more sophisticated clipping capabilities than offered by graphicx.
Allow text to flow around figures.
Similar capabilities to wrapfig — allow text to flow around figures.
Provide commands for creating a glossary. This is intended to replace the glossary
package.
Very helpful for lining up columns on character strings such as a decimal point.
siunitx offers similar and better functionality.
Check whether labels are used, i.e. if figures and tables are actually referenced.
Table 4.3: Other useful packages.
Note that there is a conflict if you use refcheck, subcaption and hyperref together.
See http://tex.stackexchange.com/questions/273970/conflict-refchecksubcaption-packages-for-label-with-underscores for a workaround.
It is often useful to indicate whether your thesis is in the draft stage. The thesis skeleton uses the
package background for this. It is only available as of TEX Live 2011. Hence “Draft” is instead put in
the heading for older versions. As an alternative, you can try the package draftwatermark.1
A list of other packages that are commonly used is given in Table 4.4. They are not included in the
list above, because they are either not really needed or have been superseded by other packages.
As indicated, the ziffer package is advertised as providing the correct spacing after a comma in math
mode if you use the comma as the decimal separator. Compare 2, 5 with 2,5 and 2,5. The first spacing
is wrong. If you use the ziffer package it will be correct. However, it does seem to conflict with the use
1
draftwatermark needs \unitlength to be set to 1 pt. This is not the default setting in ubonn-thesis. The 2009 thesis
skeleton contains \setlength{\unitlength}{1pt} (commented out). Given that this is a global setting, neither it nor
draftwatermark are included by default.
28
4.4 ToDo Notes
hepunits
units
SIunits
fancyhdr
feynmf
draftwatermark
subfig
subfigure
color
float
caption
ziffer
nomencl
fncychap
quotchap
Typeset units properly with correct spacing.
Typeset units properly with correct spacing.
Typeset units properly with correct spacing. hepunits uses this package, so it does
not need to be added explicitly
As the name suggests, do your own header and footer configuration. Within
KOMA-Script it is recommended to use scrlayer-scrpage instead.
Draw Feynman graphs with Metafont.
Another package that allows you to add DRAFT to the background each page.
As the name suggests make sub-figures and add separate captions for them. This
package has apparently been deprecated.
As the name suggests make sub-figures and add separate captions for them. This
package is deprecated.
Add colour commands — xcolor is needed to colour boxes around links.
As far as I can tell floatflt offers more options.
Much more control on captions — as KOMA- Script also has many options, not
sure this is necessary.
Spacing with a comma as decimal separator is correct.
Another package for creating a glossary.
Another package for changing the style of the chapter heading.
Another package for changing the style of the chapter heading.
Table 4.4: Other packages that are often used, but I have already given alternatives.
of the dcolumn package, so I cannot compile this guide if ziffer is included. Some workarounds are
discussed in Section 8.3. In addition, the siunitx package contains the same functionality, which can
simply be steered by changing the document language, as discussed in Section 6.2. Hence, ziffer is not
really needed anymore.
4.4 ToDo Notes
If you include the option todonotes with ubonn-thesis, the margin of the thesis will also be adjusted
a bit to leave more space for such notes. As an example, the \mynote command is defined.
If you turn on the option todonotes, the package will be loaded. With the option shownotes they
will also be displayed.
Another nice feature of the todonotes package is that you can use \missingfigure{text} to
indicate figures that you still want to include. See for example Fig. 4.1. You can get a list of your
notes by adding the \listoftodos command somewhere.
The macro \todo has some problems inside floats. You should pass the option inline to \mynote
if you want a comment inside a caption. If you also include a “List of Tables” or “List of Figures”,
then you have to provide a short caption as an option or move the note outside (after) the caption.
29
The shownotes
also turns on
todonotes.
Chapter 4 Useful packages
Missing
figure
Still need to create the plot to be included here.
Figure 4.1: This figure still has to be added.
Use the option inline to include a note in a caption, as this is floating. A note that does not point to a block of text needs a
blank first argument.
30
CHAPTER
5
Figures
LATEX file: ./guide_figs.tex
This chapter discusses what you need to know to include graphics in your thesis. The basic command
to use is \includegraphics.
I recently found a pretty complete guide (in German) called l2piqfaq which can be obtained from
http://www.ctan.org/tex-archive/info/l2picfaq/german. It contains a lot of detailed
information and tricks.
The chapter also contains some suggestions as to how to create Feynman graphs with a number of
different packages.
5.1 Simple figures
A simple figure and its associated caption is straightforward to include. For example, the layout of the
LHC and its experiments is shown in Fig. 5.1.
Note the use of \centering rather than the environment \begin{center} . . . \end{center} to
centre the figure. This avoid adding extra vertical space. It is also important that the \label be either
inside the caption or after it. If your caption is more than 1 (or 2) lines, you should also give a short
form that will appear in the “List of Figures”.
One tricky question is how to best format the caption. This document uses a smaller font and no
extra indentation. Often italics are used. I dislike this, as symbols are then formatted in different ways
in the main text and in the caption. One can also reduce the width of the caption. The font for the
caption can be specified using the \setkomafont{caption} command. You can specify how to
label the figure by changing the \figureformat command. The captions in this document follow the
standard KOMA - Script convention: if they are one line long they are centred; if they are longer they
are left-adjusted. If you want them all to be left-adjusted set the KOMAoptions caption=nooneline
in ubonn-thesis.sty. Some examples of the possibilities are included in the style file.
Another thing to consider is whether the text should be indented or not. For short captions,
indentation is OK. I do not think it looks good for long captions. Hence the style file sets
\setcapindent{0pt}.
31
Chapter 5 Figures
Figure 5.1: Sketch of the LHC ring, the position of the experiments and the surrounding countryside. The four
big LHC experiments are indicated. The location of the injection lines and the SPS are also shown.
5.2 Fancier figures
Life gets more complicated if you want to include several plots in one figure, if you want the caption
next to the figure, or if you want the text to “flow” around the figure. For the first case I like to use the
tabular environment to place the plots, although there are other ways of doing it.
Another very nice way to add (a), (b) etc. to the figure is to use the \put command. This has
the big advantage that you can display the letters in the figure without actually having to add them
to the EPS/PDF file. Figure 5.2 shows how this is done. Note that the origin of the coordinate
system is the bottom right-hand corner of the file that you have included (assuming that the \put
command comes just after the \includegraphics). The units for the \put command are set with
the \setlength{\unitlength} command, which is by default set to 1 mm in ubonn-thesis.sty.
The same units are also used for Feynman graphs made with the feynmf and/or feynmp package — see
Section 5.6.2.
t
(a)
t
(b)
t
(c)
g
g
g
Figure 5.2: Adding letters to figures with \put.
Another way of achieving the same thing, but this time with the letter outside the figure is to use
32
5.3 Figure formats
tabular. An example of this is shown in Fig. 5.3.
t
t
t
g
g
(a)
g
(b)
(c)
Figure 5.3: Adding letters to figures with tabular.
If you want to save space it is sometimes nice to put the caption next to the figure. While packages
exist to do this, KOMA-Script has its own built-in captionbeside environment. The placement
option comes after the caption itself and can be one of:
l Left of figure
r Right of figure
i Inner margin in two-sided layout
o Outer margin in two-sided layout
Note that this is an environment rather than a macro and that the figure itself is inside the environment.
Also the placement does not seem to work exactly how it is advertised in the manual. I set the width
equal to \figwidth and then the offset to -\figwidth.
t
Figure 5.4: A small figure with a simple caption beside
it.
g
If you want different (partial) captions for a figure then the subfig package used to be the way to go.
An alternative, and successor, to subfig is subcaption. It works in much the same way as subfig. A nice
tutorial on its use can be found in http://www.peteryu.ca/tutorials/publishing/latex_
captions. An example of its use can be seen in Fig. 5.5. The LATEX file guide_figs.tex contains
examples for both subfig and subcaption, as the way subcaption should be used was different for TEX
Live 2011 and earlier. You can see how to reference the different parts of the figure in Section 5.6. If
you want the captions of the sub-figures to also appear in the “List of Figures” you should include the
package with the option lofdepth. For tables use the option lotdepth.
If you run out of space (applies more often to proceedings than to theses) you can use the wrapfig
package.
5.3 Figure formats
If you use plain LATEX, you are pretty much stuck with encapsulated postscript (EPS) as your figure
format. If you use PDFLATEX, then you have much more freedom, with the notable exception that you
33
Chapter 5 Figures
e0 (k 0 )
νe (k 0 )
e(k)
e(k)
W ± (q)
γ, Z(q)
p(P )
p(P )
X
(a) NC scattering
1
X
(b) CC scattering
Figure 5.5: Processes in ep scattering.
1
cannot include EPS files!1 I would still recommend that you always try to use a vector graphic format.
What usually works well is to either create PDF directly or to create EPS and then convert from EPS
to PDF.
The tool I use for conversion is epstopdf. Occasionally this fails; in that case eps2eps can help.
It is important that the bounding box is set correctly in the EPS file before you run epstopdf.
If these fail, you can try the convert command which is part of ImageMagick. A more powerful
tool is inkscape which is a successor to xfig. Professionals use Adobe Illustrator!
5.4 TikZ and PGF
pgfplots and tikz are packages to help with creating graphics “inline”. For 3D figures you also need
tikz-3dplot. PGF is the backend, while TikZ is what the user interacts with directly. The manual
contains all the information you should need, but was 1161 pages long at the last count, so it may not
to be too easy to find what you want!
I do not have much experience with using these packages so far, so this section will certainly not
cover all possibilities. There may also be better ways of doing things than I illustrate here. The
examples I give come from Andrii Verbytskyi or are adapted from questions and answers found
on http://tex.stackexchange.com/. The examples included in this guide and a few more are
collected in the tikz subdirectory. If you want to get started with TikZ you can copy this directory
into your thesis directory, e.g. mythesis.2
TikZ is not included by default in a new skeleton thesis. See the commented out packages in a new
1
2
This restriction has finally been lifted with TEX Live 2011. It simply converts the EPS files to PDF inline.
Note that some of the examples only work with TEX Live 2011 and later. This is indicated in the file. I also did not
manage to compile the guide without errors when including tikz with TEX Live 2009, so some of the figures may be
missing if you compile your own version of the guide with TEX Live 2009.
34
5.5 Placement
thesis skeleton or thesis_guide.tex for the packages and TikZ libraries that you should include if
you want to use it.
You often want to include a figure of your experiment’s coordinate system in your thesis. One way
to do this is illustrated in Fig. 5.6.
y
p
θ
e
φ
z
x
Figure 5.6: The ZEUS coordinate system.
It is also possible to make flow charts with TikZ. This is illustrated in Fig. 5.7.
There are many more possibilities, including plots which you would otherwise make with root or
some other graphics program. An example plot showing the effect of systematic variations can be
found in Appendix E. Making Feynman graphs with TikZ is covered in Section 5.6.3.
5.4.1 Accelerator lattices
If you want to include an accelerator lattice in your thesis you can try tikz-palattice3 He used the
package to make lattices of particle accelerators for his PhD thesis.
5.5 Placement
Even after many years of including figures into LATEX files, I still think there is a fair amount of black
magic involved in getting them into the place that you want them to be.
In general, you are advised to give LATEX as much freedom as possible in the placing, so it is usual
to use the options [htbp] for the placement. In particular, be very careful with using just [h] or [H]
as the placement option. It very easily leads to LATEX putting single lines of text either above or below
a figure. One way to get rid of single lines is to remove the option h, as the figure must then be placed
at the top or bottom of the page (or on a page of floats). You can also add an ! in the list of options,
which suspends spacing and number restrictions.
A nice summary of the logic behind the placement can be found in TEX/LATEX Stack Exchange
(click on the link!). A couple of points from there that are worth mentioning here:
3
https://ctan.org/pkg/tikz-palattice written by Jan Schmidt, who gave me a number of useful tips for this
guide.
35
Chapter 5 Figures
Event
generator
Collision
MOZART
Detector
ZGANA
Trigger
MOZART control cards
MOZART GAFs
ZGANA control cards
ZGANA GAFs
ZEPHYR control cards
ZEPHYR GAFs
ORANGE control cards
ORANGE GAFs
ZEPHYR
ORANGE
and
PHANTOM
NTuples
Analysis
Figure 5.7: Event reconstruction and simulation in ZEUS.
36
Event
rejection
5.5 Placement
• The order of the options htbp has no effect!
• If a float is placed in the middle of a paragraph, the reference point for deciding where it will
appear is the next line break or page break in the paragraph, following the float.
• The order of figures (and tables) is fixed to the order that they are included in a document.
However, the order of figures and tables relative to each other is not fixed.
The UK List of FAQ recommends changing several default LATEX options so that there are fewer
problems with figure and table placement. It is certainly worth reading that page for further advice. As
it is very hard to really test how well these options work they can be turned on or off in ubonn-thesis
via the option floatopt=true|false. The default value is set to true.
I used to think it was better to attach the figure to a paragraph:
The distribution is shown in \cref{fig:funny1}.
%
\begin{figure}[htbp]
\centering
\includegraphics[width=\figwidth]{file}
\caption{An odd plot that I don’t understand.}
\label{fig:funny1}
\end{figure}
%
The distribution shows something that I do not understand.
Given that this is not understood we went to the pub for a beer to
think about it a bit more.
More recently it appears to me to be better to separate the figure from the paragraph:
The distribution is shown in \cref{fig:funny2}.
The distribution shows something that I do not understand.
\begin{figure}[htbp]
\centering
\includegraphics[width=\figwidth]{file}
\caption{An odd plot that I don’t understand.}
\label{fig:funny2}
\end{figure}
Given that this is not understood we went to the pub for a beer to
think about it a bit more.
However, it is hard to give a hard and fast rule here. As indicated above, the effect of these different
ways of including a figure (and table) is the point in the text (reference point) that LATEX uses to start
trying to place the figure. In general, you should only try to tweak the position of figures and tables
when your text is final, as a change in the text way well move some of the floats.
37
Chapter 5 Figures
5.5.1 standalone package and class
The standalone package provides a great way of developing figures in small files and then inputting
these files directly, without making any changes, into your thesis!
It is in fact both a package and a document class. It is available from TEX Live 2012 onward. It
allows you to have a standalone document for a tikz or feynmf figure and also input this file into another
document. If you run PDFLATEX on the file it also automatically crops the resulting picture. This is
one of those packages where you think “Why didn’t someone create this years ago?”. The TikZ figures
that I include in this guide (see subdirectory tikz) make use of this package. If you want to use it,
make sure that you also include this package in your thesis.
5.6 Feynman graphs
You have lots of Feynman graphs you want to include, but how do you generate them? Recently I
have moved to a Python package PyFeyn (https://pyfeyn.hepforge.org) that works quite nicely.
Before that I followed the example of many people, where I found one way doing it and never changed!
I used to use Mn_Fit, mainly because I wrote it and therefore know inside out how it works. Examples
can be found on my web page: http://pi.physik.uni-bonn.de/~brock/feynman.
Alternatives include axodraw and the feynmf or feynmp packages. It is also possible to use tikz. The
use of feynmf and feynmp is described in Section 5.6.2, while a few examples of usage of tikz are
given in Section 5.6.3. Examples of Feynman graphs made with feynmf and feynmp can be found in
the feynmf directory, while those made with tikz can be found in the tikz subdirectory.
Instructions on how to use axodraw may come at a later date — contributions would be welcome!
Several people have claimed that jaxodraw is the way to go. This is a Java package which you can
download from http://jaxodraw.sourceforge.net/. It has a Graphical User Interface (GUI) to
axodraw and so is simple and straightforward to use.
This paragraph illustrates how to reference different parts of a figure that uses the environment
subfigure from the package subcaption. If you compile the guide with TEX Live 2011 or earlier the
environment subcaption from the package subfig is used. The NC and CC graphs shown in Fig. 5.5,
or more accurately in Fig. 5.5(a) and Fig. 5.5(b) were made with feynmp. Another way of saying the
same thing is that typical Feynman graphs for ep scattering are shown in Fig. 5.5, where (a) shows a
neutral current and (b) show a charged current process.
5.6.1 PyFeyn
As the name suggests, PyFeyn (https://pyfeyn.hepforge.org) is a Python package for drawing
Feynman graphs. It combines the advantages of using a programming language to draw the graphs
with the ability to use LATEX and the same fonts as you use in your thesis for the text. I also wanted to
improve my Python skills, so now use this package for my graphs.
The package hepnicename is included by PyFeyn. If you want your particles to be written with
italics, you have to add this option to __init__.py in the pyfeyn directory.
PyFeyn should work pretty much out of the box, but may need a specific version of the pyx package.
If you want to use the newtx fonts, you may have to apply a patch. In order to install the package using
Homebrew Python under MacOS, I did:
38
5.6 Feynman graphs
pip(3) install PyX==0.12.1 (Python 2 needs 0.12.1)
pip(3) install PyFeyn
Stuff goes in /usr/local/lib/python2.7/site-packages/... etc.
To use newtx fonts had to patch pyx/dvi/vffiles.py
https://sourceforge.net/p/pyx/code/3678/
So far I have not tested its use with operating systems other than MacOS, but it should work.
While functions exist to draw a number of lines, I added my own wrapper functions that adjust the
style as I wanted. Have a look at pyfeyn/myPyFeyn/__init__.py to see what default settings I use
to get the font and colours that I want. Examples of Feynman graphs drawn using the package can be
found in Fig. 5.8 and are included in the pyfeyn directory. If you want to get started with PyFeyn you
can copy this directory into your thesis directory, e.g. mythesis.
u
d
u
W
b
W
Z
t
d
Z
W
b
t
b
Figure 5.8: Example Feynman graphs for the associated production of a top quark and a Z boson.
5.6.2 FeynMF and FeynMP
In order to use feynmf or feynmp, you have to put the commands to draw the graph in a LATEX file and
then process this file with LATEX and either Metafont or Metapost.4 You can either make a separate
LATEX file containing the Feynman graph or include the commands inside your normal LATEX file.
Metapost is a bit easier to use than Metafont. You should be able to just run mpost after (pdf)latex
and then run pdflatex again twice. Note that you have to run mpost on all the files whose names are
defined at the beginning of the fmffile environment. While Metapost works well as of TEX Live
2011, I did not get it to work properly with TEX Live 2009 for unknown reasons.
Metafont is a bit trickier. On Unix systems the feynmf perl script exists that runs both LATEX
and Metafont for you. This will produce a dvi file that you then then look at or use to make a
Postscript/PDF file.
I think a better way to proceed is the following:
• make a separate LATEX file for each of the Feynman graphs;
• input this file in your figure;
• use the Makefile described below to automatically run over one or all feynmp/feynmf LATEX
files by giving the command make feynmp or make feynmf.
4
ubonn-thesis.sty now includes feynmp by default for TEX Live 2011 and later. If you want to use feynmf instead just
change the name.
39
Chapter 5 Figures
Check ./feynmf/feynmf_all.dvi or ./feynmf/feynmf_all.pdf to see if the graphs are
OK;
• run LATEX or PDFLATEX;
• run bibtex or biber;
• run LATEX or PDFLATEX again, at least twice.
The last three steps are done with the command make thesis, make thesis11 or make thesis09.
The big advantage of this procedure is that the graphs are included “properly” in the thesis, their fonts
should automatically match the fonts used in the thesis and you don’t have to worry about converting
and clipping. I have written a small script that is executed by the Makefile to do the third step.
The script is run_mf for feynmf and run_mp for feynmp. These are included in the main directory
ubonn-thesis. The scripts assume that all Feynman graphs are in a feynmf subdirectory. This can
clearly be adjusted in the Makefile as necessary. To get started you can copy the feynmf directory
from ubonn-thesis.
The run_mf script assumes that all files of type tex (except those that start with feynmf_) are
Feynman graphs to process with feynmf. Note that it may be necessary to give the command make
cleanfeynmf to get rid of temporary files before make feynmf if you change the sizes of things.
The run_mp script works a bit differently. It creates a temporary directory mpost_tmp in which it
processes the figures (tex files) in the feynmf subdirectory. The resulting PDF files are copied back
to the feynmf subdirectory.
You can also use the package standalone together with feynmp. The files in the feynmf directory
contain commented out code that shows how this can be done. I do not do this by default for the guide,
as the package is very new and I also want to test making the Feynman graphs with feynmf. Note
that the name in the fmffile environment (and the \write18 command) should be the same and
different from the name of the LATEX file. If you use this option, you should probably also adjust the
Makefile target for feynmp to work in the same way as the target tikz. You have to run pdflatex
twice on each file.
Figure 5.9 shows the same neutral current and charged current graphs, but this time inputting the
appropriate feynmf commands directly. The graphs are enclosed in \fbox for illustration purposes
only. The plots are made using feynmp, where an appropriate \write18 statement is included in
the LATEX source code, e.g. \write18 mpost gluon, after the figure, where the figure starts with
\begin{fmffile}{gluon}.5
With the TEX Live 2011 and later setups I use to test this guide, this is all you need. If mpost
does not run automatically, you must execute the command pdflatex shell-escape mythesis
when you compile your thesis. This can be achieved by including the EXTRACMD definition that is
commented out in the Makefile. In this guide I put the Feynman graph in its own file and the
\write18 statement in the main file so that I can test feynmf and feynmp with the same LATEX code.
In your thesis, you should probably put the \write18 statement in the file with the Feynman graph. If
you use latexmk to compile you probably need to use the commented out version of the latexmk
command in the Makefile.
5
If you use TEXstudio you may have to give the full pathname for mpost, e.g. /usr/texbin/mpost, as TEXstudio does
not parse your PATH properly.
40
5.6 Feynman graphs
νe (k 0)
e 0(k 0)
e(k)
e(k)
γ, Z(q)
W ± (q)
p(P)
p(P)
X
X
Figure 5.9: NC and CC graphs for ep scattering using feynmf code directly.
As mentioned above, you probably want to first draw the graphs outside of your thesis to get
them into the form that you need. If you give the command make feynmf, it will run feynmf on
all tex files in the subdirectory feynmf. If you give the command make feynmf file=ep_nc it
will run over ./feynmf/ep_nc.tex etc. As indicated above, the graphs can then be looked at in
feynmf_all.dvi or
feynmf_all.pdf. You can use the same syntax for make feynmp and make tikz.
5.6.3 Feynman graphs with TikZ
In order to draw Feynman graphs with TikZ, you need to include some extra TikZ packages and
libraries. In addition it makes sense to define things like gluons, photons and incoming and outgoing
particles once, as these are objects that are often needed.
Given the multitude of possibilities that exist to draw things with TikZ, it is not surprising that there
are several ways of achieving the same end. It is also debatable whether feymp or tikz is better. If
you use TikZ for drawing other things, then it is probably easier to use it also for Feynman graphs.
However, if you want things like gluons on an arc, this may well only be available, if at all, with very
recent versions of tikz.
As a start we can directly compare a scattering graph made with feynmp and tikz. This is shown in
Fig. 5.10. As you can see the quality of the graphs is very similar. Further tweaking can probably
make them almost identical.
41
Chapter 5 Figures
e−
e−
e−
e−
γ
γ
e−
e
−
(a) Feynmp
e
−
e−
(b) TikZ
Figure 5.10: Feynman graphs drawn with feynmp and tikz.
42
CHAPTER
6
Tables
LATEX file: ./guide_tables.tex
You almost certainly have tables with results that you want to include in your thesis. You probably
even know about the tabular environment, but what about fine-tuning to get the tables exactly in the
form that you want? How do you line up the decimal points in a list of cross-sections and/or ± for the
errors? How can you handle a table that goes over more than one page and what if it is so wide that
you would like to rotate it by 90°?
Also, how can you make your tables look more professional with for example thick and thin lines
in appropriate places? This is easy to solve — use the \toprule, \midrule and \bottomrule
commands from the booktabs package. These commands also produce much better spacing between
these lines and the rows above and below. The booktabs package gives you some advice on how good
tables should look, as well as some guidelines on how to make your tables look better.
The \rule command is very useful for adding more space between rows. Kopka has several examples
of its usage. You can also use \arraystretch, e.g. \renewcommand{\arraystretch}{1.5} to
increase the spacing by 50 %. This command is often useful if table cells contain subscripts and/or
superscripts. \toprule etc. mean that it is usually not needed in headers.
If you want columns of expandable width you can use the tabularx package. The environment
tabular* has instead expandable intercolumn spacing.
Tables usually go inside the table environment so their position can “float”. In this chapter I use
some tables inside table and some inline.
Trying to include footnotes in tables can be tricky. See Section 8.2 for some guidance on how this
can be done.
6.1 Use of \phantom
Although extra packages can help, a very useful command is \phantom. This inserts white space
corresponding to the width of the argument. Compare the results in the following table with two
numbers 0.76 and 83.1:
43
Chapter 6 Tables
Centred
Phantom
0.76
0.76
83.1
83.1
Right justified
Phantom
0.76
0.76
83.1
83.1
Centred
Phantom
0.76
83.1
0.76
83.1
Right justified
Phantom
0.76
83.1
0.76
83.1
The difference between the two tables is that the one on the right has the length \extrarowheight
set to 0.5ex. The first two columns are centred, the last two are right justified. This is clearly a bit
clumsy, but it does work!
6.2 Using siunitx and the S column option
The siunitx package contains some nice tools that make the correct alignment of numbers simpler.
The syntax of some of the options changed between version 1 (≤ 2009) and version 2 (≥ 2011). I
discuss the version 2 options in the main text and give the equivalent version 1 options as a footnote. If
you look at the LATEX code, the TEX Live 2009 version is inside \ifthenelse{\texlive < 2011},
while the TEX Live 2011 version is in the second block.
A first simple example is shown in Table 6.1. In fact I show the table twice, once with the language
set to default and once with it set to German. The tabular contents are identical, the second tabular
is inside a \foreignlanguage. Note the use of table-format1 to centre the temperatures as the
heading is wider than the numbers.
Liquid
Blood
Glycerine
Oil (SAE 10)
Water
Air
Temp.
[◦C]
37
0
20
60
30
0
20
60
20
Viscosity η
(m Pa s)
4.0
10 000
1 410
81
200
1.8
1.00
0.65
0.018
Flüssigkeit
Blut
Glyzerin
Öl (SAE 10)
Wasser
Luft
Temp.
[◦C]
37
0
20
60
30
0
20
60
20
Viskosität η
(m Pa s)
4,0
10 000
1 410
81
200
1,8
1,00
0,65
0,018
Table 6.1: A table of viscosities in the default language and German.
Table 6.2 shows a more complicated table set using the tools. You can either enclose all numbers
in \num or use the S column descriptor. If you use S, note that it usually centres the contents of the
column. You can use the table-number-alignment2 option to change this. S and \num cannot
generally be mixed in a single column though. If you want to use \num in an S column you have
to enclose it in braces. You also need to do this with regular text, such as column headings — see
Table 6.1.
1
2
tabformat in TEX Live 2009
tabnumalign in TEX Live 2009
44
6.2 Using siunitx and the S column option
ηjet
dσb /dη b
[pb]
dσbNLO /dη b
[pb GeV−1 ]
Cbhad
−1.60 : −1.10
−1.10 : −0.80
−0.80 : −0.50
−0.50 : −0.20
−0.20 : 0.10
0.10 : 0.50
0.50 : 1.40
57.4 ± 9.4 +13
−3
121 ± 21 +16
−16
214 ± 22 +22
−12
233 ± 21 +28
−21
264 ± 22 +28
−23
316 ± 21 +23
−17
288 ± 15 +20
−30
72 +22
−13
182 +50
−30
255 +69
−42
307 +83
−50
342 +91
−55
346 +96
−57
265 +82
−48
0.70
0.78
0.79
0.79
0.81
0.85
0.93
Table 6.2: A selection of cross-section measurements!
With \num you can also specify the precision with which each number is shown separately. With S
you specify the format for the whole column. With siunitx version 1 this is done using the dp option
and gives the number of decimal places for the rounding. With siunitx version 2 you should also make
sure that you specify the rounding mode in the preamble of the table (usually figures or places —
you can also choose off).
If you know that you are going to make such a table, it is very easy to use either of these options to
write it out in this format using a program. Using \num solves the very common problem of your
program writing out the results with too many significant digits and you have to correct them all by
hand later (as well as every time they get updated)! A slightly different approach that one could follow
is to use S for simple numbers in tables and \num for more complicated number typesetting. For
asymmetric errors you could consider defining something similar to \numpmerr, which internally
uses \num.
A common and closely related problem that occurs is that your analysis spits out a result such as
24.36789+0.36423
−0.45236 . You copy and paste this into a table and then a referee (or your supervisor) complains
that you clearly don’t understand statistics, as you should never quote an error to 5 significant digits.
You can go ahead and edit all the numbers by hand, but what do you do if you rerun your analysis
and all the numbers change. Reformatting by hand is then an error prone and lengthy process. As
discussed above, you can either use options such as round-precision3 in the S command or use the
macro \num and dp/round-precision to do the rounding for you.
Table 6.3 shows and compares two different approaches on how this can be done, even for asymmetric
errors. While the form may appear to be a bit clumsy at first, it is easy enough to get your program to
write out the lines. In siunitx version 1 you should use option dp for the rounding. In version 2 you
should use the options round-mode and round-precision. In the first line of the left-hand part of
the table I show what to do if you need to change the precision of a single number. As you can see this
is rather trivial. However, then the alignment on the decimal point is no longer perfect. While this is
probably OK for internal notes etc., theses or papers (should) have tougher requirements. Another
way of achieving the same thing and avoiding the use of round-mode and round-precision4 is
3
4
dp in TEX Live 2009
dp in TEX Live 2009. The round-mode should be set in the preamble of the table and not for every number.
45
Chapter 6 Tables
shown in the right half. Note the use of options for the S command and the use of \num enclosed in
braces to format the row that requires a different precision.
It takes a while to learn what the different options mean and their consequences. I hope that these
examples cover most problems and at least give ideas as to what is possible. In particular the solution
on the right-hand side of Table 6.3 is very nice, as all numbers except the one that requires an extra
digit are written without any special formatting!
ηjet
dσb /dη b
[pb]
ηjet
dσb /dη b
[pb]
−1.60 : −1.10
−1.10 : −0.80
−0.80 : −0.50
−0.50 : −0.20
−0.20 : +0.10
+0.10 : +0.50
+0.50 : +1.40
0.574 ± 0.094 +0.035
−0.031
1.21 ± 0.21 +0.16
−0.16
2.14 ± 0.22 +0.22
−0.12
2.33 ± 0.21 +0.28
−0.21
2.64 ± 0.22 +0.28
−0.23
3.16 ± 0.21 +0.23
−0.17
2.88 ± 0.15 +0.20
−0.30
−1.60 : −1.10
−1.10 : −0.80
−0.80 : −0.50
−0.50 : −0.20
−0.20 : +0.10
+0.10 : +0.50
+0.50 : +1.40
0.574 ± 0.094 +0.035
−0.031
1.21 ± 0.21 +0.16
−0.16
2.14 ± 0.22 +0.22
−0.12
2.33 ± 0.21 +0.28
−0.21
2.64 ± 0.22 +0.28
−0.23
3.16 ± 0.21 +0.23
−0.17
2.88 ± 0.15 +0.20
−0.30
Table 6.3: Another selection of cross-section measurements! Note the use of \sisetup to keep the plus signs
on the positive errors.
Another example using siunitx tools that contains a similar problem is:
English
Value ±Error
German1
Wert
German2
Messung
0.76 ± 0.14
83.1 ± 7.6
0,89 ± 0,16
94,2 ± 8,3
0,89 ± 0,16
94,2 ± 8,3
As you can see, the “English” column formats things nicely using the S column descriptor. The
“German1” column successfully converts the decimal point to a comma and also the parentheses
with the error to ±. However, the alignment of the numbers is now messed up. The “German2”
column looks better. I had to do some dirty tricks with the formatting of the intercolumn separator
@{\,\pm\!\!} to get the spacing nice! This confirms my statement above that the S format is most
useful for aligning simple numbers easily, while \num is very nice for rounding to a given precision —
note that you can use either the dp or sf options to achieve what you want.
If your header is wider than the content, you may also have to tweak a few things to get the correct
alignment. A good way of doing this is to insert some \hspace* into the header. The table on the
left is without \hspace, while the one on the right is with an \hspace of 2em. The tables contain
vertical lines that I would normally not include to illustrate the alignment.
46
6.3 Using dcolumn
dσbNLO /dη b
dσbNLO /dη b
[pb GeV−1 ]
[pb GeV−1 ]
72 +22
−13
72 +22
−13
182 +50
−30
182 +50
−30
255 +69
−42
255 +69
−42
6.3 Using dcolumn
An alternative is the dcolumn package. You can also use this package to convert numbers written with
“.” as the decimal point into German-style numbers with “,”.5 You can line up measurements and
errors by putting each of them in its own column. If your errors are symmetric you can put ± as the
intercolumn separator:
English
0.76
83.1
0.76
83.1
German
0,76
83,1
0,76
83,1
Val ± Err
0.76
83.1
± 0.14
± 4.2
Val
Err
0.76 ± 0.04
83.1 ± 4.2
Table 6.4 shows quite a complicated table set in 2 different ways. It is rotated by 90° to illustrate
how that can be done.
The 2nd version (right) is certainly simpler to typeset and does not really use any tricks to line
things up. Note the use of array rather than tabular which means that the contents are typeset in
math mode rather than text mode. For tables of numbers this is often preferred. You just have to
enclose the array in \(...\) or \begin{math}. . . \end{math}. Close inspection of the right-hand
table shows that it is, however, not perfect. It is questionable whether one wants to to write +0.5 or
just 0.5. The fact that both pT as well as η cross-sections are in a single tabular, but the numerical
values are so different makes it difficult to line things up perfectly. An alternative, which uses the
headers to fix the width of the columns is given in Table 6.5. Note that this uses sidewaystable
rather than sideways inside table, which also rotates the caption.
This version of the table also adds a few extra bells and whistles. It uses a \rule of zero width
to give a bit more space above and below the cross-sections. p{...} switches to paragraph mode,
so \centering is needed to get centred headers. It adds a bit more space between the rows using
\arraystretch. You have to play around a bit with the column widths. If you set one of them
too small it gets expanded anyway, so the two parts of the table would not line up. Just for fun the
bottom half of the table uses “,” instead of “.” for the decimal point! Admittedly the header is a bit
complicated, but the numbers are nice and easy to write!
5
See Section 8.3 for hints on how to get around problems with the ziffer package
47
48
11
16
21
27
35
−1.6 :
−1.1 :
−0.8 :
−0.5 :
−0.2 :
0.1 :
0.5 :
−1.1
−0.8
−0.5
−0.2
0.1
0.5
1.4
ηjet
6:
11 :
16 :
21 :
27 :
jet
pT
(GeV)
dσbNLO /dη b
(pb)
72+22
−13
182+50
−30
255+69
−42
307+83
−50
342+91
−55
346+96
−57
265+82
−48
57 ± 22+13
− 3
121 ± 21+16
−16
214 ± 22+22
−12
233 ± 21+28
−21
264 ± 22+28
−23
316 ± 21+23
−17
288 ± 15+20
−30
109 +31
−19
29.1 +− 7.9
4.7
7.1 +− 2.0
1.2
1.87+− 0.54
0.34
0.46+− 0.13
0.08
95.6 ± 4.9 +9.8
−7.0
24.8 ± 1.2 +1.8
−1.4
6.02 ± 0.49+0.6
−0.6
0.93 ± 0.22+0.31
−0.20
0.30 ± 0.12+0.14
−0.12
dσb /dη b
(pb)
dσbNLO /dpTb
(pb/GeV)
dσb /dpTb
(pb/GeV)
0.70
0.78
0.79
0.79
0.81
0.86
0.93
Cbhad
0.83
0.89
0.92
0.95
1.05
Cbhad
−1.6 : −1.1
−1.1 : −0.8
−0.8 : −0.5
−0.5 : −0.2
−0.2 : +0.1
+0.1 : +0.5
+0.5 : +1.4
ηjet
6 : 11
11 : 16
16 : 21
21 : 27
27 : 35
jet
pT
[GeV]
57
121
214
233
264
316
288
dσbNLO /dpTb
[pb GeV−1 ]
±22
±21
±22
±21
±22
±21
±15
+13
−3
+16
−16
+22
−12
+28
−21
+28
−23
+23
−17
+20
−30
72
182
255
307
342
346
265
+22
−13
+50
−30
+69
−42
+83
−50
+91
−55
+96
−57
+82
−48
dσbNLO /dη b
[pb]
+9.8
4.9 −7.0
109 +31
−19
+1.8
+7.9
1.2 −1.4
29.1 −4.7
+0.6
0.49 −0.6
7.1 +2.0
−1.2
+0.31
0.22 −0.20
1.87 +0.54
−0.34
+0.14
0.12 −0.12
0.46 +0.13
−0.08
dσb /dη b
[pb]
95.6 ±
24.8 ±
6.02 ±
0.93 ±
0.30 ±
dσb /dpTb
[pb GeV−1 ]
0.70
0.78
0.79
0.79
0.81
0.86
0.93
Cbhad
0.83
0.89
0.92
0.95
1.05
Cbhad
Chapter 6 Tables
Table 6.4: Cross-section measurements!
jet
:
:
:
:
:
−1,1
−0,8
−0,5
−0,2
0,1
0,5
1,4
11
16
21
27
35
57
121
214
233
264
316
288
±22
±21
±22
±21
±22
±21
±15
+13
−3
+16
−16
+22
−12
+28
−21
+28
−23
+23
−17
+20
−30
72
182
255
307
342
346
265
+22
−13
+50
−30
+69
−42
+83
−50
+91
−55
+96
−57
+82
−48
[pb]
[pb]
109 +31
−19
29.1 +7.9
−4.7
7.1 +2.0
−1.2
1.87 +0.54
−0.34
0.46 +0.13
−0.08
95.6 ±4.9 +9.8
−7.0
24.8 ±1.2 +1.8
−1.4
6.02 ±0.49 +0.6
−0.6
0.93 ±0.22 +0.31
−0.20
0.30 ±0.12 +0.14
−0.12
dσbNLO /dη b
[pb GeV−1 ]
[pb GeV−1 ]
dσb /dη b
dσbNLO /dpTb
dσb /dpTb
0,70
0,78
0,79
0,79
0,81
0,86
0,93
Cbhad
0.83
0.89
0.92
0.95
1.05
Cbhad
Table 6.5: Cross-sections using sidewaystable, which also rotates the caption. Just for fun the numbers indicating the η range of the bins in the lower
half have been converted to German format! Note also the dirty trick used to get the Cbhad values nicely in the centre of the column.
−1,6 :
−1,1 :
−0,8 :
−0,5 :
−0,2 :
0,1 :
0,5 :
ηjet
6
11
16
21
27
[GeV]
pT
6.3 Using dcolumn
49
CHAPTER
7
References
LATEX file: ./guide_refs.tex
Every thesis should also include a list of references, called the bibliography in LATEX terminology.
You “cite” a reference using the \cite command. For example, the book of Kopka [KD04] is my
favourite LATEX book. In general you should include a non-breaking space, i.e. “~” between the text
and the \cite command. In British (UK) English the reference should come before the punctuation;
in American English it comes after it.1
That is the easy part! Where do you get the references from and how do you format them? Sources
of references are discussed in Section 7.6. There are two options for the formatting. Either you do it
by hand, formatting \bibitem entries yourself or you use BibTEX. More precisely you should use the
biblatex package. which is a replacement for traditional BibTEX. While biblatex and/or BibTEX may
appear to be the more complicated option at the beginning, I strongly recommend that you use it.
In addition, you have to make sure that authors’ names are printed consistently, you include the
appropriate collaboration name, the title is formatted correctly and journals are given consistent
abbreviations. Such topics are discussed in Section 7.3.
What about citing a series of articles? Can you include them in one reference or do you want to
keep one article per reference? I give some hints on useful options and settings for biblatex below
(Section 7.4.1). If you use traditional BibTEX (which I do not recommend), then you probably have
to use the mcite package — see Section 7.8. Just to take a silly example. The ZEUS collaboration
publications in 2010 [ZA+10; Abr+10a; Abr+10b] were not as numerous as in previous years. If you
use the standard \cite command and the unsrt option or its equivalent, you get a list of numbers. In
the past one could use the mcite package to make the references nicer, put them all in one, write the
list as [m–n] etc.
7.1 Formatting by hand
Don’t! The number of references that you will need will probably grow fast. It is quite likely that
at some point you will decide that they are not really formatted as you would like them to be. You
will almost certainly add references when you correct your thesis. How do you make sure they are
1
After some research, it appears to me that the footnote number should come after the punctuation, unless the footnote
only refers to the last word of the phrase or sentence.
51
Chapter 7 References
in the order you want? How do you make sure that only articles that you actually refer to are in the
bibliography?
Suppose you want to use some of the references in your thesis in conference proceedings or a paper
in a journal. Every place where you publish will have it’s own preferred format for the references that
almost certainly will not be the one you chose for your thesis.
If you insist on following this route, consult a book on LATEX!
7.2 Using BibTEX and biblatex
I won’t pretend that BibTEX is the most user-friendly way of handling references and there are several
things that you have to pay attention to when you use it for your references.
The two big advantages of biblatex and/or BibTEX are: only references that you actually refer to
appear in the bibliography; you can change the format (consistently) of all articles in the bibliography
simply by changing the style!
The first step is to put your references in one or more .bib files. For this document they can be
found in:
• ../guide/guide_refs.bib;
• ../refs/standard_refs-biber.bib or ../refs/standard_refs-bibtex.bib;
• ../guide/refs/example_refs-utf8.bib or ../guide/refs/example_refs-ascii.bib;
• ../guide/refs/zeus_2009.bib and ../guide/refs/zeus_2010.bib.
For each article you specify things like its title, author, journal etc.
You then include these files into your LATEX document and specify which style should be used. You
also have to indicate where you want the bibliography to appear.
At this point you also have to decide which interface to the contents of the .bib files you want to
use. You have a choice of the original BibTEX or the more modern biblatex. If you use biblatex you
need something like:
% Use biblatex for the bibliography
\usepackage[backend=biber,
style=numeric-comp, sorting=none, block=ragged, giveninits=true]{biblatex}
% \usepackage[backend=bibtex, hyperref=true,
%
style=numeric-comp, sorting=none, block=ragged, giveninits=true]{biblatex}
% Adjustments to output are in this style file:
\usepackage{ubonn-biblatex}
\addbibresource{../mythesis/thesis_refs.bib}
\addbibresource{../refs/standard_refs-biber.bib}
in the document preamble and \printbibliography where they should be printed.2 Note that as of
version 3.0 of the thesis package, the biblatex command is included in ubonn-thesis directly. To turn it
off add the option biblatex=false.
2
If you use an older version of TEX Live you may have to replace giveninits by firstinits.
52
7.3 BibTEX entries
If you use traditional BibTEX you need something like:
% Use BibTeX for the bibliography
\bibliographystyle{../refs/atlasBibStyleWithTitle.bst}
% \bibliographystyle{unsrt}
\bibliography{../mythesis/thesis_refs,%
../refs/standard_refs-bibtex}
at the point where the references should be printed. Note that LATEX is sometimes picky about spaces
in lists of files, so you either terminate each line in \bibliography with a % or include all files on
one line.
Which should you use? Traditional BibTEX has been around for a long time and is therefore better
known. However, it has many problems when it comes to sorting, handling more modern sources of
information (e.g. the web), etc. By now (written in 2015) biblatex is rather stable, so future changes
should be minor. It supports things like online references and enables you to click on references using
the preprint number or DOI to look at a reference. It is also easier to change the way your references
look. I therefore strongly recommend that you use biblatex.
Another serious problem with BibTEX is that it cannot handle umlauts etc. properly. While I
have said elsewhere in this document that you should use UTF-8 encoding so that you can enter ä
etc. directly, this does not work with BibTEX. You can use the old syntax \"{a}.3 This problem is
completely solved if you use biblatex and the biber backend.4 As indicated above, the references in
the guide include two versions of the file with some example references:
• ./guide/refs/examples_refs-utf8.bib with UTF-8 encoding;
• ./guide/refs/examples_refs-ascii.bib without any umlauts.
If you try to compile the guide with the wrong file using BibTEX, you will get some errors as I have
included some umlauts in the example references. The thesis skeletons use traditional BibTEX with
TEX Live older than 2011 and biblatex with the biber backend for newer versions. See the skeleton
thesis_skel/thesis_2009_skel.tex for the complete syntax if you want to use traditional
BibTEX.
That’s it? Well almost! First, you will have to make sure that the entry type that you use corresponds
to the type of document that you are citing. Second, you will probably get some or all of your
references from standard sources such as Spires5 , Inspire or CDS, you will have to change the entries
a bit so that they get formatted the way you want.
7.3 BibTEX entries
In this section I discuss how to format your BibTEX databases, i.e. the .bib files. In the following
section I talk about how you make your references look the way you want them to be in your thesis.
3
In fact you have to write this as author = "Br{\"{u}}ning, Oliver" for it to work properly! As an aside, if you look
at the LATEX source code for this footnote, it might seem natural to use \verb for author = .... However, verbatim
does not work in footnotes, unless you include other packages such as fancyvrb.
4
If for some reason you want to use biblatex with the bibtex8 backend you have to encode your .bib files with latin1
instead of UTF-8 if they includes umlauts and use the line:
\usepackage[backend=bibtex8,bibencoding=latin1]{biblatex}.
5
I will refer to both as Inspire in this chapter.
53
Chapter 7 References
7.3.1 Entry types
One question is what entry type you should use for what? I give here recommendations on what to use
for biblatex. Some of the entry types that biblatex has are not part of BibTEX.
@article This is easy — use it for articles published in journals, e.g. [ZA+10].
@book Just as easy — use it for books, e.g. [KD04].
@proceedings, @inproceedings The name says it all. Use @inproceedings for a paper in the
proceedings and @proceedings for the whole volume.
@collection Use it for things such as the ATLAS Technical Design Report [Brü+04a] where the
names that you find are the editors. Use @incollection for a single article in a collection.
@report Use it for conference and internal notes. This is probably also the best type to use for
preprints. You can also use @booklet or @online.
@online Use it for things that are only available online, e.g. [Oet+].
@thesis The name says it all. @phdthesis and @mastersthesis also exist. If you are using
biblatex you can and should specify the thesis type, e.g. type = {PhD}, see for example a PhD
thesis [Lod12].
biblatex also knows about multivolume proceedings etc. See the manual for more details.
Note that Inspire will always give you a BibTEX entry of type @article, so you should adjust it by
hand according to what the document you refer to really is. CDS tries a bit harder, but you probably
still have to set the entry type by hand.
As indicated above, biblatex knows about preprint archives, online references with a url etc. and
can format the references so that you can click on a DOI or arXiv number. Details of how these are
handled are well documented in the manual. In order to make use of these abilities you have to modify
the Inspire format of the references a bit so that it is fully compatible with what biblatex expects for
preprints etc. More details on this are given below.
What else do you have to be careful about? The first thing to know is that biblatex and BibTEX will
try to format your author names and titles. Thus, if you want the title to remain in exactly the form you
have typed it in include it in “"{Title}"”, i.e. both double quotes and braces. If not, collaborations and
accelerators tend to be converted to lowercase, e.g. “lhc” instead of “LHC”. If you use an author such
as “ATLAS Collaboration” it gets printed as “A. Collaboration”. If part of a title should not have its
case changed enclose it in {. . . }, e.g. “"The {ATLAS} Detector"”
7.3.2 Entries from Inspire and CDS
Things like the LHC Design Report are by default called @article in Inspire [Bru+04] or @book in
CDS [Brü+04b]. They are in fact best declared as @collection with the author field replaced by
editor and a field indicating the institution instead of publisher [Brü+04c]. You can also add
the CDS link as a url field.
Conference notes, e.g. from ATLAS, are defined as @techreport by CDS [11]. It is better to just call them @report. You should add an author, usually just author = "{ATLAS
54
7.4 Formatting references
Collaboration}", [ATL11a]. You may also have to change the month format to avoid error
messages. For internal notes, also call them report and add type = internal report to the entry.
Again you could add the CDS link as a url field. For preprints, I also think it is best to use the
@report entry type.
Books need to be changed from @article to @book and it is better to give the ISBN in the isbn
field [HM84a] rather than the reportNumber field as given in Inspire [HM84b].
Theses should used the @thesis entry type and then add a type field. Alternatively you can use
@mastersthesis or @phdthesis.
√
In all cases you probably have to edit the titles a bit to get things like s = 7 TeV printed properly.
An open question is whether you should assume the use of a units package in the formatting of the title.
If you want to make your .bib files usable by others, it is probably best to do the formatting by hand.
An example of a typical ATLAS paper as it comes from Inspire [Aad+11] needs a bit of work. With
TEX Live 2011 the link to DOI and arXiv both work well [ATL11b]. Note that the LHC collaborations
specify that the first author should not be included, i.e. author = "{ATLAS Collaboration}",.
7.3.3 More on names
The best way to format author names so that they appear correctly whatever BibTEX style you use is
Surname, Name. Any other syntax is likely to get mangled.
What about collaboration names? If you use Inspire as the source of your BibTEX entries, you will
see that it has a field for the collaboration. This is often, but not always, formatted correctly. However,
very few BibTEX styles, and as far as I know no biblatex styles, pay any attention to this field. The
ones from Inpire listed below will work properly. The only other reliable alternative I have found is to
use the following syntax:
@Article{Chekanov:2009qja,
author
= "{ZEUS Collab.} and Chekanov, S. and others",
which then usually gets formatted as “ZEUS Collab., S. Chekanov et al.,”. I went through and changed
the references in zeus_2009.bib accordingly.
7.4 Formatting references
While BibTEX or biblatex format the references for you from the .bib files, you have to tell them what
format you want! For a start, you have to choose between an alphabetic and a numeric scheme for the
references. Most journals use a numeric style. This corresponds to style unsrt or a variant thereof
using traditional BibTEX. If you use biblatex you include the package with option numeric-comp
or numeric. numeric-comp produces more compact citations (e.g. [1–4,7,9]) than numeric (e.g.
[1,2,3,4,7,9]).
For this guide (for a change) I use an alphabetic style: alpha with BibTEX or option alphabetic
with biblatex. In the thesis skeleton I use a more usual unsorted numeric style.
7.4.1 biblatex styles
My experience with biblatex took off when I started rewriting the ATLAS LATEX templates in 2014.
The first official stable release of biblatex was 19 Oct 2010. Active and rapid development is ongoing
55
Chapter 7 References
— there were many updates in 2011. Some things I recommend below may work a bit differently
depending on which version you have. See Appendix B on how to install a newer version of TEX Live
if you want a more up-do-date version of LATEX.
Looking for numeric styles you can either use the built-in numeric or numeric-comp. The
numeric-comp style is used by default in the thesis skeleton. I made a few adjustments that are
included in the file ubonn-biblatex.sty.6
You can change some of the things in the style file by passing options to it. The syntax articletitle
and articletitle=true is equivalent. Use articletitle=false to turn off an option. The
following options exist:
Option
Default
texlive
2014
Description
Specify the TEX Live version. You can also use the older command
\newcommand*{\texlive}{2014}.
block
ragged Specify the justification of each reference;
maxbibnames 5
Numbers of authors to list before switching to “et al.”;
articletitle
true
Show the titles of articles and reports;
titlequote
false
Enclose the title in quotes rather than using a slanted font.
boldvol
false
Show the volume in bold face.
showurl
true
Show the URL field.
Show the DOI separately. Otherwise it is linked from the journal
showdoi
false
reference.
eprint
true
Show the arXiv entry.
address
false
Print the address, if given.
location
false
Print the location, if given.
You can fine tune things even more by using hooks that are available. For example, the way I turn
off the URL field is to include the command:
\AtEveryBibitem{\clearfield{url}}
in the preamble or in the relevant style file given in the previous paragraph. It is not clear to me if you
also need \AtEveryCitekey{\clearfield{url}}.
A fairly nice-looking style is ieee. This is only be available in recent releases (≥ 2011) of TEX
Live. After playing around a bit with the ieee style, I decided it is too new and has too many settings
that depend on having a new version of biblatex for now.
There are slowly more and more biblatex styles around, but not as many as traditional BibTEX.
It is, however, much easier to change things (usually you can just change an option) with biblatex
than it was for traditional BibTEX, so you can probably start with a standard file and just make
adjustments in your preamble. I have found a number of very useful hints on how to make changes in
http://tex.stackexchange.com/ — just search for biblatex.
If you include ubonn-thesis with the option astrobib, the references will be formatted in the style
usually used in astrophysics publications. Version 3.0 contains a first version of this option. A few
more tweaks may still be needed. You can use the command make astro instead of make new to
6
In the past (before version 3.0) these files were called ./biblatex/biblatex-num-v2009.sty and
./biblatex/biblatex-num-v2011.sty. Which file was used by default was steered by the \texlive macro
which is set in the main file.
56
7.5 Errata
make a thesis skeleton with the appropriate options set and the template introduction uses typical
citation commands. The option astrobib only works for TEX Live 2011 and later, i.e. with biblatex.
If it is available, biber is the preferred backend over bibtex or bibtex8. However, the backend
is mostly relevant for sorting, so it probably does not matter which you use if you use an option that
gives the references in the order that they were cited. biber seems to work well with TEX Live 2012
and later and hence is the default. For older versions of TEX Live, a better solution is probably make
new09 followed by make thesis09 that then uses traditional BibTEX.7
If you want to find out where your references are actually cited, you can include the option
backref=true.
If you get an error such as:
biber
thesis_guide
data source /tmp/par-62726f636b/cache-ab06f20732bfab23dfa35f56998ad4edca61bee1//inc/lib/Biber/LaTeX/recode_data.xml not found in
Compilation failed in require at Biber/Utils.pm line 21.
then you should delete the directory /tmp/par-... and try to run again. The directory name depends
on the operating system you are using. Use the command biber --cache to find out where it is. If
you are adventurous, the command rm -rf $(biber --cache) will do it all for you!
7.4.2 Traditional BibTEX styles
I strongly recommend that you use biblatex and biber, but if you insist. . .
If you use references directly from Spires or Inspire, then it is probably best to use one of the style
files that is compatible with their format. A list can be found on http://www.slac.stanford.
edu/spires/hep/refs/bibstyles.shtml. I have used utphys a few times and it works OK. I
see that there are also style files available there for common HEP journals, which could save quite a
bit of work. The big advantage of utphys is that it also knows about the arXiv and preprints.
The equivalent of biblatex’s ieee style in BibTEX is ieeetr. It also knows about arXiv and
preprints. However, it does not know about collaborations.
There are also standard ATLAS style files that work fairly well: atlasBibStyleWithTitle.bst
and atlasBibStyleWoTitle.bst These are included in the refs directory.
7.5 Errata
What is the best way to include errata? biblatex offers a nice mechanism for this using the related
field. For example, Ref [ATL15] has an erratum. This is achieved using the following:
@Article{EXOT-2013-13,
author
= "{ATLAS Collaboration}",
title
= "{Search for new phenomena in final states ...}",
journal
= "Eur. Phys. J. C",
volume
= "75",
year
= "2015",
pages
= "299",
7
You can still try to use biblatex if you want to — use make new to create a new skeleton — as ubonn-thesis switches to
bibtex automatically for TEX Live versions earlier than 2011. Compile the thesis with make thesis09 though. If you
want to set the backend yourself, use the option backend. Set the encoding with the option bibencoding if necessary.
57
Chapter 7 References
doi
reportNumber
eprint
archivePrefix
primaryClass
related
relatedstring
=
=
=
=
=
=
=
"10.1140/epjc/s10052-015-3517-3",
"CERN-PH-EP-2014-299",
"1502.01518",
"arXiv",
"hep-ex",
"EXOT-2013-13-err",
"Erratum:",
}
@Article{EXOT-2013-13-err,
author
= "{ATLAS Collaboration}",
journal
= "Eur. Phys. J. C",
volume
= "75",
year
= "2015",
pages
= "408",
doi
= "10.1140/epjc/s10052-015-3639-7",
reportNumber
= "CERN-PH-EP-2014-299",
}
This mechanism is used in ATLAS.bib and will be extended to CMS.bib once I have a list of the
CMS Errata.
The mechanism only works if the biber backend is used. Using the standard files with the bibtex
backend and/or traditional BibTEX does not cause errors when compiling. However, the Errata are
simply ignored.
7.6 Sources for references
ATLAS keeps a checked list of ATLAS and CMS publications in BibTEX format. The ZEUS
collaboration also kept a reasonably up-to-date list of ZEUS and H1 publications (as well as some
others), and I assume that other collaborations keep similar lists.
Within experimental high energy physics the standard way to get a reference is to use Inspire
(http://inspirehep.net).8 You can get the appropriate Inspire entry by using the Inspire search
engine. Alternatively if you know the arXiv preprint number you can go from its entry to Inspire
directly.
To get the ZEUS references I used above I first tried the following command in Inspire:
find exp zeus and date 2009
This does not really give you the references you expect though! It seems much more reliable to use an
author name so I used:
find a chekanov and date 2009
8
This has now replaced Spires (http://www.slac.stanford.edu/spires/). One problem with Spires was that it was
very slow and regularly timed out when you perform searches.
58
7.7 Common wishes
and then selecting BibTEX format, saving the resulting page in a file and removing the and
entries between references. This worked better, even though I got a whole load of ATLAS
papers as well.
If you then try to use the references, you get complaints that something is not in math mode. You
have to go through by hand and change things such as Q^2 to $Q^{2}$.
7.7 Common wishes
It is possible that you would like to combine several articles into a single reference. The mcite package
was designed to do this, but is not compatible with biblatex and hyperref. biblatex has another solution
that it calls sets.
In standard_refs-biber.bib and standard_refs-bibtex.bib I have put in the three standard references for the Standard Model [Gla61]. They are combined by using @Set and the relevant
keys. If you use a recent version of biber (TEX Live 2012 and later) this is all you have to do. If,
however, you are using TEX Live 2011 or earlier with biblatex, and therefore the bibtex or bibtex8
backend, the crossref field must contain the same key as the first one in entryset.
One thing you should always do is include all references in a single \cite, e.g. there were quite a
few ZEUS publications in 2009 [ZC+10a; ZC+09; ZC+10b] is better than [ZC+10a][ZC+09][ZC+10b].
If you want to get a list of references printed in the form “[m–n]”, then with biblatex you should use the
style numeric-comp. In 2009 there were many papers published by the ZEUS collaboration [ZC+10a;
ZC+09; ZC+10b] as well as several articles from both the H1 and ZEUS collaborations[HA+10a;
HA+10b]. See Section 7.8 on how to do this with BibTEX.
In some areas, it is more common to give a bibliography per chapter, rather than collecting all
references at the end of the thesis. This is straightforward to achieve with biblatex. Simply add the
option refsection=chapter when you include biblatex. This and more can be done by passing the
option astrobib to ubonn-thesis. In addition you have give the command
\printbibliography[heading=subbibliography] at the end of each chapter. The thesis skeleton contains such commands commented out. The command make astro uses a skeleton with
a bibliography per chapter. The option astrobib also sets things up so that the natbib citation
commands \citep, \citet and \citealt can be used, so that the citation appears as expected for
astronomy publications. If you use \citep and an old version of biblatex, you may see an extra comma
between the author name and the year in parentheses. This can been removed by uncommenting the
lines:
% \ifUBN@astrobib
%
\renewcommand*{\nameyeardelim}{\addspace}
% \fi
in ubonn-biblatex.sty
You are nearing the end of your thesis and have to properly format all the references that you have.
However, they are spread over several files and these files also contain many references that you do not
use or want to correct. How best to proceed?
bibtool -x mythesis.aux -o refs.bib
59
Chapter 7 References
will extract the entries that you use and in future you can use and correct refs.bib, which only
contains the references that you actually cite.9
7.8 Using mcite
As mentioned above, the mcite package used to be a good way of combining several articles into a
single references and also getting them to be printed out in the form “[m–n]”, rather than “[l,m,n]” or
“[l],[m],[n]”. How do you achieve this? Just put all the articles in a single \cite and prefix those that
should be lumped together with a “*”,
e.g. \cite{Chekanov:2009wt,*Aaron:2009wg,*Aaron:2009sma}. The problem is that this
package does not appear to be compatible with the hyperref package, so you have to choose between
the two. Given the ability that the hyperref package offers to jump directly to sections, equations,
references referred to in a document, I guess most of you will go with hyperref rather than mcite.
As mentioned above the biblatex package offers a more modern alternative and different ways of
achieving the same results! It is also not compatible with mcite.
A modified version mcite is used by ZEUS in its LaTeX4ZEUS environment, which is why I include
a short description here.
9
I got this tip from http://tex.stackexchange.com/questions/417/how-to-split-all-bibtexreferenced-entries-from-a-big-bibtex-database-to-a-copy. Do not forget to change mythesis.tex to
use refs.bib instead of the previous sources.
60
CHAPTER
8
Layout and language
LATEX file: ./guide_layout.tex
If you are not happy with the layout, fonts, etc. that are used in this guide or the thesis skeleton, this
chapter includes some examples on how you can change things.
8.1 Page layout
Page geometry can be changed using either the typearea or the geometry package. In this guide I use
typearea as it is closely tied into KOMA - Script. The basic command is to specify how many pieces to
divide the page into. This guide uses DIV=12 by default with a binding correction of BCOR=5mm. You
can then let KOMA-Script and typearea sort out the rest. Note that typearea will issue a warning that
you have “Bad type area settings” when using DIV=14. If you want to avoid this warning, you can set
DIV to 11 or smaller, but then the amount of text on each page is reduced by quite a bit and your thesis
will cover more pages.
The alternative is to use geometry, where by default I say that the text should cover about 75% of
the page. In practice, I have found geometry easier to use if you want to specify exactly the layout, e.g.
making single Feynman graphs with feynmf. typearea is probably to be preferred for documents on
normal paper sizes.
See the beginning of the KOMA -Script guide for a detailed introduction on how a page should be
laid out.
The setspace package has a number of useful options to change spacing in a fairly easy way, if such
options are not already available in KOMA-Script.
8.2 Footnotes
A few tweaks may well be useful in order to get footnotes looking the way you want them rather than
using the default KOMA-Script settings.
The default setting of KOMA-Script is:
\deffootnote[1em]{1.5em}{1em}{\textsuperscript{\thefootnotemark}}
In this guide and in ubonn-thesis.sty I have changed this to:
61
Chapter 8 Layout and language
\deffootnote{1em}{1em}{\textsuperscript{\thefootnotemark}\ }
The differences are:
• The optional argument is missing that sets the box width for the footnote mark (which is
right-adjusted). In this case the width of the first required argument is used instead, which
also defines how much all other lines are indented. Hence all lines in the footnote are now
left-aligned, while in the default setting the first line is indented more than the others.
• In the last argument an extra space has been added so that the footnote mark is not quite so
close to the text.
You might think that a nice way to write footnotes is:
We want to include a footnote
\footnote{
This is the footnote text.
}
about what the footnote should look like.
If you do this you will find some extra space where it should not be. This is illustrated in footnote 1 . To
try out footnotes we try first an example which is probably how you would first try to write a footnote:
1
As you can see this is not really satisfactory. You have a spurious space between the colon and the
footnote mark 1 . If may even be the case that the footnote mark appears on the next line! To get the
spacing correct and still have “nice” LATEX you have to add some judicious % signs:
We want to include a footnote%
\footnote{%
This is the footnote text.
}
about what the footnote should look like.
To show how this works2 have a look at the footnote referred to above.
In standard LATEX you can use \footnotemark to set the symbol for a footnote and refer to it.
KOMA- Script has a better solution for this. You define a \label inside the footnote and then refer
to it via the label and \footref. You can see how to do this in footnote 2 and if you were paying
attention you will have seen that I also used it to refer to footnote 1 . Using this mechanism it is even
possible to click on the reference if you use PDFLATEX.
When a footnote contains a complete sentence, people still often forget to add a full stop at the end
of it — try not to!
If you try to use footnotes in tables, you will probably have some problems. The ctable package
allows you to include footnotes that are part of the table. It also supports booktabs, so it should
be possible to keep the same format. If you use the package xtab you can use the environment
mpxtabular instead of xtabular to get footnotes — see Appendix F for an example. If you use
the longtable package, use longtable rather than table and tabular in order to easily include
footnotes. Another recent package (TEX Live 2011) is tablefootnote which provides the command
\tablefootnote. This is advertised to also work in sideways tables.
1
2
This is an example of a footnote with extra space at the beginning.
This is a longer footnote about nothing in particular that goes over more than one line to make sure that we can also have
a proper look at the effect of indentation.
62
8.3 Thesis in German
8.3 Thesis in German
babel is a powerful package for handling different languages. The languages to be used in a document
can either be given as options to \documentclass or to babel. I choose to use \documentclass
here so that the style file ubonn-thesis.sty is independent of the thesis language. If you give more
than one language make sure that the default language comes last.
Your thesis is in German rather than English. What do you have to worry about? First, set the
languages in the \documentclass to UKenglish,ngerman rather than the other way round.
Second, if you want to use a comma rather than a full stop for the decimal point you may notice that
numbers are sometimes not written properly. In text mode they are OK, e.g. 91,1234, while in math
mode there is a small space after the comma, e.g. 91, 1234.
If you use the siunitx package, you can simply specify the locale: \sisetup{locale = DE}.
This is already done for you in ubonn-thesis.sty in such a way that if you select ngerman as the
language of your document \num{2.3} will be printed as 2,3. I find this by far the best way to handle
such things.
You can also do such things locally in a single table for example by using constructions such as
“S[decimalsymbol=comma]” in the column description of a table to change full stops into commas
— see Chapter 6.
Another way to avoid this problem by using the ziffer package. It is commented out in
ubonn-thesis.sty. An alternative is to remove the comments on the TEX code snippet at the top of
the file thesis_defs.sty:
\mathchardef\CommaOrdinary="013B
\mathchardef\CommaPunct
="613B
\mathcode‘,="8000
% , im Math-Mode aktiv ("8000) machen
{\catcode‘\,=\active
\gdef ,{\obeyspaces\futurelet\next\CommaCheck}}
\def\CommaCheck{\if\space\next\CommaPunct\else\CommaOrdinary\fi}
As far as I have able to tell this above code does just what one wants and so is probably better than
trying to use ziffer.
I have spent some effort to try to get around the problems that occur if you try to use ziffer and
dcolumn together. A way that seems to work is to use the full stop as the decimal point in columns that
are formatted using dcolumn and then just change full stop to a comma, i.e. use the form D{.}{,}{2}.
The table below illustrates this usage:
Teilchen
Z boson
W boson
Top quark
Masse [GeV/c2 ]
91,0372 ± 0,0002
83
± 0,035
173,3
± 1,1
If you use ziffer and want to keep the decimal symbol, e.g. D{.}{.} or D{,}{,} this does not seem
to work. Hence if you try to use ziffer with this guide you will get error messages.
The other question is whether to use the traditional TEX way of writing letter with umlauts: \"{u}
to get ü, or \"a to get ä, or just to type in the character directly. I strongly recommend typing the
characters directly. It makes your LATEX much easier to read and spell-check. You can either switch
63
Chapter 8 Layout and language
your keyboard to German (this is simple under Windows, MacOS, KDE or Gnome (Unity)) or set the
compose key and then type the sequence Compose " a to get ä for example.
8.4 Fonts
Fonts to use for the various parts of a document can usually be set using the \setkomafont command.
I have set a few such fonts in ubonn-thesis.sty. In particular I set the fonts for the title page so
that it conforms more closely to the requirements for theses and also have a few more commented out
examples there.
Which font should I use? http://tug.ctan.org/tex-archive/info/Free_Math_Font_
Survey/en/survey.html has a list of fonts that one can consider using. I have included commented
out packages that use some of these in the style file. Good alternatives to newtx and txfonts (with the
varg option) seem to be either lmodern or pxfonts. See Section 2.5 for some of the things you have to
worry about if you use a font for which the text mode and math mode display numbers differently.
8.5 Other languages
If you have a few words in the foreign language just use \foreignlanguage,
e.g. \foreignlanguage{ngerman}{Das Physikalische Institut der Universität Bonn}
to produce Das Physikalische Institut der Universität Bonn. You might ask why bother? Hyphenation,
in particular, is not the same in different languages, so telling LATEX which language the text is in
certainly helps. To change the language at a certain point in the document use \selectlanguage.
To set a block of text (inside an environment) use the otherlanguage environment. I used this in the
title pages, as (except for the cover page) they are in German. It certainly does no harm to specify the
language of the abstract within \thesisabstract.
The csquotes package advertises itself as the way to cope with quoting things in different languages.
The basic command to use is \enquote for quoting things in the current default language, while you
use \foreignquote to quote things in another language. For example, John said “I have too much
to do at the moment”, while Johannes sagte „ich habe im Moment alle Zeit der Welt“. Note that
babel uses ngerman for “new” German spelling, while csquotes options calls the same thing german.
However, this only affects the setting of options. If you use commands such as \foreignquote you
can specify ngerman as the language.
Having used csquotes for several years now, I find it a really nice way of quoting things properly in
the language you are writing your text in without having to worry about using the correct opening and
closing quotes, so I warmly recommend it.
8.6 Coloured links
In the default version of the thesis, links in the table of contents are coloured blue, citations are
coloured dark magenta and URLs are coloured dark green. These settings are in ubonn-thesis.sty.
For the printed version you probably do not want these things to be coloured. You can change the
hyperref options using the \hypersetup command as indicated in the main file of your thesis. Using
64
8.7 Chapter headings
these changes, such links will be surrounded by a coloured box when viewed on the screen, while the
box will not be shown when the thesis is printed.
8.7 Chapter headings
The standard appearance of the chapter headings is not very exciting! You can make some changes
with the KOMA- Script options, but nothing very radical. A number of packages exist that can make
larger changes. I tried out fncychap, quotchap and titlesec. A variant of titlesec was used for this
guide and for theses (version 3.0). As combining titlesec with KOMA - Script is not recommended, the
settings are now done by hand by default. The problem with this version was that the bibliography
was given a chapter number, if it was part of \mainmatter rather than \backmatter. As of version
4.0, I use a very similar style, but this time the changes are made using KOMA- Script adjustment as
suggested by the author.3 This seems to work better. If you want to get back to the usual style, just
comment out the appropriate lines in ubonn-thesis.sty. See the documentation on titlesec on how
to make further adjustments.
3
http://www.komascript.de/chapterwithlines
65
APPENDIX
A
Changes and plans
LATEX file: ./guide_appendix.tex
In this section I document briefly the major changes to this guide. I also indicate other topics for
which I would like to add some more information.
Table A.1: Changes to the ubonn-thesis and ubonn-biblatex style files.
Date
Version
Comment
05 Dec 2018
6.0
30 Jun 2016
5.1
15 Mar 2016
5.0
TEX Live 2016 is now the default. After a make new the mythesis
directory should now be standalone. This make it easier to use Git
etc. Bibliography files now go in the bib subdirectory. Use latexmk
by default to compile. Add a command make update to update to a
newer version of the style files. Switch to newtx as the default font.
Add a section on “Typical English mistakes”. Add documentation on
todonotes and cleveref packages. Switch from scrpage2 to scrlayerscrpage package. Add information on how to handle errata. Improve
bar width in heppennames and hepnicenames. Switch to version 4 of
mhchem. The thesis guide no longer compiles using TEX Live versions
earlier than 2011, as it uses some packages that were not available then.
Add hepnicenames and heppennames packages. Add a bit more
documentation on particle definitions. Add some more information
and updated the guidelines on positioning of figures. Month and
address/location are not included in references by default.
Move from SVN to Git repository. Update documentation accordingly.
Small fix so comma is not part of link from journal entry to DOI. Add a
workaround for conflicts involving refcheck, subcaption and refcheck.
67
Appendix A Changes and plans
Table A.1: Changes to the ubonn-thesis and ubonn-biblatex style files.
27 Aug 2015
4.0
02 Feb 2015
3.0
10 Jul 2013
2.1
06 Jul 2013
04 Jul 2013
18 May 2013
23 Apr 2013
2.0
Add options for thesis type and stage. This simplifies and improves how
the different cover and title pages are included. Put bibliography before
appendix (this seems to be more standard). With this the bibliography
moves into \mainmatter. Use KOMA-Script options to add lines
around chapter headings — small change to the style. Add a skeleton
that compiles with TEX Live 2009 — make new09 command. Remove
most advice and switches to use bibtex8. The 2009 version of the
skeleton now uses traditional BibTEX. Add ATLAS bibliography style
files. Small updates to submission instructions and operating systems.
Add ability to pass options to ubonn-thesis.sty using the keyval
package. TEX Live 2014 is now the default. The TEX Live version can
be passed as an option. Improve its handling. Change a few default
packages: longtable → xtab; subfig → subcaption (for TEX Live 2012
and later). Add options for different fonts. Stick with txfonts as default,
but encourage use of newtx if it is available. Add inclusion of biblatex
package into style file. Put biblatex fine tuning into a new style file
ubonn-biblatex.sty. Add options so that bibliography in standard
astronomy style can be produced. Add \boldmath command to bold
font by default. Remove inclusion of feynmf/feynmp by default.
Move thesis main file to mythesis subdirectory. Also put Makefile
and copy ubonn-thesis.sty into mythesis subdirectory. Split main
Makefile into several files, one for thesis, one for the guide an done
for pictures and Feynman graphs.
Use the standalone package in the TikZ figures. Add commented out
code to feynmp figures to show how to use standalone for them as well.
Move the guide main file to the guide subdirectory so that this works
properly.
Add a few examples of using the tikz package. Switch to using feynmp
rather than feynmf by default (as of TEX Live 2011). Add \write18
statements for Feynman graphs with feynmp and adapt Makefile.
Add some information on the refcheck package and back-referencing
with biblatex.
Rename pibonn-thesis to ubonn-thesis. Make thesis submission a separate chapter (so that PhD submission can also be a separate document).
Make TEX Live 2011 the default. Make Inspire rather than Spires
default.
Table A.2 summarises the changes that were made during the development of the pibonn-thesis
package.
Table A.2: Changes to the pibonn-thesis style files.
68
Table A.2: Changes to the pibonn-thesis style files.
Date
Comment
31 Mar 2013
28 Mar 2013
Add instructions on how to use LATEX backport under Ubuntu variants.
Updated and hopefully complete and correct instructions on thesis submission.
Move to USenglish and UKenglish as languages rather than american and british.
Change the style of the chapter heading. Add some more instructions which cover
pages are needed when.
Add watermark possibility with background package.
Added a glossary and a list of acronyms as well as instructions on how to make
them. Skeleton CV for PhD thesis added — has still to be cross-checked with the
Promotionsbüro.
Add some hints on what title pages to use when and what you have to worry about
when printing and submitting your thesis.
Use American-style quotation marks by default with the csquotes package. This
means outer “double quote and inner ‘single quote’”, which seems to be quite
common, even in British (UK) English publications such as CERN Courier.
Replace color by xcolor so that one can colour boxes around links.
Add some more information on installing TEX Live 2011. Add some thesis
examples. Add some hints on using Kile. Sorting of references turned off for TEX
Live 2011. Some more information on which reference types to use added.
Update SVN information due to PI changes.
Make a separate file for cover so that page numbering starts properly.
Add instructions for TEX Live under Windows.
Move current version into the trunk subdirectory to conform to usual SVN
structure.
Made the guide more generic so that it can be sent to other institutes. Used
\ifthenelse everywhere rather than having separate files for different TEX Live
versions.
Reorganised switching between TEX Live 2009 and 2011. The version should be
set first before loading the style file. Without the option TEX Live 2009 is assumed.
Some changes to adapt to stricter siunitx version 2 requirements and new options.
Added some comments on ways of writing axis names for coordinates. Added
some information on using feynmp rather than feynmf.
Only include one title page for Bachelor theses. Add some more sources of
information. Reorganise and improve a bit the references chapter. Reorganise
information on installing a TEX setup. Move Windows XP to a separate subsection.
Add a bit of information for MacOS. Add a bit of information on the subfiles
package.
Add more information on formatting footnotes.
Added more and better examples of using the S column format in tables.
Add more information on biblatex and make this the default (unsorted, numeric)
for a thesis.
Removed dot after chapter and figure/table numbers.
14 Mar 2013
24 Jan 2013
14 Dec 2012
04 Dec 2012
02 Dec 2012
22 Oct 2012
12 Oct 2012
24 Aug 2012
19 Jun 2012
18 Jun 2012
05 Jun 2012
24 May 2012
15 May 2012
14 May 2012
06 Mar 2012
23 Jan 2012
20 Jan 2012
11 Jul 2011
69
Appendix A Changes and plans
17 Jun 2011
23 May 2011
Table A.2: Changes to the pibonn-thesis style files.
Added discussion of siunitx package. Added some extra tables that also use this
package. Added booktabs package which include \toprule, \midrule and
\bottomrule to get better looking tables. Also switched from \usepackage to
\RequirePackage in ubonn-thesis.sty.
Changed default font to txfonts. Added more font options and explanation.
Here is a list of ideas for more information that could be added to this guide:
• Add drawing of Feynman graphs with axodraw and/or jaxodraw.
• Add instructions on content of CV and summary for PhD thesis.
70
APPENDIX
B
TEX setup and packages
LATEX file: ./guide_appendix.tex
If you have an older LATEX installation (with a KOMA-Script version less than 3.0) you will probably
have to make a few changes to the style file and your main thesis file. In particular the \KOMAoptions
macro does not exist. In this case, you have to put the options into the document class options. Also
some of the names have changed. Consult the KOMA-Script manual for more information.
Other packages that I recommend and that are subject to rapid development still are biblatex and
siunitx. If you want to fully exploit their capabilities, you should make sure you LATEX installation is as
recent as possible — I recommend at least TEX Live 2013 and preferably later.
As I mentioned in the introduction, the institute is a member of Dante and I therefore receive a copy
of the TEX Collection DVD every year. You can also download the installation you need from the TEX
Users (TUG) group web page: http://www.tug.org/texcollection.
B.1 Integrated environments
As already mentioned in Section 2.3, I highly recommend that you use an integrated environment for
editing and compiling your thesis. All such tools allow you to define projects, which then know about
which files should be included when compiling.
TEXstudio and Texmaker can be installed under Windows, MacOS or Linux. I have tried TEXstudio in
all three systems and it works nicely. It can be downloaded from http://texstudio.sourceforge.
net/. Others report good experience with Texmaker (under Ubuntu). It is available as an Ubuntu
package or from http://www.xm1math.net/texmaker. Texmaker and TEXstudio (TEXmakerX)
split in 2009, so both packages contain a lot of similarities. Visual Studio Code1 has a very nice
extension for LATEX documents. Kile is quite popular, especially if you use the KDE desktop
environment.
I used to use emacs and AUCTeX, as I can then use the same editor for everything. Note that the
RefTeX mode in emacs also provides powerful tools for finding and inserting cross-references and the
names of citations easily.
1
https://code.visualstudio.com
71
Appendix B TEX setup and packages
B.1.1 TEXstudio
I have been using TEXstudio as my main tool for creating LATEX documents since 2013. One very
nice feature is that it works under MacOS, Windows and Linux. It is fairly easy to adapt to your
preferences. Additional keyboard shortcuts can be added and the editor can be customised. I usually
change the TAB behaviour so that spaces rather than TABs are inserted.
If you use the integrated PDF viewer, it is very easy to switch between the PDF file and the LATEX
source code, which is extremely helpful. You can also usually click on an error in the Message window
and the cursor will jump to the right spot. This makes debugging and proofreading much easier.
You can configure TEXstudio to use latexmk by default. It is easy to switch between biber and
bibtex using the Build preferences.
You can also make a glossary from within TEXstudio. In order to do this you have to define a user
build command. You can find such commands under: Options → Configure TeXstudio → Build. I
defined a new command which I called “BuildWithGlossary”. This executes pdflatex, biber,
makeindex, makeglossary, pdflatex, pdflatex.
B.1.2 Visual Studio Code
I currently use Visual Studio Code as my editor for both LATEX and other programs. It is available for
Windows, MacOS and Linux. The big advantage is that you have one editor for both documentation
and code. It works quite well for writing LATEX, but assumes that you know the LATEX commands that
you want to include. Rapid development is ongoing, also for the LATEX extension LATEX Workshop that
you should certainly install. If you have chktex installed you should also enable it, as it helps you to
find errors and gives a lot of information on the quality of your LATEX.
B.1.3 Kile
Many people use Kile as their environment for editing and compiling LATEX. I have not used it for a
number of years, so some of the instructions I give here may be out of date.
If you use bibtex for your references then the default setup does not have to be changed. If you
want to use the biber backend then you should integrate the command into Kile.
To do this you need to do the following: In Kile: Settings → Configure Kile → Tools
→ Build and then insert a new tool (Biber) on the left-hand side. It is probably best to define the
class of the tool as BibTEX. Then on the right-hand side in the General tab the command should be
biber and the option %S. In the Advanced tab you should set the Source extension to aux and
the Target extension to bbl.
I would then recommend adding a new configuration to the QuickBuild called PDFLaTeX+Biber+ViewPDF
that executes the commands: PDFLaTeX, Biber, PDFLaTeX, PDFLaTeX, ViewPDF. This is also
the series of commands that the Makefile executes.
I have not yet investigated how to also make the glossary from within Kile, but it should be possible
to do it in the same way as you add a biber command.
72
B.2 MacOS
B.2 MacOS
For the past several years, I have been installing and running LATEX on a MacBook Pro. The standard
package you start with is TEXShop. Together with BasicTEX this provides a basic environment.
However, if you want to do more (like write a thesis), you should install TEX Live. There is a complete
TEX Live installation call MacTEX that you can download from http://www.tug.org/mactex/.
The Dante TEX Collection DVD also includes MacTEX, which is what the TEXShop web page
recommends as the best combination to install.
As discussed above, there are MacOS versions of TEXstudio and Texmaker which you can try. I
have been using TEXstudio.
B.3 (Ku|Xu|U)buntu
For most of my tests with Ubuntu I have been using Xubuntu 14.04 and TEX Live 2013. More recently
I have also used Xubuntu 16.04 and TEX Live 015.
I also made the guide on a plain Xubuntu 12.04 installation, which used the default packages from
the Xubuntu image. At installation time I enabled the usage of 3rd party non-free software. This is be
needed for acroread among other things.2 If you want to write your thesis in British (UK) English
you should make sure that that language is fully installed. If you want to write your thesis in German,
then also install German as a language, even if your system is in English.
I explicitly installed the following packages in addition:
(k|x)ubuntu-restricted-extras
git #Used to be subversion
texlive
texlive-doc-en
texlive-science
texlive-science-doc
texlive-lang-german
texlive-fonts-recommended
texlive-fonts-extra
texlive-latex-extra
feynmf
texlive-bibtex-extra
biber
For Ubuntu 13.04 and later I also had to install texlive-metapost in order to compile the guide.
The guide also needs texlive-generic-extra, at least for TEX Live 2015.
(Ku|Xu|U)buntu 12.04 has TEX Live 2009 installed by default. You will need to install texlive-latex3.
Later versions include the relevant packages in texlive-latex-recommended which is installed
by default. You also have to install biblatex rather than texlive-bibtex-extra. I recommend
using traditional BibTEXrather than biber with such an old version,so do not install biber.
Using these packages I was able to issue to following commands to produce the guide (assuming that
you have TEX Live 2011 or later):
2
Nowadays you have to download acroread from the Adobe web page.
73
Appendix B TEX setup and packages
git clone https://git.physik.uni-bonn.de/cgit/projects/ubonn-thesis.git
cd ubonn-thesis
Set the \texlive variable appropriately in guide/thesis_guide.tex. Then the following worked:
cd guide
make guide
so all packages are there as well as at least the default font which I selected. If your version of TEX
Live is older than 2013, you should set \texlive accordingly and not pass the option newtx to
ubonn-thesis. In addition, I had to download and install the package physics from CTAN when using
TEX Live 2011 and Scientific Linux 6.
The default version of the guide uses biber for the biblatex package and includes
./guide/refs/example_refs-utf8.bib which contains some umlauts.3 You give the command
make guide to compile, which uses biber rather than bibtex to process the .bib files.
The default version of the guide also compiles on ATLAS Bonn desktop computers (Ubuntu 18.04
with TEX Live 2017). If you want to use feynmf instead of feynmp to compile the guide, you have
to pass the option feynmf instead of feynmp to ubonn-thesis.sty and give the command make
feynmf before make guide.
If you want to switch from biber to bibtex or bibtex8 or vice versa, give the commands make
cleanguide cleanbbl cleanblx before you try to compile the guide (or your thesis).
In order to edit LATEX you need an editor such as emacs or use a program such as kile (and the
associated kile-doc), TEXstudio or Texmaker. These were discussed briefly in the previous section.
If your LATEX installation is old, you may want to bring it up-to-date. For Ubuntu variants
there is a simple solution. Just add TEX Live backports to your list of sources (use the sudo
apt-add-repository ppa:texlive-backports/ppa command). You should then be able to
give the command sudo apt-get update; sudo apt-get upgrade. Note that this variant will
overwrite your current LATEX installation. An alternative is the method discussed in the following
paragraphs, which allows you to have two different installations in parallel.
A TEXnische Komödie issue (3/2011) contained detailed instructions on how to install a newer
version of TEX Live in parallel to the default version in Kubuntu (Ubuntu works in almost exactly
the same way). For a while, I did this as standard practice on my laptop and it worked very
well. Another useful source of information on how to install TEX Live can be found under http:
//tug.org/texlive/quickinstall.html.
A brief summary of how to do the installation by hand: you must have perl-tk installed. Go to a
directory where you want the install script to be and then execute the following chain of commands:
wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz
tar zxvf install-tl-unx.tar.gz
cd install-tl-...
sudo ./install-tl -gui perltk
Turn off some of the languages
Make sure installation is in /usr/local/texlive
Install
3
The same references using normal
./guide/refs/example_refs-ascii.bib.
74
ascii
test
(suitable
for
bibtex)
can
be
found
in
B.4 Windows
I installed the scheme scheme-tetex and added the collections: BibTeX additional styles,
Generic additional packages, LaTeX additional packages and Natural and computer
sciences. When the installation is complete (can easily take 1 to 2 hours):
cd ..
echo ’export PATH=/opt/texbin:${PATH}’ > texlive.sh
sudo cp texlive.sh /etc/profile.d/
sudo ln -s /usr/local/texlive/2011/bin/i386-linux /opt/texbin
If you have a 64-bit installation replace i386-linux with x86_64-linux. Note that the last 3
commands set things up so that /opt/texbin is at the beginning of your PATH and that LATEX is then
taken from there rather than the usual /usr/bin.
With Kubuntu 13.04, I had to install texdoc in addition in order to be able to use it to access the
documentation with it.4
For updating, additions of packages etc., it is useful to define an alias in your .bashrc or
.bash_aliases:
function sutlmgr () {
if [[ -z "$@" ]]; then
sudo /opt/texbin/tlmgr -gui
else
sudo /opt/texbin/tlmgr "$@"
fi
}
You then give the command sutlmgr to start the TEX Live manager interface. You can use this
interface to install new packages as well as to update the ones you have installed. If you want to update
things, you should first click on “Load default” to load a repository and then you can do things such as
“Update all installed”.
If you are using Ubuntu 11.10, you may well get an error: “sh: gnome-open: not found”
when you try to give a texdoc command. I fixed this by making a link from /usr/local/bin/gnome-open
to /usr/bin/xdg-open.
B.4 Windows
I also tried to to make the guide and a skeleton thesis under Windows. My tests have been done
with Windows 7 and more recently Windows 10. I simply downloaded the MiKTEX installer from
http://miktex.org. This is discussed in Appendix B.4.1. You can also install TEX Live for
Windows. Some hints on how to do this are given below (Appendix B.4.2).5
Once you have a TEX installation, you have to get the thesis style files and the guide. To do this I
used TortoiseGit which is available from https://tortoisegit.org as the interface between
Windows and Git.
4
5
This was not necessary for earlier (K)Ubuntu versions. I found it a bit strange, but it seems to be needed.
I have had success with the 2010 TEX Collection DVD from Dante to install proTEXt, which is based on MiKTEX. Newer
versions should also work without problems. What the user sees is TEXworks which is deliberately supposed to look like
the Mac’s TEXShop.
75
Appendix B TEX setup and packages
To checkout the files, simply start Windows Explorer and go to the top-level directory where you
want to do the checkout, right-click on the mouse and enter
https://git.physik.uni-bonn.de/cgit/projects/ubonn-thesis.git as the URL. If you
do this you can stay at the cutting edge! If you want a particular version then specify the branch you
want, e.g. “v5.0”. You can of course simply download the appropriate tar file from the PI webpages.
To set up your thesis, you have to do by hand what the Makefile does under Linux or install GNU Make. If you want to do it by hand, you should make a new directory mythesis,
copy thesis_skel/thesis_skel.tex to mythesis/mythesis.tex, and copy the rest of the
files you need from thesis_skel into mythesis. In addition you should copy the style files
ubonn-thesis.sty and ubonn-biblatex.sty into the mythesis directory.
To compile things, I ran the sequence PDFLATEX, BibTEX, PDFLATEX, PDFLATEX to get the output
file for the skeleton thesis. If you want to use biber instead of traditional BibTEX, then you should
change the BibTEX command from bibtex to biber in TEXstudio or TEXworks.
If you want to install GNU Make you can try the following: You should install the “Minimal Gnu for
Windows” from http://www.mingw.org. I downloaded and ran mingw-get-setup.exe. Once
you have installed it you can run the “MinGW Installer” to install the software you want. I think you
should install msys-base from “Basic Setup”. This installs make and quite a lot of other typical Unix
commands. Finally you have to add C:\MinGW\msys\1.0\bin to your PATH. One way to do this
is with the command setx PATH %PATH%;C:\MinGW\msys\1.0\bin using a Windows Command
Prompt, i.e. cmd.exe. You can also use the GUI in the System Administration to set environment
variables. If you get make to work properly you start cmd.exe, navigate to the correct directory and
give the usual commands to create and compile your thesis:
make new
make
TEXstudio knows about indexes and glossaries. You have to set up a user command to execute
makeindex and makeglossaries as discussed in Appendix B.1. With the addition of these
commands, you should also be able to compile this guide.
If you run PDFLATEX with the option -enable-write18 and include appropriate mpost commands
in your LATEX file(s), as discussed in Section 5.6.2, Feynman graphs made using feynmp work well.
With TEXstudio, you can simply include this option in the PDFLATEX command: Options → Configure
TeXstudio → Commands.
I have not invested any effort in trying to get feynmf working under Windows. The output files are
produced, but I have not tried to run Metafont on them.
B.4.1 MiKTEX
I have installed TEX under Windows both from the TEX Collection 2010 DVD and via a download
from Internet. For the DVD I logged in as an Administrator and then opened the DVD. It opened a
TEX Collection window and I then clicked on proTEXt Quick Install and installed MiKTEX (minimal
version), Ghostscript and Ghostview for all users. Once the installation was finished, I also updated all
the packages using the MiKTEX Maintenance (Admin) → Update (Admin) program. Be patient —
these updates always take a while!
With the minimal version of MiKTEX you are then asked whether to install the missing packages
when first compiling a file that needs them. Note that such missing packages are installed in your local
76
B.4 Windows
directory tree and not in the central directory tree. This means that if you want to update MiKTEX in
the future you should run the MiKTEX Update both as Admin and as a normal user. Be patient if the
first compilation of a document appears to hang. This usually means that new packages are being
installed.
Note that the Dante TEX Collection 2011 DVD has dropped TEXnic Center within proTEXt and is
using the TEXmakerX front-end instead. TEXmakerX has recently been superseded by TEXstudio, My
comments on TEXnic Center have been relegated to Appendix H. There is also the package Texmaker.
B.4.2 TEX Live
You can install TEX Live instead of proTEXt. To do that you can either use the TEX Collection
DVD or download TEX Live. If you download TEX Live you should unzip the file that you get
and go to the directory install-tl/install-tl-YYYYMMDD. In that directory you should run
install-tl-advanced.bat as Administrator if you want to install TEX Live in a system directory.
I installed the “medium” scheme. The following extra collections were needed:
• BibTeX additional styles
• Generic additional packages
• LaTeX additional packages — needed for csquotes
• Natural and computer sciences
I also added the German documentation. Do not forget to toggle the option All users if you want
more than one user to be able to use LATEX on your machine. If you forget one of the above collections,
you can install the missing packages later.
While MiKTEX can install missing packages on the fly, this does not seem to be the case for TEX
Live. To install extra packages you should start the TEX Live manager and before doing anything else
you should load the default repository.
You can either use TEXworks as the front end or you can install TEXstudio or Texmaker.
77
APPENDIX
C
Print shops
For a PhD thesis, as mentioned in Section 3.1, you have to print and bind the five copies that are
needed by the university library externally. Some print shops in the Bonn region that can supply the
required quality at a reasonable price are:
• Typo-Druck & Verlags-GmbH
Irmintrudisstr. 1b
53111 Bonn
Telefon 0228-650905
http://www.typo-druck.de
• Buchbinderei Hennemann
Paulusplatz 12
53119 Bonn
Telefon 0228-223521
http://www.buchbinderei-hennemann.de
It is also possible to order online, e.g.:
• http://www.druckerei-eberwein.de/shop
• http://www.kunsthaus-schwanheide.de
• http://www.druckterminal
• http://www.sedruck.de
• http://hundt-druck.de
• http://copyteamcologne.de
• http://dr.hut-verlag.de
We have tried out „Druckerei Eberwein“. Their price was reasonable and they delivered quickly and
in good quality.
79
APPENDIX
D
Making a glossary or list of acronyms
LATEX file: ./guide_appendix.tex
What is the difference between a glossary and a list of acronyms? They are in fact very similar. A
list of acronyms is probably most appropriate for defining the abbreviations used for detector names,
e.g. the electromagnetic calorimeter (EMC). A glossary is used for defining terms, e.g. “transition
radiation: transition radiation can be emitted when a particle crosses the boundary between two
media with different dielectric constants”. A list of acronyms is probably a good idea to include in any
thesis; a glossary may be helpful as well.
Several packages are available to help in the creation of a glossary:
glossaries A new glossary package that can do everything! This is what I use here.
nomencl Another glossary package that I used in the book “Physics at the Terascale”.
glossary Replaced by glossaries in TEX Live 2012 and also available with TEX Live 2009.
glosstex Rather an old package that looks to be quite simple to use.
A short introduction to these packages can be found in the TEXnische Komödie 4/2012.
The nomencl package is maybe the easiest to use for creating a simple list of acronyms. If you
want to change the formatting or do anything other than create a simple list, it is probably worth
investigating glossaries.
The nice thing about glossaries is that it works with hyperref so that you can even click on an
acronym and find its definition. In this guide I included the package with the option acronym, in
order to get both a glossary and a list of acronyms. I also included the option toc, so that the glossary
and list of acronyms are included in the table of contents. You tell it to to make a glossary (and
list of acronyms) by giving the command \makeglossaries in the preamble and you print the
glossary (usually at the end of the document) with the \printglossaries command. I have not
included these commands in the thesis skeleton, as the glossaries package is rather new and may not
be available in older TEX installations. In order to process the glossary, you need to run the command
makeglossaries filename. This is included in the Makefile for the commands make guide
and should be added to make thesis and/or make thesis09 if you want to make a glossary for
your thesis.
81
Appendix D Making a glossary or list of acronyms
If you use the package xtab for long tables, then you should include glossaries with the option
nosuper to avoid it loading supertabular. Use styles with a long rather than a super variant if you
want such features.
If you have a glossary and want it to compile it using latexmk you should add the following lines
to /.latexmkrc or to /.config/latexmk/latexmkrc:1
add_cus_dep(’glo’, ’gls’, 0, ’run_makeglossaries’);
add_cus_dep(’acn’, ’acr’, 0, ’run_makeglossaries’);
sub run_makeglossaries {
if ( $silent ) {
system "makeglossaries -q ’$_[0]’";
}
else {
system "makeglossaries ’$_[0]’";
};
}
push @generated_exts, ’glo’, ’gls’, ’glg’;
push @generated_exts, ’acn’, ’acr’, ’alg’;
$clean_ext .= ’ %R.ist %R.xdy’;
I illustrate the use with the standard description of the ZEUS detector, which includes the
abbreviations that are used in the rest of a ZEUS paper. As a first step you define the terms for the
glossary and the acronyms. In this guide, the acronyms and the glossary entries are defined in the file
guide_glossary.tex. These definitions must come before they are used. You can decide whether
it is best to have them in a single file, or define them just before they are used. When they are printed
at the end, they will be sorted alphabetically.
Once an acronym is defined, the first time the acronym is used, \gls{acronym}, the full text and
the abbreviation is printed. Every time after that only the abbreviation is printed.
D.1 ZEUS detector description
In the kinematic range of the analysis, charged particles were tracked in the central tracking detector
(CTD) and the MVD silicon tracker (MVD). These components operated in a magnetic field of 1.43 T
provided by a thin superconducting solenoid. The CTD consisted of 72 cylindrical drift-chamber
layers, organised in nine superlayers covering the polar-angle region 15° < θ < 164°. The MVD
consisted of a barrel (BMVD) and a forward (FMVD) section. The BMVD contained three layers
and provided polar-angle coverage for tracks from 30° to 150°. The four-layer FMVD extended the
polar-angle coverage in the forward region to 7°. After alignment, the single-hit resolution of the
MVD was 24 µm. The transverse distance of closest approach (DCA) of tracks to the nominal vertex
in X–Y was measured to have a resolution, averaged over the azimuthal angle, of (46 ⊕ 122/pT ) µm,
1
I got this information from https://tex.stackexchange.com/questions/1226/how-to-make-latexmk-usemakeglossaries
82
D.1 ZEUS detector description
with pT in GeV. For CTD-MVD tracks that pass through all nine CTD superlayers, the momentum
resolution was σ(pT )/pT = 0.0029pT ⊕ 0.0081 ⊕ 0.0012/pT , with pT in GeV.
The high-resolution uranium–scintillator calorimeter (CAL) consisted of three parts: the forward
(FCAL), the barrel (BCAL) and the rear (RCAL) calorimeters. Each part was subdivided transversely
into towers and longitudinally into one electromagnetic section (EMC) and either one (in RCAL)
or two (in BCAL and FCAL) hadronic sections (HAC). The smallest subdivision of the calorimeter
was called a cell.
under test-beam conditions, were
√ The CAL energy resolutions, as measured
√
σ(E)/E = 0.18/ E for electrons and σ(E)/E = 0.35/ E for hadrons, with E in GeV.
83
Appendix D Making a glossary or list of acronyms
We start a new page so that you can see how the cross-referencing works. ZEUS had quite a large
assortment of tracking detectors. In the forward direction there was the forward tracking detector
(FTD) and the transition radiation detector (TRD). The TRD was replaced by the straw-tube tracker
(STT) for the HERA 2 running period. In the middle of the detector, the CTD was always there, while
the MVD was also installed later.
84
APPENDIX
E
Plots with TikZ
Figure E.1 shows how you can produce a plot showing the contributions of many different systematic
uncertainties to a result. Note that this plot uses some modern features of the tikz and pgfplots packages.
Hence it is only included if this guide is compiled with TEX Live 2011 or later.
85
MPDG (D ∗+ ) +0.14 MeV
MPDG (D ∗+ ) −0.14 MeV
MPDG (D 0 ) +0.16 MeV
MPDG (D 0 ) −0.16 MeV
MC beauty contribution × 0.0
MC beauty contribution × 0.5
MC beauty contribution × 1.5
MC beauty contribution × 2.0
Central value
∗
0
Cut on cos θ − 0.050 for D
∗
0
Cut on cos θ − 0.025 for D
∗
0
Cut on cos θ + 0.025 for D
∗
0
Cut
∗ on cos θ + 0.050
∗+ for D
Cut on cos θ − 0.050 for D (2p, 4p)
∗
∗+
Cut on cos θ − 0.0250 for D (2p, 4p)
∗
∗+
Cut on cos θ − 0.0250 for D (2p, 4p)
∗
∗+
Cut on cos θ + 0.050 for D (2p, 4p)
∗
0
Cut on cos θ − 0.050 for D (K)
∗
0
Cut on cos θ − 0.025 for D (K)
∗
0
Cut on cos θ + 0.025 for D (K)
∗
0
Cut on cos θ + 0.050 for D (K)
∗+
0
Window of M(D ) − M(D ) − 2%
∗+
0
Window of M(D ) − M(D ) − 4%
∗+
0
Window of M(D ) − M(D ) + 2%
∗+
0
Window of M(D ) − M(D ) + 4%
∗+
Window of M(D )(2p, 4p) − 2.5%
∗+
Window of M(D )(2p, 4p) − 5%
∗+
Window of M(D )(2p, 4p) + 2.5%
∗+
Window of M(D )(2p, 4p) + 5%
0
Window of M(D )−5 MeV
0
Window of M(D )−10 MeV
0
Window of M(D )+5 MeV
0
Window of M(D )+10 MeV
0
Cut on pT (D ) −0.05 GeV
0
Cut on pT (D ) −0.10 GeV
0
Cut on pT (D ) +0.05 GeV
0
Cut on pT (D ) +0.10 GeV
∗+
Cut on pT (D )(2p) −0.05 GeV
∗+
Cut on pT (D )(2p) −0.10 GeV
∗+
Cut on pT (D )(2p) +0.05 GeV
∗+
Cut on pT (D )(2p) +0.10 GeV
∗+
Cut on pT (πe ) D (2p, 4p) −0.010 GeV
∗+
Cut on pT (πe ) D (2p, 4p) −0.005 GeV
∗+
Cut on pT (πe ) D (2p, 4p) +0.005 GeV
∗+
Cut on pT (πe ) D (2p, 4p) +0.010 GeV
0
Cut on pT (πe ) D −0.02 GeV
0
Cut on pT (πe ) D −0.04 GeV
0
Cut on pT (πe ) D +0.02 GeV
0
Cut on pT (πe ) D +0.04 GeV
CAL energy scale−1%
CAL energy scale−2%
CAL energy scale+1%
CAL energy scale+2%
Change BG pars
Separate BG parameters
−16 MeV fit range
−1 MeV resolution
+1 MeV resolution
+
f (c → Ds1
)
s1
S
s1
BD + →D ∗+ K 0 /BD + →D ∗0 K +
Appendix E Plots with TikZ
δ1
86
δ2
δ3 δ4
δ5
2.5
2
1.5
1
1
0.9
0.8
0.7
0.6
Figure E.1: The results of strange excited charm meson fragmentation fraction and branching ratio with
systematic variations. The individual systematic variations are put into groups δ1 − δ5 .
APPENDIX
F
Long tables
LATEX file: ./guide_appendix.tex
Long and complicated tables, such as tables containing the breakdown of the systematic error for each
data point are usually put into the appendices. Code or data cards can also be included here. Examples
of complicated typesetting have been given already in Chapter 6. In this appendix I give an example
of a table (Table F.1) that goes over more than one page using the xtab package. If instead you use
longtable, note that it is a combination of tabular and table in one environment. As mentioned in
Chapter 4, an alternative is the supertabular package.
While footnotes do not work properly in a normal tabular, but they do work in longtable if you
use longtable. You can use the mpxtabuar environment to include footnotes in a table if you use xtab.
If you use the xtab package, note that you should specify the table header and footer outside the
table itself. Do not include xtabular inside a table environment, as the table will then be output on
one page, which is not what you want! Such packages sometimes need a bit of help to get the page
breaks in the right place. According to the xtab documentation you should first try to play around with
the variable \xentrystretch. The default value is 0.1. Decrease this to put more on a page and
increase it to get less. You can even set it to a negative value! The value can be set per table. As an
alternative you can use the \shrinkheight command.
87
Appendix F Long tables
Number
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
1
2
3
4
5
6
7
8
9
10
11
12
Letter
Explanation
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
A
B
C
D
E
F
G
H
I
J
K
L
The lowercase 1st letter in the alphabeta
The lowercase 2nd letter in the alphabet
The lowercase 3rd letter in the alphabet
The lowercase 4th letter in the alphabet
The lowercase 5th letter in the alphabet
The lowercase 6th letter in the alphabet
The lowercase 7th letter in the alphabet
The lowercase 8th letter in the alphabet
The lowercase 9th letter in the alphabet
The lowercase 10th letter in the alphabetb
The lowercase 11th letter in the alphabet
The lowercase 12th letter in the alphabet
The lowercase 13th letter in the alphabet
The lowercase 14th letter in the alphabet
The lowercase 15th letter in the alphabet
The lowercase 16th letter in the alphabet
The lowercase 17th letter in the alphabet
The lowercase 18th letter in the alphabet
The lowercase 19th letter in the alphabet
The lowercase 20th letter in the alphabet
The lowercase 21st letter in the alphabet
The lowercase 22nd letter in the alphabet
The lowercase 23rd letter in the alphabet
The lowercase 24th letter in the alphabet
The lowercase 25th letter in the alphabet
The lowercase 26th letter in the alphabet
The uppercase 1st letter in the alphabet
The uppercase 2nd letter in the alphabet
The uppercase 3rd letter in the alphabet
The uppercase 4th letter in the alphabet
The uppercase 5th letter in the alphabet
The uppercase 6th letter in the alphabet
The uppercase 7th letter in the alphabet
The uppercase 8th letter in the alphabet
The uppercase 9th letter in the alphabet
The uppercase 10th letter in the alphabet
The uppercase 11th letter in the alphabet
The uppercase 12th letter in the alphabet
Continued on next page
a
b
“a” deserves a footnote
“j” deserves another footnote
88
Number
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Letter
Explanation
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
The uppercase 13th letter in the alphabet
The uppercase 14th letter in the alphabet
The uppercase 15th letter in the alphabet
The uppercase 16th letter in the alphabet
The uppercase 17th letter in the alphabet
The uppercase 18th letter in the alphabet
The uppercase 19th letter in the alphabet
The uppercase 20th letter in the alphabet
The uppercase 21st letter in the alphabet
The uppercase 22nd letter in the alphabet
The uppercase 23rd letter in the alphabet
The uppercase 24th letter in the alphabet
The uppercase 25th letter in the alphabet
The uppercase 26th letter in the alphabet
Table F.1: The alphabet.
89
APPENDIX
A famous equation is E = mc
G
2
LATEX file: ./guide_appendix.tex
This chapter was included to check that one gets bold mathematics in a chapter/section title, but not in
the table of contents.
As of release of the ubonn-thesis package, no special handling of titles should be necessary. This is
because the following line was added:
\def\bfseries{\fontseries\bfdefault\selectfont\boldmath}
G.1 A slightly less famous equation F = ma
The title here does not include \boldmath, as the bold font series turns on bold math by default. Note
that the section in the table of contents is typeset in a normal font when writing a book or report.
G.2 The cross-section is given by σ = N /L
This attempt includes \boldmath by hand and uses Greek letters and some specific font. It appears to
also work OK.
91
APPENDIX
H
Old or obsolete information and instructions
With time things change! Some of the instruction or packages that I recommended at an earlier time
are superseded. Operating systems and TEX installations also change with time. In order to avoid
cluttering up the main chapters of the guide with outdated or obsolete information, such things are
collected in this appendix.
H.1 More on feynmf
I relegate this section to the chapter on obsolete instructions, because I think it is much easier to just
use feynmp than feynmf. If you have TEX Live 2012, you can combine feynmp with standalone for a
very convenient way to develop and include Feynman graphs, as discussed in Section 5.6.2.
If you use feynmp you can just give the command make feynmp and it will produce PDF files of
all the tex files in the feynmf subdirectory.
If you do not want to include the feynmf commands for Feynman graphs in the thesis (or input the
file containing them), you can try to make encapsulated Postscript (or PDF) files that contain a single
Feynman graph and then include these as usual in your thesis.
If you want to use feynmf you can start with the feynmf command on the tex file containing the
graph.1 This produces a dvi file that you then have to convert to Encapsulated Postscript and/or PDF.
This is not totally trivial.
The best way is to specify the options to the geometry package so that the page size corresponds to
the Feynman graph. For a graph with size (50, 50), as specified at the beginning of the fmfgraph*
environment (within \unitlength in mm), the following wrapper works well:
\documentclass{article}
%
\usepackage[papersize={60mm,56mm},text={58mm,52mm},centering]{geometry}
\usepackage{feynmf}
\usepackage{color}
%
\pagestyle{empty}
1
Note that the example files that are included in this document tree are missing the \documentclass and \usepackage
commands.
93
Appendix H Old or obsolete information and instructions
\begin{document}
\setlength{\parindent}{0pt}
\setlength{\parskip}{0pt}
\setlength{\unitlength}{1mm}
\begin{center}
\fbox{\input{figs/feynmf/ep_nc.tex}}
\end{center}
\end{document}
I also had success with the command chain:
feynmf ep_nc
dvips ep_nc
ps2epsi ep_nc.ps
and then you can include ep_nc.epsi in your LATEXfile.2 To get PDF you need one more step:
epstopdf ep_nc.epsi
An alternative with explicit Metafont calls is:
pdflatex ep_nc
mf ’\mode=localfont; input ep_nc;’
pdflatex ep_nc
pdflatex ep_nc
The trouble with this is that the Feynman graph is not clipped, unless you have specified the page size
appropriately as discussed above.
H.2 Windows
H.2.1 Windows XP
As I no longer have access to a Windows XP machine, and Windows XP is slowly disappearing, my
experience with Windows XP stopped 2011.
I started the TEX Collection 2010 DVD. I started it as an Administrator, it opened a TEX Collection
window and I then clicked on proTeXt Quick Install and installed MiKTEX (minimal version), TEXnic
Center, Ghostscript and Ghostview for all users. Once the installation was finished, I also updated all
the packages using the MiKTEX Maintenance (Admin) → Update (Admin) program. Be patient —
these updates always take a while!
You should then be able to double-click on mythesis.tex and try to compile it! My first attempt
at this failed. I had set MiKTEX to install missing packages, but it was supposed to ask me first. This
seems to work well if you are logged in as the same user (with Administration rights) as the one who
installed MiKTEX. The package updating does not seem to work properly (it only asks you for the
first missing package I think) if you are a normal user. After going through the exercise once as an
2
By default LATEX will not find .epsi files with the \includegraphics command. Rename them to .eps instead or add
.epsi to the list of file types that \includegraphics can handle.
94
H.2 Windows
Administrator to compile the skeleton thesis, I could also compile both the thesis and the guide as a
normal user.
The second attempt was a complete MiKTEX installation. I told it to install missing packages
without asking. This also failed at the first attempt as it was missing the package logreq and somehow
did not install it automatically. I had to use the MiKTEX Maintenance (Admin) → Package Manager
(Admin) to install logreq.
H.2.2 TEXnic Center
I tried out the TEXnic Center, which is also available. You first have to tell it where to find the LATEX
executables. In my case this is C:\Program Files\MiKTeX 2.8\mktex\bin. You also have to tell
the program where to find Acrobat (Reader) although it should find it automatically.
In the TEXnic Center I opened one of the main files, i.e. mythesis.tex or thesis_guide.tex
and then in the Project menu I declared this file to be the main file for a new project. You should
declare the file format to be Unix. You can then compile the project and look at the output by hitting
Ctrl + F5. It is also possible to set some options such that you do not have to close the file in
Acrobat Reader before compiling.
There is a small problem and irritation with TEXnic Center and Acrobat Reader X. Under Build →
Define Output Profiles → Viewer you have to change acroview to acroviewR10 in the three
places where it is given. If you then try to compile Adobe Reader opens but you get an error message.
Just view the output again F5 and the PDF file will be shown. Via Google, I found some tricks that are
supposed to fix this problem, but they did not work for me. You can also just start Adobe Reader first
and then TEXnic Center.
In general, I thought I liked the TEXnic Center somewhat more than TEXworks, which is the direct
MiKTEX interface. It allows you to set up projects and you then have the ability to navigate easily
through all your files via the Navigator. However, it has a serious problem in that it does not handle
UTF-8 files properly. Although support for UTF-8 has been advertised for almost two years I do not
see much signs of progress.
As TEXnic Center has been dropped on the Dante TEX Collection 2011 DVD I have relegated this
information to a subsection.
95
Bibliography
[KD04]
H. Kopka and P. W. Daly, Guide to LATEX, 4th ed., Addison-Wesley, 2004
(cit. on pp. 2, 9, 51, 54).
[MG04]
F. Mittelbach and M. Goossens, The LATEX Companion, 2nd ed., Addison-Wesley, 2004
(cit. on p. 2).
[Oet+]
T. Oetiker et al., A (Not So) Short Introduction to LaTeX2e,
url: http://ctan.org/tex-archive/info/lshort (cit. on pp. 2, 27, 54).
[Fos]
B. Foster, The guide to writing ZEUS papers, url: http://pi.physik.uni-bonn.de
(cit. on p. 2).
[ZA+10]
ZEUS Collab., H. Abramowicz et al.,
Inclusive dijet cross sections in neutral current deep inelastic scattering at HERA,
Eur. Phys. J. C70 (2010) 965, arXiv: 1010.6167 [hep-ex] (cit. on pp. 51, 54).
[Abr+10a]
H. Abramowicz et al., Measurement of high-Q2 charged current deep inelastic
scattering cross sections with a longitudinally polarised positron beam at HERA,
Eur. Phys. J. C70 (2010) 945, arXiv: 1008.3493 [hep-ex] (cit. on p. 51).
[Abr+10b]
H. Abramowicz et al.,
Measurement of D+ and Λ+c production in deep inelastic scattering at HERA,
JHEP 11 (2010) 009, arXiv: 1007.1945 [hep-ex] (cit. on p. 51).
[Brü+04a]
O. S. Brüning et al., eds., LHC Design Report. 1. The LHC Main Ring,
CERN-2004-003-V-1, CERN-2004-003, 2004,
url: https://cdsweb.cern.ch/record/782076 (cit. on p. 54).
[Lod12]
T. Loddenkötter,
Implementation of a kinematic fit of single top-quark production in association with a W
boson and its application in a neural-network-based analysis in ATLAS,
BONN-IR-2012-06, PhD Thesis: University of Bonn, 2012,
url: http://hss.ulb.uni-bonn.de/diss_online (cit. on p. 54).
[Bru+04]
(. Bruning Oliver S. et al., LHC Design Report. 1. The LHC Main Ring,
(2004), Entry directly From InSpire (cit. on p. 54).
[Brü+04b]
O. S. Brüning et al., LHC Design Report, Entry directly From CDS, CERN, 2004
(cit. on p. 54).
[Brü+04c]
O. S. Brüning et al., eds., LHC Design Report. 1. The LHC Main Ring,
CERN-2004-003-V-1, CERN-2004-003, 2004,
url: https://cdsweb.cern.ch/record/782076 (cit. on p. 54).
97
Bibliography
[11]
Determination of the muon reconstruction efficiency in ATLAS at the Z resonance in
proton-proton collisions at sqrt(s)=7 TeV, tech. rep. ATLAS-CONF-2011-008,
Entry directly from CDS: CERN, 2011 (cit. on p. 54).
[ATL11a]
ATLAS Collaboration, Determination of the muon reconstruction efficiency in ATLAS at
√
the Z resonance in proton–proton collisions at s = 7 TeV, ATLAS-CONF-2011-008,
CERN, 2011 (cit. on p. 55).
[HM84a]
F. Halzen and A. D. Martin,
Quarks and Leptons: An Introductory Course in Modern Particle Physics, Wiley, 1984,
isbn: 9780471887416 (cit. on p. 55).
[HM84b]
F. Halzen and A. D. Martin, QUARKS AND LEPTONS: AN INTRODUCTORY COURSE
IN MODERN PARTICLE PHYSICS, (1984), Entry directly From InSpire (cit. on p. 55).
[Aad+11]
G. Aad et al., Measurement of the top quark-pair production cross section with ATLAS
√
in pp collisions at s = 7 TeV, Eur.Phys.J. C71 (2011) 1577, Entry directly From InSpire,
arXiv: 1012.1792 [hep-ex] (cit. on p. 55).
[ATL11b]
ATLAS Collaboration, Measurement of the top quark-pair production cross section with
√
ATLAS in pp collisions at s = 7 TeV, Eur. Phys. J. C 71 (2011) 1577,
arXiv: 1012.1792 (cit. on p. 55).
[ATL15]
ATLAS Collaboration, Search for new phenomena in final states ...,
Eur. Phys. J. C 75 (2015) 299, arXiv: 1502.01518 [hep-ex] (cit. on p. 57),
Erratum: Eur. Phys. J. C 75 (2015) 408.
[Gla61]
S. Glashow, Partial Symmetries of Weak Interactions, Nucl. Phys. 22 (1961) 579;
A. Salam, “Weak and Electromagnetic Interactions”, Elementary particle theory.
Relativistic groups and analyticity. Proceedings of the Eighth Nobel Symposium,
ed. by N. Svartholm, Stockholm: Almquist & Wiksell, 1968 367; S. Weinberg,
A Model of Leptons, Phys. Rev. Lett. 19 (1967) 1264, cit. on p. 59.
[ZC+10a]
ZEUS Collab., S. Chekanov et al., A QCD analysis of ZEUS diffractive data,
Nucl. Phys. B831 (2010) 1, arXiv: 0911.4119 [hep-ex] (cit. on p. 59).
[ZC+09]
ZEUS Collab., S. Chekanov et al.,
Exclusive photoproduction of upsilon mesons at HERA, Phys. Lett. B680 (2009) 4,
arXiv: 0903.4205 [hep-ex] (cit. on p. 59).
[ZC+10b]
ZEUS Collab., S. Chekanov et al.,
Measurement of J/ψ photoproduction at large momentum transfer at HERA,
JHEP 05 (2010) 085, arXiv: 0910.1235 [hep-ex] (cit. on p. 59).
[HA+10a]
H1 and ZEUS Collab., F. D. Aaron et al., Combined Measurement and QCD Analysis of
the Inclusive ep Scattering Cross Sections at HERA, JHEP 01 (2010) 109,
arXiv: 0911.0884 [hep-ex] (cit. on p. 59).
[HA+10b]
H1 and ZEUS Collab., F. D. Aaron et al., Events with an Isolated Lepton and Missing
Transverse Momentum and Measurement of W Production at HERA,
JHEP 03 (2010) 035, arXiv: 0911.0858 [hep-ex] (cit. on p. 59).
98
List of Figures
2.1
Example of (a) a problem with line numbers and (b) its solution. . . . . . . . . . . . 19
4.1
Optional caption without \mynote so that “List of Figures” does not break. . . . . . 30
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.10
Sketch of the LHC ring, the position of the experiments and the surrounding countryside.
Adding letters to figures with \put. . . . . . . . . . . . . . . . . . . . . . . . . . .
Adding letters to figures with tabular. . . . . . . . . . . . . . . . . . . . . . . . .
A small figure with a simple caption beside it. . . . . . . . . . . . . . . . . . . . . .
Processes in ep scattering. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
The ZEUS coordinate system. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Event reconstruction and simulation in ZEUS . . . . . . . . . . . . . . . . . . . . .
Example Feynman graphs for the associated production of a top quark and a Z boson.
NC and CC graphs for ep scattering using feynmf code directly. . . . . . . . . . . . .
Feynman graphs drawn with feynmp and tikz. . . . . . . . . . . . . . . . . . . . . .
32
32
33
33
34
35
36
39
41
42
E.1 Strange D∗∗ systematics, fragmentation fractions . . . . . . . . . . . . . . . . . . . 86
99
List of Tables
4.1
4.2
4.3
4.4
Useful packages for layout. . . . . . . . . . . . . . . . . . . . . . . . .
Useful packages for appearance. . . . . . . . . . . . . . . . . . . . . .
Other useful packages. . . . . . . . . . . . . . . . . . . . . . . . . . .
Other packages that are often used, but I have already given alternatives.
6.1
6.2
6.3
6.4
6.5
A table of viscosities in the default language and German. . . . . . . . . . . . . . .
A selection of cross-section measurements! . . . . . . . . . . . . . . . . . . . . .
Another selection of cross-section measurements! Note the use of \sisetup to keep
the plus signs on the positive errors. . . . . . . . . . . . . . . . . . . . . . . . . .
Cross-section measurements! . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cross-sections using sidewaystable, which also rotates the caption. . . . . . . .
. 46
. 48
. 49
A.1
A.1
A.2
A.2
A.2
Changes to the ubonn-thesis and ubonn-biblatex style files.
Changes to the ubonn-thesis and ubonn-biblatex style files.
Changes to the pibonn-thesis style files. . . . . . . . . . .
Changes to the pibonn-thesis style files. . . . . . . . . . .
Changes to the pibonn-thesis style files. . . . . . . . . . .
.
.
.
.
.
F.1
The alphabet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
26
27
28
29
. 44
. 45
67
68
68
69
70
101
Glossary
LATEX the typesetting program that is used for this guide. 1
csquotes a very nice package for using consistent quotes that is language sensitive. 10
siunitx the best package around for typesetting units. 9
103
Acronyms
CAL uranium–scintillator calorimeter. 83
CTD central tracking detector. 82–84
DCA transverse distance of closest approach. 82
FTD forward tracking detector. 84
MVD MVD silicon tracker. 82–84
STT straw-tube tracker. 84
TRD transition radiation detector. 84
105
Index
\*APBzero, 16
\missingfigure, 29
\printbibliography, 59
adjustbox, 28
align(*), 19
alignat(*), 19
American English, 10
AMS math, 2
amsmath, 19, 27
amssymb, 27
\ang, 14
array, 27, 47
\arraystretch, 43, 47
article, 25, 54
astronomy, 56
astrophysics, 56
axodraw, 28, 38, 70
babel, 26, 63, 64
background, 28, 69
\backmatter, 25, 65
\bar, 17
biber, 57, 72–74
\bibitem, 51
biblatex, 6–8, 51–57, 59, 60, 68, 69, 71, 74
@Set option, 59
\bibliography, 53
BibTEX, 52
bibtex, 74
bibtex8, 74
bibtool, 60
\Bo, 17
\Bobar, 17
\boldmath, 18, 68, 91
book, 25, 54, 55
booktabs, 27, 43, 62, 70
\bottomrule, 43, 70
British English, 10
BSc, 6, 22
caption, 29
captionbeside, 33
CDS, 54
\centering, 31, 47
chapter
heading, 65
\chapter, 113
\chapter*, iii
ChkTeX, 11
\cite, 51, 59, 60
\citealt, 59
\citep, 59
\citet, 59
cleveref, 8, 27, 28, 67
\clight, 14
color, 29, 69
link, 64
commath, 27, 28
compiling, 5
conference note, 54
coordinates, 10
courier, 26
cover, 6
\cref{fig:plot}, 27, 28
csquotes, 10, 26, 64, 69, 77
ctable, 62
CV, 21
dcolumn, 11, 28, 29, 47, 63
107
Index
department library, 22, 23
derivative, 11
design report, 54
\dif, 11
Diplom, 6, 22
displaymath, 14, 15, 19
\documentclass, 6, 21–23, 63, 93
draft, 28
draftwatermark, 28, 29
em, 10
emacs, 9, 11, 71
English, 2
English mistakes, 18
\enquote, 10, 64
\ensuremath, 9
eqnarray, 19
equation, 19
equation*, 14, 15, 19
Errata, 57
ex, 10
\extrarowheight, 44
fancyhdr, 29
fancyvrb, 53
\fbox, 40
feymp, 41
Feynman graphs, 38
feynmf, 6, 8, 20, 27, 29, 32, 38–41, 61, 68, 69,
74, 93
feynmp, 6, 8, 20, 28, 32, 38–42, 68, 69, 74, 76,
93
\figureformat, 31
figures, 31
directories, 12
Feynman graphs, 38
multiple, 32
figures formats, 33
\figwidth, 33
float, 29
floatflt, 28, 29
floatrow, 28
fmffile, 39, 40
fmfgraph*, 93
fncychap, 29, 65
108
font
lmodern, 7
fontenc, 26
footnote, 61
\footnotemark, 62
\footref, 62
\foreignlanguage, 44, 64
\foreignquote, 64
\frontmatter, 25
geometry, 25, 26, 61, 93
German, 63
ghostscript, 76
ghostview, 76
Git, 75
glossaries, 28, 81, 82
glossary, 28, 81
glosstex, 81
\gls, 82
\graphicspath, 12
graphicx, 27, 28
helvet, 26
hepnicename, 38
hepnicenames, 8, 10, 16, 27, 67
\HepParticle, 16
hepparticles, 10, 16, 27
heppennames, 8, 10, 16, 27, 67
hepunits, 9, 13, 15, 29
\hspace, 46
\hspace*, 46
hyperref, 9, 21, 28, 59, 60, 64, 81
\hypersetup, 21, 22, 64
IEEEeqnarray, 27
IEEEtrantools, 27, 28
ifthen, 28
\ifthenelse, 28, 69
\ifthenelse{\texlive < 2011}, 44
\include, 28
\includegraphics, 12, 27, 31, 32, 94
\inInstitute, 7
inputenc, 26
inspire, 54
\InstituteAddress, 7
\InstituteName, 7
Index
internal note, 54
jaxodraw, 70
keyval, 68
kile, 11, 71, 72
\KOMAoptions, 25, 71
KOMA-Script, 25
Kubuntu, 73
\label, 31, 62
LATEX, 1
LATEX Workshop, 11, 72
latexmk, 6, 40, 72, 82
library
department, 22, 23
university, 22
line numbers, 19
lineno, 19
linenomath, 19
Linux, 73
\listoftodos, 29
lmodern, 7, 64
logreq, 95
longtable, 7, 26, 62, 68, 87
MacOS, 73
\mainmatter, 25, 65, 68
\makeglossaries, 81
Master thesis, 54
math
bold, 17, 91
mathpazo, 16, 26
\mathrm, 9, 17
mcite, 51, 59, 60
metafont, 39
metapost, 39
\MeVovercsq, 14
mhchem, 27, 67
microtype, 26, 27
\midrule, 43, 70
MiKTeX, 76, 94
mpxtabuar, 26, 87
mpxtabular, 62
MSc, 6, 22
msys-base, 76
\mynote, 8, 29, 99
\mysim, 17
\mysymeq, 17
natbib, 59
\newcommand, 9
\newcommand*, 9
newtx, 7, 8, 16, 26, 38, 64, 67, 68
nomencl, 29, 81
note
conference, 54
internal, 54
\num, 13, 17, 44–46, 63
\numerrt, 14
\numpmerr, 14, 45
\numpmerrt, 14
options, 7
otherlanguage, 64
\overline, 17
page, 61
particles, 16
\per, 13
pgfplots, 34, 85
\phantom, vi, 43
PhD, 6, 21
PhD thesis, 54
physics, 11, 27, 28, 74
pibonn-thesis, 68–70
\power, 15, 16
preprint, 55
\printbibliography, 52
\printglossaries, 81
proceedings, 54
\put, 32, 99
pxfonts, 16, 26, 64
PyFeyn, 38, 39
pyx, 38
\qquad, 10
\quad, 10
quotation marks, 64
quotchap, 29, 65
quotes, 64
109
Index
range, 17
refcheck, 9, 28, 67, 68
RefTeX, 11, 71
report, 25
technical, 54
\RequirePackage, 70
\rm, 12
rotating, 27
rounding, 45
\rule, 43, 47
\sc, 12
scrartcl, 25
scrbook, 25
scrlayer-scrpage, 25, 26, 29, 67
scrpage2, 25, 67
scrreprt, 25
\selectlanguage, 64
\setcapindent, 31
\setkomafont, 31, 64
\setlength, 32
\setlength{\unitlength}{1pt}, 28
setspace, 26, 61
\sfrac, 14
\shrinkheight, 87
\SI, 9, 13, 14, 17
sideways, 47
sidewaystable, 47, 49
\SIerrs, 14
\SIerrt, 14
\SIerrtt, 14
\SIpmerr, 14
\SIpmerrs, 14, 15
\SIpmerrt, 14
\SIpmerrtt, 14, 15
\sisetup, 9, 14, 17, 46, 63, 101
SIunits, 9, 13, 15, 17, 29
siunitx, 7–11, 13–15, 17, 27–29, 44–46, 63,
69–71
skmath, 27, 28
Spell Right, 11
spires, 54
standalone, 27, 28, 38, 40, 68, 93
subcaption, 7, 9, 28, 33, 38, 67, 68
subfig, 7, 28, 29, 33, 38, 68
110
subfigure, 29, 38
subfiles, 27, 28, 69
submit, 21
BSc thesis, 22
Diplom thesis, 22
MSc thesis, 22
PhD thesis, 21
supertabular, 26, 82, 87
table, 43, 47, 62, 87
tablefootnote, 62
\tablefootnote, 62
tabular, 32, 33, 43, 44, 47, 62, 87
tabular*, 43
tabularx, 28, 43
TEX distribution, 2
texdoc, 2
TEX Live
2009, 13
2011, 13
\texlive, 7, 14, 56, 74
TeXmaker, 71
TeXnic Center, 94, 95
TeXStudio, 72
TeXstudio, 71
\text, 9, 12, 15, 17
\textrm, 9, 17
\textsc, 12
thesis, 54, 55
Bachelor, 6
Diplom, 6
Master, 6, 54
PhD, 6, 54
\thesisabstract, 64
TikZ, 85
TikZ, 34, 41
tikz, 27, 28, 34, 38, 41, 42, 68, 85
tikz-3dplot, 34
tikz-palattice, 35
tips, 5
titlesec, 8, 26, 27, 65
\todo, 29
todonotes, 8, 27–29, 67
\toprule, 43, 70
tortoisegit, 75
Index
\tt, 12
txfonts, 7, 8, 16, 26, 64, 68
typearea, 25, 26, 61
\U1S, 16
ubonn-biblatex, 67, 68
ubonn-biblatex.sty, 59
ubonn-thesis, 5, 6, 8, 17, 18, 20–23, 25, 26, 28,
29, 37, 52, 56, 59, 67, 68, 74, 91
updating, 20
Ubuntu, 73
ubuntu
12.04, 13
UK English, 10
ULB, 22
\unit, 13, 15, 17
\unitlength, 28, 93
\unitlength}{1pt}, 28, 110
units, 9, 13, 29
university library, 22
upadting, 20
\url, 28
US English, 10
\usepackage, 21, 70, 93
\usk, 16
\verb, 53
Visual Studio Code, 11, 71, 72
vscode, see Visual Studio Code
windows, 75
wrapfig, 28, 33
\write18, 20, 40, 68
xcolor, 27, 29, 69
\xentrystretch, 87
xfrac, 27
xspace, 17, 26
\xspace, 9, 15, 17
xtab, 7, 26, 27, 62, 68, 82, 87
xtabular, 62, 87
Xubuntu, 73
\Z0, 16
ZEUS paper guide, 2
ziffer, 28, 29, 47, 63
111
Acknowledgements
There is plenty of discussion as to where the acknowledgements should go in a thesis. The two most
common places are just after the title and dedication or right at the end. For the purpose of this guide I
include both options.
Acknowledgements at the end should be in \chapter so that they appear in the Table of Contents.
113
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.5 Linearized : No Page Count : 121 Page Mode : UseOutlines Author : Title : Subject : Creator : LaTeX with hyperref Producer : pdfTeX-1.40.19 Create Date : 2018:12:08 15:27:25+01:00 Modify Date : 2018:12:08 15:27:25+01:00 Trapped : False PTEX Fullbanner : This is pdfTeX, Version 3.14159265-2.6-1.40.19 (TeX Live 2018) kpathsea version 6.3.0EXIF Metadata provided by EXIF.tools