diff options
author | Andreas Müller <andreas.mueller@hsr.ch> | 2020-12-03 17:18:03 +0100 |
---|---|---|
committer | Andreas Müller <andreas.mueller@hsr.ch> | 2020-12-03 17:18:03 +0100 |
commit | ac4b80be810fc615b426557ad86f0cb8092f5304 (patch) | |
tree | 2afe81a7f8a178fa479a91bec4cf61a54f8eae9f /buch | |
parent | some more ideas (diff) | |
download | SeminarMatrizen-ac4b80be810fc615b426557ad86f0cb8092f5304.tar.gz SeminarMatrizen-ac4b80be810fc615b426557ad86f0cb8092f5304.zip |
add files
Diffstat (limited to 'buch')
52 files changed, 1597 insertions, 0 deletions
diff --git a/buch/Makefile b/buch/Makefile new file mode 100755 index 0000000..722c177 --- /dev/null +++ b/buch/Makefile @@ -0,0 +1,35 @@ +# +# Makefile zum Skript ueber Matrizen +# +# (c) 2020 Prof Dr Andreas Mueller, Hochschule Rapperswil +# +all: buch.pdf + +papers/common/Makefile.inc: papers/common/paperlist + +include common/Makefile.inc +include chapters/Makefile.inc +include papers/common/Makefile.inc +include papers/common/includes.inc + +ALLTEXFILES = $(TEXFILES) $(CHAPTERFILES) + +buch.pdf: buch.tex $(TEXFILES) buch.ind $(BLXFILES) + pdflatex buch.tex + bibtex buch + +buch.idx: buch.tex $(TEXFILES) images + touch buch.ind + pdflatex buch.tex + +buch.ind: buch.idx + makeindex buch.idx + +separate: buch.aux buch.pdf + bash splitpapers + +numerik.pdf: + pdfjam --outfile numerik.pdf \ + ../cover/front.pdf 1,{} \ + buch.pdf 1-504 \ + ../cover/back.pdf {},1 diff --git a/buch/chapters/00-einleitung/Makefile b/buch/chapters/00-einleitung/Makefile new file mode 100644 index 0000000..02e936d --- /dev/null +++ b/buch/chapters/00-einleitung/Makefile @@ -0,0 +1,7 @@ +# +# Makefile -- Bilder für die Einleitung bauen +# +# (c) 2020 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +images: + diff --git a/buch/chapters/00-einleitung/Makefile.inc b/buch/chapters/00-einleitung/Makefile.inc new file mode 100644 index 0000000..c1b3ca0 --- /dev/null +++ b/buch/chapters/00-einleitung/Makefile.inc @@ -0,0 +1,8 @@ +# +# Makefile.inc -- Makefile dependencies for chapter 0 +# +# (c) 2020 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# + +CHAPTERFILES = $(CHAPTERFILES) \ + chapters/00-einleitung/chapter.tex diff --git a/buch/chapters/00-einleitung/chapter.tex b/buch/chapters/00-einleitung/chapter.tex new file mode 100644 index 0000000..4c49622 --- /dev/null +++ b/buch/chapters/00-einleitung/chapter.tex @@ -0,0 +1,10 @@ +% +% einleitung.tex +% +% (c) 2020 Prof Dr Andreas Müller +% +\chapter*{Einleitung\label{chapter:einleitung}} +\lhead{Einleitung} +\rhead{} +\addcontentsline{toc}{chapter}{Einleitung} + diff --git a/buch/chapters/10-vektorenmatrizen/Makefile b/buch/chapters/10-vektorenmatrizen/Makefile new file mode 100644 index 0000000..7dade13 --- /dev/null +++ b/buch/chapters/10-vektorenmatrizen/Makefile @@ -0,0 +1,7 @@ +# +# Makefile -- Bilder für Kapitel 1 bauen +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +images: + diff --git a/buch/chapters/10-vektorenmatrizen/Makefile.inc b/buch/chapters/10-vektorenmatrizen/Makefile.inc new file mode 100644 index 0000000..d0a1805 --- /dev/null +++ b/buch/chapters/10-vektorenmatrizen/Makefile.inc @@ -0,0 +1,8 @@ +# +# Makefile.inc -- Makefile dependencies for chapter 1 +# +# (c) 2020 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# + +CHAPTERFILES = $(CHAPTERFILES) \ + chapters/10-matrizenvektoren/chapter.tex diff --git a/buch/chapters/10-vektorenmatrizen/chapter.tex b/buch/chapters/10-vektorenmatrizen/chapter.tex new file mode 100644 index 0000000..d26f2a9 --- /dev/null +++ b/buch/chapters/10-vektorenmatrizen/chapter.tex @@ -0,0 +1,9 @@ +% +% chapter.tex -- Kapitel mit den Grunddefinition und Notationen +% +% (c) 2020 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\chapter{Vektoren und Matrizen +\label{buch:chapter:vektoren-und-matrizen}} +\lhead{Vektoren und Matrizen } + diff --git a/buch/chapters/20-polynome/Makefile b/buch/chapters/20-polynome/Makefile new file mode 100644 index 0000000..6b83cbe --- /dev/null +++ b/buch/chapters/20-polynome/Makefile @@ -0,0 +1,7 @@ +# +# Makefile -- Bilder für Kapitel 2 bauen +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +images: + diff --git a/buch/chapters/20-polynome/Makefile.inc b/buch/chapters/20-polynome/Makefile.inc new file mode 100644 index 0000000..06576f3 --- /dev/null +++ b/buch/chapters/20-polynome/Makefile.inc @@ -0,0 +1,8 @@ +# +# Makefile.inc -- Makefile dependencies for chapter 2 +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# + +CHAPTERFILES = $(CHAPTERFILES) \ + chapters/20-polynome/chapter.tex diff --git a/buch/chapters/20-polynome/chapter.tex b/buch/chapters/20-polynome/chapter.tex new file mode 100644 index 0000000..4156c15 --- /dev/null +++ b/buch/chapters/20-polynome/chapter.tex @@ -0,0 +1,9 @@ +% +% chapter.tex -- Kapitel über Polynome +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\chapter{Polynome +\label{buch:chapter:polynome}} +\lhead{Polynome} + diff --git a/buch/chapters/40-eigenwerte/Makefile b/buch/chapters/40-eigenwerte/Makefile new file mode 100644 index 0000000..57e1d66 --- /dev/null +++ b/buch/chapters/40-eigenwerte/Makefile @@ -0,0 +1,7 @@ +# +# Makefile -- Bilder für Kapitel 4 bauen +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +images: + diff --git a/buch/chapters/40-eigenwerte/Makefile.inc b/buch/chapters/40-eigenwerte/Makefile.inc new file mode 100644 index 0000000..f8050bf --- /dev/null +++ b/buch/chapters/40-eigenwerte/Makefile.inc @@ -0,0 +1,8 @@ +# +# Makefile.inc -- Makefile dependencies for chapter 4 +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# + +CHAPTERFILES = $(CHAPTERFILES) \ + chapters/40-eigenwerte/chapter.tex diff --git a/buch/chapters/40-eigenwerte/chapter.tex b/buch/chapters/40-eigenwerte/chapter.tex new file mode 100644 index 0000000..bc3fd98 --- /dev/null +++ b/buch/chapters/40-eigenwerte/chapter.tex @@ -0,0 +1,9 @@ +% +% chapter.tex -- Kapitel über endliche Körper +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\chapter{Eigenwerte und Eigenvektoren +\label{buch:chapter:eigenwerte-und-eigenvektoren}} +\lhead{Eigenwerte und Eigenvektoren} + diff --git a/buch/chapters/Makefile b/buch/chapters/Makefile new file mode 100644 index 0000000..7cf8137 --- /dev/null +++ b/buch/chapters/Makefile @@ -0,0 +1,20 @@ +# +# Makefile -- build stuff used in subdirectories +# +# (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +# +CHAPTERS = \ + 00-einleitung 10-vektorenmatrizen + +images: + @for d in ${CHAPTERS}; \ + do \ + ( \ + if [ -f $${d}/Makefile ]; \ + then \ + echo "make images in $${d}"; \ + cd $${d}; \ + make images; \ + fi; \ + ); \ + done diff --git a/buch/chapters/Makefile.inc b/buch/chapters/Makefile.inc new file mode 100644 index 0000000..660e6d6 --- /dev/null +++ b/buch/chapters/Makefile.inc @@ -0,0 +1,15 @@ +# +# Makefile.inc +# +# (c) 2020 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# + +CHAPTERFILES = \ + chapters/part1.tex \ + chapters/vorwort.tex + +include chapters/00-einleitung/Makefile.inc +include chapters/10-vektorenmatrizen/Makefile.inc +include chapters/20-polynome/Makefile.inc +include chapters/30-endlichekoerper/Makefile.inc +include chapters/40-eigenwerte/Makefile.inc diff --git a/buch/chapters/part1.tex b/buch/chapters/part1.tex new file mode 100644 index 0000000..153e486 --- /dev/null +++ b/buch/chapters/part1.tex @@ -0,0 +1,25 @@ +% +% part1.tex +% +% (c) 2018 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\begin{refsection} +\input{chapters/vorwort.tex} +\part{Grundlagen} +\input{chapters/00-einleitung/chapter.tex} +\input{chapters/10-vektorenmatrizen/chapter.tex} +\input{chapters/20-polynome/chapter.tex} +\input{chapters/30-endlichekoerper/chapter.tex} +\input{chapters/40-eigenwerte/chapter.tex} +%\begin{appendices} +%\end{appendices} +\vfill +\pagebreak +\ifodd\value{page}\else\null\clearpage\fi +\lhead{Literatur} +\rhead{} +\printbibliography[heading=subbibliography] +\label{buch:literatur} +\end{refsection} + + diff --git a/buch/chapters/references.bib b/buch/chapters/references.bib new file mode 100644 index 0000000..ab0b7ab --- /dev/null +++ b/buch/chapters/references.bib @@ -0,0 +1,90 @@ +% +% references.bib +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% + +@book{buch:mathsem-dgl, + title = {Mathematisches Seminar Differentialgleichungen}, + author = { Andreas M"uller and others }, + year = {2016}, +} + +@online{buch:fftw, + title = {Fastest Fourier Transform in the West}, + url = {http://www.fftw.org/}, + DAY = {23}, + MONTH = {july}, + YEAR = 2018 +} + +@online{buch:repo, + subtitle = {Source Code Repository}, + author = {Andreas Müller}, + url = {https://github.com/AndreasFMueller/SeminarNumerik.git}, + DAY = 6, + MONTH = {february}, + YEAR = 2020 +} + +@book{buch:henrici, + author = {Peter Henrici}, + title = {Essentials of numerical analysis}, + subtitle = {With pocket calculator demonstrations}, + year = 1982, + publisher = {John Wiley and Sons, Inc.}, + isbn = {0-471-05904-8} +} + +@online{buch:tartaglia, + title = {Niccolò Tartaglia}, + url = {https://de.wikipedia.org/wiki/Niccolò_Tartaglia}, + date = {2020-02-06}, + year = {2020}, + month = {2}, + day = {6} +} + +@online{buch:kahan-summation, + title = {Kahan summation algorithm}, + url = {https://en.wikipedia.org/wiki/Kahan_summation_algorithm}, + date = {2020-02-29}, + year = {2020}, + month = {2}, + day = {29} +} + +@book{buch:watkins, + title = {Fundamentals of Matrix Computations}, + author = {David S. Watkins}, + year = 2010, + publisher = {John Wiley and Sons, Inc.}, + edition = {3} +} + +@online{buch:lissajous, + title = {Makeing Shapes with PSLab Oscilloscope}, + author = {CloudyPadmal}, + year = 2018, + url = {https://blog.fossasia.org/making-shapes-with-pslab-oscilloscope/}, + DAY = 7, + month = 3, + year = 2020 +} +@book{buch:richardson, + title = {The emergence of numerical weather prediction: Richardson's dream}, + author = {Peter Lynch}, + year = 2006, + publisher = {Cambridge University Press}, + isbn = {978-0-52-185729-1} +} + +@book{buch:dieudonne, + title={Foundations of Modern Analysis}, + author={Jean Dieudonn{\'e}}, + number={Vol. 1}, + lccn={60008049}, + series={Dieudonn{\'e}, Jean: Treatise on analysis}, + year={1960}, + publisher={Academic Press} +} diff --git a/buch/chapters/vorwort.tex b/buch/chapters/vorwort.tex new file mode 100644 index 0000000..784fc15 --- /dev/null +++ b/buch/chapters/vorwort.tex @@ -0,0 +1,32 @@ +% +% vorwort.tex -- Vorwort zum Buch zum Seminar +% +% (c) 2019 Prof Dr Andreas Mueller, Hochschule Rapperswil +% +\chapter*{Vorwort} +\lhead{Vorwort} +\rhead{} +Dieses Buch entstand im Rahmen des Mathematischen Seminars +im Frühjahrssemester 2021 an der Ostschweizer Fachhochschule in Rapperswil. +Die Teilnehmer, Studierende der Studiengänge für Elektrotechnik, +Informatik und Bauingenieurwesen +der OST, erarbeiteten nach einer Einführung in das Themengebiet jeweils +einzelne Aspekte des Gebietes in Form einer Seminararbeit, über +deren Resultate sie auch in einem Vortrag informierten. + +Im Frühjahr 2021 war das Thema des Seminars die Matrizen. +Ziel war, die Vielfalt der Anwendungsmöglichkeiten dieser einfachen +Datenstruktur zu zeigen. + +In einigen Arbeiten wurde auch Code zur Demonstration der +besprochenen Methoden und Resultate geschrieben, soweit +möglich und sinnvoll wurde dieser Code im Github-Repository +\index{Github-Repository}% +dieses Kurses% +\footnote{\url{https://github.com/AndreasFMueller/SeminarMatrizen.git}} +\cite{buch:repo} +abgelegt. +Im genannten Repository findet sich auch der Source-Code dieses +Skriptes, es wird hier unter einer Creative Commons Lizenz +zur Verfügung gestellt. + diff --git a/buch/common/3dimagetemplate.tex b/buch/common/3dimagetemplate.tex new file mode 100644 index 0000000..5706a42 --- /dev/null +++ b/buch/common/3dimagetemplate.tex @@ -0,0 +1,37 @@ +% +% 3dimagetemplate.tex +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{times} +\usepackage{amsmath} +\usepackage{txfonts} +\usepackage[utf8]{inputenc} +\usepackage{graphics} +\usetikzlibrary{arrows,intersections,math} +\usepackage{ifthen} +\begin{document} + +\newboolean{showgrid} +\setboolean{showgrid}{false} +\def\breite{7} +\def\hoehe{4} + +\begin{tikzpicture}[>=latex,thick] + +% Povray Bild +\node at (0,0) {\includegraphics[width=14cm]{3dimage.jpg}}; + +% Gitter +\ifthenelse{\boolean{showgrid}}{ +\draw[step=0.1,line width=0.1pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw[step=0.5,line width=0.4pt] (-\breite,-\hoehe) grid (\breite, \hoehe); +\draw (-\breite,-\hoehe) grid (\breite, \hoehe); +\fill (0,0) circle[radius=0.05]; +}{} + +\end{tikzpicture} + +\end{document} + diff --git a/buch/common/Makefile.inc b/buch/common/Makefile.inc new file mode 100755 index 0000000..fec5a33 --- /dev/null +++ b/buch/common/Makefile.inc @@ -0,0 +1,52 @@ +# +# Makefile.inc -- gemeinsame Teile des Makefiles für das Buchprojekt +# +# (c) 2021 Prof Dr Andreas Mueller, OST Ostschweizer Fachhochschule +# + + +SUBDIRECTORIES = chapters + +.PHONY: images + +images: + for d in $(SUBDIRECTORIES); \ + do \ + (cd $${d}; make images); \ + done + +BUCHFILES = \ + common/macros.tex \ + common/lststyles.tex \ + common/packages.tex \ + common/titlepage.tex \ + common/teilnehmer.tex \ + $(CHAPTERS) \ + chapters/references.bib \ + $(PAPERFILES) + +THEMA_FILES = + +TEXFILES = $(BUCHFILES) $(THEMA_FILES) + +# References des ersten Teils + +buch.bbl: buch.aux + bibtex buch + +clean: cleansubdir + rm -f *.bbl *.aux *.log *.out *.run.xml *.pdf *.blg *.idx *.ind \ + *.ilg *.toc *.synctex.gz *.auxlock *.bak *-blx.bib *.dvi + +cleansubdir: + for d in $(SUBDIRECTORIES); \ + do \ + if [ -f $${d}/Makefile ]; \ + then \ + cd $${d}; make clean; cd ..; \ + fi; \ + done + +farbseiten.csv: farbseiten.txt + awk '{ printf("%d,", $$1) } END {printf("\n")}' farbseiten.txt \ + > farbseiten.csv diff --git a/buch/common/farbseiten.sh b/buch/common/farbseiten.sh new file mode 100644 index 0000000..afccf66 --- /dev/null +++ b/buch/common/farbseiten.sh @@ -0,0 +1,217 @@ +#! /bin/bsh +# +# farbseiten.sh -- Formattierung der Farbseiteninfo für die Druckerei +# +# (c) 2020 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +awk 'BEGIN { + result = "" + counter = 0 +} +{ + if (length(result) == 0) { + result = $1 + } else { + result = sprintf("%s,%d", result, $1) + } + counter++ +} +END { + printf("%s\n", result) + printf("Anzahl Farbseiten: %d\n", counter) +}' <<EOF +13 +16 +17 +19 +21 +23 +24 +25 +29 +30 +31 +34 +37 +42 +45 +49 +50 +52 +53 +55 +59 +65 +71 +72 +74 +76 +77 +78 +84 +85 +87 +88 +90 +91 +95 +100 +104 +107 +109 +110 +111 +113 +114 +116 +117 +120 +122 +123 +125 +140 +149 +150 +154 +155 +161 +162 +163 +165 +167 +170 +177 +187 +189 +190 +191 +192 +197 +204 +209 +210 +216 +217 +219 +220 +224 +225 +226 +228 +229 +230 +232 +233 +235 +236 +239 +241 +245 +246 +251 +266 +268 +269 +270 +271 +272 +273 +276 +278 +281 +284 +285 +286 +287 +288 +293 +300 +304 +305 +306 +307 +309 +310 +311 +312 +313 +316 +318 +319 +321 +324 +326 +328 +329 +332 +333 +334 +335 +336 +337 +338 +339 +340 +341 +342 +345 +347 +348 +349 +350 +352 +353 +357 +358 +359 +360 +365 +369 +370 +378 +387 +388 +389 +390 +391 +401 +404 +405 +406 +407 +408 +410 +411 +412 +414 +415 +416 +418 +420 +422 +423 +424 +425 +426 +427 +428 +434 +435 +436 +443 +447 +448 +449 +452 +455 +456 +457 +458 +460 +461 +469 +473 +474 +475 +481 +EOF diff --git a/buch/common/lststyles.tex b/buch/common/lststyles.tex new file mode 100644 index 0000000..b1105ed --- /dev/null +++ b/buch/common/lststyles.tex @@ -0,0 +1,139 @@ +% +% lststyles.tex -- styles for the listings package +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% + +% +% lststyle for Matlab +% +\usepackage{listings} +\usepackage{color} %red, green, blue, yellow, cyan, magenta, black, white +\definecolor{mygreen}{RGB}{28,172,0} % color values Red, Green, Blue +\definecolor{mylilas}{RGB}{170,55,241} + +\lstdefinestyle{Matlab}{ + numbers=left, + belowcaptionskip=1\baselineskip, + breaklines=true, + frame=L, + linewidth=13cm, + xleftmargin=1cm, + language=Matlab, + showstringspaces=false, + basicstyle=\footnotesize\ttfamily, + keywordstyle=\bfseries\color{green!40!black}, + commentstyle=\itshape\color{purple!40!black}, + identifierstyle=\color{blue}, + stringstyle=\color{orange}, + numberstyle=\ttfamily\tiny, + morestring=*[d]{"}, + numbersep=9pt, + captionpos=b +} +\lstdefinelanguage{Matlab}{ + keywords={function,global,zeros,switch,case,otherwise,end,sin,cos,cot,% + floor,ode45,hold,polarplot,for,if,else,norm,abs,diag,sqrt,randn,hess,format,short,long}, + sensitive=true +} + +% +% lst style for Maxima +% +\lstdefinelanguage{Maxima}{ + keywords={addrow,addcol,zeromatrix,ident,augcoefmatrix,ratsubst,sum,diff,% + ev,tex,with_stdout,nouns,express,depends,load,length,submatrix,div,grad,% + curl,matrix,invert,lambda,facsum,expand,false,then,if,else,subst,% + batchload,rootscontract,solve,part,assume,sqrt,integrate,abs,inf,exp,% + sin,cos,sinh,cosh,taylor,ratsimp}, + sensitive=true, + comment=[n][\itshape]{/*}{*/} +} +\lstdefinestyle{Maxima}{ + numbers=left, + belowcaptionskip=1\baselineskip, + breaklines=true, + frame=L, + linewidth=13cm, + xleftmargin=1cm, + language=Maxima, + showstringspaces=false, + basicstyle=\footnotesize\ttfamily, + keywordstyle=\bfseries\color{green!40!black}, + commentstyle=\itshape\color{purple!40!black}, + identifierstyle=\color{blue}, + stringstyle=\color{orange}, + numberstyle=\ttfamily\tiny + captionpos=b +} + +% +% lst style for Octave +% +\lstdefinelanguage{Octave}{ + keywords={function,global,size,zeros,switch,case,otherwise,end,sin,cos,cot,% + floor,ode45,hold,polarplot,endfunction,size,endswitch,cat,printf,% + for,endfor,if,return,endif,abs,while,endwhile}, + sensitive=true, +} + +\lstdefinestyle{Octave}{ + numbers=left, + abovecaptionskip=1\baselineskip, + captionpos=b, + breaklines=true, + frame=L, + linewidth=13cm, + xleftmargin=1cm, + language=Octave, + showstringspaces=false, + basicstyle=\footnotesize\ttfamily, + keywordstyle=\bfseries\color{green!40!black}, + commentstyle=\itshape\color{purple!40!black}, + identifierstyle=\color{blue}, + stringstyle=\color{orange}, + numberstyle=\ttfamily\tiny, +} + +% +% lst style for C +% +\lstdefinestyle{C}{ + numbers=left, + abovecaptionskip=1\baselineskip, + captionpos=b, + breaklines=true, + frame=L, + linewidth=13cm, + xleftmargin=1cm, + language=C, + showstringspaces=false, + basicstyle=\footnotesize\ttfamily, + keywordstyle=\bfseries\color{green!40!black}, + commentstyle=\itshape\color{purple!40!black}, + identifierstyle=\color{blue}, + stringstyle=\color{orange}, + numberstyle=\ttfamily\tiny, +} + +% +% lst style for Python +% +\lstdefinestyle{Python}{ + numbers=left, + abovecaptionskip=1\baselineskip, + captionpos=b, + breaklines=true, + frame=L, + linewidth=13cm, + xleftmargin=1cm, + language=Python, + showstringspaces=false, + basicstyle=\footnotesize\ttfamily, + keywordstyle=\bfseries\color{green!40!black}, + commentstyle=\itshape\color{purple!40!black}, + identifierstyle=\color{blue}, + stringstyle=\color{orange}, + numberstyle=\ttfamily\tiny +} + diff --git a/buch/common/macros.tex b/buch/common/macros.tex new file mode 100644 index 0000000..bc1c6ea --- /dev/null +++ b/buch/common/macros.tex @@ -0,0 +1,115 @@ +% +% macros.tex -- some common macro definitions +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\hypersetup{ + linktoc=all, + linkcolor=blue +} +\newcounter{beispiel} +\newenvironment{beispiele}{ +\bgroup\smallskip\parindent0pt\bf Beispiele\egroup + +\begin{list}{\arabic{beispiel}.} + {\usecounter{beispiel} + \setlength{\labelsep}{5mm} + \setlength{\rightmargin}{0pt} +}}{\end{list}} +\newcounter{uebungsaufgabezaehler} +% environment fuer uebungsaufgaben +\newenvironment{uebungsaufgaben}{% +}{% +\vfill\pagebreak} +\newenvironment{teilaufgaben}{ +\begin{enumerate} +\renewcommand{\labelenumi}{\alph{enumi})} +}{\end{enumerate}} +% Aufgabe +\newcounter{problemcounter}[chapter] +\def\aufgabenpath{chapters/uebungsaufgaben/} +\def\ainput#1{\input\aufgabenpath/#1} +\def\verbatimainput#1{\expandafter\verbatiminput{\aufgabenpath/#1}} +\def\aufgabetoplevel#1{% +\expandafter\def\expandafter\inputpath{#1}% +\let\aufgabepath=\inputpath +} +\def\includeagraphics[#1]#2{\expandafter\includegraphics[#1]{\aufgabepath#2}} +% \aufgabe +\renewcommand\theproblemcounter{\thechapter.\arabic{problemcounter}} +\newcommand{\uebungsaufgabe}[1]{% +\refstepcounter{problemcounter}% +\label{#1}% +\bigskip{\parindent0pt\strut}\hbox{\bf\theproblemcounter. }% +\expandafter\def\csname aufgabenpath\endcsname{\inputpath/}% +\expandafter\input{\aufgabenpath/#1.tex} +} +% linsys +\newcolumntype{\linsysR}{>{$}r<{$}} +\newcolumntype{\linsysL}{>{$}l<{$}} +\newcolumntype{\linsysC}{>{$}c<{$}} +\newenvironment{linsys}[1]{% +\begin{tabular}{*{#1}{\linsysR@{\;}\linsysC}@{\;}\linsysR}}% +{\end{tabular}} + +% Loesung +\def\swallow#1{ +%nothing +} +\NewEnviron{loesung}[1][Lösung]{% +\begin{proof}[#1]% +\renewcommand{\qedsymbol}{$\bigcirc$} +\BODY +\end{proof} +} +\NewEnviron{bewertung}{% +\begin{proof}[Bewertung]% +\renewcommand{\qedsymbol}{} +\BODY +\end{proof} +} +\NewEnviron{diskussion}{% +\begin{proof}[Diskussion]% +\renewcommand{\qedsymbol}{} +\BODY +\end{proof} +} +\NewEnviron{hinweis}{% +\begin{proof}[Hinweis]% +\renewcommand{\qedsymbol}{} +\BODY +\end{proof} +} +\def\keineloesungen{% +\RenewEnviron{loesung}{\relax} +\RenewEnviron{bewertung}{\relax} +\RenewEnviron{diskussion}{\relax} +} +\newenvironment{beispiel}{% +\begin{proof}[Beispiel]% +\renewcommand{\qedsymbol}{$\bigcirc$} +}{\end{proof}} + +\allowdisplaybreaks + +\lhead{Inhaltsverzeichnis} +\rhead{} +\tableofcontents +\newtheorem{satz}{Satz}[chapter] +\newtheorem{hilfssatz}[satz]{Hilfssatz} +\newtheorem{korollar}[satz]{Korollar} +\newtheorem{lemma}[satz]{Lemma} +\newtheorem{definition}[satz]{Definition} +\newtheorem{annahme}[satz]{Annahme} +\newtheorem{problem}[satz]{Problem} +\newtheorem{aufgabe}[satz]{Aufgabe} +\newtheorem*{problem*}{Problem} +\newtheorem{forderung}{Forderung}[chapter] +\newtheorem{konsequenz}[satz]{Konsequenz} +\newtheorem{algorithmus}[satz]{Algorithmus} +\renewcommand{\floatpagefraction}{0.7} + +\definecolor{darkgreen}{rgb}{0,0.6,0} +\definecolor{darkred}{rgb}{0.8,0,0} +\definecolor{orange}{rgb}{1,0.6,0} + diff --git a/buch/common/packages.tex b/buch/common/packages.tex new file mode 100644 index 0000000..f3c0bb8 --- /dev/null +++ b/buch/common/packages.tex @@ -0,0 +1,72 @@ +% +% packages.tex -- common packages +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\usepackage{etex} +\usepackage{geometry} +\geometry{papersize={170mm,240mm},total={140mm,200mm},top=21mm,bindingoffset=10mm} +\usepackage[english,ngerman]{babel} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{cancel} +\usepackage{times} +\usepackage{amsmath,amscd} +\usepackage{amssymb} +\usepackage{amsfonts} +\usepackage{amsthm} +\usepackage{graphicx} +\usepackage{fancyhdr} +\usepackage{textcomp} +\usepackage{txfonts} +\newcommand\hmmax{0} +\newcommand\bmmax{0} +\usepackage{bm} +\usepackage{epic} +\usepackage{verbatim} +%\usepackage{suffix} +\usepackage{paralist} +\usepackage{makeidx} +\usepackage{array} +\usepackage{hyperref} +\usepackage{subfigure} +\usepackage{tikz} +\usepackage{pgfplots} +\usepackage{pgfplotstable} +\usepackage{pdftexcmds} +\usepackage{pgfmath} +\usepackage[autostyle=false,english=american]{csquotes} +\usepackage{wasysym} +\usepackage{environ} +\usepackage{appendix} +\usepackage{placeins} +\usepackage[all]{xy} +\usetikzlibrary{calc,intersections,through,backgrounds,graphs,positioning,shapes,arrows,fit,math} +\usetikzlibrary{patterns,decorations.pathreplacing} +\usetikzlibrary{decorations.pathreplacing} +\usetikzlibrary{external} +\usetikzlibrary{datavisualization} +\usepackage[europeanvoltages, + europeancurrents, + europeanresistors, % rectangular shape + americaninductors, % "4-bumbs" shape + europeanports, % rectangular logic ports + siunitx, % #1<#2> + emptydiodes, + noarrowmos, + smartlabels] % lables are rotated in a smart way + {circuitikz} % +\usepackage{siunitx} +\usepackage{tabularx} +\usetikzlibrary{arrows} +\usepackage{algpseudocode} +\usepackage{algorithm} +\usepackage{gensymb} +\usepackage{mathtools} + +% import the listing styles +\input{common/lststyles.tex} + +\usepackage{caption} +\usepackage[mode=buildnew]{standalone} +\usepackage[backend=bibtex]{biblatex} diff --git a/buch/common/teilnehmer.tex b/buch/common/teilnehmer.tex new file mode 100644 index 0000000..b2100b2 --- /dev/null +++ b/buch/common/teilnehmer.tex @@ -0,0 +1,25 @@ +% +% teilnehmer.tex -- Liste der Seminarteilnehmer auf der Titelseite +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% + +Joshua Baer, % E +Marius Baumann, % E +Reto Fritsche, % E +Ahmet Güzel%, % E +\\ +Pascal Honegger, % I +Alain Keller, % E +Jan Marbach%, % E +\\ +Andrea Mozzin Vellen, % E +Naoki Pross, % E +Pascal Andreas Schmid%, % B +\\ +Thierry Schwaller, % E +Michael Steiner, % E +Tim Tönz, % E +Fabio Viecelli%, % B +\\ +Lukas Zogg%, % B diff --git a/buch/common/tikztemplate.tex b/buch/common/tikztemplate.tex new file mode 100644 index 0000000..72d0f34 --- /dev/null +++ b/buch/common/tikztemplate.tex @@ -0,0 +1,21 @@ +% +% tikztemplate.tex -- template for standalon tikz images +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\usepackage{csvsimple} +\usetikzlibrary{arrows,intersections,math} +\begin{document} +\def\skala{1} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +% add image content here + +\end{tikzpicture} +\end{document} + diff --git a/buch/common/titlepage.tex b/buch/common/titlepage.tex new file mode 100644 index 0000000..f4f833f --- /dev/null +++ b/buch/common/titlepage.tex @@ -0,0 +1,34 @@ +% +% titlepage.tex +% +\pagestyle{fancy} +\frontmatter +\newcommand\HRule{\noindent\rule{\linewidth}{1.5pt}} +\begin{titlepage} +\vspace*{\stretch{1}} +\HRule +\vspace*{5pt} +\begin{flushright} +{ +\LARGE +Mathematisches Seminar\\ +\vspace*{20pt} +\Huge +Matrizen% +}% +\vspace*{5pt} +\end{flushright} +\HRule +\begin{flushright} +\vspace{60pt} +\Large +Leitung: Andreas Müller und Roy Seitz\\ +\vspace{40pt} +\Large +\input{common/teilnehmer.tex} +\end{flushright} +\vspace*{\stretch{2}} +\begin{center} +OST Ostschweizer Fachhochschule, Rapperswil, 2021 +\end{center} +\end{titlepage} diff --git a/buch/papers/0-README b/buch/papers/0-README new file mode 100644 index 0000000..b5fdc34 --- /dev/null +++ b/buch/papers/0-README @@ -0,0 +1,4 @@ +Dieses Verzeichnes enthält für jedes Seminarthema ein Verzeichnis, indem +die Files für die zugehörige Seminararbeit abgelegt werden können. + + diff --git a/buch/papers/000template/Makefile b/buch/papers/000template/Makefile new file mode 100644 index 0000000..9126d2d --- /dev/null +++ b/buch/papers/000template/Makefile @@ -0,0 +1,9 @@ +# +# Makefile -- make file for the paper 000template +# +# (c) 2020 Prof Dr Andreas Mueller +# + +images: + @echo "no images to be created in 000template" + diff --git a/buch/papers/000template/Makefile.inc b/buch/papers/000template/Makefile.inc new file mode 100644 index 0000000..c6daf62 --- /dev/null +++ b/buch/papers/000template/Makefile.inc @@ -0,0 +1,14 @@ +# +# Makefile.inc -- dependencies for this article +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +dependencies-000template = \ + papers/000template/packages.tex \ + papers/000template/main.tex \ + papers/000template/references.bib \ + papers/000template/einleitung.tex \ + papers/000template/problemstellung.tex \ + papers/000template/loesung.tex \ + papers/000template/folgerungen.tex + diff --git a/buch/papers/000template/einleitung.tex b/buch/papers/000template/einleitung.tex new file mode 100644 index 0000000..9e944f1 --- /dev/null +++ b/buch/papers/000template/einleitung.tex @@ -0,0 +1,22 @@ +% +% einleitung.tex -- Beispiel-File für die Einleitung +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\section{Einleitung\label{000template:section:einleitung}} +\rhead{Einleitung} +Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam +nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam +erat, sed diam voluptua \cite{000template:bibtex}. +At vero eos et accusam et justo duo dolores et ea rebum. +Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum +dolor sit amet. + +Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam +nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam +erat, sed diam voluptua. +At vero eos et accusam et justo duo dolores et ea rebum. Stet clita +kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit +amet. + + diff --git a/buch/papers/000template/folgerungen.tex b/buch/papers/000template/folgerungen.tex new file mode 100644 index 0000000..587657d --- /dev/null +++ b/buch/papers/000template/folgerungen.tex @@ -0,0 +1,40 @@ +% +% problemstellung.tex -- Beispiel-File für die Beschreibung des Problems +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\section{Folgerungen +\label{000template:section:folgerungen}} +\rhead{Folgerungen} +Sed ut perspiciatis unde omnis iste natus error sit voluptatem +accusantium doloremque laudantium, totam rem aperiam, eaque ipsa +quae ab illo inventore veritatis et quasi architecto beatae vitae +dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit +aspernatur aut odit aut fugit, sed quia consequuntur magni dolores +eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam +est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci +velit, sed quia non numquam eius modi tempora incidunt ut labore +et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima +veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, +nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure +reprehenderit qui in ea voluptate velit esse quam nihil molestiae +consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla +pariatur? + +\subsection{De finibus bonorum et malorum +\label{000template:subsection:malorum}} +At vero eos et accusamus et iusto odio dignissimos ducimus qui +blanditiis praesentium voluptatum deleniti atque corrupti quos +dolores et quas molestias excepturi sint occaecati cupiditate non +provident, similique sunt in culpa qui officia deserunt mollitia +animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis +est et expedita distinctio. Nam libero tempore, cum soluta nobis +est eligendi optio cumque nihil impedit quo minus id quod maxime +placeat facere possimus, omnis voluptas assumenda est, omnis dolor +repellendus. Temporibus autem quibusdam et aut officiis debitis aut +rerum necessitatibus saepe eveniet ut et voluptates repudiandae +sint et molestiae non recusandae. Itaque earum rerum hic tenetur a +sapiente delectus, ut aut reiciendis voluptatibus maiores alias +consequatur aut perferendis doloribus asperiores repellat. + + diff --git a/buch/papers/000template/loesung.tex b/buch/papers/000template/loesung.tex new file mode 100644 index 0000000..46fee58 --- /dev/null +++ b/buch/papers/000template/loesung.tex @@ -0,0 +1,40 @@ +% +% loesung.tex -- Beispiel-File für die Beschreibung der Loesung +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\section{Lösung +\label{000template:section:loesung}} +\rhead{Lösung} +Sed ut perspiciatis unde omnis iste natus error sit voluptatem +accusantium doloremque laudantium, totam rem aperiam, eaque ipsa +quae ab illo inventore veritatis et quasi architecto beatae vitae +dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit +aspernatur aut odit aut fugit, sed quia consequuntur magni dolores +eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam +est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci +velit, sed quia non numquam eius modi tempora incidunt ut labore +et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima +veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, +nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure +reprehenderit qui in ea voluptate velit esse quam nihil molestiae +consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla +pariatur? + +\subsection{De finibus bonorum et malorum +\label{000template:subsection:bonorum}} +At vero eos et accusamus et iusto odio dignissimos ducimus qui +blanditiis praesentium voluptatum deleniti atque corrupti quos +dolores et quas molestias excepturi sint occaecati cupiditate non +provident, similique sunt in culpa qui officia deserunt mollitia +animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis +est et expedita distinctio. Nam libero tempore, cum soluta nobis +est eligendi optio cumque nihil impedit quo minus id quod maxime +placeat facere possimus, omnis voluptas assumenda est, omnis dolor +repellendus. Temporibus autem quibusdam et aut officiis debitis aut +rerum necessitatibus saepe eveniet ut et voluptates repudiandae +sint et molestiae non recusandae. Itaque earum rerum hic tenetur a +sapiente delectus, ut aut reiciendis voluptatibus maiores alias +consequatur aut perferendis doloribus asperiores repellat. + + diff --git a/buch/papers/000template/main.tex b/buch/papers/000template/main.tex new file mode 100644 index 0000000..75a7422 --- /dev/null +++ b/buch/papers/000template/main.tex @@ -0,0 +1,36 @@ +% +% main.tex -- Paper zum Thema <000template> +% +% (c) 2020 Hochschule Rapperswil +% +\chapter{Thema\label{chapter:000template}} +\lhead{Thema} +\begin{refsection} +\chapterauthor{Hans Muster} + +Ein paar Hinweise für die korrekte Formatierung des Textes +\begin{itemize} +\item +Absätze werden gebildet, indem man eine Leerzeile einfügt. +Die Verwendung von \verb+\\+ ist nur in Tabellen und Arrays gestattet. +\item +Die explizite Platzierung von Bildern ist nicht erlaubt, entsprechende +Optionen werden gelöscht. +Verwenden Sie Labels und Verweise, um auf Bilder hinzuweisen. +\item +Beginnen Sie jeden Satz auf einer neuen Zeile. +Damit ermöglichen Sie dem Versionsverwaltungssysteme, Änderungen +in verschiedenen Sätzen von verschiedenen Autoren ohne Konflikt +anzuwenden. +\item +Bilden Sie auch für Formeln kurze Zeilen, einerseits der besseren +Übersicht wegen, aber auch um GIT die Arbeit zu erleichtern. +\end{itemize} + +\input{papers/000template/einleitung.tex} +\input{papers/000template/problemstellung.tex} +\input{papers/000template/loesung.tex} +\input{papers/000template/folgerungen.tex} + +\printbibliography[heading=subbibliography] +\end{refsection} diff --git a/buch/papers/000template/packages.tex b/buch/papers/000template/packages.tex new file mode 100644 index 0000000..7cd2a3c --- /dev/null +++ b/buch/papers/000template/packages.tex @@ -0,0 +1,10 @@ +% +% packages.tex -- packages required by the paper 000template +% +% (c) 2019 Prof Dr Andreas Müller, Hochschule Rapperswil +% + +% if your paper needs special packages, add package commands as in the +% following example +%\usepackage{packagename} + diff --git a/buch/papers/000template/problemstellung.tex b/buch/papers/000template/problemstellung.tex new file mode 100644 index 0000000..dff1b18 --- /dev/null +++ b/buch/papers/000template/problemstellung.tex @@ -0,0 +1,55 @@ +% +% problemstellung.tex -- Beispiel-File für die Beschreibung des Problems +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\section{Problemstellung +\label{000template:section:problemstellung}} +\rhead{Problemstellung} +Sed ut perspiciatis unde omnis iste natus error sit voluptatem +accusantium doloremque laudantium, totam rem aperiam, eaque ipsa +quae ab illo inventore veritatis et quasi architecto beatae vitae +dicta sunt explicabo. +Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit +aut fugit, sed quia consequuntur magni dolores eos qui ratione +voluptatem sequi nesciunt +\begin{equation} +\int_a^b x^2\, dx += +\left[ \frac13 x^3 \right]_a^b += +\frac{b^3-a^3}3. +\label{000template:equation1} +\end{equation} +Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, +consectetur, adipisci velit, sed quia non numquam eius modi tempora +incidunt ut labore et dolore magnam aliquam quaerat voluptatem. + +Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis +suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? +Quis autem vel eum iure reprehenderit qui in ea voluptate velit +esse quam nihil molestiae consequatur, vel illum qui dolorem eum +fugiat quo voluptas nulla pariatur? + +\subsection{De finibus bonorum et malorum +\label{000template:subsection:finibus}} +At vero eos et accusamus et iusto odio dignissimos ducimus qui +blanditiis praesentium voluptatum deleniti atque corrupti quos +dolores et quas molestias excepturi sint occaecati cupiditate non +provident, similique sunt in culpa qui officia deserunt mollitia +animi, id est laborum et dolorum fuga \eqref{000tempmlate:equation1}. + +Et harum quidem rerum facilis est et expedita distinctio +\ref{000template:section:loesung}. +Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil +impedit quo minus id quod maxime placeat facere possimus, omnis +voluptas assumenda est, omnis dolor repellendus +\ref{000template:section:folgerung}. +Temporibus autem quibusdam et aut officiis debitis aut rerum +necessitatibus saepe eveniet ut et voluptates repudiandae sint et +molestiae non recusandae. +Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis +voluptatibus maiores alias consequatur aut perferendis doloribus +asperiores repellat. + + diff --git a/buch/papers/000template/references.bib b/buch/papers/000template/references.bib new file mode 100644 index 0000000..fada201 --- /dev/null +++ b/buch/papers/000template/references.bib @@ -0,0 +1,35 @@ +% +% references.bib -- Bibliography file for the paper 000template +% +% (c) 2020 Autor, Hochschule Rapperswil +% + +@online{000template:bibtex, + title = {BibTeX}, + url = {https://de.wikipedia.org/wiki/BibTeX}, + date = {2020-02-06}, + year = {2020}, + month = {2}, + day = {6} +} + +@book{000template:numerical-analysis, + title = {Numerical Analysis}, + author = {David Kincaid and Ward Cheney}, + publisher = {American Mathematical Society}, + year = {2002}, + isbn = {978-8-8218-4788-6}, + inseries = {Pure and applied undegraduate texts}, + volume = {2} +} + +@article{000template:mendezmueller, + author = { Tabea Méndez and Andreas Müller }, + title = { Noncommutative harmonic analysis and image registration }, + journal = { Appl. Comput. Harmon. Anal.}, + year = 2019, + volume = 47, + pages = {607--627}, + url = {https://doi.org/10.1016/j.acha.2017.11.004} +} + diff --git a/buch/papers/common/Makefile.inc b/buch/papers/common/Makefile.inc new file mode 100644 index 0000000..831686d --- /dev/null +++ b/buch/papers/common/Makefile.inc @@ -0,0 +1,27 @@ +# +# Makefile.inc -- Makefile Targets und Variablen für Papers +# +# Achtung: dieses File wird erzeugt vom Skript scripts/mkmakefile +# +# (c) 2020 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +PAPERFILES = \ + papers/part2.tex \ + papers/uebersicht.tex \ + papers/000template/main.tex \ + +buch1-blx.bbl: buch1-blx.aux + bibtex buch1-blx + + +BLXFILES = buch.bbl \ + buch1-blx.bbl \ + + +PAPER_DIRECTORIES = \ + 000template \ + +PAPER_MAKEFILEINC = \ + papers/000template/Makefile.inc \ + + diff --git a/buch/papers/common/README b/buch/papers/common/README new file mode 100644 index 0000000..09e3854 --- /dev/null +++ b/buch/papers/common/README @@ -0,0 +1,4 @@ +This directory mainly contains files generated by scripts in the scripts +directory. Most of them depend on the file paperlist that contains short +names for directories containing individual papers. + diff --git a/buch/papers/common/addbibresources.tex b/buch/papers/common/addbibresources.tex new file mode 100644 index 0000000..d3976c7 --- /dev/null +++ b/buch/papers/common/addbibresources.tex @@ -0,0 +1,6 @@ +% +% addbibresources.tex -- file to add all bib resources +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\addbibresource{papers/000template/references.bib} diff --git a/buch/papers/common/addpackages.tex b/buch/papers/common/addpackages.tex new file mode 100644 index 0000000..7683c16 --- /dev/null +++ b/buch/papers/common/addpackages.tex @@ -0,0 +1,6 @@ +% +% addpackages.tex -- file to add all paper packages files +% +% (c) 2019 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\input{papers/000template/packages.tex} diff --git a/buch/papers/common/addpapers.tex b/buch/papers/common/addpapers.tex new file mode 100644 index 0000000..27baa8b --- /dev/null +++ b/buch/papers/common/addpapers.tex @@ -0,0 +1,6 @@ +% +% addpapers.tex -- file to add all paper main files +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\input{papers/000template/main.tex} diff --git a/buch/papers/common/includes.inc b/buch/papers/common/includes.inc new file mode 100644 index 0000000..8ef798e --- /dev/null +++ b/buch/papers/common/includes.inc @@ -0,0 +1,6 @@ +include papers/000template/Makefile.inc + +TEXFILES = \ + $(dependencies-000template) \ + + diff --git a/buch/papers/common/paperlist b/buch/papers/common/paperlist new file mode 100644 index 0000000..ed0f06a --- /dev/null +++ b/buch/papers/common/paperlist @@ -0,0 +1 @@ +000template diff --git a/buch/papers/part2.tex b/buch/papers/part2.tex new file mode 100644 index 0000000..33e2f4c --- /dev/null +++ b/buch/papers/part2.tex @@ -0,0 +1,11 @@ +% +% part2.tex -- format the second part +% +\part{Anwendungen und weiterführende Themen} +\lhead{Anwendungen} +\rhead{} +\input{papers/uebersicht.tex} +\def\chapterauthor#1{{\large #1}\bigskip\bigskip} +% einzelne Artikel +\input{papers/common/addpapers.tex} + diff --git a/buch/papers/scripts/mkbibresources b/buch/papers/scripts/mkbibresources new file mode 100644 index 0000000..ecede2b --- /dev/null +++ b/buch/papers/scripts/mkbibresources @@ -0,0 +1,16 @@ +# +# mkbibresources -- this script builds the addbibresources.tex file +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +awk 'BEGIN { + printf("%%\n") + printf("%% addbibresources.tex -- file to add all bib resources\n") + printf("%%\n") + printf("%% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil\n") + printf("%%\n") +} +{ + printf("\\addbibresource{papers/%s/references.bib}\n", $1) +}' common/paperlist > common/addbibresources.tex + diff --git a/buch/papers/scripts/mkmakefile b/buch/papers/scripts/mkmakefile new file mode 100644 index 0000000..9590119 --- /dev/null +++ b/buch/papers/scripts/mkmakefile @@ -0,0 +1,95 @@ +# +# mkmakefile -- build the Makefile.inc for all the papers +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# + +# +# Header of the Makefile.inc +# +cat >common/Makefile.inc <<EOF +# +# Makefile.inc -- Makefile Targets und Variablen für Papers +# +# Achtung: dieses File wird erzeugt vom Skript scripts/mkmakefile +# +# (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +# +EOF + +# +# add dependency variables for the main paper files +# +awk 'BEGIN { + printf("PAPERFILES = \\\n") + printf("\tpapers/part2.tex \\\n") + printf("\tpapers/uebersicht.tex \\\n") +} +{ + printf("\tpapers/%s/main.tex \\\n", $1) +} +END { + printf("\t\n") +}' common/paperlist >> common/Makefile.inc + +# +# generate bibliographic dependency variables and commands +# +awk 'BEGIN { + counter=1 +} +{ + printf("buch%d-blx.bbl:\tbuch%d-blx.aux\n", counter, counter) + printf("\tbibtex buch%d-blx\n\n", counter) + counter++ +} +END { + printf("buch%d-blx.bbl:\tbuch%d-blx.aux\n", counter, counter) + printf("\tbibtex buch%d-blx\n\n", counter) + printf("BLXFILES = buch.bbl \\\n") + for (i = 1; i <= counter; i++) { + printf("\tbuch%d-blx.bbl \\\n", i) + } + #printf("\tbuch%d-blx.bbl\n", i) + printf("\n") +}' common/paperlist >> common/Makefile.inc + +# +# generate a directory list for +# +awk 'BEGIN { + printf("PAPER_DIRECTORIES = \\\n") +} +{ + printf("\t%s \\\n", $1) +} +END { + printf("\t\n") +}' common/paperlist >> common/Makefile.inc + +# +# generate a list of Makefile.inc to be used by the top level makefile +# +awk 'BEGIN { + printf("PAPER_MAKEFILEINC = \\\n") +} +{ + printf("\tpapers/%s/Makefile.inc \\\n", $1) +} +END { + printf("\t\n") +}' common/paperlist >> common/Makefile.inc + +# +# add include directives for all papers +# +awk '{ + printf("include papers/%s/Makefile.inc\n", $1) + texfiles = sprintf("%s\t$(dependencies-%s) \\\n", texfiles, $1); +} +END { + printf("\n") + printf("TEXFILES = \\\n") + printf("%s\n", texfiles) +}' common/paperlist > common/includes.inc + diff --git a/buch/papers/scripts/mkpackages b/buch/papers/scripts/mkpackages new file mode 100644 index 0000000..a9c13fd --- /dev/null +++ b/buch/papers/scripts/mkpackages @@ -0,0 +1,16 @@ +# +# mkpackages -- this script builds the package inclusions for all papers +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +awk 'BEGIN { + printf("%%\n") + printf("%% addpackages.tex -- file to add all paper packages files\n") + printf("%%\n") + printf("%% (c) 2019 Prof Dr Andreas Müller, Hochschule Rapperswil\n") + printf("%%\n") +} +{ + printf("\\input{papers/%s/packages.tex}\n", $1) +}' common/paperlist > common/addpackages.tex + diff --git a/buch/papers/scripts/mkpapers b/buch/papers/scripts/mkpapers new file mode 100644 index 0000000..2395f09 --- /dev/null +++ b/buch/papers/scripts/mkpapers @@ -0,0 +1,16 @@ +# +# mkpapers -- this script builds the paper inclusion commands +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +awk 'BEGIN { + printf("%%\n") + printf("%% addpapers.tex -- file to add all paper main files\n") + printf("%%\n") + printf("%% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil\n") + printf("%%\n") +} +{ + printf("\\input{papers/%s/main.tex}\n", $1) +}' common/paperlist > common/addpapers.tex + diff --git a/buch/papers/scripts/mktemplate b/buch/papers/scripts/mktemplate new file mode 100644 index 0000000..2307e3e --- /dev/null +++ b/buch/papers/scripts/mktemplate @@ -0,0 +1,37 @@ +# +# mktemplate -- generate empty project files +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# + +# make sure we have a target argument +if [ $# -lt 1 ] +then + echo "paper short name missing" >&2 + exit 1 +fi + +target=${1:-test} + +if [ -z "${target}" ] +then + echo "target name empty" >&2 + exit 1 +fi + +# generate the directory +if [ ! -d ${target} ] +then + mkdir ${target} +fi + +FILES="Makefile.inc Makefile main.tex packages.tex references.bib" +SECTIONS="einleitung.tex problemstellung.tex loesung.tex folgerungen.tex" + +for file in ${FILES} ${SECTIONS} +do + echo "generating ${target}/${file}" + sed -e 's/000template/'"${target}"'/g' < 000template/${file} \ + > ${target}/${file} +done + diff --git a/buch/papers/uebersicht.tex b/buch/papers/uebersicht.tex new file mode 100644 index 0000000..b809892 --- /dev/null +++ b/buch/papers/uebersicht.tex @@ -0,0 +1,14 @@ +% +% uebersicht.tex -- Uebersicht ueber die Seminar-Arbeiten +% +% (c) 2021 Prof Dr Andreas Mueller, OST Ostschweizer Fachhochschule +% +\chapter*{Übersicht} +\lhead{Übersicht} +\rhead{} +\label{buch:uebersicht} +Im zweiten Teil kommen die Teilnehmer des Seminars selbst zu Wort. +Die im ersten Teil dargelegten mathematischen Methoden und +grundlegenden Modelle werden dabei verfeinert, verallgemeinert +und auch numerisch überprüft. + diff --git a/buch/splitpapers b/buch/splitpapers new file mode 100755 index 0000000..9ae5aae --- /dev/null +++ b/buch/splitpapers @@ -0,0 +1,45 @@ +#! /bin/bash +# +# splitpapers -- split PDF into one file per chapter +# +# (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +# +if [ ! -f buch.aux ] +then + echo "file buch.aux missing" + exit 1 +fi + +if [ ! -d separata ] +then + mkdir separata +fi + +awk 'BEGIN { + offsetpage = 10 + startpage = 0 + identifier = "" + chapterno = 0 +} +/newlabel{chapter:/ { + s = substr($0, 19, length($0) - 19) + i = match(s, "}{{") + newidentifier = substr(s, 1, i-1) + s = substr(s, i+3, length(s)-i-3) + i = match(s, "}{") + newchapterno = int(substr(s, 1, i)) + s = substr(s, i+2, length(s)-i-2) + i = match(s, "}{") + newpage = int(substr(s, 1, i)) + if (chapterno > 7) { + printf("pdfjam --outfile separata/%s.pdf buch.pdf %d-%d\n", identifier, startpage + offsetpage, newpage + offsetpage - 1) + } + startpage = newpage + chapterno = newchapterno + identifier = newidentifier +} +END { + printf("pdfjam --outfile separata/%s.pdf buch.pdf %d-\n", identifier, startpage + offsetpage) +}' buch.aux | bash + + |