add lecture.cls, rename some files
This commit is contained in:
@@ -5,5 +5,3 @@
|
||||
*.synctex.*
|
||||
*.fls
|
||||
*.out
|
||||
*.pdf
|
||||
!analysisII.pdf
|
||||
|
||||
+249
@@ -0,0 +1,249 @@
|
||||
\ProvidesClass{lecture}
|
||||
\LoadClass[a4paper, titlepage]{article}
|
||||
|
||||
\RequirePackage[utf8]{inputenc}
|
||||
\RequirePackage[T1]{fontenc}
|
||||
\RequirePackage{textcomp}
|
||||
\RequirePackage[german]{babel}
|
||||
\RequirePackage{amsmath, amssymb, amsthm}
|
||||
\RequirePackage{mdframed}
|
||||
\RequirePackage{fancyhdr}
|
||||
\RequirePackage{geometry}
|
||||
\RequirePackage{import}
|
||||
\RequirePackage{pdfpages}
|
||||
\RequirePackage{transparent}
|
||||
\RequirePackage{xcolor}
|
||||
\RequirePackage{array}
|
||||
\RequirePackage[shortlabels]{enumitem}
|
||||
\RequirePackage{tikz}
|
||||
\RequirePackage{pgfplots}
|
||||
\RequirePackage[nobottomtitles]{titlesec}
|
||||
\RequirePackage{listings}
|
||||
\RequirePackage{mathtools}
|
||||
\RequirePackage{forloop}
|
||||
\RequirePackage{totcount}
|
||||
\RequirePackage{calc}
|
||||
\RequirePackage{wasysym}
|
||||
\RequirePackage{environ}
|
||||
|
||||
\usetikzlibrary{quotes, angles}
|
||||
\pgfplotsset{
|
||||
compat=1.15,
|
||||
default 2d plot/.style={%
|
||||
grid=both,
|
||||
minor tick num=4,
|
||||
grid style={line width=.1pt, draw=gray!10},
|
||||
major grid style={line width=.2pt,draw=gray!50},
|
||||
axis lines=middle,
|
||||
enlargelimits={abs=0.2}
|
||||
},
|
||||
}
|
||||
|
||||
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
|
||||
\DeclareOption{uebung}{
|
||||
\makeatletter
|
||||
\lhead{\@title}
|
||||
\rhead{\@author}
|
||||
\makeatother
|
||||
}
|
||||
\ProcessOptions\relax
|
||||
|
||||
% PAGE GEOMETRY
|
||||
\geometry{
|
||||
left=15mm,
|
||||
right=40mm,
|
||||
top=20mm,
|
||||
bottom=20mm
|
||||
}
|
||||
|
||||
% PARAGRAPH no indent but skip
|
||||
\setlength{\parskip}{3mm}
|
||||
\setlength{\parindent}{0mm}
|
||||
|
||||
\theoremstyle{definition}
|
||||
\newmdtheoremenv{satz}{Satz}[section]
|
||||
\newmdtheoremenv{lemma}[satz]{Lemma}
|
||||
\newmdtheoremenv{korrolar}[satz]{Korrolar}
|
||||
\newmdtheoremenv{definition}[satz]{Definition}
|
||||
|
||||
\newtheorem{bsp}[satz]{Beispiel}
|
||||
\newtheorem{bem}[satz]{Bemerkung}
|
||||
\newtheorem{aufgabe}{Aufgabe}
|
||||
|
||||
% enable aufgaben counting
|
||||
\regtotcounter{aufgabe}
|
||||
|
||||
% temporary calculation counter
|
||||
\newcounter{var}
|
||||
|
||||
\newcommand{\N}{\mathbb{N}}
|
||||
\newcommand{\R}{\mathbb{R}}
|
||||
\newcommand{\Z}{\mathbb{Z}}
|
||||
\newcommand{\Q}{\mathbb{Q}}
|
||||
\newcommand{\C}{\mathbb{C}}
|
||||
|
||||
% HEADERS
|
||||
|
||||
\pagestyle{fancy}
|
||||
|
||||
\newcommand{\incfig}[1]{%
|
||||
\def\svgwidth{\columnwidth}
|
||||
\import{./figures/}{#1.pdf_tex}
|
||||
}
|
||||
\pdfsuppresswarningpagegroup=1
|
||||
|
||||
% horizontal rule
|
||||
\newcommand\hr{
|
||||
\noindent\rule[0.5ex]{\linewidth}{0.5pt}
|
||||
}
|
||||
|
||||
% punkte tabelle
|
||||
\newcommand{\punkte}[1][1]{
|
||||
\newcounter{k}
|
||||
\setcounter{k}{#1}
|
||||
\@punkten{\value{k}}{\totvalue{aufgabe}}
|
||||
\setcounter{k}{#1-1}
|
||||
\setcounter{aufgabe}{\value{k}}
|
||||
\vspace{5mm}
|
||||
}
|
||||
|
||||
\def\@punkten#1#2{
|
||||
\newcounter{n}
|
||||
% create a temporary calculation counter
|
||||
\setcounter{var}{#2-#1+1}
|
||||
\begin{tabular}{|c|*{\value{var}}{m{1cm}|}m{1cm}|@{}m{0cm}@{}}
|
||||
\hline
|
||||
Aufgabe
|
||||
\forloop{n}{#1}{\not{\value{n} > #2}}{
|
||||
& \centering A\then
|
||||
}
|
||||
& \centering $\sum$ & \\[5mm] \hline
|
||||
Punkte
|
||||
\forloop{n}{#1}{\not{\value{n} > #2}}{
|
||||
&
|
||||
}
|
||||
& & \\[5mm] \hline
|
||||
\end{tabular}
|
||||
}
|
||||
|
||||
% code listings, define style
|
||||
\lstdefinestyle{mystyle}{
|
||||
commentstyle=\color{gray},
|
||||
keywordstyle=\color{blue},
|
||||
numberstyle=\tiny\color{gray},
|
||||
stringstyle=\color{black},
|
||||
basicstyle=\ttfamily\footnotesize,
|
||||
breakatwhitespace=false,
|
||||
breaklines=true,
|
||||
captionpos=b,
|
||||
keepspaces=true,
|
||||
numbers=left,
|
||||
numbersep=5pt,
|
||||
showspaces=false,
|
||||
showstringspaces=false,
|
||||
showtabs=false,
|
||||
tabsize=2
|
||||
}
|
||||
|
||||
% activate my colour style
|
||||
\lstset{style=mystyle}
|
||||
|
||||
% better stackrel
|
||||
\let\oldstackrel\stackrel
|
||||
\renewcommand{\stackrel}[2]{%
|
||||
\oldstackrel{\mathclap{#1}}{#2}
|
||||
}%
|
||||
|
||||
% integral d sign
|
||||
\makeatletter \renewcommand\d[2][]{\ensuremath{%
|
||||
\,\mathrm{d}^{#1}#2\@ifnextchar^{}{\@ifnextchar\d{}{\,}}}}
|
||||
\makeatother
|
||||
|
||||
% contradiction
|
||||
\newcommand{\contr}{\text{\Large\lightning}}
|
||||
|
||||
% disjoint unions: provides cupdot and bigcupdot
|
||||
\makeatletter
|
||||
\def\moverlay{\mathpalette\mov@rlay}
|
||||
\def\mov@rlay#1#2{\leavevmode\vtop{%
|
||||
\baselineskip\z@skip \lineskiplimit-\maxdimen
|
||||
\ialign{\hfil$\m@th#1##$\hfil\cr#2\crcr}}}
|
||||
\newcommand{\charfusion}[3][\mathord]{
|
||||
#1{\ifx#1\mathop\vphantom{#2}\fi
|
||||
\mathpalette\mov@rlay{#2\cr#3}
|
||||
}
|
||||
\ifx#1\mathop\expandafter\displaylimits\fi}
|
||||
\makeatother
|
||||
|
||||
\newcommand{\cupdot}{\charfusion[\mathbin]{\cup}{\cdot}}
|
||||
\newcommand{\bigcupdot}{\charfusion[\mathop]{\bigcup}{\cdot}}
|
||||
|
||||
\ExplSyntaxOn
|
||||
|
||||
% S-tackrelcompatible ALIGN environment
|
||||
% some might also call it the S-uper ALIGN environment
|
||||
% uses regular expressions to calculate the widest stackrel
|
||||
% to put additional padding on both sides of relation symbols
|
||||
\NewEnviron{salign}
|
||||
{
|
||||
\begin{align}
|
||||
\lec_insert_padding:V \BODY
|
||||
\end{align}
|
||||
}
|
||||
% starred version that does no equation numbering
|
||||
\NewEnviron{salign*}
|
||||
{
|
||||
\begin{align*}
|
||||
\lec_insert_padding:V \BODY
|
||||
\end{align*}
|
||||
}
|
||||
|
||||
% some helper variables
|
||||
\tl_new:N \l__lec_text_tl
|
||||
\seq_new:N \l_lec_stackrels_seq
|
||||
\int_new:N \l_stackrel_count_int
|
||||
\int_new:N \l_idx_int
|
||||
\box_new:N \l_tmp_box
|
||||
\dim_new:N \l_tmp_dim_a
|
||||
\dim_new:N \l_tmp_dim_b
|
||||
\dim_new:N \l_tmp_dim_needed
|
||||
|
||||
% function to insert padding according to widest stackrel
|
||||
\cs_new_protected:Nn \lec_insert_padding:n
|
||||
{
|
||||
\tl_set:Nn \l__lec_text_tl { #1 }
|
||||
% get all stackrels in this align environment
|
||||
\regex_extract_all:nnN { \c{stackrel}{(.*?)}{(.*?)} } { #1 } \l_lec_stackrels_seq
|
||||
% get number of stackrels
|
||||
\int_set:Nn \l_stackrel_count_int { \seq_count:N \l_lec_stackrels_seq }
|
||||
\int_set:Nn \l_idx_int { 1 }
|
||||
\dim_set:Nn \l_tmp_dim_needed { 0pt }
|
||||
% iterate over stackrels
|
||||
\int_while_do:nn { \l_idx_int <= \l_stackrel_count_int }
|
||||
{
|
||||
% calculate width of text
|
||||
\hbox_set:Nn \l_tmp_box {$\seq_item:Nn \l_lec_stackrels_seq { \l_idx_int + 1 }$}
|
||||
\dim_set:Nn \l_tmp_dim_a {\box_wd:N \l_tmp_box}
|
||||
% calculate width of relation symbol
|
||||
\hbox_set:Nn \l_tmp_box {$\seq_item:Nn \l_lec_stackrels_seq { \l_idx_int + 2 }$}
|
||||
\dim_set:Nn \l_tmp_dim_b {\box_wd:N \l_tmp_box}
|
||||
% check if 0.5*(a-b) > minimum padding, if yes updated minimum padding
|
||||
\dim_compare:nNnTF
|
||||
{ 1pt * \dim_ratio:nn { \l_tmp_dim_a - \l_tmp_dim_b } { 2pt } } > { \l_tmp_dim_needed }
|
||||
{ \dim_set:Nn \l_tmp_dim_needed { 1pt * \dim_ratio:nn { \l_tmp_dim_a - \l_tmp_dim_b } { 2pt } } }
|
||||
{ }
|
||||
\quad
|
||||
% increment list index by three, as every stackrel produces three list entries
|
||||
\int_incr:N \l_idx_int
|
||||
\int_incr:N \l_idx_int
|
||||
\int_incr:N \l_idx_int
|
||||
}
|
||||
% replace all relations with align characters (&) and add the needed padding
|
||||
\regex_replace_all:nnN
|
||||
{ (\c{iff}&|&\c{iff}|\c{impliedby}&|&\c{impliedby}|\c{implies}&|&\c{implies}|\c{approx}&|&\c{approx}|\c{equiv}&|&\c{equiv}|=&|&=|\c{le}&|&\c{le}|\c{ge}&|&\c{ge}|&\c{stackrel}{.*?}{.*?}|\c{stackrel}{.*?}{.*?}&|&\c{neq}|\c{neq}&) }
|
||||
{ \c{kern} \u{l_tmp_dim_needed} \1 \c{kern} \u{l_tmp_dim_needed} }
|
||||
\l__lec_text_tl
|
||||
\l__lec_text_tl
|
||||
}
|
||||
\cs_generate_variant:Nn \lec_insert_padding:n { V }
|
||||
\ExplSyntaxOff
|
||||
BIN
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
\documentclass[uebung]{../../../lecture}
|
||||
\documentclass[uebung]{lecture}
|
||||
|
||||
\title{Wtheo 0: Übungsblatt 1}
|
||||
\author{Josua Kugler, Christian Merten}
|
||||
BIN
Binary file not shown.
+3
-1
@@ -1,4 +1,4 @@
|
||||
\documentclass[uebung]{../../../lecture}
|
||||
\documentclass[uebung]{lecture}
|
||||
|
||||
\title{Wtheo 0: Übungsblatt 2}
|
||||
\author{Josua Kugler, Christian Merten}
|
||||
@@ -45,6 +45,8 @@
|
||||
\end{enumerate}
|
||||
\end{aufgabe}
|
||||
|
||||
\stepcounter{aufgabe}
|
||||
|
||||
\begin{aufgabe}[]
|
||||
\begin{enumerate}[(a)]
|
||||
\item Beh.: $\sum_{\omega \in \Omega} \mathbbm{p}(\omega) = 1$
|
||||
|
||||
Reference in New Issue
Block a user