This repository contains the LaTex source of the Control Systems 2 course summary.
A pre-build pdf file can be downloaded here:
To clone this repo and the necessary submodules add the --recurse-submodules
flag to your git clone
command. If you forgot to add the --recurse-submodules
flag when you cloned the repo you can pull the submodules by running git submodule init
and then git submodule update
in the root directory of repository.
After you cloned this repo there are two options to build the LaTeX files ether you use the Docker Container or build it with your native installed LaTeX compile of choice. If you want a hassle-free way to work with our LaTeX project, we recommend using Docker.
Important Make sure to compile with xelatex (required by fontspec).
-
Make sure you have Docker installed on your system. If you don't have it already, you can download and install it from the official Docker website.
-
After you launched the docker daemon (started Docker Desktop) you can simply run execute the
./build_latex_local.sh
file to generate the pdf files. They are located in a newly created subfolder calledbuild
.
(Most probably you have to change the execution permissions withchmod +x build_latex_local.sh
before you are able to run the script for the first time.)
If you want to use your own native installed LaTeX compiler we recommend to use TeXLive which integrates well within visual studio code.
If you use the LaTeX Workshop extension you can add the following lines to your .vscode/settings.json
file to configure the system. There is an example settings file you can use. To get the minimum required configuration always open the provided code-workspace. This can be done by File->"Open Workspace from File" and then select the file .vscode/eth-comp-control.code-workspace
.
To compile with xelatex set: (required)
"latex-workshop.latex.recipe.default": "latexmk (xelatex)"
Specify an output directory:
"latex-workshop.latex.outDir": "../build",
Remove unnecessary build files (slows down compilation time):
"latex-workshop.latex.clean.fileTypes" : [ "*.aux", "*.fls", "*.synctex.gz", "*.out", "*.log", "*.fdb_latexmk" ],
"latex-workshop.latex.autoClean.run": "onBuilt",
"latex-workshop.latex.clean.method": "glob",
"latex-workshop.latex.clean.subfolder.enabled": true,
To enable the LaTeX checker ChkTeX:
"latex-workshop.linting.chktex.enabled": true,
"latex-workshop.linting.chktex.exec.args": ["-wall","-n8","-n13","-n21","-n22","-n30","-n46","-e16","-q"],
To get more information about the different warnings search for your warning code in the ChkTeX documentation. If you want to disable a checker warning on a specific line you can add % chktex ##
to the end of the line with the warning number you want to suppress.
The images and other compressed files are managed by git-lfs. Therefor you need to install git-lfs fist (brew install git-lfs
on MacOS).
All LaTeX files are autoformatted with latexindent
which comes within the TexLive installation. To install on MacOS simply run brew install latexindent
.
Feel free to fork this repository and create a pull request to integrate your corrections and extensions.
The LaTeX template of this summary can be found here.
Distributed under the MIT License. See LICENSE for more information.
All information, images, and materials presented here are sourced from the official lecture slides of the course "Control Systems II" taught by Prof. Dr. Emilio Frazzoli (Spring Semester 2024) and the textbook authored by Gioele Zardini. This course summary is intended solely for educational and academic purposes. Any other use or distribution is strictly prohibited.