From 695d45c47d35a9e09dc4092edc135b7678287a2a Mon Sep 17 00:00:00 2001 From: MarioMichael Date: Fri, 19 Jun 2020 08:53:20 +0200 Subject: [PATCH] Init repository --- ELK2_FS/formelsammlung.tex | 48 ++ ELK2_FS/img/Logo.pdf | Bin 0 -> 8379 bytes ELK2_FS/img/Logo.png | Bin 0 -> 7002 bytes ELK2_FS/img/img_02_01_Standardstruktur.png | Bin 0 -> 157254 bytes ELK2_FS/latex4ei/latex4ei.sty | 344 +++++++++++ ELK2_FS/latex4ei/latex4ei_boxes.sty | 187 ++++++ ELK2_FS/latex4ei/latex4ei_colors.sty | 86 +++ ELK2_FS/latex4ei/latex4ei_glossary.tex | 125 ++++ ELK2_FS/latex4ei/latex4ei_report.cls | 297 +++++++++ ELK2_FS/latex4ei/latex4ei_sheet.cls | 242 ++++++++ ELK2_FS/latex4ei/latex4ei_thesis.cls | 671 +++++++++++++++++++++ ELK2_FS/latex4ei/latex4ei_unicode.sty | 276 +++++++++ ELK2_FS/latex4ei/scientific.sty | 248 ++++++++ ELK2_FS/thema3_transistor.tex | 89 +++ ELK2_FS/thema4_linearer_OPV.tex | 35 ++ ELK2_FS/thema5_nichtlinearer_OPV.tex | 7 + 16 files changed, 2655 insertions(+) create mode 100644 ELK2_FS/formelsammlung.tex create mode 100644 ELK2_FS/img/Logo.pdf create mode 100644 ELK2_FS/img/Logo.png create mode 100644 ELK2_FS/img/img_02_01_Standardstruktur.png create mode 100644 ELK2_FS/latex4ei/latex4ei.sty create mode 100644 ELK2_FS/latex4ei/latex4ei_boxes.sty create mode 100644 ELK2_FS/latex4ei/latex4ei_colors.sty create mode 100644 ELK2_FS/latex4ei/latex4ei_glossary.tex create mode 100644 ELK2_FS/latex4ei/latex4ei_report.cls create mode 100644 ELK2_FS/latex4ei/latex4ei_sheet.cls create mode 100644 ELK2_FS/latex4ei/latex4ei_thesis.cls create mode 100644 ELK2_FS/latex4ei/latex4ei_unicode.sty create mode 100644 ELK2_FS/latex4ei/scientific.sty create mode 100644 ELK2_FS/thema3_transistor.tex create mode 100644 ELK2_FS/thema4_linearer_OPV.tex create mode 100644 ELK2_FS/thema5_nichtlinearer_OPV.tex diff --git a/ELK2_FS/formelsammlung.tex b/ELK2_FS/formelsammlung.tex new file mode 100644 index 0000000..73d7c29 --- /dev/null +++ b/ELK2_FS/formelsammlung.tex @@ -0,0 +1,48 @@ +% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % +% ELK2 Formelsammlung +% +% @encode: UTF-8, tabwidth = 4, newline = LF +% @author: Mario Fleischmann +% @source: http://www.latex4ei.de +% % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % + + +% ====================================================================== +% Document Settings +% ====================================================================== + +% possible options: color/nocolor, english/german, threecolumn +% default: color, english +\documentclass[color,german]{latex4ei/latex4ei_sheet} +\usepackage{gensymb} +\usepackage{cancel} + +% set document information +\title{Elektronik 2} +\author{Mario Fleischmann} +\myemail{fleischmannma75068@th-nuernberg.de} + +\fancyfoot[L]{Keine Gewähr auf Vollständigkeit oder Richtigkeit!} + +% DOCUMENT_BEGIN =============================================================== +\begin{document} + +\IfFileExists{git.id}{\input{git.id}}{} +\ifdefined\GitRevision\mydate{\GitNiceDate\ (git \GitRevision)}\fi + +\maketitle % requires ./img/Logo.pdf + +% SECTION ==================================================================================== +\input{./thema3_transistor.tex} +% ============================================================================================ + +% SECTION ==================================================================================== +\input{./thema4_linearer_OPV.tex} +% ============================================================================================ + +% SECTION ==================================================================================== +\input{./thema5_nichtlinearer_OPV.tex} +% ============================================================================================ + +% DOCUMENT_END =============================================================================== +\end{document} diff --git a/ELK2_FS/img/Logo.pdf b/ELK2_FS/img/Logo.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d558b76a5535eaf1f9ca68c2837b0eb536309ea6 GIT binary patch literal 8379 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 literal 0 HcmV?d00001 diff --git a/ELK2_FS/img/Logo.png b/ELK2_FS/img/Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..a8aaf6f978013a3cfda6f17fc4a67382f1784b71 GIT binary patch literal 7002 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 u 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 TuWiyK7=Xaj)z4*}Q$iB}@S=OK literal 0 HcmV?d00001 diff --git a/ELK2_FS/latex4ei/latex4ei.sty b/ELK2_FS/latex4ei/latex4ei.sty new file mode 100644 index 0000000..19be237 --- /dev/null +++ b/ELK2_FS/latex4ei/latex4ei.sty @@ -0,0 +1,344 @@ +% +% Macros for LaTeX4EI +% +% Authors: Emanuel Regnath, Martin Zellner +% Contact: info@latex4ei.de +% Version: 1.1 +% License: TBD +% +% © 2011-2019, LaTeX4EI + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{latex4ei/latex4ei}[2013/05/06 Macros for LaTeX4EI] + +% Options +% ---------------------------------------------------------------------- + \newif\ifcolor\colortrue + \def\thelanguage{english} + + \DeclareOption{color}{\colortrue} + \DeclareOption{nocolor}{\colorfalse} + \DeclareOption{german}{\def\thelanguage{ngerman}} + \DeclareOption{english}{\def\thelanguage{english}} + + \ProcessOptions\relax + + +% ====================================================================== +% Basic Settings +% ====================================================================== + +% Identify Compiler +% ---------------------------------------------------------------------- + \RequirePackage{ifxetex} + + % Check compiler. Hint: delete aux files if changing the compiler + \ifxetex% + %\@namedef{ver@fixltx2e.sty}{9999/12/31}% + + %XeLaTeX + \PassOptionsToPackage{no-math}{fontspec} + \usepackage{unicode-math} + \providecommand{\ocirc}{o} + \providecommand{\mathring}{o} + + %\RequirePackage{xltxtra} + + + % for unicode decalarations + %\let\DeclareUnicodeCharacter\newunicodechar + \setmainfont{Times New Roman} % Libertinus Serif + \setromanfont{Times New Roman} % Libertinus Serif + \setsansfont{Helvetica} + + % some hacking for scientific.sty + \AtBeginDocument{ + + % scale fonts to same x height + \defaultfontfeatures{Scale=MatchLowercase,Mapping=tex-text} + + \renewcommand{\C}{\mathbb C} + \renewcommand{\B}{\mathbb B} + } + \else + % pdfLaTeX + \RequirePackage[utf8]{inputenc} % UTF-8 input + \RequirePackage{latex4ei/latex4ei_unicode} % UTF-8 input of math symbols + \InputIfFileExists{glyphtounicode}{\pdfgentounicode=1}{} % Glyph-to-Unicode Translation (needs PdfTex >=1.4) + %\RequirePackage{textcomp} % get rid of font warnings + %\pdfminorversion=6 % for 3D Objects + %\RequirePackage[osf]{mathpazo} % old style numbering + \fi + +% Basic LaTeX Settings +% ---------------------------------------------------------------------- + \pretolerance=60 + \tolerance=2000 + \doublehyphendemerits=10000 % No consecutive line hyphens. + \brokenpenalty=10000 % No broken words across columns/pages. + \widowpenalty=9999 % Almost no widows at bottom of page. + \clubpenalty=9999 % Almost no orphans at top of page. + \interdisplaylinepenalty=100 + \interfootnotelinepenalty=9999 % Almost never break footnotes. + + + % Save \title, \author, \date before \maketitle + \RequirePackage[pagebackref=true,pdfpagelabels]{hyperref} + + % Title + \makeatletter + \renewcommand{\title}[1]{% + \gdef\@title{#1}% + \gdef\thetitle{#1} + \pdfstringdef{\@pdftitle}{\@title}% + \hypersetup{pdftitle=\@pdftitle}% + } + + % Institution + \providecommand{\institution}[1]{ + \gdef\theinstitution{#1} + } + + % Author + \renewcommand{\author}[1]{% + \gdef\@author{#1}% + \gdef\theauthor{#1} + \pdfstringdef{\@pdfauthor}{\@author}% + \hypersetup{pdfauthor=\@pdfauthor}% + } + + % Date + \global\let\thedate\@date + \renewcommand{\date}[1]{% + \gdef\@date{#1}% + \gdef\thedate{#1} + } + \makeatother + + % Email + \providecommand{\myemail}[1]{\gdef\theemail{#1}} + % Web page + \providecommand{\mywebsite}[1]{\gdef\thewebsite{#1}} + % Date with git commit number + \providecommand{\mydate}[1]{\gdef\themydate{#1}} + + % set defaults + \author{LaTeX4EI} + \title{A LaTeX4EI Document} + \myemail{info@latex4ei.de} + \mywebsite{www.latex4ei.de} + \mydate{\today} + + + \AtBeginDocument{ + % set pdfoptions + \hypersetup{ + pdftitle={\thetitle}, + pdfauthor={\theauthor}, + pdfcreator={LaTeX4EI template (www.latex4ei.de)}, + pdfkeywords={latex4ei} + } + } + + +% Language +% ---------------------------------------------------------------------- + + \RequirePackage[english, ngerman]{babel} + + \RequirePackage{iflang} + \providecommand{\EngGer}[2]{\IfLanguageName{english}{#1}{#2}} + \expandafter\selectlanguage\expandafter{\thelanguage} + \AtBeginDocument{\expandafter\selectlanguage\expandafter{\thelanguage}} + +% Graphics +% ---------------------------------------------------------------------- + \RequirePackage{graphicx} % for including images + \graphicspath{ {img/} {gfx/} } % set default search paths for figures + + %\RequirePackage{tikz} % tikz graphics + %\RequirePackage{multirow} % multirow text + + +% ====================================================================== +% Colors +% ====================================================================== +\RequirePackage{latex4ei/latex4ei_colors} + +\ifcolor + \colorlet{col_chapter_num}{tum_gray} + \colorlet{col_chapter}{tum_blue_dark} + \colorlet{col_section}{tum_blue_dark} + \colorlet{col_subsection}{tum_blue_dark} + \colorlet{col_subsubsection}{black} + \colorlet{col_paragraph}{black} + + \colorlet{col_link}{tum_blue_dark} + \colorlet{col_table}{tum_blue_dark} + \colorlet{col_figure}{tum_blue_dark} + \colorlet{col_itemize}{tum_blue_dark} + + \colorlet{col_lst}{tum_blue_dark} + \colorlet{col_lst_keyword}{tum_blue} + \colorlet{col_lst_comment}{tum_green_leaf} + \colorlet{col_lst_string}{tum_orange} + \colorlet{col_lst_number}{tum_gray_dark} +\else + \colorlet{col_chapter_num}{tum_gray} + \colorlet{col_chapter}{black} + \colorlet{col_section}{black} + \colorlet{col_subsection}{black} + \colorlet{col_subsubsection}{black} + \colorlet{col_paragraph}{black} + + \colorlet{col_ref}{black} + \colorlet{col_link}{black} + \colorlet{col_table}{black} + \colorlet{col_figure}{black} + \colorlet{col_itemize}{black} + + \colorlet{col_lst}{black} + \colorlet{col_lst_keyword}{black} + \colorlet{col_lst_comment}{tum_gray} + \colorlet{col_lst_string}{black} + \colorlet{col_lst_number}{tum_gray_dark} +\fi + +\hypersetup{ + colorlinks=true, + linkcolor=col_link, + urlcolor=col_link, + citecolor=col_link, +} + + + +% ====================================================================== +% Macros +% ====================================================================== + + +% Formatting adjustments +% ---------------------------------------------------------------------- +\RequirePackage{accents} % accent dots for derivation + + % Thicker dots for derivatives + \renewcommand*{\dot}[1]{\accentset{\mbox{\textrm{\large\bfseries .}} }{#1}} + \renewcommand*{\ddot}[1]{\accentset{\mbox{\textrm{\large\bfseries .\hspace{-0.25ex}.}}}{#1}} + \renewcommand*{\dddot}[1]{\accentset{\mbox{$\overset{\textrm{\large\bfseries .}}{\textrm{\large\bfseries.\hspace{-0.25ex}.}}$}}{#1}} + +% Shortcuts for symbols +% ---------------------------------------------------------------------- + \providecommand{\ul}[1]{\ensuremath{\underline{#1}}} % Underline + \providecommand{\ol}[1]{\ensuremath{\overline{#1}}} % Overline + \providecommand{\bs}[1]{\ensuremath{\boldsymbol{#1}}} % Bold and italic in mathmode + \providecommand{\Ra}{\ensuremath{\Rightarrow}} % Rightarrow + \providecommand{\ra}{\ensuremath{\rightarrow}} % Rightarrow + \providecommand{\lra}{\ensuremath{\longrightarrow}} % Longrightarrow + \providecommand{\upa}{\ensuremath{\uparrow}} + \providecommand{\downa}{\ensuremath{\downarrow}} + \providecommand{\bdot}{\ensuremath{\boldsymbol \cdot}} % Thick dot for vector product + \providecommand{\svdots}{\ensuremath{\olddot :}} % Small vertical dots + \providecommand{\shdots}{\ensuremath{\!\cdot \!\cdot\!\cdot\!}} % Small horizontal dots + +% Terms and definitions +% ---------------------------------------------------------------------- + + % Define BibTeX command + \def\BibTeX{{\rmfamily B\kern-.05em{\sc i\kern-.025em b}\kern-.08em T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}} + + % ToDo Command + \makeatletter + \providecommand{\todo}[1]{% + \textcolor{red}{\bfseries ToDo:\@ifundefined{@captype}{\marginpar{\color{red}\bfseries ToDo!}}{\relax} #1} %check for float environments + } + \makeatother + + % Special term + \providecommand{\term}[1]{\textit{#1}} + + % small note + \providecommand{\note}[1]{\textit{Note: #1}} + + % Related work + \providecommand{\work}[1]{\textit{#1}} + + % Email + \providecommand{\email}[1]{\href{mailto:#1}{\nolinkurl{#1}}} + +% References and Links +% ---------------------------------------------------------------------- + + \providecommand{\sectionname}{Section} + + % several ref macros + \providecommand\figureref[1]{\hyperref[#1]{\figurename~\ref*{#1}}} + \providecommand\figurepageref[1]{\figureref{#1}~(p.~\pageref{#1})} + \providecommand\tableref[1]{\hyperref[#1]{\tablename~\ref*{#1}}} + \providecommand\tablepageref[1]{\tableref{#1}~(p.~\pageref{#1})} + \providecommand\listingref[1]{\hyperref[#1]{\lstlistingname~\ref*{#1}}} + \providecommand\listingpageref[1]{\listingref{#1}~(p.~\pageref{#1})} + \providecommand\chapterref[1]{\chaptername~\ref*{#1}~(p.~\pageref{#1})} + \providecommand\sectionref[1]{\hyperref[#1]{\sectionname~\ref*{#1}~(p.~\pageref{#1})}} + \providecommand\appendixref[1]{\appendixname~\ref*{#1}~(p.~\pageref{#1})} + + + % break also on hyphens inside the \url command + \def\UrlBreaks{\do\.\do\@\do\\\do\/\do\!\do\_\do\|\do\;\do\>\do\]% + \do\)\do\,\do\?\do\'\do+\do\=\do\#\do-} % \do- is new! + + + +% ====================================================================== +% Environments +% ====================================================================== +\RequirePackage{caption} + +% Tables +% ---------------------------------------------------------------------- + \captionsetup[table]{labelfont={color=col_table,sf},textfont={sf,small}} + + % table rules + \def\trule{\noalign{\vspace{1pt}\hrule\hrule\vspace{2pt}}} % top rule + \def\mrule{\noalign{\vspace{1pt}\hrule\vspace{2pt}}} % middle rule + \def\brule{\noalign{\vspace{2pt}\hrule\hrule\vspace{1pt}}} % bottom rule + + % colored table rules + %\def\ctrule{\noalign{{\color{col_table}\hrule\hrule}\vspace{2pt}}} % colored top rule + %\def\cmrule{\noalign{\vspace{1pt}{\color{col_table}\hrule}\vspace{2pt}}} % colored middle rule + %\def\cbrule{\noalign{\vspace{2pt}{\color{col_table}\hrule\hrule}}} % colored bottom rule + + % TDB + \def\ctrule{\noalign{\vspace{1pt}\begingroup\color{col_table}\hrule\hrule\endgroup\vspace{2pt}}} % colored top rule + \def\cmrule{\noalign{\vspace{1pt}\begingroup\color{col_table}\hrule\endgroup\vspace{2pt}}} % colored middle rule + \def\cbrule{\noalign{\vspace{2pt}\begingroup\color{col_table}\hrule\hrule\endgroup\vspace{1pt}}} % colored bottom rule + +% Figures +% ---------------------------------------------------------------------- + \captionsetup[figure]{labelfont={color=col_figure,sf},textfont={sf,small}} + +% Sourcecode listings +% ---------------------------------------------------------------------- + \RequirePackage{listings} + \lstset{ + basicstyle=\normalsize\ttfamily\lst@ifdisplaystyle\small\fi, + tabsize=4, + %gobble=auto, % skip initial tabs %not supported yet + numbers=none, % switch numbers on: left + numberstyle=\tiny\sffamily\color{col_lst_number}, + numbersep=1em, + keepspaces=true, + keywordstyle=\color{tum_blue_dark}, + commentstyle=\color{col_lst_comment}, + stringstyle=\color{col_lst_string}, + captionpos = t, + frame = tb, + %framextopmargin={\smallskipamount}, + %framexbottommargin={\smallskipamount}, + framerule=1pt, + rulecolor = \color{col_lst}, + } + \captionsetup[lstlisting]{labelfont={color=col_figure,sf},textfont={sf,small}} + + % Inline code listings + \let\code\lstinline diff --git a/ELK2_FS/latex4ei/latex4ei_boxes.sty b/ELK2_FS/latex4ei/latex4ei_boxes.sty new file mode 100644 index 0000000..538ccfb --- /dev/null +++ b/ELK2_FS/latex4ei/latex4ei_boxes.sty @@ -0,0 +1,187 @@ +% +% Boxes for LaTeX4EI +% +% Authors: Emanuel Regnath, Martin Zellner +% Contact: info@latex4ei.de +% Version: 1.1 +% License: TBD +% +% © 2011-2019, LaTeX4EI + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{latex4ei_boxes}[2015/02/06 Boxes for LaTeX4EI] + + +% Packages +% ---------------------------------------------------------------------- +\RequirePackage{mdframed} % package to make frames for exaples, definitions and theorems +\RequirePackage{enumitem} +\RequirePackage{latex4ei/latex4ei_colors} % color definitions + + +% ====================================================================== +% Styles +% ====================================================================== + +% Basic box +% ---------------------------------------------------------------------- + \mdfdefinestyle{specialbox}{ + % Outer Margins + leftmargin=0mm, + rightmargin=0mm, + startcode={\vspace{0.4em}}, % FIX: spacing bug on nested frames + endcode={\vspace{0.4em}}, % FIX: spacing bug on nested frames + skipabove=0mm, % FIX: spacing bug on nested frames + skipbelow=0mm, % FIX: spacing bug on nested frames + % inner margins + innertopmargin=1mm, + % frame + linewidth=0.3mm + } + +% Sectionbox: provides grey boxes for better readablitity of sections +% ---------------------------------------------------------------------- + \global\mdfdefinestyle{sectionbox}{ + startcode={\makeatother\if@nobreak\vspace{3cm}\null\vspace{-3cm}\fi\makeatletter}, % FIX: breaks 3cm after section + nobreak=true, % FIX: unwanted behavior with multicolumn + % Margin left, right, bottom and top of the boxes (-1 mm for higher width) + leftmargin=-1mm, + rightmargin=-1mm, + skipbelow=1mm, + skipabove=1mm, + % Inner margin of the content of the box + innerleftmargin=1mm, + innerrightmargin=1mm, + innertopmargin=1mm, + % Colors of lines and background + % backgroundcolor=col_sectionbox!3, % grey + backgroundcolor=col_sectionbox!0, % white + linecolor=col_sectionbox + } + +% Emphbox: box with red line around for important definitions +% ---------------------------------------------------------------------- + \global\mdfdefinestyle{emphbox}{ + % basic style + style=specialbox, + align=center, + % background color + backgroundcolor=lightyellow, + % frame color + linecolor=col_emphbox + } + +% Symbolbox +% ---------------------------------------------------------------------- + \global\mdfdefinestyle{symbolbox}{ + % basic style + style=specialbox, + % background color + backgroundcolor=col_symbolbox!5, + % orange outer line + linecolor=col_symbolbox + } + +% Bluebox +% ---------------------------------------------------------------------- + \global\mdfdefinestyle{bluebox}{ + % basic style + style=specialbox, + % show only top and bottom line + hidealllines=true, + topline=true, + bottomline=true, + % background + backgroundcolor=col_cookbox!5, + % Line color + linecolor=col_cookbox, + % Title + frametitlerule=true, + frametitlebackgroundcolor=col_cookbox!5, + frametitlealignment=\centering, + frametitleaboveskip=1mm, + frametitlebelowskip=1mm + } + +% Tablebox +% ---------------------------------------------------------------------- + \global\mdfdefinestyle{tablebox}{ + % basic style + style=specialbox, + % show only top and bottom line + hidealllines=true, + topline=true, + bottomline=true, + % inner margin + innerleftmargin=0em, + innerrightmargin=0em, + % Color + backgroundcolor=col_table!5, + % Title + frametitlerule=true, + frametitlebackgroundcolor=col_table!5, + frametitleaboveskip=1mm, + frametitlebelowskip=1mm, + % line color + linecolor=col_table + } + + +% ====================================================================== +% Environments +% ====================================================================== + +% sectionbox +% ---------------------------------------------------------------------- + \newmdenv[style=sectionbox]{sectionbox} + +% bluebox +% ---------------------------------------------------------------------- + \newmdenv[style=bluebox]{bluebox} + +% emphbox +% ---------------------------------------------------------------------- + \newmdenv[style=emphbox, startinnercode={\centering}]{emphbox} + \newmdenv[style=emphbox]{emphbox*} + +% symbolbox +% ---------------------------------------------------------------------- + \newmdenv[style=symbolbox]{symbolbox} + +% tablebox +% ---------------------------------------------------------------------- + \newmdenv[style=tablebox]{tableboxframe} + \newenvironment{tablebox}[1]{ + % beginning + \setlength{\tabcolsep}{4pt} + \begin{tableboxframe}%[frametitle=\begin{tabular*}{\columnwidth}{@{\extracolsep\fill}#1@{}}#2\end{tabular*}] + \begin{tabular*}{\columnwidth}{@{\extracolsep\fill}#1@{}}% + }{ + %ending + \end{tabular*}% + \end{tableboxframe} + } + \newenvironment{tablebox*}[1]{ + % beginning + \setlength{\tabcolsep}{4pt} + \begin{tableboxframe} + \centering + \begin{tabular}{@{}#1@{}}% + }{ + %ending + \end{tabular}% + \end{tableboxframe} + } + +% cookbox +% ---------------------------------------------------------------------- + \newenvironment{cookbox}[1]{ + \begin{bluebox}[frametitle=#1] + \begin{enumerate}[label=\bfseries\arabic*.] + }{ + \end{enumerate} + \end{bluebox} + } + +% Ende von \input +\endinput diff --git a/ELK2_FS/latex4ei/latex4ei_colors.sty b/ELK2_FS/latex4ei/latex4ei_colors.sty new file mode 100644 index 0000000..368a43a --- /dev/null +++ b/ELK2_FS/latex4ei/latex4ei_colors.sty @@ -0,0 +1,86 @@ +% +% latex package with color scheme +% +% Authors: Emanuel Regnath, Martin Zellner +% Contact: info@latex4ei.de +% Version: 1.1 +% License: TBD +% +% © 2011-2019, LaTeX4EI + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{latex4ei/latex4ei_colors}[2016/03/30 Colors for LaTeX4EI] + +% Packages +% ---------------------------------------------------------------------- + \RequirePackage{xcolor} + +% Own Macros +% ---------------------------------------------------------------------- + % define command to provide colors + \makeatletter + \providecommand{\providecolor}[2]{% + \@ifundefinedcolor{#1}{\colorlet{#1}{#2}}{}} + \makeatother + +% ====================================================================== +% Color Scheme +% ====================================================================== + +% TUM Color Palette +% ---------------------------------------------------------------------- + % Note: The following color definitions are copied + % from the official TUM Styleguide + + % the tum logo color + \definecolor{col_tum_logo}{RGB}{0, 101, 189} % Pantone 300 + + % additional blue colors + \definecolor{tum_blue_dark2}{RGB}{0, 51, 89} % Pantone 540 + \definecolor{tum_blue_dark}{RGB}{0, 82, 147} % Pantone 301 + \definecolor{tum_blue}{RGB}{0, 115, 207} % Pantone 285 + \definecolor{tum_blue_light}{RGB}{100, 160, 200} % Pantone 542 + \definecolor{tum_blue_light2}{RGB}{152, 198, 234} % Pantone 283 + + % emphasize colors + \definecolor{tum_green}{RGB}{162, 173, 0} % Pantone 383, 55%: 204, 210, 115 + \definecolor{tum_orange}{RGB}{227, 114, 34} % Pantone 158 + \definecolor{tum_elfenbein}{RGB}{218, 215, 203} % Pantone 7527 + + % gray colors + \definecolor{tum_gray_dark}{RGB}{88, 88, 90} + \definecolor{tum_gray}{RGB}{156, 157, 159} + \definecolor{tum_gray_light}{RGB}{217, 218, 219} + + + % advanced colors + \definecolor{tum_purple}{RGB}{105, 8, 90} % 55%: 173, 119, 164 + \definecolor{tum_purple_dark}{RGB}{15, 27, 95} % 55%: 123, 130, 167 + + \definecolor{tum_blue_ocean}{RGB}{0, 119, 138} % 55%: 115, 180, 191 + \definecolor{tum_green_leaf}{RGB}{0, 124, 48} % 55%: 115, 183, 141 + \definecolor{tum_green_grass}{RGB}{103, 154, 029} % 55%: 172, 200, 131 + + \definecolor{tum_yellow}{RGB}{255, 220, 0} % 55%: 255, 236, 115 + \definecolor{tum_yellow_dark}{RGB}{249, 186, 0} + + \definecolor{tum_orange_dark}{RGB}{214, 76, 19} + + \definecolor{tum_red}{RGB}{196, 7, 27} % 55%: 223, 119, 130 + \definecolor{tum_red_dark}{RGB}{156, 13, 22} % 55%: 201, 122, 127 + + +% Own colors (deprecated) +% ---------------------------------------------------------------------- + \definecolor{lightblue}{RGB}{235,235,255} + \definecolor{lightred}{RGB}{255,240,240} + \definecolor{lightgreen}{RGB}{240,255,240} + \definecolor{lightyellow}{RGB}{255,255,240} + \definecolor{lightblue}{RGB}{220, 240, 247} + \definecolor{darkblue}{RGB}{23,110,138} + \definecolor{notsodarkblue}{RGB}{119,193,214} + \definecolor{tablecolor}{RGB}{0,128,0} + + \definecolor{lila}{RGB}{128,0,128} + \definecolor{latex4eiblau}{RGB}{86,124,136} + \definecolor{latex4eigruen}{RGB}{150,163,110} diff --git a/ELK2_FS/latex4ei/latex4ei_glossary.tex b/ELK2_FS/latex4ei/latex4ei_glossary.tex new file mode 100644 index 0000000..18fe4fa --- /dev/null +++ b/ELK2_FS/latex4ei/latex4ei_glossary.tex @@ -0,0 +1,125 @@ + + +% common abbreviations: +% ====================================================================== +\renewcommand*\acronymname{List of Abbreviations} + +\newacronym{AGL}{AGL}{Above Ground Level} +\newacronym{AMSL}{AMSL}{Above Mean Sea Level} + +\newacronym{API}{API}{Application Programming Interface} +\newacronym{BIOS}{BIOS}{Basic Input/Output System} +\newacronym{CPU}{CPU}{Central Processing Unit} + + +\newacronym{FSM}{FSM}{Finite State Machine} +\newacronym{GDB}{GDB}{GNU Debugger} +\newacronym{GPS}{GPS}{Global Positioning System} +\newacronym{GUI}{GUI}{Graphical User Interface} + +\newacronym{IEEE}{IEEE}{Institute of Electrical and Electronic Engineers} +\newacronym{IDE}{IDE}{Integrated Development Environment} +\newacronym{IRQ}{IRQ}{Interrupt Request} +\newacronym{ISR}{ISR}{Interrupt Service Routine} + +\newacronym{JTAG}{JTAG}{Joint Test Action Group} + +\newacronym{LUT}{LUT}{Look-Up Table} + +\newacronym{MCU}{MCU}{Micro Controller Unit} +\newacronym{RAM}{RAM}{Random Access Memory} +\newacronym{ROM}{ROM}{Read-Only Memory} + +\newacronym{OOP}{OOP}{Object Oriented Programming} +\newacronym{OS}{OS}{Operating System} +\newacronym{PCB}{PCB}{Printed Circuit Board} +\newacronym{RTOS}{RTOS}{Real-Time Operating System} +\newacronym{RTE}{RTE}{Run-Time Environment} + + +\newacronym{SIL}{SIL}{Safety Integrity Level} +\newacronym{USB}{USB}{Universal Serial Bus} + +\newacronym{WCET}{WCET}{Worst Case Execution Time} + +% special abbreviations +\newacronym{FAA}{FAA}{Federal Aviation Administration} +\newacronym{ESC}{ESC}{Electronic speed control} + + +% hardware abbr +\newacronym{FC}{FC}{Flight Controller} + +\newacronym{DMA}{DMA}{Direct Memory Access} +\newacronym{GPIO}{GPIO}{General Purpose Input Output} +\newacronym{I2C}{I2C}{Inter-Integrated Circuit} +\newacronym{SPI}{SPI}{Serial Peripheral Interface} +\newacronym{SWD}{SWD}{Serial Wire Debug} +\newacronym{UART}{UART}{Universal Asynchronous Receiver Transmitter} + +\newacronym{PWM}{PWM}{Pulse Width Modulation} + +\newacronym{HAA}{HAA}{Hardware Abstraction Architecture} +\newacronym{HAL}{HAL}{Hardware Abstraction Layer} +\newacronym{HPL}{HPL}{Hardware Presentation Layer} +\newacronym{HIL}{HIL}{Hardware Interface Layer} + + +% software development +\newacronym{LSP}{LSP}{Liskov Substitution Principle} +\newacronym{HLR}{HLR}{High Level Requirements} +\newacronym{LLR}{LLR}{Low Level Requirements} +\newacronym{VV}{V\;\&\;V}{Validation and Verification} + +\newacronym{}{}{} + +% move some terms to hidden +\newignoredglossary{hidden} +\glsmoveentry{DMA}{hidden} +\glsmoveentry{GUI}{hidden} +\glsmoveentry{VV}{hidden} +\glsmoveentry{ISR}{hidden} +\glsmoveentry{GDB}{hidden} +\glsmoveentry{PCB}{hidden} + + +% nomenclature: +% ====================================================================== +\newglossary{symbols}{sym}{sbl}{List of Symbols} + +% add unit column +\glsaddkey{unit}{\glsentrytext{\glslabel}}{\glsentryunit}{\GLsentryunit}{\glsunit}{\Glsunit}{\GLSunit} + + +\newglossaryentry{kb}{ + type=symbols, + name=$\mathrm{k}_{\mathrm{B}}$, + unit={}, + description={Boltzmann Constant, $\mathrm{k}_{\mathrm{B}} = \SI{1.38064852e-23}{\meter\squared\kilo\gram\per\second\squared\kelvin}$}, +} + + + +% glossary terms +% ====================================================================== +\newglossary{terms}{ter}{tms}{List of Terms} + +\newglossaryentry{ARM}{ + type=terms, + name=ARM, + description={is a software design company and supplies intellectual property for microprocessors.}, +} + + +\newglossaryentry{firmware}{ + type=terms, + name=firmware, + description={Software that is required to interface (one) specific hardware (e.g. BIOS).}, +} + +\newglossaryentry{subprogram}{ + type=terms, + name=subprogram, + description={an encapsulated part of the whole program.}, +} + diff --git a/ELK2_FS/latex4ei/latex4ei_report.cls b/ELK2_FS/latex4ei/latex4ei_report.cls new file mode 100644 index 0000000..95b4fc3 --- /dev/null +++ b/ELK2_FS/latex4ei/latex4ei_report.cls @@ -0,0 +1,297 @@ +% +% Report class from LaTeX4EI +% +% Authors: Emanuel Regnath, Martin Zellner +% Contact: info@latex4ei.de +% Version: 1.1 +% License: TBD +% +% © 2011-2019, LaTeX4EI + +\NeedsTeXFormat{LaTeX2e}[1996/12/01] +\ProvidesClass{latex4ei_report}[2015/03/15] + + +% ====================================================================== +% Options +% ====================================================================== + + % forward options to latex4ei package + \DeclareOption{color}{\PassOptionsToPackage{color}{latex4ei/latex4ei}} + \DeclareOption{nocolor}{\PassOptionsToPackage{nocolor}{latex4ei/latex4ei}} + + % define baseclass + \def\baseclass{scrartcl} + + % set default options for base class + \PassOptionsToClass{a4paper, 11pt}{\baseclass} + + % pass unknown options to base class + \DeclareOption*{% + \PassOptionsToClass{\CurrentOption}{\baseclass}% + } + + % process options + \ProcessOptions\relax + + % load baseclass + \LoadClass{\baseclass} + + +% ====================================================================== +% Packages +% ====================================================================== + + % pass options to packages + \PassOptionsToPackage{table}{xcolor} + + % load latex4ei packages + \RequirePackage{latex4ei/scientific} % scientific macros for LaTeX4EI + \RequirePackage{latex4ei/latex4ei} % base definitions for LaTeX4EI (privat) + + + \RequirePackage{abstract} + + + +% ====================================================================== +% Color Scheme +% ====================================================================== + + % Set Color Scheme + % ---------------------------------------------------------------------- + \definecolor{url}{gray}{0.6} + + +% ====================================================================== +% Fonts +% ====================================================================== + + % Font Settings + % ---------------------------------------------------------------------- + + % font + %\RequirePackage[osf]{mathpazo} % old style numbering + \renewcommand{\rmdefault}{ppl} % cmr, ptm, ppl, pnc, pbk + %\renewcommand{\sfdefault}{cmss} % cmss, phv pag + + + \shorthandoff{"} % don't convert "A to Ä! + + + % calculate linespacing based on font size + % char per line: 85 + \RequirePackage{setspace} + \linespread{1.3}\selectfont + + %\usepackage{microtype} % Verbesserung des Kernings, Achtung kompilezeit! + + + +% ====================================================================== +% Title +% ====================================================================== + \newcommand*{\@chair}{} + \newcommand*{\chair}[1]{\gdef\@chair{#1}} + + \newcommand*{\@university}{} + \newcommand*{\university}[1]{\gdef\@university{#1}} + + \newcommand*{\@professor}{} + \newcommand*{\professor}[1]{\gdef\@professor{#1}} + + \newcommand*{\@supervisors}{} + \newcommand*{\supervisors}[1]{\gdef\@supervisors{#1}} + + \newcommand*{\@startdate}{} + \newcommand*{\startdate}[1]{\gdef\@startdate{#1}} + + \newcommand*{\@finaldate}{} + \newcommand*{\finaldate}[1]{\gdef\@finaldate{#1}} + + \newcommand*{\@matrikelnr}{} + \newcommand*{\matrikelnr}[1]{\gdef\@matrikelnr{#1}} + + \newcommand*{\@studentemail}{} + \newcommand*{\studentemail}[1]{\gdef\@studentemail{#1}} + + + \def\maketitle{% + \begin{centering} + \vspace{1cm} + \begin{huge} + \textbf{\sffamily\@title} + \end{huge}\\[2em] + {\large \@author} \\[1em] + Registration no. \@matrikelnr \\ + E-mail: \email{\@studentemail} \\[2em] + \end{centering} + \thispagestyle{empty} + } + + + +% ====================================================================== +% Layout +% ====================================================================== + + % Page Layout + % ---------------------------------------------------------------------- + + \RequirePackage{geometry} + \geometry{hmargin=2.5cm, top=3cm, bottom=3.2cm} + + + \def\mparsetup{% + \sffamily\scriptsize % + \linespread{0.9}\selectfont% + \parindent=0pt \lineskip=0pt \lineskiplimit=0pt % + \tolerance=2000 \hyphenpenalty=300 \exhyphenpenalty=300% + \doublehyphendemerits=100000% + \finalhyphendemerits=\doublehyphendemerits} + + \let\oldmarginpar\marginpar % save old command + + \renewcommand{\marginpar}[1]{\oldmarginpar[\mparsetup\raggedleft\hspace{0pt}{#1}]{\mparsetup\raggedright\hspace{0pt}{#1}}} + + % Footnotes + % ---------------------------------------------------------------------- + + \long\def\@makefntext#1{% + \leftskip 0pt + \parindent 0pt + \everypar{\parindent 0pt}% + \leavevmode\llap{\@thefnmark\hskip\marginparsep}#1} % footnote number in margin + \renewcommand\footnoterule{% + \kern-3\p@ + \hrule\@width \columnwidth + \kern2.6\p@} + \skip\@mpfootins=4pt + + + % Sections + % ---------------------------------------------------------------------- + + \RequirePackage{titlesec} + %\titleformat{ command }[ shape ]{ format }{ label }{ sep }{ before }[ after ] + %\titlespacing*{ command }{ left }{ beforesep }{ aftersep }[ right ] + + + \titleformat{\section}{\sffamily\bfseries\LARGE\color{col_section}}{\thesection.\ }{0em}{} + \titleformat{\subsection}{\sffamily\bfseries\Large\color{col_subsection}}{\thesubsection.\ }{0em}{} + \titleformat{\subsubsection}{\scshape\large\color{col_subsubsection}}{\thesubsubsection.\ }{0em}{} + + + + +% ====================================================================== +% Lists & Equations +% ====================================================================== + + %\setlength{\itemsep}{\baselineskip} + \setlength{\itemsep}{0pt} + + \RequirePackage{enumitem} + \setitemize{itemsep=0pt} + \setenumerate{itemsep=0pt} + + +% ====================================================================== +% Float Environments +% ====================================================================== + + \RequirePackage{caption} + % Idea: short caption (for LOF) in bold, rest of caption as normal text + + % Figures + % ---------------------------------------------------------------------- + + \RequirePackage{graphicx} % for different input formats + \RequirePackage{pdfpages} + %\RequirePackage{media9} % for flash and 3D Objects + \RequirePackage[sf,SF]{subfigure} % Subfigures, sans-serif counters + + \makeatletter + \renewcommand\p@subfigure{\thefigure} + \renewcommand{\thefigure}{\@arabic\c@figure} + \renewcommand{\thesubfigure}{\alph{subfigure})} + \makeatother + + + \captionsetup[figure]{labelfont={color=col_figure,sf},textfont={sf,small}} + + +% ====================================================================== +% Macros +% ====================================================================== + + % Names + \providecommand{\name}[1]{\mbox{\textsc{#1}}} + \providecommand{\Prof}{Prof.~} + \providecommand{\Dr}{Dr.~} + \providecommand{\DiplIng}{Dipl.-Ing.~} + \providecommand{\MSc}{M.~Sc.~} + \providecommand{\habil}{habil.~} + \providecommand{\PD}{PD~} + + % Abbreviations + %\newcommand{\cf}{cf.\@\xspace} + \newcommand{\ea}{\& al.\@\xspace} + \newcommand{\eg}{e.\,g.\@\xspace} + \newcommand{\etc}{etc.\@\xspace} + \renewcommand{\iff}{if and only if\xspace} + \newcommand{\ie}{i.\,e.\@\xspace} + \newcommand{\wrt}{with respect to\xspace} + \newcommand{\wlg}{without loss of generality\xspace} + \newcommand{\Wlg}{Without loss of generality\xspace} + + +% ====================================================================== +% Others +% ====================================================================== + + % References and Links + % ---------------------------------------------------------------------- + + \hypersetup{ + pdfcreator={LaTeX2e}, + pdfborder=0 0 0, + breaklinks=true, + bookmarksopen=true, + bookmarksnumbered=true, + linkcolor=col_link, + urlcolor=col_link, + citecolor=col_link, + colorlinks=true + } + + % backref style + \renewcommand*{\backref}[1]{(cited on p. #1)} + +% Sourcecode listings +% ---------------------------------------------------------------------- + \RequirePackage{listings} + \lstset{ + basicstyle=\normalsize\tt\lst@ifdisplaystyle\small\fi, + tabsize=4, + %gobble=auto, % skip initial tabs %not supported yet + numbers=none, % switch numbers on: left + numberstyle=\tiny\sf\color{col_lst_number}, + numbersep=1em, + keepspaces=true, + keywordstyle=\color{tum_blue_dark}, + commentstyle=\color{col_lst_comment}, + stringstyle=\color{col_lst_string}, + captionpos = t, + frame = tb, + %framextopmargin={\smallskipamount}, + %framexbottommargin={\smallskipamount}, + framerule=1pt, + rulecolor = \color{col_lst}, + } + \captionsetup[lstlisting]{labelfont={color=col_figure,sf},textfont={sf,small}} + + % Inline code listings + \let\code\lstinline + +\endinput diff --git a/ELK2_FS/latex4ei/latex4ei_sheet.cls b/ELK2_FS/latex4ei/latex4ei_sheet.cls new file mode 100644 index 0000000..057bd43 --- /dev/null +++ b/ELK2_FS/latex4ei/latex4ei_sheet.cls @@ -0,0 +1,242 @@ +% +% Layout, Macros for LaTeX4EI +% +% Authors: Emanuel Regnath, Martin Zellner +% Contact: info@latex4ei.de +% Version: 1.1 +% License: CC-BY-NC-SA +% +% © 2011-2019, LaTeX4EI + +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{latex4ei_sheet}[2014/03/30 Cheet Sheet Template from LaTeX4EI] + +% ====================================================================== +% Options +% ====================================================================== + +% forward options to latex4ei package +% ---------------------------------------------------------------------- + \newif\ifcolor\colortrue + \DeclareOption{color}{\colortrue\PassOptionsToPackage{color}{latex4ei}} + \DeclareOption{nocolor}{\colorfalse\PassOptionsToPackage{nocolor}{latex4ei}} + \DeclareOption{german}{\colorfalse\PassOptionsToPackage{german}{latex4ei}} + \DeclareOption{english}{\colorfalse\PassOptionsToPackage{english}{latex4ei}} + + +% make three column design possible +% ---------------------------------------------------------------------- + \newcounter{columnnumber} + \setcounter{columnnumber}{4} + \DeclareOption{threecolumn}{\setcounter{columnnumber}{3}} + + +% mobile version +% ---------------------------------------------------------------------- + \newif\ifmobile\mobilefalse + \DeclareOption{mobile}{\mobiletrue\setcounter{columnnumber}{0}} + + +% defaults +% ---------------------------------------------------------------------- + % define baseclass + \def\baseclass{scrartcl} + + % set default options for base class + \PassOptionsToClass{6pt, a4paper, landscape}{\baseclass} + +% forward unknown options to class +% ---------------------------------------------------------------------- + \DeclareOption*{% + \PassOptionsToClass{\CurrentOption}{\baseclass}% + } + +% process options +% ---------------------------------------------------------------------- + \ProcessOptions\relax + + % load baseclass + \LoadClass{\baseclass} + +% ====================================================================== +% Packages +% ====================================================================== + % load latex4ei packages + \RequirePackage{latex4ei/scientific} % scientific macros for LaTeX4EI + \RequirePackage{latex4ei/latex4ei} % base definitions for LaTeX4EI + \RequirePackage{latex4ei/latex4ei_boxes} % section boxes + + +% ====================================================================== +% Layout +% ====================================================================== + +% Geometry +% ---------------------------------------------------------------------- + \RequirePackage{geometry} + \geometry{a4paper,landscape, left=6mm,right=6mm, top=6mm, bottom=5mm,includefoot, footskip=1.7em} + + +% Multicolumn +% ---------------------------------------------------------------------- + \ifmobile\else + \RequirePackage{multicol} % for columns + + % start multicolumn + \AtBeginDocument{ + \begin{multicols*}{\value{columnnumber}} + } + \AtEndDocument{ + \label{LastPage} + \end{multicols*} + } + \fi + + +% Header and Footer +% ---------------------------------------------------------------------- + \RequirePackage{fancyhdr} + + \pagestyle{fancy} + \fancyhf{} + + \AtBeginDocument{ + \fancyfoot[C]{\EngGer{from}{von} \theauthor\ -- Mail: \email{\theemail}} + } + \renewcommand{\headrulewidth}{0.0pt} %obere Linie ausblenden + \renewcommand{\footrulewidth}{0.1pt} %obere Linie ausblenden + + \fancyfoot[R]{\EngGer{Last revised}{Stand}: \themydate \qquad \thepage/\pageref{LastPage}} + \fancyfoot[L]{Homepage: \url{\thewebsite} -- \EngGer{Please report mistakes \emph{immediately}}{Fehler bitte \emph{sofort} melden}.} + + +% Title +% ---------------------------------------------------------------------- + \providecommand{\fstitle}[1]{ + \vspace{-20mm}{ + \parbox{2.3cm}{ + \includegraphics[height=1.4cm]{Logo.pdf} + } + \parbox{4cm}{ + \huge\textbf{#1} + }} + } + + \renewcommand{\maketitle}{\fstitle{\thetitle}} + +% Chapters and Sections +% ---------------------------------------------------------------------- + \RequirePackage{titlesec} + %\titleformat{ command }[ shape ]{ format }{ label }{ sep }{ before-code }[ after-code ] + %\titlespacing*{ command }{ left }{ beforesep }{ aftersep }[ right ] + + \makeatletter + \@addtoreset{section}{part} + \makeatother + + \titleformat{\part}{\pagebreak\huge \bfseries}{}{0em}{\huge \bfseries} + %\providecommand{\chapter}[1]{\vspace{0.5em}\noindent\textbf{\huge{#1}}\vspace{0.5em}} + %\titleformat{\chapter}{\huge \bfseries}{\thechapter}{0em}{\huge \bfseries} + \titleformat{\section}{\Large\bfseries\color{col_section}}{\thesection .}{0.5em}{\color{col_section}}%[\color{col_section} \hrule \hrule] + \titleformat{\subsection}{\large\bfseries\color{col_subsection}}{\thesubsection .}{0.3em}{} + \titleformat{\subsubsection}{\bfseries\color{col_subsubsection}}{\thesubsubsection .}{0.2em}{} + \titleformat{\paragraph}{\bfseries\color{col_paragraph}}{\theparagraph .}{0.2em}{} + + %\titlespacing{Überschriftart}{keine Ahnung}{Abstand oberhalb}{Abstand unterhalb} + \titlespacing{\section}{0em}{1.0em}{0.1em} + \titlespacing{\subsection}{0em}{0.2em}{-0.2em} + \titlespacing{\subsubsection}{0em}{0em}{-0.3em} + \titlespacing{\paragraph}{0em}{0em}{-0.3em} + +% Paragraphs +% ---------------------------------------------------------------------- + + \RequirePackage{parskip} % prevents intend on new paragraph + \setlength{\parskip}{1pt} + +% Font Settings +% ---------------------------------------------------------------------- + + % set sans as default font family + \renewcommand{\familydefault}{\sfdefault} + + % stretch linespace in arrays and tables + \renewcommand{\arraystretch}{1.2} + + +% ====================================================================== +% Environments +% ====================================================================== + \setlength{\itemindent}{0em} + \setlength\leftmargini{1.7em} + \setlength\itemsep{0em} + + +% ====================================================================== +% Other +% ====================================================================== + +% SI-Units Settings +% ---------------------------------------------------------------------- + \sisetup{per-mode=fraction} + \sisetup{sticky-per=true} + \AtBeginDocument{\sisetup{math-rm=\mathrm, text-rm=\rmfamily}} + + +% ====================================================================== +% Color Scheme +% ====================================================================== + +\ifcolor + \colorlet{col_section}{tum_blue_dark} + \colorlet{col_subsection}{black} + \colorlet{col_subsubsection}{black} + \colorlet{col_sectionbox}{gray} + + \colorlet{col_emphbox}{tum_red} + \colorlet{col_topicbox}{tum_blue_dark} + \colorlet{col_symbolbox}{tum_orange} + \colorlet{col_cookbox}{tum_blue_dark} + + \colorlet{col_table}{tum_blue_dark} +\else + \colorlet{col_section}{black} + \colorlet{col_subsection}{black} + \colorlet{col_subsubsection}{black} + + \colorlet{col_sectionbox}{gray} + \colorlet{col_emphbox}{black} + \colorlet{col_topicbox}{black} + \colorlet{col_symbolbox}{black} + \colorlet{col_cookbox}{black} + + \colorlet{col_table}{black} +\fi + +% Color for listings +\lstset{ + backgroundcolor=\color{col_lst!5}, +} + +% ====================================================================== +% Mobile Version +% ====================================================================== +\ifmobile + \geometry{ + paperwidth=7.3cm, + paperheight=20cm, + portrait, + left=1em,right=1em, top=1em, bottom=1em, + noheadfoot, footskip=0em + } + + % title + \renewcommand{\maketitle}{ + \fstitle{\thetitle} + \setcounter{tocdepth}{2} + \tableofcontents + \pagebreak + } + \pagestyle{empty} + \newcommand{\columnbreak}{\relax} +\fi diff --git a/ELK2_FS/latex4ei/latex4ei_thesis.cls b/ELK2_FS/latex4ei/latex4ei_thesis.cls new file mode 100644 index 0000000..47cb23f --- /dev/null +++ b/ELK2_FS/latex4ei/latex4ei_thesis.cls @@ -0,0 +1,671 @@ +% +% Thesis class from LaTeX4EI +% +% Authors: Emanuel Regnath, Martin Zellner +% Contact: info@latex4ei.de +% Version: 1.1 +% License: TBD +% +% © 2011-2019, LaTeX4EI + + +% ToDo: +% * create \listofabbreviations \listoflistings +% * Screen_version und print_version +% * create title page +% TUM Styleguide: Liniebasis 0.3pt Linie Pfeil 0.6pt + +% options: frontmatter, colors, ornaments, margin + + +\NeedsTeXFormat{LaTeX2e}[1996/12/01] +\ProvidesClass{latex4ei/latex4ei_thesis}[2014/03/15] + + +% ====================================================================== +% Options +% ====================================================================== + + % forward options to latex4ei package + \DeclareOption{color}{\PassOptionsToPackage{color}{latex4ei}} + \DeclareOption{nocolor}{\PassOptionsToPackage{nocolor}{latex4ei}} + + % define baseclass + \def\baseclass{scrreprt} + + % Options + \newif\ifmarginnumbers\marginnumbersfalse + \DeclareOption{marginnumbers}{\marginnumberstrue} + + \newcommand{\chapterallign}{\raggedright} + \DeclareOption{rightchapter}{% + \let\chapterallign\raggedleft + } + + \newif\ifoptionbiblatex\optionbiblatexfalse + \DeclareOption{biblatex}{\optionbiblatextrue} + + \newif\ifoptionglossaries\optionglossariesfalse + \DeclareOption{glossaries}{\optionglossariestrue} + + % set default options for base class + \PassOptionsToClass{a4paper, 11pt}{\baseclass} + + % pass unknown options to base class + \DeclareOption*{% + \PassOptionsToClass{\CurrentOption}{\baseclass}% + } + + % process options + \ProcessOptions\relax + + % load baseclass + \LoadClass{\baseclass} + + +% ====================================================================== +% Packages +% ====================================================================== + + % pass options to packages + \PassOptionsToPackage{table}{xcolor} + + + % load biblatex if specified + \ifoptionbiblatex + \RequirePackage[style=ieee, backend=biber, datamodel=ieeestandard]{biblatex} + \fi + +% \makeatletter +% \@ifpackagewith{biblatex}{backend=biber}{} +% \makeatother + + + + % load latex4ei packages + \RequirePackage{latex4ei/scientific} % scientific macros for LaTeX4EI + \RequirePackage{latex4ei/latex4ei} % base definitions for LaTeX4EI (privat) + + + % packages needed + \RequirePackage{xspace} % For spacing behind commands + \RequirePackage{remreset} % For removing counters from resets + + % fix for footnotes in tables + \RequirePackage{footnote} + \makesavenoteenv{tabular} + \makesavenoteenv{table} + %\shorthandoff{"} % don't convert "A to Ä! + + + % font + %\RequirePackage[osf]{mathpazo} % old style numbering + %\renewcommand{\rmdefault}{ppl} % cmr, ptm, ppl, pnc, pbk + %\renewcommand{\sfdefault}{cmss} % cmss, phv pag + + +% ====================================================================== +% Color Scheme +% ====================================================================== + + + % Set Color Scheme + % ---------------------------------------------------------------------- + \definecolor{url}{gray}{0.6} + \definecolor{chapnum}{gray}{0.6} + \definecolor{ornament}{gray}{0.85} + + %\definecolor{col_chapter}{gray}{0.6} + \colorlet{col_chapter}{tum_gray} + + + \colorlet{col_section}{tum_blue_dark2} + \colorlet{col_subsection}{tum_blue_dark2} + \colorlet{col_subsubsection}{tum_blue_dark2} + \colorlet{col_table}{tum_blue_dark} + \colorlet{col_figure}{tum_blue_dark} + + \colorlet{col_link}{tum_blue} + + \colorlet{col_lst}{tum_blue_dark} + \colorlet{col_lst_keyword}{tum_blue} + \colorlet{col_lst_comment}{tum_green_leaf} + \colorlet{col_lst_string}{tum_orange} + \colorlet{col_lst_number}{tum_gray_dark} + +% ====================================================================== +% Fonts +% ====================================================================== + + % Font Settings + % ---------------------------------------------------------------------- + + % Initials with lettrine + \RequirePackage{lettrine} + + + % calculate linespacing based on font size + % char per line: 85 + \RequirePackage{setspace} + % \setlength{\baselineskip}{3pt} + % \renewcommand{\baselinestretch}{1.5} + %\linespread{1.3}\selectfont + %\setstretch{1.3} + \onehalfspacing + + + %\usepackage{microtype} % Verbesserung des Kernings, Achtung kompilezeit! + + +% ====================================================================== +% Bibtex +% ====================================================================== + + % Define BibTeX command + \def\BibTeX{{\rmfamily B\kern-.05em{\sc i\kern-.025em b}\kern-.08em T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}} + + + %\usepackage{natbib} + %\bibliographystyle{natdin} + + +% ====================================================================== +% Title +% ====================================================================== + +\newcommand*{\thedoctype}{} +\newcommand*{\doctype}[1]{\gdef\thedoctype{#1}} + + +% hierarchy: +% university, faculty, department, institute, chair + + +\newcommand*{\theuniversity}{} +\newcommand*{\university}[1]{\gdef\theuniversity{#1}} + +\newcommand*{\thedepartment}{} +\newcommand*{\department}[1]{\gdef\thedepartment{#1}} + +\newcommand*{\thechair}{} +\newcommand*{\chair}[1]{\gdef\thechair{#1}} + +\newcommand*{\theprofessor}{} +\newcommand*{\professor}[1]{\gdef\theprofessor{#1}} + +\newcommand*{\theadvisor}{} +\newcommand*{\advisor}[1]{\gdef\theadvisor{#1}} + +\newcommand*{\thecoadvisor}{} +\newcommand*{\coadvisor}[1]{\gdef\thecoadvisor{#1}} + +\newcommand*{\thesubmitdate}{} +\newcommand*{\submitdate}[1]{\gdef\thesubmitdate{#1}} + +\newcommand*{\theauthorsaddress}{} +\newcommand*{\authorsaddress}[1]{\gdef\theauthorsaddress{#1}} + +\newcommand*{\thestudentnumber}{} +\newcommand*{\studentnumber}[1]{\gdef\thestudentnumber{#1}} + + +\newcommand*{\thelogoheader}{} +\newcommand*{\logoheader}[1]{\gdef\thelogoheader{#1}} + + + + +\def\maketitle{{% + \sffamily + % ------------------------------------------------------------------------ + % Deckblatt + % ------------------------------------------------------------------------ + \pagestyle{empty} + \let\footnotesize\small\let\footnoterule\relax + \thelogoheader + \vspace*{8cm} + \begin{center}\begin{minipage}[c]{0.8\textwidth}\begin{center} + {\huge \bfseries{\@title} \par}% + \vskip 3em% + {\LARGE\@author} + \end{center}\end{minipage}\end{center} + \par + \vfill + \begin{center}{\LARGE \bfseries{\thedoctype}}\end{center}\par + + \cleardoublepage + % ------------------------------------------------------------------------ + % Das ganze etwas genauer + % ------------------------------------------------------------------------ + \vspace*{100pt} + \begin{center}\begin{minipage}{0.7\textwidth}\centering% + \vfil + {\LARGE \bfseries{\@title} \par}% + \vfil \vskip 2.5em + {\Large \thedoctype \par}% + \vfil + \end{minipage}\end{center}\par + \vfill \large + \begin{center}% + {{Supervised by \theprofessor \\ \thechair \\ \thedepartment \\ \theuniversity \\ }} + \end{center}\par + \vskip 1.5em + \vfill + \begin{tabular}{@{}l@{\hspace{1cm}}l}% + \bfseries{Advisor} & \parbox[t]{9cm}{\theadvisor}\\[1.3em] + \bfseries{Co-Advisor} & \parbox[t]{9cm}{{\thecoadvisor}}\\[1.3em] + \bfseries{Author} & \parbox[t]{9cm}{{\@author\\ \theauthorsaddress}} \\ + \end{tabular}\\[2em] + Submitted on \thesubmitdate +}} + + + +% ====================================================================== +% Additional title pages +% -------------------------------------------------------------------- +\newenvironment{acknowledgment}{% + \clearpage + \thispagestyle{empty} + \@makeschapterhead{Acknowledgment} + \sffamily +}{ +} + +\newenvironment{authordecl}{% + \cleardoublepage + \thispagestyle{empty} + \@makeschapterhead{Declaration of Authorship} + \sffamily +}{ +} + + +% ====================================================================== +% Abstract +% ====================================================================== + +\def\abstract{ + \clearpage + \thispagestyle{plain} + \@makeschapterhead{\abstractname} + \sffamily +}{ +} +\def\endabstract{ +} + +% ====================================================================== +% Glossaries +% ====================================================================== + + + \ifoptionglossaries + % Nomenclature with glossary, nomencl, acronym, acroterm + \RequirePackage[toc, acronym, style=long, nolist, nomain, nopostdot, nogroupskip]{glossaries} + + + \newglossarystyle{acronym}{% + \renewenvironment{theglossary}{ + \setlength\LTleft{0pt} + \setlength\LTright{0pt} + \setlength{\glsdescwidth}{0.7\textwidth} + \setlength{\extrarowheight}{0em}% + \renewcommand*{\glossaryheader}{}% have nothing after \begin{theglossary} + \renewcommand*{\glsgroupheading}[1]{}% + \renewcommand*{\glsgroupskip}{}% have nothing between glossary groups + \begin{longtable}{@{}ll@{}}}{\end{longtable}}% + \renewcommand*{\glossaryentryfield}[5]{% + \textbf{\glstarget{##1}{##2}}% the entry name + ##4% the symbol + & ##3% the description + \space\space ##5\\}% the number list + } + + % darker color for glossary links + \renewcommand*{\glstextformat}[1]{\textcolor{tum_blue_dark2}{#1}} + \fi + + +% ====================================================================== +% Structure +% ====================================================================== + + \newcommand\frontmatter{% + \setcounter{page}{1} % set page counter to 1 + \pagenumbering{Roman} % roman figures + \loadgeometry{frontmatter} % + \pagestyle{empty} % no numbering in the frontmatter + \makeatletter + \let\ps@oldplain\ps@plain % backup + \let\ps@plain\ps@empty % set plain pagestyle to empty + \makeatother + } + + \newcommand\mainmatter{% + \pagenumbering{arabic} + \loadgeometry{mainmatter} + \pagestyle{fancy} + \makeatletter + \fancy@setoffs % reload dimensions + \makeatother + } + + \newcommand\mainmatterplain{% + \pagenumbering{arabic} + \loadgeometry{mainmatterplain} + \pagestyle{fancy} + \makeatletter + \fancy@setoffs % reload dimensions + \makeatother + } + + \newcommand\backmatter{\pagenumbering{arabic}} + + +% ====================================================================== +% Layout +% ====================================================================== + + % Page Layout + % ---------------------------------------------------------------------- + + \RequirePackage{geometry} + + \newgeometry{ + layout=a4paper, % DIN-A4 + twoside, + bindingoffset = 1cm, + left=2.66cm, % whitespace left + right=2.66cm, % old 2.33 + top=3cm, + bottom=3cm, + includeheadfoot + } \savegeometry{frontmatter} + + + \geometry{ %Gemometry with Margintext + layout=a4paper, + portrait, + twoside, + bindingoffset = 1cm, + % 9er Teilung + left=2.33cm, % whitespace left + right=3.66cm, + top=2.33cm, + bottom=2cm, + %reversemarginpar, + marginparsep = 4mm, + marginparwidth = 1.9cm, % witdh for marginal notes + includeheadfoot % reserve space for header and footer + } \savegeometry{mainmatter} + + \geometry{ %Gemometry without Margintext + layout=a4paper, + portrait, + % twoside, + bindingoffset = 1cm, + % 9er Teilung + left=2.33cm, % whitespace left + right=2.33cm, + top=2.33cm, + bottom=3cm, + includeheadfoot % reserve space for header and footer + } \savegeometry{mainmatterplain} + + % Header and Footer + % ---------------------------------------------------------------------- + + \usepackage{fancyhdr} + \pagestyle{fancy} % use fancyhdr pagestyle + \fancyhf{} % clear header and footer + \if@twoside %% Für Doppelseitig + \fancyhead[EL]{\textcolor{black!70}{\thepage}} % gerade Seiten, links + \fancyhead[ER]{\textcolor{black!70}{\leftmark}} % gerade Seiten, rechts + \fancyhead[OL]{\textcolor{black!70}{\itshape\rightmark}} % ungerade Seiten, links + \fancyhead[OR]{\textcolor{black!70}{\thepage}} % ungerade Seiten, rechts + \else %% Für Einseitig + \fancyhead[OL]{\textcolor{black!70}{\leftmark --- \itshape\nouppercase{\rightmark}}} % gerade Seiten, rechts + \fancyhead[OR]{\textcolor{black!70}{\thepage}} % gerade Seiten, links + \fi + \renewcommand{\headrulewidth}{0pt} % Underline headers + \renewcommand{\footrulewidth}{0pt} % no footer rule + %\fancypagestyle{plain}{} % No chapter+section on chapter start pages + + + \renewcommand{\chaptermark}[1]{\markboth{\MakeUppercase{#1}}{} } % redefine leftmark + \renewcommand{\sectionmark}[1]{\markright{#1}{} } % redefine rightmark + + % Margin Notes + % ---------------------------------------------------------------------- + + \def\mparsetup{% + \sffamily\scriptsize % + \linespread{0.9}\selectfont% + \parindent=0pt \lineskip=0pt \lineskiplimit=0pt % + \tolerance=2000 \hyphenpenalty=300 \exhyphenpenalty=300% + \doublehyphendemerits=100000% + \finalhyphendemerits=\doublehyphendemerits} + + \let\oldmarginpar\marginpar % save old command + + \renewcommand{\marginpar}[1]{\oldmarginpar[\mparsetup\raggedleft\hspace{0pt}{#1}]{\mparsetup\raggedright\hspace{0pt}{#1}}} + + % Footnotes + % ---------------------------------------------------------------------- + + \long\def\@makefntext#1{% + \leftskip 0pt + \parindent 0pt + \everypar{\parindent 0pt}% + \leavevmode\llap{\@thefnmark\hskip\marginparsep}#1} % footnote number in margin + \renewcommand\footnoterule{% + \kern-3\p@ + \hrule\@width \columnwidth + \kern2.6\p@} + \skip\@mpfootins=4pt + + + % Chapters and Sections + % ---------------------------------------------------------------------- + + \RequirePackage{titlesec} + %\titleformat{ command }[ shape ]{ format }{ label }{ sep }{ before }[ after ] + %\titlespacing*{ command }{ left }{ beforesep }{ aftersep }[ right ] + + + \newfont{\chapterNumber}{eurb10 scaled 9000} + + %\titleformat{\chapter}[display]{\relax}{\raggedleft{\fontsize{100}{10}\selectfont\color{col_chapter}\thechapter} \\}{0em}{\raggedleft\sffamily\bfseries\huge} + \titleformat{\chapter}[display]{\relax}{\chapterallign{\chapterNumber\color{col_chapter}\thechapter} \\}{0em}{\chapterallign\sffamily\bfseries\huge} + %\titlespacing{\chapter}{0em}{0em}{2em} + + % star chapter version + \titleformat{name=\chapter,numberless}[display]{\relax}{\relax}{0em}{\sffamily\bfseries\huge} + \titlespacing{name=\chapter,numberless}{0em}{0em}{2em} + + % section with numbers in the margin + \ifmarginnumbers + \titleformat{\section}{\sffamily\Large\color{col_section}}{\llap{{\thesection}\hskip\marginparsep}}{0em}{} + \titleformat{\subsection}{\sffamily\large\color{col_subsection}}{\llap{{\thesubsection}\hskip\marginparsep}}{0em}{} + \titleformat{\subsubsection}{\scshape\color{col_subsubsection}}{\llap{{\thesubsubsection}\hskip\marginparsep}}{0em}{} + \else + \titleformat{\section}{\scshape\LARGE\color{col_section}}{\thesection\quad}{0em}{} + \titleformat{\subsection}{\sffamily\Large\color{col_subsection}}{\thesubsection\quad}{0em}{} + \titleformat{\subsubsection}{\scshape\color{col_subsubsection}}{\thesubsubsection\quad}{0em}{} + \titleformat{\paragraph}[runin]{\sffamily\color{col_paragraph}}{\theparagraph\quad}{0em}{} + \fi + + \titlespacing{name=\paragraph,numberless}{0em}{0.5em}{1em}[5em] + \parskip = 0pt + + \let\oldsection\section + \let\oldsubsection\subsection + %\renewcommand{\section}[1]{\oldsection{#1}\label{sec:#1}} + %\renewcommand{\subsection}[1]{\oldsubsection{#1}\label{sec:#1}} + + + % for problems with the TOC: \renewcommand\contentsname{\normalfont Contents} + % This way, your Table of Content’s title will stay untouched by any \titleformat command. + + % Epigraph + % ---------------------------------------------------------------------- + \providecommand{\epigraph}[3][6cm]{ + {\vspace*{-1cm}\hfill\parbox{#1}{\linespread{1.1}\selectfont\itshape\small{#2}\\{\phantom{.}\hfill\upshape #3}\\[1em]}} } + + + + % Colophon + % ---------------------------------------------------------------------- + \newenvironment{colophon}{\newpage\color{black!70}}{\newpage} + + +% ====================================================================== +% Lists & Equations +% ====================================================================== + + %\setlength{\itemsep}{\baselineskip} + \setlength{\itemsep}{0pt} + + \RequirePackage{enumitem} + \setitemize{itemsep=0pt} + \setenumerate{itemsep=0pt} + + % set own list item symbol + \renewcommand\labelitemi{\color{col_itemize}$\blacktriangleright$} + + % change description label + \renewcommand{\descriptionlabel}[1]{\hspace{\labelsep}\color{col_paragraph}\textsf{#1}} + \setlist[description]{leftmargin=4em,labelindent=1.5em} + + % Equations + % ---------------------------------------------------------------------- + \RequirePackage{remreset} + \makeatletter + \@removefromreset{equation}{chapter} % nor reset of equation numbers, requires remreset package + \def\@eqnnum{{\normalfont \textcolor{gray}{\theequation}}} % diffrent equation number style + \makeatother + + \AtBeginEnvironment{displaymath}{\displaystyle} + + +% ====================================================================== +% Float Environments +% ====================================================================== + + \RequirePackage{caption} + % Idea: short caption (for LOF) in bold, rest of caption as normal text + + % Figures + % ---------------------------------------------------------------------- + + %\RequirePackage{pdfpages} + %\RequirePackage{media9} % for flash and 3D Objects + \RequirePackage[sf,SF]{subfigure} % Subfigures, sans-serif counters + + \makeatletter + \@removefromreset{figure}{chapter} % continous figure numbering + \renewcommand\p@subfigure{\thefigure} + \renewcommand{\thefigure}{\@arabic\c@figure} + \renewcommand{\thesubfigure}{\alph{subfigure})} + \makeatother + + + \captionsetup[figure]{labelfont={color=col_figure,sf},textfont={sf,small}} + + + + % Captions + % ---------------------------------------------------------------------- + + % \makeatletter + %\let\x@caption\caption % original \caption + %\def\x@@caption[#1]#2{\x@caption[{#1}]{#1 #2}} % with optional arg + %\def\x@@@caption#1{\x@caption[{#1}]{#1}} % without optional arg + %\def\caption{\@ifnextchar[\x@@caption\x@@@caption} % new \caption + %\makeatother + + +% ====================================================================== +% Macros +% ====================================================================== + + % Names + \providecommand{\name}[1]{\mbox{\textsc{#1}}} + \providecommand{\Prof}{Prof.~} + \providecommand{\Dr}{Dr.~} + \providecommand{\DiplIng}{Dipl.-Ing.~} + \providecommand{\MSc}{M.~Sc.~} + \providecommand{\habil}{habil.~} + \providecommand{\PD}{PD~} + + % Abbreviations + %\newcommand{\cf}{cf.\@\xspace} + \newcommand{\ea}{\& al.\@\xspace} + \newcommand{\eg}{e.\,g.\@\xspace} + \newcommand{\etc}{etc.\@\xspace} + \renewcommand{\iff}{if and only if\xspace} + \newcommand{\ie}{i.\,e.\@\xspace} + \newcommand{\wrt}{with respect to\xspace} + \newcommand{\wlg}{without loss of generality\xspace} + \newcommand{\Wlg}{Without loss of generality\xspace} + + +% ====================================================================== +% Others +% ====================================================================== + + % References and Links + % ---------------------------------------------------------------------- + + \RequirePackage{hyperref} + \hypersetup{ + pdfcreator={LaTeX2e}, + pdfborder=0 0 0, + breaklinks=true, + bookmarksopen=true, + bookmarksnumbered=true, + linkcolor=col_link, + urlcolor=col_link, + citecolor=col_link, + colorlinks=true + } + + % backref style + \ifdefined\backref + \renewcommand*{\backref}[1]{cited on p. #1} + \fi + +% Sourcecode listings +% ---------------------------------------------------------------------- + \RequirePackage{listings} + \def\postbreak{\raisebox{0ex}[0ex][0ex]{\ensuremath{\hookrightarrow\space}}} + + \lstset{ + basicstyle=\normalsize\ttfamily\lst@ifdisplaystyle\linespread{0.85}\footnotesize\fi, + tabsize=4, + %gobble=auto, % skip initial tabs %not supported yet + numbers=left, % switch numbers on: left + numberstyle=\tiny\sffamily\color{col_lst_number}, + numbersep=1em, + keepspaces=true, + breaklines=true, + breakatwhitespace=true, + postbreak=\postbreak, + keywordstyle=\bfseries\color{tum_blue_dark}, + commentstyle=\color{col_lst_comment}, + stringstyle=\color{col_lst_string}, + captionpos = t, + frame = tb, + framextopmargin={\smallskipamount}, + framexbottommargin={\smallskipamount}, + framerule=1pt, + rulecolor = \color{col_lst}, + } + \captionsetup[lstlisting]{labelfont={color=col_figure,sf},textfont={sf,small}} + + % Inline code listings + \let\code\lstinline + + +\endinput diff --git a/ELK2_FS/latex4ei/latex4ei_unicode.sty b/ELK2_FS/latex4ei/latex4ei_unicode.sty new file mode 100644 index 0000000..627750e --- /dev/null +++ b/ELK2_FS/latex4ei/latex4ei_unicode.sty @@ -0,0 +1,276 @@ +% +% Unicode for LaTeX4EI packages +% +% Authors: Emanuel Regnath, Martin Zellner +% Contact: info@latex4ei.de +% Version: 1.1 +% License: TBD +% +% © 2011-2019, LaTeX4EI + + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{latex4ei_unicode}[2013/05/01 Unicode Symbols] + +% Already defined via textcomp: +% „“”äüö + +% Greek, small, capital, variants +\DeclareUnicodeCharacter{2014}{\ensuremath{\dash}} +\DeclareUnicodeCharacter{03B1}{\ensuremath{\alpha}} % α +\DeclareUnicodeCharacter{03B2}{\ensuremath{\beta}} % β +\DeclareUnicodeCharacter{03B3}{\ensuremath{\gamma}} % γ +\DeclareUnicodeCharacter{03B4}{\ensuremath{\delta}} % δ +\DeclareUnicodeCharacter{03B5}{\ensuremath{\varepsilon}} % ε +\DeclareUnicodeCharacter{03B6}{\ensuremath{\zeta}} % ζ +\DeclareUnicodeCharacter{03B7}{\ensuremath{\eta}} % η +\DeclareUnicodeCharacter{03B8}{\ensuremath{\theta}} % θ +\DeclareUnicodeCharacter{03B9}{\ensuremath{\iota}} % ι +\DeclareUnicodeCharacter{03BA}{\ensuremath{\kappa}} % κ +\DeclareUnicodeCharacter{03BB}{\ensuremath{\lambda}} % λ +\DeclareUnicodeCharacter{03BC}{\ensuremath{\mu}} % μ +\DeclareUnicodeCharacter{00B5}{\ensuremath{\mu}} %micro -- geht nicht! +\DeclareUnicodeCharacter{03BD}{\ensuremath{\nu}} % ν +\DeclareUnicodeCharacter{03BE}{\ensuremath{\xi}} % ξ +\DeclareUnicodeCharacter{03C0}{\ensuremath{\pi}} % π +\DeclareUnicodeCharacter{03C1}{\ensuremath{\rho}} % ρ +\DeclareUnicodeCharacter{03C3}{\ensuremath{\sigma}} % σ +\DeclareUnicodeCharacter{03C4}{\ensuremath{\tau}} % τ +\DeclareUnicodeCharacter{03C5}{\ensuremath{\upsilon}} % υ +\DeclareUnicodeCharacter{03C6}{\ensuremath{\varphi}} % φ +\DeclareUnicodeCharacter{03C7}{\ensuremath{\chi}} % χ +\DeclareUnicodeCharacter{03C8}{\ensuremath{\psi}} % ψ +\DeclareUnicodeCharacter{03C9}{\ensuremath{\omega}} % ω + +\DeclareUnicodeCharacter{0393}{\ensuremath{\Gamma}} % Γ +\DeclareUnicodeCharacter{0394}{\ensuremath{\Delta}} % Δ +\DeclareUnicodeCharacter{0398}{\ensuremath{\Theta}} % Θ +\DeclareUnicodeCharacter{039B}{\ensuremath{\Lambda}} % Λ +\DeclareUnicodeCharacter{039E}{\ensuremath{\Xi}} % Ξ +\DeclareUnicodeCharacter{03A0}{\ensuremath{\Pi}} % Π +\DeclareUnicodeCharacter{03A3}{\ensuremath{\Sigma}} % Σ +\DeclareUnicodeCharacter{03A6}{\ensuremath{\Phi}} % Φ +\DeclareUnicodeCharacter{03A8}{\ensuremath{\Psi}} % Ψ +\DeclareUnicodeCharacter{03A9}{\ensuremath{\Omega}} % Ω + +\DeclareUnicodeCharacter{03C2}{\ensuremath{\varsigma}} % ς +\DeclareUnicodeCharacter{03D1}{\ensuremath{\vartheta}} % ϑ +\DeclareUnicodeCharacter{03D2}{\ensuremath{\Upsilon}} % ϒ +\DeclareUnicodeCharacter{03D5}{\ensuremath{\phi}} % ϕ +\DeclareUnicodeCharacter{03D6}{\ensuremath{\varpi}} % ϖ +\DeclareUnicodeCharacter{03F0}{\ensuremath{\varkappa}} % ϰ in package of ams +\DeclareUnicodeCharacter{03F1}{\ensuremath{\varrho}} % ϱ +\DeclareUnicodeCharacter{03F5}{\ensuremath{\epsilon}} % ϵ + +% Symbols +\DeclareUnicodeCharacter{2020}{\ensuremath{\dagger}} % † +\DeclareUnicodeCharacter{2021}{\ensuremath{\ddagger}} % ‡ +\DeclareUnicodeCharacter{2113}{\ensuremath{\ell}} % ℓ +\DeclareUnicodeCharacter{2202}{\ensuremath{\partial}} % ∂ +\DeclareUnicodeCharacter{2205}{\ensuremath{\emptyset}} % ∅ +\DeclareUnicodeCharacter{2207}{\ensuremath{\nabla}} % ∇ +\DeclareUnicodeCharacter{220F}{\ensuremath{\prod}} % ∏ +\DeclareUnicodeCharacter{2211}{\ensuremath{\sum}} % ∑ +\DeclareUnicodeCharacter{222B}{\ensuremath{\int}} % ∫ +\DeclareUnicodeCharacter{222C}{\ensuremath{\iint}} % ∬ +\DeclareUnicodeCharacter{222D}{\ensuremath{\iiint}} % ∭ +\DeclareUnicodeCharacter{221D}{\ensuremath{\propto}} % ∝ +\DeclareUnicodeCharacter{221E}{\ensuremath{\infty}} % ∞ + + + + +\DeclareUnicodeCharacter{222E}{\ensuremath{\oint}} % ∮ +\DeclareUnicodeCharacter{222F}{\ensuremath{\oiint}} % ∯ +\DeclareUnicodeCharacter{2230}{\ensuremath{\oiiint}} % ∰ +\DeclareUnicodeCharacter{2A0C}{\ensuremath{\iiiint}} + +% Double-struck + +\DeclareUnicodeCharacter{2102}{\ensuremath{\mathbb{C}}} % ℂ +\DeclareUnicodeCharacter{210D}{\ensuremath{\mathbb{H}}} % ℍ +\DeclareUnicodeCharacter{2115}{\ensuremath{\mathbb{N}}} % ℕ +\DeclareUnicodeCharacter{2119}{\ensuremath{\mathbb{P}}} % ℙ +\DeclareUnicodeCharacter{211A}{\ensuremath{\mathbb{Q}}} % ℚ +\DeclareUnicodeCharacter{211D}{\ensuremath{\mathbb{R}}} % ℝ +\DeclareUnicodeCharacter{2124}{\ensuremath{\mathbb{Z}}} % ℤ +\DeclareUnicodeCharacter{1D53C}{\ensuremath{\mathbb{E}}} % 𝔼 +\DeclareUnicodeCharacter{1D542}{\ensuremath{\mathbb{K}}} % 𝕂 +\DeclareUnicodeCharacter{1D54A}{\ensuremath{\mathbb{S}}} % 𝕊 +\DeclareUnicodeCharacter{1D54B}{\ensuremath{\mathbb{T}}} % 𝕋 +\DeclareUnicodeCharacter{1D54C}{\ensuremath{\mathbb{U}}} % 𝕌 +\DeclareUnicodeCharacter{1D7D9}{\ensuremath{\mathbbm{1}}} % 𝟙 + + +% sub and super script +\DeclareUnicodeCharacter{2070}{\ensuremath{^0}} +\DeclareUnicodeCharacter{00B9}{\ifmmode^1\else\textonesuperior\fi} +\DeclareUnicodeCharacter{00B2}{\ifmmode^2\else\texttwosuperior\fi} +\DeclareUnicodeCharacter{00B3}{\ifmmode^3\else\textthreesuperior\fi} +\DeclareUnicodeCharacter{2074}{\ensuremath{^4}} +\DeclareUnicodeCharacter{2075}{\ensuremath{^5}} +\DeclareUnicodeCharacter{2076}{\ensuremath{^6}} +\DeclareUnicodeCharacter{2077}{\ensuremath{^7}} +\DeclareUnicodeCharacter{2078}{\ensuremath{^8}} +\DeclareUnicodeCharacter{2079}{\ensuremath{^9}} +\DeclareUnicodeCharacter{207A}{\ensuremath{^+}} % ⁺ +\DeclareUnicodeCharacter{207B}{\ensuremath{^-}} % ⁻ +\DeclareUnicodeCharacter{207C}{\ensuremath{^=}} +\DeclareUnicodeCharacter{207D}{\ensuremath{^(}} +\DeclareUnicodeCharacter{207E}{\ensuremath{^)}} +\DeclareUnicodeCharacter{2080}{\ensuremath{_0}} +\DeclareUnicodeCharacter{2081}{\ensuremath{_1}} +\DeclareUnicodeCharacter{2082}{\ensuremath{_2}} +\DeclareUnicodeCharacter{2083}{\ensuremath{_3}} +\DeclareUnicodeCharacter{2084}{\ensuremath{_4}} +\DeclareUnicodeCharacter{2085}{\ensuremath{_5}} +\DeclareUnicodeCharacter{2086}{\ensuremath{_6}} +\DeclareUnicodeCharacter{2087}{\ensuremath{_7}} +\DeclareUnicodeCharacter{2088}{\ensuremath{_8}} +\DeclareUnicodeCharacter{2089}{\ensuremath{_9}} +\DeclareUnicodeCharacter{208A}{\ensuremath{_+}} +\DeclareUnicodeCharacter{208B}{\ensuremath{_-}} + + + +% superscript +\DeclareUnicodeCharacter{1D43}{^a} +\DeclareUnicodeCharacter{1D47}{^b} +\DeclareUnicodeCharacter{1D9C}{^c} +\DeclareUnicodeCharacter{1D48}{^d} +\DeclareUnicodeCharacter{1D49}{^e} +\DeclareUnicodeCharacter{1DA0}{^f} +\DeclareUnicodeCharacter{1D4D}{^g} +\DeclareUnicodeCharacter{02B0}{^h} +\DeclareUnicodeCharacter{2071}{^i} +\DeclareUnicodeCharacter{02B2}{^j} +\DeclareUnicodeCharacter{1D4F}{^k} +\DeclareUnicodeCharacter{02E1}{^l} +\DeclareUnicodeCharacter{1D50}{^m} +\DeclareUnicodeCharacter{207F}{^n} +\DeclareUnicodeCharacter{1D52}{^o} +\DeclareUnicodeCharacter{1D56}{^p} +\DeclareUnicodeCharacter{02B3}{^r} +\DeclareUnicodeCharacter{02E2}{^s} +\DeclareUnicodeCharacter{1D57}{^t} +\DeclareUnicodeCharacter{1D58}{^u} +\DeclareUnicodeCharacter{1D5B}{^v} +\DeclareUnicodeCharacter{02B7}{^w} +\DeclareUnicodeCharacter{02E3}{^x} +\DeclareUnicodeCharacter{02B8}{^y} +\DeclareUnicodeCharacter{1DBB}{^z} +\DeclareUnicodeCharacter{1D2C}{^A} +\DeclareUnicodeCharacter{1D2E}{^B} +\DeclareUnicodeCharacter{1D30}{^D} +\DeclareUnicodeCharacter{1D31}{^E} +\DeclareUnicodeCharacter{1D33}{^G} +\DeclareUnicodeCharacter{1D34}{^H} +\DeclareUnicodeCharacter{1D35}{^I} +\DeclareUnicodeCharacter{1D36}{^J} +\DeclareUnicodeCharacter{1D37}{^K} +\DeclareUnicodeCharacter{1D38}{^L} +\DeclareUnicodeCharacter{1D39}{^M} +\DeclareUnicodeCharacter{1D3A}{^N} +\DeclareUnicodeCharacter{1D3C}{^O} +\DeclareUnicodeCharacter{1D3E}{^P} +\DeclareUnicodeCharacter{1D3F}{^R} +\DeclareUnicodeCharacter{1D40}{^T} +\DeclareUnicodeCharacter{1D41}{^U} +\DeclareUnicodeCharacter{1D42}{^W} + + +% Quantifiers +\DeclareUnicodeCharacter{2200}{\ensuremath{\forall}} %∀ +\DeclareUnicodeCharacter{2203}{\ensuremath{\exists}} %∃ +\DeclareUnicodeCharacter{2204}{\ensuremath{\nexists}} %∄ + +\DeclareUnicodeCharacter{2208}{\in} % ∈ +\DeclareUnicodeCharacter{2209}{\notin} % ∉ +\DeclareUnicodeCharacter{220B}{\ni} % ∋ +\DeclareUnicodeCharacter{220B}{\notni} % ∌ only in package txfonts/pxfonts + +% Roots +\DeclareUnicodeCharacter{221A}{\ensuremath{\sqrt}} +\DeclareUnicodeCharacter{221B}{\ensuremath{\sqrt[3]}} +\DeclareUnicodeCharacter{221C}{\ensuremath{\sqrt[4]}} + +% Relations +\DeclareUnicodeCharacter{2264}{\leq} % ≤ +\DeclareUnicodeCharacter{2265}{\geq} % ≥ +\DeclareUnicodeCharacter{226A}{\ll} % ≪ +\DeclareUnicodeCharacter{226B}{\gg} % ≫ +\DeclareUnicodeCharacter{2A7D}{\leqslant} % ⩽ +\DeclareUnicodeCharacter{2A7E}{\geqslant} % ⩾ + +\DeclareUnicodeCharacter{2248}{\approx} % ≈ +\DeclareUnicodeCharacter{2260}{\neq} % ≠ +\DeclareUnicodeCharacter{2261}{\equiv} % ≡ +\DeclareUnicodeCharacter{2262}{\nequiv} % ≢ only in package txfonts/pxfonts/MnSymbol +%\DeclareUnicodeCharacter{27C2}{\perp} % ⟂ +\DeclareUnicodeCharacter{22A5}{\perp} % ⊥ downtack + +\DeclareUnicodeCharacter{2282}{\subset} % ⊂ +\DeclareUnicodeCharacter{2283}{\supset} % ⊃ + +% Operations + +\DeclareUnicodeCharacter{2229}{\cap} % ∩ +\DeclareUnicodeCharacter{222A}{\cup} % ∪ + +\DeclareUnicodeCharacter{2227}{\ensuremath{\wedge}} % ∧ +\DeclareUnicodeCharacter{2228}{\ensuremath{\vee}} % ∨ + +\DeclareUnicodeCharacter{00D7}{\times} % × +\DeclareUnicodeCharacter{00F7}{\div} % ÷ +\DeclareUnicodeCharacter{2212}{-} % − + +\DeclareUnicodeCharacter{221A}{\sqrt} % √ + +\DeclareUnicodeCharacter{2295}{\oplus} % ⊕ +\DeclareUnicodeCharacter{2297}{\otimes} % ⊗ +\DeclareUnicodeCharacter{229B}{\circledast} % ⊛ +\DeclareUnicodeCharacter{2A01}{\bigoplus} % ⨁ +\DeclareUnicodeCharacter{2A02}{\bigotimes} % ⨂ + +\DeclareUnicodeCharacter{2218}{\circ} % ∘ +\renewcommand{\textperiodcentered}{\cdot} % · Unicode character already defined via textcomp + +% Modifiers +\providecommand{\textlnot}{\ensuremath{\neg}} % ¬ Unicode character already defined via textcomp +\renewcommand{\textlnot}{\ensuremath{\neg}} % ¬ Unicode character already defined via textcomp +\DeclareUnicodeCharacter{00AC}{\ensuremath{\lnot}} % ¬ +\DeclareUnicodeCharacter{00B1}{\ensuremath{\pm}} % ± +\DeclareUnicodeCharacter{2213}{\ensuremath{\mp}} % ∓ + + +% Arrows +\DeclareUnicodeCharacter{2190}{\ensuremath{\leftarrow}} % ← +\DeclareUnicodeCharacter{2191}{\ensuremath{\uparrow}} % ↑ +\DeclareUnicodeCharacter{2192}{\ensuremath{\to}} % → +\DeclareUnicodeCharacter{2191}{\ensuremath{\downarrow}} % ↓ +\DeclareUnicodeCharacter{21A6}{\ensuremath{\mapsto}} % ↦ + +\DeclareUnicodeCharacter{21D0}{\ensuremath{\Leftarrow}} % ⇐ +\DeclareUnicodeCharacter{21D2}{\ensuremath{\Rightarrow}} % ⇒ +\DeclareUnicodeCharacter{21D4}{\ensuremath{\Leftrightarrow}} % ⇔ + + + + +\DeclareUnicodeCharacter{22A8}{\ensuremath{\models}}% ⊨ +\DeclareUnicodeCharacter{22AD}{\ensuremath{\not\models}}% ⊭ + + +%\DeclareUnicodeCharacter{2220}{\ensuremath{}}% % ∠ +%\DeclareUnicodeCharacter{2221}{\ensuremath{}}% % ∡ +%\DeclareUnicodeCharacter{2222}{\ensuremath{}}% % ∢ + + +%\DeclareUnicodeCharacter{22B6}{\ensuremath{\fouriersymbol}}% % ⊶ +%\DeclareUnicodeCharacter{22B7}{\ensuremath{}}% % ⊷ +%\DeclareUnicodeCharacter{}{\ensuremath{}}% +%\DeclareUnicodeCharacter{}{\ensuremath{}}% +%\DeclareUnicodeCharacter{}{\ensuremath{}}% +%\DeclareUnicodeCharacter{}{\ensuremath{}}% +%\DeclareUnicodeCharacter{}{\ensuremath{}}% +%\DeclareUnicodeCharacter{}{\ensuremath{}}% diff --git a/ELK2_FS/latex4ei/scientific.sty b/ELK2_FS/latex4ei/scientific.sty new file mode 100644 index 0000000..0579f1d --- /dev/null +++ b/ELK2_FS/latex4ei/scientific.sty @@ -0,0 +1,248 @@ +% +% latex package with useful macros for scientific documents +% +% Authors: Emanuel Regnath, Martin Zellner +% Contact: info@latex4ei.de +% Version: 1.1 +% License: TBD +% +% © 2011-2019, LaTeX4EI + + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{scientific}[2015/03/30 Scientific Macros for LaTeX4EI] + +% ====================================================================== +% Basic +% ====================================================================== + + % Identify Compiler + \RequirePackage{ifxetex} + \ifxetex% + \relax + \else% + % load following packages if and only if compiler is pdflatex + + + + \fi + + % load packages, order matter + \RequirePackage{amsmath} % math symbols and \DeclareMathOperator + \RequirePackage{esint} % more integral symbols + %\RequirePackage{accents} % accents such as \vec and \ddot + % additional packages + \RequirePackage{amssymb} % additional math + + + % save old commands + \let\oldvec = \vec + \let\olddot = \dot + \let\diameter = \O + + % formating indices + \newcommand{\ir}[1]{\sf #1} % index roman + + % differential delta + \newcommand{\diff}{\mathop{}\!\mathrm{\vphantom( d}} + + +% ====================================================================== +% SI Units +% ====================================================================== +\RequirePackage{siunitx} % SI package +\sisetup{per-mode=reciprocal} % use ^-1 instead of fractals +\sisetup{sticky-per=true} % every unit behind "per" is reciprocal +\newcommand{\unitof}[1]{\ensuremath{\left[#1\right]}} % unit of + +\DeclareSIUnit{\degree}{deg} + +% ====================================================================== +% Vectors and Matrices +% ====================================================================== + + % Define \utilde: from package undertilde.sty + \newlength\knuthian@fdfive + \def\mathpal@save#1{\let\was@math@style=#1\relax} + \def\utilde#1{\mathpalette\mathpal@save + {\setbox124=\hbox{$\was@math@style#1$}% + \setbox125=\hbox{$\fam=3\global\knuthian@fdfive=\fontdimen5\font$} + \setbox125=\hbox{$\widetilde{\vrule height 0pt depth 0pt width \wd124}$}% + \baselineskip=1pt\relax + \vtop{\copy124\copy125\vskip -\knuthian@fdfive}}} + + % vectors and matrices + \newcommand{\ma}[1]{\ensuremath{\utilde{\boldsymbol {#1}}}} % Matrixsymbol + \newcommand{\mat}[1]{\ensuremath{\arraycolsep=0.5em \begin{bmatrix} #1 \end{bmatrix}}} % Matrix + \newcommand{\tma}[3]{\ensuremath{{}_{#1} \ma #2_#3 }} % Trafomatrix + %\renewcommand{\vec}[1]{\ensuremath{\underline{\boldsymbol \begingroup#1\endgroup}}} % Vector bold and underlined + \newcommand{\vect}[1]{\ensuremath{\begin{pmatrix} #1 \end{pmatrix}}} % Vector + \newcommand{\mvect}[1]{\ensuremath{\left.\begin{matrix} #1 \end{matrix}\right]}}% Matrixvector + \newcommand{\tensor}[1]{\ensuremath{\underline{\underline{\boldsymbol #1}}}} % Tensor + \DeclareMathOperator{\diag}{diag} % diagonal matrix + + % vector operations + \newcommand{\norm}[1]{\ensuremath{\left\|#1\right\|}} % Norm + \DeclareMathOperator{\Sp}{Sp} % Spur (german for trace \tr) + + + + +% ====================================================================== +% Misc +% ====================================================================== + + % basic math + \providecommand{\hateq}{\ensuremath{\stackrel{\wedge}{=}}} % Entspricht + \providecommand{\floor}[1]{\ensuremath{\left\lfloor#1\right\rfloor}} % Abrunden + \providecommand{\ceil}[1]{\ensuremath{\left\lceil {#1} \right\rceil}} % Aufrunden + \providecommand{\sprod}[2]{\ensuremath{\left\langle #1, #2 \right\rangle }} % scalar product + \providecommand{\abs}[1]{\ensuremath{\left\vert#1\right\vert}} % absolute value) + \DeclareMathOperator{\const}{const.} % constant + \DeclareMathOperator{\sgn}{sgn} % signum + \DeclareMathOperator{\ld}{ld} % log_2 + \DeclareMathOperator{\ggT}{ggT} % ggT (german for gcd) + + % chemistry + \newcommand{\chem}[1]{\ensuremath{\displaystyle{\mathrm{#1}}}} % chemistry with \chem (simple) + \RequirePackage[version=3]{mhchem} % chemistry with \ce (advanced) + + + \newcommand{\rom}[1]{\ensuremath{\underline{\overline{\textsc{#1}}}}} % roman numbers + + +% ====================================================================== +% Important Constants +% ====================================================================== + + % math + \providecommand{\e}{\mathrm{e}} + + % physical + \providecommand{\kB}{\ensuremath{\mathrm{k}_{\text{B}}}} % Boltzman + \providecommand{\Rgas}{\ensuremath{\mathrm{R}}} % Allg. Gaskonstante + \providecommand{\NA}{\ensuremath{\mathrm{N}_{\text{A}}}} % Avogadro + + + +% ====================================================================== +% Complex and Hyper-complex Numbers +% ====================================================================== + + \newcommand{\cx}[1]{\boldsymbol{#1}} % complex number + \newcommand{\cxc}[1]{\ensuremath{\boldsymbol #1^*}} % Konjugiert complex number + \newcommand{\hx}[1]{\ensuremath{\mathfrak #1}} % hyper-complex number + \renewcommand{\i}{\ensuremath{\mathrm{i}}} % imaginary unit + \renewcommand{\j}{\ensuremath{\mathrm{j}}} % imaginary unit + \renewcommand{\k}{\ensuremath{\mathrm{k}}} % imaginary unit + + % real and imaginary part + \renewcommand{\Re}[1]{\ensuremath{\operatorname{Re}\left\{#1\right\}}} + \renewcommand{\Im}[1]{\ensuremath{\operatorname{Im}\left\{#1\right\}}} + + +% ====================================================================== +% Sets +% ====================================================================== + + % define sets + \newcommand{\iset}[2]{\ensuremath{\bigl\{ \bigl. #1 \, \bigr| \, #2 \bigr\}}} % intensional set + \newcommand{\eset}[1]{\ensuremath{\bigl\{#1\bigr\}}} % extensional set + + % abbreviations for important sets + \DeclareMathOperator{\N}{\mathbb N} % Natürliche Zahlen + \DeclareMathOperator{\R}{\mathbb R} % Reele Zahlen + \DeclareMathOperator{\C}{\mathbb C} % Komplexe Zahlen + \DeclareMathOperator{\K}{\mathbb K} % Reele oder komplexe Zahlen + \def\B{\operatorname{\mathbb B}} % Binäre Zahlen 1,0 + \def\O{\operatorname{\mathcal O}} % Landau + + % set operations + \let\cupplus\uplus % Vereinigunsmenge bzw. OR + \newlength{\caplength} + \setlength{\caplength}{\widthof{$\cap$}} + \DeclareMathOperator{\capdot}{\cap\hspace{-0.7\caplength}\text{\textperiodcentered}\hspace{0.4\caplength}} % Schnittmenge bzw. AND + + % topology + \newcommand{\interior}[1]{\ensuremath{\overset{{}_\circ}{#1}}} % Das Innere + + +% ====================================================================== +% Frequency Transformations (Fourier, Laplace, etc.) +% ====================================================================== + + % Define symbol for Transformations. Source: trfsigns.sty + \newcommand{\ftsymbol}{\mbox{\setlength{\unitlength}{0.1em} + \begin{picture}(25,4) + \put(3,3){\circle{4}} % empty + \put(5,3){\line(1,0){13}} + \put(19,3){\circle*{4}} % filled + \end{picture}}} + + % Define Transformations + \DeclareMathOperator{\T}{\overset{\scriptscriptstyle\mathcal{}}{\ftsymbol}} % General Transformation + \DeclareMathOperator{\FT}{\overset{\scriptscriptstyle\mathcal{F}}{\ftsymbol}} % Fourier Transform + \DeclareMathOperator{\LT}{\overset{\scriptscriptstyle\mathcal{L}}{\ftsymbol}} % Laplace Transform + \DeclareMathOperator{\DFT}{\overset{\scriptscriptstyle\mathcal{DF}}{\ftsymbol}} % Discrete Fourier Transform + \DeclareMathOperator{\DTFT}{\overset{\scriptscriptstyle\mathcal{DTF}}{\ftsymbol}} % Discrete Time Fourier Transform + \DeclareMathOperator{\ZT}{\overset{\scriptscriptstyle\mathcal{Z}}{\ftsymbol}} % Z-Transform + +% ====================================================================== +% Differential Geometry +% ====================================================================== + + \DeclareMathOperator{\grad}{grad} % Gradient + \def\div{\operatorname{div}} % Divergence + \DeclareMathOperator{\rot}{rot} % rotation + \DeclareMathOperator{\lpo}{\Delta} % laplace operator + \DeclareMathOperator{\laplace}{\Delta} % laplace operator + \DeclareMathOperator{\waveop}{\square} % wave operator + + +% ====================================================================== +% Signals +% ====================================================================== + + \DeclareMathOperator{\dirac}{\ensuremath{\delta}} % Dirac Distribution + \DeclareMathOperator{\heavi}{\ensuremath{\theta}} % Heaviside Step Function + \DeclareMathOperator{\sinc}{sinc} % Sinus Cardinalis + \DeclareMathOperator{\rect}{rect} % Rectangular + \DeclareMathOperator{\tri}{tri} % Triangular + \DeclareMathOperator{\erf}{erf} % Error Function + \DeclareMathOperator{\erfc}{erfc} % Error Function + + \providecommand{\SNR}{\mathrm{SNR}} % Signal Noise Ratio + \providecommand{\ACF}{\ensuremath{\varphi}} % autocorrelation function + \providecommand{\PSD}{\ensuremath{\Phi}} % Power-Spectral-Density + + +% ====================================================================== +% Stochastic +% ====================================================================== + + \renewcommand{\P}{\operatorname{\textsf{P}}} % Wahrscheinlichkeitsmaß + \DeclareMathOperator{\F}{\mathbb F} % Ereignisalgebra + \DeclareMathOperator{\X}{\textsf{\textit{X}}} % Zufallsvariable X + \DeclareMathOperator{\Y}{\textsf{\textit{Y}}} % Zufallsvariable Y + \DeclareMathOperator{\Z}{\textsf{\textit{Z}}} % Zufallsvariable Z + \DeclareMathOperator{\E}{\textsf{E}} % Erwartungswert + \newcommand{\ew}[1]{\textit{E} \left[ #1 \right]} % Erwartungswert (mit Parameter) + \DeclareMathOperator{\Var}{\textsf{Var}} % Varianz + \DeclareMathOperator{\Cov}{\textsf{Cov}} % Kovarianz + + +% ====================================================================== +% Logic +% ====================================================================== + + \renewcommand{\implies}{\ensuremath{\rightarrow}} % → + \let\limplies\implies + \providecommand{\lequiv}{\ensuremath{\leftrightarrow}} % ↔ + \providecommand{\lnand}{\ensuremath{|}} + \providecommand{\lxor}{\ensuremath{\downarrow}} + \providecommand{\ltrue}{w} + \providecommand{\lfalse}{f} + + +% Ende von \input +\endinput diff --git a/ELK2_FS/thema3_transistor.tex b/ELK2_FS/thema3_transistor.tex new file mode 100644 index 0000000..9bc1a69 --- /dev/null +++ b/ELK2_FS/thema3_transistor.tex @@ -0,0 +1,89 @@ +% ============================================================================================ +\section{Transistorschaltungen} +% ============================================================================================ + +\begin{sectionbox} + \subsection{Bipolartransistor} + % NF Modell % + \begin{bluebox} + $g_m \approx \frac{{I_C}^{(A)}}{U_T}$ \quad\ + $g_{ce} \approx \frac{{I_C}^{(A)}}{VAF}$ \quad\ + $g_{be} \approx \frac{{g_m}^{(A)}}{BF(=β_0)}$ + \end{bluebox} + + % HF Modell % + \begin{bluebox} + \item$c_{bc} \approx {C_{JBC}}^{(A)} = \frac{CJC}{(1-\frac{{U_{BC}}^{(A)}}{VJC})^{^{MJC}}}$ + \item$c_{be} \approx {C_{DBE}}^{(A)} = T_F \cdot g_m$ + \end{bluebox} + + % Typische Größenrelationen % + \begin{bluebox} + $g_m >> g_{be} >> g_{ce}$ \quad\ + $g_m >> \omega \cdot c_{bc}$ \quad\ + $c_{be} >> c_{bc}$ + \end{bluebox} +\end{sectionbox} + +\begin{sectionbox} + \subsection{Seriengegengekoppelte Emitterschaltung} % Ohne CE% + % Spannungsverstärkung % + $\underline{a}_V = \frac {-g_m \cdot {r_L}^*} {1+(g_m+g_{be}) \cdot R_E}$ + + % Schnittstellenimpedanzen % + $\underline{z}_{in,Tr} = r_{be} + (1+BF)\cdot R_E$ \newline + $\underline{z}_{a,Tr} = r_{ce}\cdot(1+(R_E||(r_{be}+{r_G}^*))\cdot\frac{g_m\cdot r_{be}}{r_{be}+{r_G}^*})$ \newline + $\underline{z}_{a,Tr}({r_G^*}=0) \approx r_{ce} \cdot (1 + g_m \cdot R_E))$ + + \subsection{Emitterschaltung} + % Spannungsverstärkung % + $\underline{a}_V = -g_m \cdot {r_L}^*$ + + % Schnittstellenimpedanzen % + $\underline{z}_{in,Tr} = r_{be}$ + $\underline{z}_{a,Tr} = r_{ce}$ + + % Temperaturstabilität % + $\frac{{\Delta I_C}^{(A)}(\Delta T)}{\Delta T \cdot {I_C}^{(A)}} = \frac{6,5\%}{\degree C}\cdot \frac{\frac{1}{g_m \cdot R_E}}{1+\frac{1}{BF}+\frac{1}{g_m \cdot R_E}} \approx \frac{6,5\%}{\degree C}\cdot \frac{1}{1+g_m\cdot R_E}$ + + % Eckfrequenz Emitterkondensator + $f_{3dB,CE} = \frac {g_m} {2\pi \cdot C_E}$ + + \subsection{Kollektorschaltung} + % Spannungsverstärkung % + $\underline{a}_V = \frac{g_m \cdot {r_L}^*}{1+g_m \cdot {r_L}^*}$ + + % Schnittstellenimpedanzen % + $\underline{z}_{in,Tr} = r_{be} + (1+BF)\cdot {r_L}^*$ \newline + $\underline{z}_{a,Tr} = r_{ce} || (\frac{r_{be}+R_G}{\beta_0 + 1}) = r_{ce} || (\frac {1}{g_m + g_{be}}+\frac{R_G}{\beta_0 + 1})$ + + % HF - Verhalten + $c_{in} = c_{bc} + c_{be}\cdot\frac{r_{be}}{r_{in}}$ + + % Aussteuerbarkeit % + Aussteuerbarkeit: + + $+\Delta U_{out,max} = UB - min.U_{CE}(\approx 0.7V) - {V_E}^{(A)}$ \newline $\approx {U_{CE}}^{(A)}$ \newline + $-\Delta U_{out,max} = - {I_C}^{(A)} \cdot {r_L}^* = - {I_C}^{(A)} \cdot (R_L||R_E||r_{ce})$ + +\end{sectionbox} + +\begin{sectionbox} + \subsection{AC-, DC- Kopplung} + + $f_{3dB,Ck1} = \frac{1}{2\pi\cdot (R_G + r_{in})\cdot C_{k1}}$ \newline + $f_{3dB,Ck2} = \frac{1}{2\pi\cdot (R_L + r_a)\cdot C_{k2}}$ + + \begin{cookbox}{Dominante Eckfrequenz} + \item Variante 1: $C_{k1}$ dominant: \newline + $f_{3dB,Ck2} << (\approx \frac{1}{10}) f_{3dB,Ck1} = f_{3dB,uB}$ + \item Variante 2: \newline + $HP_2$: $f_{3dB,Ck2} = f_{3dB,Ck1} = 0,644 \cdot f_{3dB,uB}$ + \end{cookbox} + + \subsection{Differenzverstärkung} + $\underline{a}_{VD1} (=\frac{\underline{u}_{out1}}{\underline{u}_{id}}) = - \underline{a}_{VD2}(=\frac{-\underline{u}_{out2}}{\underline{u}_{id}}) $ \newline + $= -\frac{g_m}{2}\cdot (r_L||r_{ce})=\frac{\underline{a}_{VD}}{2}$ \newline + + $\underline{z}_{inD} (=\underline{z}_{id}) =\frac{\underline{u}_{id}}{\underline{i}_{in1}} = 2\cdot r_{be}$ +\end{sectionbox} diff --git a/ELK2_FS/thema4_linearer_OPV.tex b/ELK2_FS/thema4_linearer_OPV.tex new file mode 100644 index 0000000..7f94ae3 --- /dev/null +++ b/ELK2_FS/thema4_linearer_OPV.tex @@ -0,0 +1,35 @@ +% ============================================================================================ +\section{Lineare OPV-Schaltungen, Gegengekoppelte Strukturen} +% ============================================================================================ + +\begin{sectionbox} + \subsection{Operationsverstärker} + % Differenzverstärkung % + $A_{VD}(=V_{UD})=\frac{U_{OUT}}{U_{ID}}(typ.>100k)>>1$ \newline + % GLeichtaktverstärkung % + $A_{VC}=\frac{U_{OUT}}{U_{CM}} \approx 0$ \newline + % Common Mode Rejection Ratio % + $CMMR=\frac{A_{VD}}{A_{VC}}>>1$ \quad\ + $CMMR/dB=20\cdot log(\frac{A_{VD}}{A_{VC}})$ + + % Frequenzgang % + $\underline{V}_{ud}(f)=\frac{V_{UD}}{\cancel{1}+\frac{j\cdot f}{f_1}}$ \newline + $f_1(=f_{1,3dB})=\frac{f_T(=GBW)}{V_{ud}}$ + + \subsection{Standardstruktur} + \begin{center} + \includegraphics[width = 0.5\columnwidth]{img_02_01_Standardstruktur} + \end{center} + $\underline{u}_2 = \underline{a}_V^+ \cdot \underline{u}_1^+ + \underline{a}_V^- \cdot \underline{u}_1^-$ \newline + + $\underline{a}_V^+ = \frac{\underline{V}_{ud}}{1+\underline{k}\cdot\underline{V}_{ud}}$ \quad\ + $\underline{a}_V^- = -\frac{\underline{V}_{ud}\cdot(1-\underline{k})}{1+\underline{k}\cdot\underline{V}_{ud}}$\newline + + % TODO: Nicht invertierender / invertierender Betrieb % + Betriebsfrequenzgrenze \emph{der Schaltung}: $f_g \approx \frac{GBW}{1/|\underline{k}(f_g)|}$ + + \subsection{Standard Linearverstärker} + + \subsection{Stabilität} + +\end{sectionbox} diff --git a/ELK2_FS/thema5_nichtlinearer_OPV.tex b/ELK2_FS/thema5_nichtlinearer_OPV.tex new file mode 100644 index 0000000..69565c2 --- /dev/null +++ b/ELK2_FS/thema5_nichtlinearer_OPV.tex @@ -0,0 +1,7 @@ +% ============================================================================================ +\section{Nichtlineare OPV-Schaltungen} +\subsection{test} +\subsubsection{test2} + + +% ============================================================================================