Skip to content

Latest commit

 

History

History
27 lines (23 loc) · 3.69 KB

README.md

File metadata and controls

27 lines (23 loc) · 3.69 KB

PhD-Thesis

This repository holds all documents, images, code, and auxillary files that are used in creating ThesisWG270.pdf. It is standalone, and contains all files required to assemble the thesis .pdf file from ThesisWG270.tex and makefile.

Upon pushing to branch main, GitHub actions will attempt to execute the make command provided by the Makefile after installing appropriate $\LaTeX$ dependencies.

File Structure

This is seperate from PhD-Work-Git repository to avoid repository bloat; as such, it should only contain the following types of files:

  • ThesisWG270.tex: master thesis file, and target of latexmk. This file is the thesis, and imports (precisely, \inputs) the other .tex files to create the thesis.
  • baththesis.sty: Style file that conforms to the UoB thesis requirements. Manual adjustments to page layout, etc, can be made via editing this file.
  • makefile: Makefile to build the thesis from the command line using latexmk. See below for a list of targets.
  • .tex files that directly contribute content to the thesis. These are stored in the Chapters folder. The structure established is to have a sub-folder for each individual chapter of the thesis, containing each section of said chapter in its own .tex file. Each folder also contains a .tex file which starts the chapter (typically sharing the name of the chapter sub-folder) and contains any text which comes prior to the start of the first section.
  • .tex files that contain TikZ diagrams. These are stored in the Diagrams folder. The diagram .pdfs can be produced from the makefile, and are placed into the sub-folder Diagram_PDFs.
  • .tex files containing preamble. These are stored in the Preamble folder and contain either preamble for thesis prose (including macros defining notation for reoccuring objects) or for TikZ diagrams (which are indirectly used in the .tex files for TikZ-produced images). Any established notations or conventions should be placed into the preamble files.
  • .bib files containing reference information. These are stored in the BibFiles folder, as multiple .bib files. ThesisWG270.tex reads in all of these files to produce one bibliography.
  • .pdf files produced from Numerical Code. These are stored in the Diagrams/Numerical_Results/ folder, and should be the only .pdf files included in the repository. Commits that change these figures should be absolutely certain this is necessary, as saving a binary file's changes leads to bloat in the .git/ directory.
  • .py,.ipynb files containing code that generates files in Diagrams/Numerical_Results/. To comply with OpenResearch policies and to prove that I didn't make my numerical results by hand, these are stored in the Code directory, where they can be run to produce the figures that appear in the thesis.

makefile Targets

The makefile has the following targets.

  • all: Produces ThesisWG270.pdf from scratch, and cleans up afterwards. Re-renders all supporting TikZ diagrams, but does not re-run numerical code for plots.
  • tikz: Produces all TikZ diagrams from files stored in Diagrams folder, and outputs PDFs to Diagrams/Diagram_PDFs.
  • no_tikz: Produces ThesisWG270.pdf without re-rendering any TikZ diagrams.
  • clearfigs: Removes all .pdf files stored in Diagrams/Diagram_PDFs (that is, all TikZ diagram outputs).
  • clear: Soft-cleans the directory. Retains àuxillary files used in the assembly of ThesisWG270.pdf. Things like equation numbers, bibtex references, will not be removed which potentially speeds up rendering done through an editor program.
  • clean: Hard-cleans the directory. Removes all auxillary files created in the previous assembly of ThesisWG270.pdf.