aboutsummaryrefslogtreecommitdiffstats
path: root/buch
diff options
context:
space:
mode:
authorAndreas Müller <andreas.mueller@ost.ch>2021-06-04 16:46:46 +0200
committerAndreas Müller <andreas.mueller@ost.ch>2021-06-04 16:46:46 +0200
commit4752a00668c8de082d467bbdb8ba47f3cb0091b4 (patch)
treea3c3782662c1f8ee5e54c40eb9b9d62d30f90c74 /buch
parentadd ideas file (diff)
downloadSeminarSpezielleFunktionen-4752a00668c8de082d467bbdb8ba47f3cb0091b4.tar.gz
SeminarSpezielleFunktionen-4752a00668c8de082d467bbdb8ba47f3cb0091b4.zip
add basic file infrastructure for special function book
Diffstat (limited to '')
-rwxr-xr-xbuch/Makefile50
-rw-r--r--buch/aufgaben1.tex13
-rw-r--r--buch/aufgaben2.tex11
-rw-r--r--buch/aufgaben3.tex9
-rw-r--r--buch/buch.tex49
-rw-r--r--buch/chapters/Makefile20
-rw-r--r--buch/chapters/Makefile.inc22
-rw-r--r--buch/chapters/part1.tex32
-rw-r--r--buch/chapters/references.bib141
-rw-r--r--buch/chapters/vorwort.tex35
-rw-r--r--buch/common/3dimagetemplate.tex37
-rwxr-xr-xbuch/common/Makefile.inc52
-rw-r--r--buch/common/farbseiten.sh217
-rw-r--r--buch/common/lststyles.tex139
-rw-r--r--buch/common/macros.tex116
-rw-r--r--buch/common/packages.tex74
-rw-r--r--buch/common/teilnehmer.tex27
-rw-r--r--buch/common/test-common.tex73
-rw-r--r--buch/common/test1.tex21
-rw-r--r--buch/common/test2.tex21
-rw-r--r--buch/common/test3.tex21
-rw-r--r--buch/common/tikztemplate.tex21
-rw-r--r--buch/common/titlepage.tex34
-rw-r--r--buch/papers/0-README4
-rw-r--r--buch/papers/000template/Makefile9
-rw-r--r--buch/papers/000template/Makefile.inc14
-rw-r--r--buch/papers/000template/main.tex36
-rw-r--r--buch/papers/000template/packages.tex10
-rw-r--r--buch/papers/000template/references.bib35
-rw-r--r--buch/papers/000template/teil0.tex22
-rw-r--r--buch/papers/000template/teil1.tex55
-rw-r--r--buch/papers/000template/teil2.tex40
-rw-r--r--buch/papers/000template/teil3.tex40
-rw-r--r--buch/papers/common/Makefile.inc28
-rw-r--r--buch/papers/common/README4
-rw-r--r--buch/papers/common/addbibresources.tex6
-rw-r--r--buch/papers/common/addpackages.tex6
-rw-r--r--buch/papers/common/addpapers.tex6
-rw-r--r--buch/papers/common/includes.inc5
-rw-r--r--buch/papers/common/paperlist1
-rw-r--r--buch/papers/part2.tex11
-rw-r--r--buch/papers/scripts/mkbibresources16
-rw-r--r--buch/papers/scripts/mkmakefile95
-rw-r--r--buch/papers/scripts/mkpackages16
-rw-r--r--buch/papers/scripts/mkpapers16
-rw-r--r--buch/papers/scripts/mktemplate37
-rw-r--r--buch/papers/uebersicht.tex14
47 files changed, 1761 insertions, 0 deletions
diff --git a/buch/Makefile b/buch/Makefile
new file mode 100755
index 0000000..727c7c7
--- /dev/null
+++ b/buch/Makefile
@@ -0,0 +1,50 @@
+#
+# Makefile zum Skript ueber Spezielle Funktionen
+#
+# (c) 2021 Prof Dr Andreas Mueller, OST Ostschweizer Fachhochschule
+#
+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
+
+speziellefunktionen.pdf:
+ pdfjam --outfile speziellefunktionen.pdf \
+ ../cover/front.pdf 1,{} \
+ buch.pdf 1-504 \
+ ../cover/back.pdf {},1
+
+#
+# This Makefile can also construct the short tests
+#
+tests: test1.pdf test2.pdf test3.pdf
+
+test1.pdf: common/test-common.tex common/test1.tex aufgaben1.tex
+ pdflatex common/test1.tex
+
+test2.pdf: common/test-common.tex common/test1.tex aufgaben2.tex
+ pdflatex common/test2.tex
+
+test3.pdf: common/test-common.tex common/test1.tex aufgaben3.tex
+ pdflatex common/test3.tex
+
diff --git a/buch/aufgaben1.tex b/buch/aufgaben1.tex
new file mode 100644
index 0000000..cafed06
--- /dev/null
+++ b/buch/aufgaben1.tex
@@ -0,0 +1,13 @@
+%
+% aufgaben1.tex -- Aufgaben für Test 1
+%
+% (c) 2022 Prof. Dr. Andreas Mueller, OST
+%
+
+%\item
+%\input chapters/30-endlichekoerper/uebungsaufgaben/3003.tex
+%\item
+%\input chapters/30-endlichekoerper/uebungsaufgaben/3004.tex
+%\item
+%\input chapters/30-endlichekoerper/uebungsaufgaben/3005.tex
+
diff --git a/buch/aufgaben2.tex b/buch/aufgaben2.tex
new file mode 100644
index 0000000..bed14fb
--- /dev/null
+++ b/buch/aufgaben2.tex
@@ -0,0 +1,11 @@
+%
+% aufgaben2.tex -- Aufgaben für Test 2
+%
+% (c) 2022 Prof. Dr. Andreas Mueller, OST
+%
+
+%\item
+%\input chapters/40-eigenwerte/uebungsaufgaben/4004.tex
+%\item
+%\input chapters/40-eigenwerte/uebungsaufgaben/4005.tex
+
diff --git a/buch/aufgaben3.tex b/buch/aufgaben3.tex
new file mode 100644
index 0000000..a39fc19
--- /dev/null
+++ b/buch/aufgaben3.tex
@@ -0,0 +1,9 @@
+%
+% aufgaben3.tex -- Aufgaben für Test 3
+%
+% (c) 2022 Prof. Dr. Andreas Mueller, OST
+%
+
+%\item
+%\input chapters/60-gruppen/uebungsaufgaben/6001.tex
+
diff --git a/buch/buch.tex b/buch/buch.tex
new file mode 100644
index 0000000..b255ace
--- /dev/null
+++ b/buch/buch.tex
@@ -0,0 +1,49 @@
+%
+% buch.tex -- Buch zum mathematischen Seminar Wavelets
+%
+% (c) 2022 Prof. Dr. Andreas Mueller, OST Ostschweizer Fachhochschule
+%
+\documentclass{book}
+\input{common/packages.tex}
+
+% additional packages used by the individual papers, add a line for
+% each paper
+\input{papers/common/addpackages.tex}
+
+% workaround for biblatex bug
+\makeatletter
+\def\blx@maxline{77}
+\makeatother
+\addbibresource{chapters/references.bib}
+
+% Bibresources for each article
+\input{papers/common/addbibresources.tex}
+
+% make sure the last index starts on an odd page
+\AtEndDocument{\clearpage\ifodd\value{page}\else\null\clearpage\fi}
+\makeindex
+
+%\pgfplotsset{compat=1.12}
+\setlength{\headheight}{15pt} % fix headheight warning
+\DeclareGraphicsRule{*}{mps}{*}{}
+\begin{document}
+
+\input{common/titlepage.tex}
+
+% add common macros
+\input{common/macros.tex}
+
+\mainmatter
+\input{chapters/part1.tex}
+
+\input{papers/part2.tex}
+
+\vfill
+\pagebreak
+\ifodd\value{page}\else\null\clearpage\fi
+\lhead{Index}
+\rhead{}
+\addcontentsline{toc}{chapter}{\indexname}
+\input{buch.ind}
+
+\end{document}
diff --git a/buch/chapters/Makefile b/buch/chapters/Makefile
new file mode 100644
index 0000000..0bcfbca
--- /dev/null
+++ b/buch/chapters/Makefile
@@ -0,0 +1,20 @@
+#
+# Makefile -- build stuff used in subdirectories
+#
+# (c) 2022 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..4d1b373
--- /dev/null
+++ b/buch/chapters/Makefile.inc
@@ -0,0 +1,22 @@
+#
+# Makefile.inc
+#
+# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+#
+
+CHAPTERFILES = \
+ chapters/part1.tex \
+ chapters/vorwort.tex
+
+#include chapters/00-einleitung/Makefile.inc
+#include chapters/05-zahlen/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
+#include chapters/50-permutationen/Makefile.inc
+#include chapters/60-gruppen/Makefile.inc
+#include chapters/70-graphen/Makefile.inc
+#include chapters/80-wahrscheinlichkeit/Makefile.inc
+#include chapters/90-crypto/Makefile.inc
+#include chapters/95-homologie/Makefile.inc
diff --git a/buch/chapters/part1.tex b/buch/chapters/part1.tex
new file mode 100644
index 0000000..51230df
--- /dev/null
+++ b/buch/chapters/part1.tex
@@ -0,0 +1,32 @@
+%
+% 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/05-zahlen/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}
+%\input{chapters/50-permutationen/chapter.tex}
+%\input{chapters/60-gruppen/chapter.tex}
+%\input{chapters/70-graphen/chapter.tex}
+%\input{chapters/80-wahrscheinlichkeit/chapter.tex}
+%\input{chapters/90-crypto/chapter.tex}
+%\input{chapters/95-homologie/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..a5d0201
--- /dev/null
+++ b/buch/chapters/references.bib
@@ -0,0 +1,141 @@
+%
+% references.bib
+%
+% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil
+%
+
+@article{BRIN1998107,
+title = "The anatomy of a large-scale hypertextual Web search engine",
+journal = "Computer Networks and ISDN Systems",
+volume = "30",
+number = "1",
+pages = "107 - 117",
+year = "1998",
+note = "Proceedings of the Seventh International World Wide Web Conference",
+issn = "0169-7552",
+doi = "https://doi.org/10.1016/S0169-7552(98)00110-X",
+url = "http://www.sciencedirect.com/science/article/pii/S016975529800110X",
+author = "Sergey Brin and Lawrence Page",
+keywords = "World Wide Web, Search engines, Information retrieval, PageRank, Google",
+abstract = "In this paper, we present Google, a prototype of a large-scale search engine which makes heavy use of the structure present in hypertext. Google is designed to crawl and index the Web efficiently and produce much more satisfying search results than existing systems. The prototype with a full text and hyperlink database of at least 24 million pages is available at http://google.stanford.edu/ To engineer a search engine is a challenging task. Search engines index tens to hundreds of millions of Web pages involving a comparable number of distinct terms. They answer tens of millions of queries every day. Despite the importance of large-scale search engines on the Web, very little academic research has been done on them. Furthermore, due to rapid advance in technology and Web proliferation, creating a Web search engine today is very different from three years ago. This paper provides an in-depth description of our large-scale Web search engine — the first such detailed public description we know of to date. Apart from the problems of scaling traditional search techniques to data of this magnitude, there are new technical challenges involved with using the additional information present in hypertext to produce better search results. This paper addresses this question of how to build a practical large-scale system which can exploit the additional information present in hypertext. Also we look at the problem of how to effectively deal with uncontrolled hypertext collections where anyone can publish anything they want."
+}
+
+
+@book{buch:mathsem-wavelets,
+ title = {Mathematisches Seminar Wavelets},
+ author = { Andreas M"uller and others },
+ year = {2019},
+}
+
+@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},
+ 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}
+}
+
+@book{buch:ebbinghaus,
+ title = {Zahlen},
+ year = 1983,
+ inseries = {Grundwissen Mathematik},
+ volume = 1,
+ publisher = {Springer-Verlag},
+ author = { Hans-Dieter Ebbinghaus et al },
+ isbn = { 3-540-12666-X }
+}
+
+@online{buch:primitivepolynomiallist,
+ title = {Primitive Polynomial List},
+ url = {https://www.partow.net/programming/polynomials/index.html},
+ day = 8,
+ month = 3,
+ year = 2021
+}
+
+@book{skript:landaulifschitz1,
+ author = {Landau, L. D. and Lifschitz, E. M.},
+ title = {Mechanik},
+ series = {Lehrbuch der theoretischen Physik},
+ volume = {1},
+ publisher = {Akademie-Verlag},
+ year = {1981},
+ language = {german},
+}
+
diff --git a/buch/chapters/vorwort.tex b/buch/chapters/vorwort.tex
new file mode 100644
index 0000000..67386a0
--- /dev/null
+++ b/buch/chapters/vorwort.tex
@@ -0,0 +1,35 @@
+%
+% 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 2022 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 2022 waren spezielle Funktionen das Thema des Seminars.
+Ziel war, zu zeigen, wie neben den wohlbekannten Funktionen, die
+man im elementaren Analysis-Unterricht kennenlernt, über die Jahre
+viele weitere interessante Funktionen und Funktionenfamilien
+geschaffen wurden, mit denen die unterschiedlichsten Problem
+auf effiziente Art gelöst werden können.
+
+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/SeminarSpezielleFunktionen.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..2c6eea2
--- /dev/null
+++ b/buch/common/macros.tex
@@ -0,0 +1,116 @@
+%
+% 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{frage}[satz]{Frage}
+\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..7d4ec7c
--- /dev/null
+++ b/buch/common/packages.tex
@@ -0,0 +1,74 @@
+%
+% 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,multirow}
+\usepackage{hyperref}
+\usepackage{subfigure}
+\usepackage{tikz}
+\usepackage{tikz-cd}
+\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}
+\usepackage[many]{tcolorbox}
+
+% 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..4d57f84
--- /dev/null
+++ b/buch/common/teilnehmer.tex
@@ -0,0 +1,27 @@
+%
+% 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
+Alain Keller%, % E
+\\
+Marc Kühne, % B
+Robine Luchsinger, % B
+Naoki Pross, % E
+Thomas Reichlin%, % B
+\\
+Michael Schmid, % MSE
+Pascal Andreas Schmid, % B
+Adrian Schuler%, % B
+\\
+Thierry Schwaller, % E
+Michael Steiner, % E
+Tim Tönz, % E
+Fabio Viecelli%, % B
+\\
+Lukas Zogg%, % B
diff --git a/buch/common/test-common.tex b/buch/common/test-common.tex
new file mode 100644
index 0000000..289e59c
--- /dev/null
+++ b/buch/common/test-common.tex
@@ -0,0 +1,73 @@
+%
+% test.tex -- Gemeinsamer Rahmen für Kurztests
+%
+% (c) 2021 Prof. Dr. Andreas Mueller, OST Ostschweizer Fachhochschule
+%
+\documentclass[a4paper,12pt]{article}
+\usepackage{geometry}
+\geometry{papersize={210mm,297mm},total={165mm,260mm}}
+\usepackage{ngerman}
+\usepackage[utf8]{inputenc}
+\usepackage[T1]{fontenc}
+\usepackage{times}
+\usepackage{amsmath}
+\usepackage{amssymb}
+\usepackage{amsfonts}
+\usepackage{amsthm}
+\usepackage{graphicx}
+\usepackage{fancyhdr}
+\usepackage{textcomp}
+\usepackage[all]{xy}
+\usepackage{txfonts}
+\usepackage{alltt}
+\usepackage{verbatim}
+\usepackage{paralist}
+\usepackage{makeidx}
+\usepackage{array}
+\usepackage{hyperref}
+\usepackage{caption}
+\usepackage{subcaption}
+\usepackage{standalone}
+\usepackage{environ}
+\usepackage{tikz}
+\input{../common/linsys.tex}
+\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{uebungsaufgabe}
+% environment fuer uebungsaufgaben
+\newenvironment{uebungsaufgaben}{
+\begin{list}{\arabic{uebungsaufgabe}.}
+ {\usecounter{uebungsaufgabe}
+ \setlength{\labelwidth}{2cm}
+ \setlength{\leftmargin}{0pt}
+ \setlength{\labelsep}{5mm}
+ \setlength{\rightmargin}{0pt}
+ \setlength{\itemindent}{0pt}
+}}{\end{list}\vfill\pagebreak}
+\newenvironment{teilaufgaben}{
+\begin{enumerate}
+\renewcommand{\labelenumi}{\alph{enumi})}
+}{\end{enumerate}}
+% Loesung
+\NewEnviron{loesung}{%
+\begin{proof}[Lösung]%
+\renewcommand{\qedsymbol}{$\bigcirc$}
+\BODY
+\end{proof}}
+\NewEnviron{bewertung}{\relax}
+\NewEnviron{diskussion}{
+\BODY
+}
+\RenewEnviron{loesung}{\relax}
+\RenewEnviron{diskussion}{\relax}
+\newenvironment{hinweis}{%
+\renewcommand{\qedsymbol}{}
+\begin{proof}[Hinweis]}{\end{proof}}
+
diff --git a/buch/common/test1.tex b/buch/common/test1.tex
new file mode 100644
index 0000000..1f5a155
--- /dev/null
+++ b/buch/common/test1.tex
@@ -0,0 +1,21 @@
+%
+% test1.tex -- Test 1
+%
+% (c) 2021 Prof. Dr. Andreas Mueller, OST
+%
+\input{common/test-common.tex}
+
+\begin{document}
+{\parindent0pt\hbox to\hsize{%
+Name: \hbox to7cm{\dotfill} Vorname: \dotfill}}
+\vspace{0.5cm}
+
+\section*{Kurztest 1}
+
+\begin{uebungsaufgaben}
+
+\input{aufgaben1.tex}
+
+\end{uebungsaufgaben}
+
+\end{document}
diff --git a/buch/common/test2.tex b/buch/common/test2.tex
new file mode 100644
index 0000000..0980e44
--- /dev/null
+++ b/buch/common/test2.tex
@@ -0,0 +1,21 @@
+%
+% test2.tex -- Test 2
+%
+% (c) 2012 Prof. Dr. Andreas Mueller, OST
+%
+\input{common/test-common.tex}
+
+\begin{document}
+{\parindent0pt\hbox to\hsize{%
+Name: \hbox to7cm{\dotfill} Vorname: \dotfill}}
+\vspace{0.5cm}
+
+\section*{Kurztest 2}
+
+\begin{uebungsaufgaben}
+
+\input{aufgaben2.tex}
+
+\end{uebungsaufgaben}
+
+\end{document}
diff --git a/buch/common/test3.tex b/buch/common/test3.tex
new file mode 100644
index 0000000..8b24262
--- /dev/null
+++ b/buch/common/test3.tex
@@ -0,0 +1,21 @@
+%
+% test3.tex -- Test 3
+%
+% (c) 2021 Prof. Dr. Andreas Mueller, OST
+%
+\input{common/test-common.tex}
+
+\begin{document}
+{\parindent0pt\hbox to\hsize{%
+Name: \hbox to7cm{\dotfill} Vorname: \dotfill}}
+\vspace{0.5cm}
+
+\section*{Kurztest 3}
+
+\begin{uebungsaufgaben}
+
+\input{aufgaben3.tex}
+
+\end{uebungsaufgaben}
+
+\end{document}
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..e0392e6
--- /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
+Spezielle Funktionen%
+}%
+\vspace*{5pt}
+\end{flushright}
+\HRule
+\begin{flushright}
+\vspace{60pt}
+\Large
+Leitung: Andreas Müller\\
+\vspace{40pt}
+\Large
+\input{common/teilnehmer.tex}
+\end{flushright}
+\vspace*{\stretch{2}}
+\begin{center}
+OST Ostschweizer Fachhochschule, Rapperswil, 2022
+\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..12e6a4f
--- /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/teil0.tex \
+ papers/000template/teil1.tex \
+ papers/000template/teil2.tex \
+ papers/000template/teil3.tex
+
diff --git a/buch/papers/000template/main.tex b/buch/papers/000template/main.tex
new file mode 100644
index 0000000..87a5685
--- /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/teil0.tex}
+\input{papers/000template/teil1.tex}
+\input{papers/000template/teil2.tex}
+\input{papers/000template/teil3.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/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/000template/teil0.tex b/buch/papers/000template/teil0.tex
new file mode 100644
index 0000000..7b9f088
--- /dev/null
+++ b/buch/papers/000template/teil0.tex
@@ -0,0 +1,22 @@
+%
+% einleitung.tex -- Beispiel-File für die Einleitung
+%
+% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil
+%
+\section{Teil 0\label{000template:section:teil0}}
+\rhead{Teil 0}
+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/teil1.tex b/buch/papers/000template/teil1.tex
new file mode 100644
index 0000000..00d3058
--- /dev/null
+++ b/buch/papers/000template/teil1.tex
@@ -0,0 +1,55 @@
+%
+% teil1.tex -- Beispiel-File für das Paper
+%
+% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil
+%
+\section{Teil 1
+\label{000template:section:teil1}}
+\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/teil2.tex b/buch/papers/000template/teil2.tex
new file mode 100644
index 0000000..471adae
--- /dev/null
+++ b/buch/papers/000template/teil2.tex
@@ -0,0 +1,40 @@
+%
+% teil2.tex -- Beispiel-File für teil2
+%
+% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil
+%
+\section{Teil 2
+\label{000template:section:teil2}}
+\rhead{Teil 2}
+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/teil3.tex b/buch/papers/000template/teil3.tex
new file mode 100644
index 0000000..4697813
--- /dev/null
+++ b/buch/papers/000template/teil3.tex
@@ -0,0 +1,40 @@
+%
+% teil3.tex -- Beispiel-File für Teil 3
+%
+% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil
+%
+\section{Teil 3
+\label{000template:section:teil3}}
+\rhead{Teil 3}
+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/common/Makefile.inc b/buch/papers/common/Makefile.inc
new file mode 100644
index 0000000..a28dd1b
--- /dev/null
+++ b/buch/papers/common/Makefile.inc
@@ -0,0 +1,28 @@
+#
+# 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
+#
+PAPERFILES = \
+ papers/part2.tex \
+ papers/uebersicht.tex \
+ papers/000template/main.tex \
+
+buch1-blx.bbl: buch1-blx.aux
+ bibtex buch1-blx
+
+buch2-blx.bbl: buch2-blx.aux
+ bibtex buch2-blx
+
+BLXFILES = buch.bbl \
+ buch1-blx.bbl \
+ buch2-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..7cb5436
--- /dev/null
+++ b/buch/papers/common/addbibresources.tex
@@ -0,0 +1,6 @@
+%
+% addbibresources.tex -- file to add all bib resources
+%
+% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil
+%
+\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..e855c81
--- /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, Hochschule Rapperswil
+%
+\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..bf3da89
--- /dev/null
+++ b/buch/papers/common/addpapers.tex
@@ -0,0 +1,6 @@
+%
+% addpapers.tex -- file to add all paper main files
+%
+% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil
+%
+\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..b1df547
--- /dev/null
+++ b/buch/papers/common/includes.inc
@@ -0,0 +1,5 @@
+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..a5c1e52
--- /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="teil0.tex teil1.tex teil2.tex teil3.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..52215b7
--- /dev/null
+++ b/buch/papers/uebersicht.tex
@@ -0,0 +1,14 @@
+%
+% uebersicht.tex -- Uebersicht ueber die Seminar-Arbeiten
+%
+% (c) 2022 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.
+