diff options
author | Samuel Niederer <43746162+samnied@users.noreply.github.com> | 2022-07-24 12:17:00 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-24 12:17:00 +0200 |
commit | efe7c35759afb5cbae3c1683873c5159be0be09f (patch) | |
tree | 84f2e8510132352f9943bddc577ccf32cd46f2dc /buch/papers/dreieck | |
parent | add current work (diff) | |
parent | Merge pull request #26 from p1mueller/master (diff) | |
download | SeminarSpezielleFunktionen-efe7c35759afb5cbae3c1683873c5159be0be09f.tar.gz SeminarSpezielleFunktionen-efe7c35759afb5cbae3c1683873c5159be0be09f.zip |
Merge branch 'AndreasFMueller:master' into master
Diffstat (limited to 'buch/papers/dreieck')
-rw-r--r-- | buch/papers/dreieck/Makefile | 9 | ||||
-rw-r--r-- | buch/papers/dreieck/Makefile.inc | 14 | ||||
-rw-r--r-- | buch/papers/dreieck/images/Makefile | 18 | ||||
-rw-r--r-- | buch/papers/dreieck/images/beta.pdf | bin | 0 -> 109717 bytes | |||
-rw-r--r-- | buch/papers/dreieck/images/beta.tex | 236 | ||||
-rw-r--r-- | buch/papers/dreieck/images/betadist.m | 58 | ||||
-rw-r--r-- | buch/papers/dreieck/images/order.m | 119 | ||||
-rw-r--r-- | buch/papers/dreieck/images/order.pdf | bin | 0 -> 32692 bytes | |||
-rw-r--r-- | buch/papers/dreieck/images/order.tex | 125 | ||||
-rw-r--r-- | buch/papers/dreieck/main.tex | 28 | ||||
-rw-r--r-- | buch/papers/dreieck/packages.tex | 10 | ||||
-rw-r--r-- | buch/papers/dreieck/references.bib | 15 | ||||
-rw-r--r-- | buch/papers/dreieck/teil0.tex | 50 | ||||
-rw-r--r-- | buch/papers/dreieck/teil1.tex | 94 | ||||
-rw-r--r-- | buch/papers/dreieck/teil2.tex | 115 | ||||
-rw-r--r-- | buch/papers/dreieck/teil3.tex | 77 |
16 files changed, 968 insertions, 0 deletions
diff --git a/buch/papers/dreieck/Makefile b/buch/papers/dreieck/Makefile new file mode 100644 index 0000000..f0cb602 --- /dev/null +++ b/buch/papers/dreieck/Makefile @@ -0,0 +1,9 @@ +# +# Makefile -- make file for the paper dreieck +# +# (c) 2020 Prof Dr Andreas Mueller +# + +images: + @echo "no images to be created in dreieck" + diff --git a/buch/papers/dreieck/Makefile.inc b/buch/papers/dreieck/Makefile.inc new file mode 100644 index 0000000..843da8d --- /dev/null +++ b/buch/papers/dreieck/Makefile.inc @@ -0,0 +1,14 @@ +# +# Makefile.inc -- dependencies for this article +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +dependencies-dreieck = \ + papers/dreieck/packages.tex \ + papers/dreieck/main.tex \ + papers/dreieck/references.bib \ + papers/dreieck/teil0.tex \ + papers/dreieck/teil1.tex \ + papers/dreieck/teil2.tex \ + papers/dreieck/teil3.tex + diff --git a/buch/papers/dreieck/images/Makefile b/buch/papers/dreieck/images/Makefile new file mode 100644 index 0000000..c979599 --- /dev/null +++ b/buch/papers/dreieck/images/Makefile @@ -0,0 +1,18 @@ +# +# Makefile +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +all: order.pdf beta.pdf + +order.pdf: order.tex orderpath.tex + pdflatex order.tex + +orderpath.tex: order.m + octave order.m + +beta.pdf: beta.tex betapaths.tex + pdflatex beta.tex + +betapaths.tex: betadist.m + octave betadist.m diff --git a/buch/papers/dreieck/images/beta.pdf b/buch/papers/dreieck/images/beta.pdf Binary files differnew file mode 100644 index 0000000..cd5ed80 --- /dev/null +++ b/buch/papers/dreieck/images/beta.pdf diff --git a/buch/papers/dreieck/images/beta.tex b/buch/papers/dreieck/images/beta.tex new file mode 100644 index 0000000..f0ffdf0 --- /dev/null +++ b/buch/papers/dreieck/images/beta.tex @@ -0,0 +1,236 @@ +% +% beta.tex -- display some symmetric beta distributions +% +% (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,calc} +\input{betapaths.tex} +\begin{document} +\def\skala{12} +\definecolor{colorone}{rgb}{1.0,0.6,0.0} +\definecolor{colortwo}{rgb}{1.0,0.0,0.0} +\definecolor{colorthree}{rgb}{0.6,0.0,0.6} +\definecolor{colorfour}{rgb}{0.6,0.0,1.0} +\definecolor{colorfive}{rgb}{0.0,0.0,1.0} +\definecolor{colorsix}{rgb}{0.4,0.6,1.0} +\definecolor{colorseven}{rgb}{0.0,0.0,0.0} +\definecolor{coloreight}{rgb}{0.0,0.8,0.8} +\definecolor{colornine}{rgb}{0.0,0.8,0.2} +\definecolor{colorten}{rgb}{0.2,0.4,0.0} +\definecolor{coloreleven}{rgb}{0.6,1.0,0.0} +\definecolor{colortwelve}{rgb}{1.0,0.8,0.4} + +\def\achsen{ + \foreach \x in {0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9}{ + \draw ({\x*\dx},{-0.1/\skala}) -- ({\x*\dx},{0.1/\skala}); + \node at ({\x*\dx},{-0.1/\skala}) [below] {$\x$}; + } + \foreach \y in {1,2,3,4}{ + \draw ({-0.1/\skala},{\y*\dy}) -- ({0.1/\skala},{\y*\dy}); + \node at ({-0.1/\skala},{\y*\dy}) [left] {$\y$}; + } + \def\x{1} + \draw ({\x*\dx},{-0.1/\skala}) -- ({\x*\dx},{0.1/\skala}); + \node at ({\x*\dx},{-0.1/\skala}) [below] {$\x$}; + \def\x{0} + \node at ({\x*\dx},{-0.1/\skala}) [below] {$\x$}; + + \draw[->] ({-0.1/\skala},0) -- ({1*\dx+0.4/\skala},0) + coordinate[label={$x$}]; + \draw[->] (0,{-0.1/\skala}) -- (0,{\betamax*\dy+0.4/\skala},0) + coordinate[label={right:$\beta(a,b,x)$}]; +} + +\def\farbcoord#1#2{ + ({\dx*(0.63+((#1)/5)*0.27)},{\dx*(0.18+((#2)/5)*0.27)}) +} +\def\farbviereck{ + \foreach \x in {1,2,3,4}{ + \draw[color=gray!30] \farbcoord{\x}{0} -- \farbcoord{\x}{4}; + \draw[color=gray!30] \farbcoord{0}{\x} -- \farbcoord{4}{\x}; + } + \draw[->] \farbcoord{0}{0} -- \farbcoord{4.4}{0} + coordinate[label={$a$}]; + \draw[->] \farbcoord{0}{0} -- \farbcoord{0}{4.4} + coordinate[label={left: $b$}]; + \foreach \x in {1,2,3,4}{ + \node[color=gray] at \farbcoord{4}{\x} [right] {\tiny $b=\x$}; + %\fill[color=white,opacity=0.7] + % \farbcoord{(\x-0.1)}{3.3} + % rectangle + % \farbcoord{(\x+0.1)}{4}; + \node[color=gray] at \farbcoord{\x}{4} [right,rotate=90] + {\tiny $a=\x$}; + } +} +\def\farbpunkt#1#2#3{ + \fill[color=#3] \farbcoord{#1}{#2} circle[radius={0.1/\skala}]; +} + +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\def\dx{1.1} +\def\dy{0.1} +\def\opa{0.1} + +\def\betamax{4.9} + +\begin{scope} +\clip (0,0) rectangle ({1*\dx},{\betamax*\dy}); +\fill[color=colorone,opacity=\opa] (0,0) -- \betaaa -- (\dx,0) -- cycle; +\fill[color=colortwo,opacity=\opa] (0,0) -- \betabb -- (\dx,0) -- cycle; +\fill[color=colorthree,opacity=\opa] (0,0) -- \betacc -- (\dx,0) -- cycle; +\fill[color=colorfour,opacity=\opa] (0,0) -- \betadd -- (\dx,0) -- cycle; +\fill[color=colorfive,opacity=\opa] (0,0) -- \betaee -- (\dx,0) -- cycle; +\fill[color=colorsix,opacity=\opa] (0,0) -- \betaff -- (\dx,0) -- cycle; +\fill[color=colorseven,opacity=\opa] (0,0) -- \betagg -- (\dx,0) -- cycle; +\fill[color=coloreight,opacity=\opa] (0,0) -- \betahh -- (\dx,0) -- cycle; +\fill[color=colornine,opacity=\opa] (0,0) -- \betaii -- (\dx,0) -- cycle; +\fill[color=colorten,opacity=\opa] (0,0) -- \betajj -- (\dx,0) -- cycle; +\fill[color=coloreleven,opacity=\opa] (0,0) -- \betakk -- (\dx,0) -- cycle; +\fill[color=colortwelve,opacity=\opa] (0,0) -- \betall -- (\dx,0) -- cycle; + +\draw[color=colorone] \betaaa; +\draw[color=colortwo] \betabb; +\draw[color=colorthree] \betacc; +\draw[color=colorfour] \betadd; +\draw[color=colorfive] \betaee; +\draw[color=colorsix] \betaff; +\draw[color=colorseven] \betagg; +\draw[color=coloreight] \betahh; +\draw[color=colornine] \betaii; +\draw[color=colorten] \betajj; +\draw[color=coloreleven] \betakk; +\draw[color=colortwelve] \betall; + +\end{scope} + +\achsen + +\farbviereck + +\farbpunkt{\alphatwelve}{\betatwelve}{colortwelve} +\farbpunkt{\alphaeleven}{\betaeleven}{coloreleven} +\farbpunkt{\alphaten}{\betaten}{colorten} +\farbpunkt{\alphanine}{\betanine}{colornine} +\farbpunkt{\alphaeight}{\betaeight}{coloreight} +\farbpunkt{\alphaseven}{\betaseven}{colorseven} +\farbpunkt{\alphasix}{\betasix}{colorsix} +\farbpunkt{\alphafive}{\betafive}{colorfive} +\farbpunkt{\alphafour}{\betafour}{colorfour} +\farbpunkt{\alphathree}{\betathree}{colorthree} +\farbpunkt{\alphatwo}{\betatwo}{colortwo} +\farbpunkt{\alphaone}{\betaone}{colorone} + + +\def\betamax{4.9} + +\begin{scope}[yshift=-0.6cm] + +\begin{scope} +\clip (0,0) rectangle ({1*\dx},{\betamax*\dy}); +\fill[color=colorone,opacity=\opa] (0,0) -- \betaea -- (\dx,0) -- cycle; +\fill[color=colortwo,opacity=\opa] (0,0) -- \betaeb -- (\dx,0) -- cycle; +\fill[color=colorthree,opacity=\opa] (0,0) -- \betaec -- (\dx,0) -- cycle; +\fill[color=colorfour,opacity=\opa] (0,0) -- \betaed -- (\dx,0) -- cycle; +\fill[color=colorfive,opacity=\opa] (0,0) -- \betaee -- (\dx,0) -- cycle; +\fill[color=colorsix,opacity=\opa] (0,0) -- \betaef -- (\dx,0) -- cycle; +\fill[color=colorseven,opacity=\opa] (0,0) -- \betaeg -- (\dx,0) -- cycle; +\fill[color=coloreight,opacity=\opa] (0,0) -- \betaeh -- (\dx,0) -- cycle; +\fill[color=colornine,opacity=\opa] (0,0) -- \betaei -- (\dx,0) -- cycle; +\fill[color=colorten,opacity=\opa] (0,0) -- \betaej -- (\dx,0) -- cycle; +\fill[color=coloreleven,opacity=\opa] (0,0) -- \betaek -- (\dx,0) -- cycle; +\fill[color=colortwelve,opacity=\opa] (0,0) -- \betael -- (\dx,0) -- cycle; + +\draw[color=colorone] \betaea; +\draw[color=colortwo] \betaeb; +\draw[color=colorthree] \betaec; +\draw[color=colorfour] \betaed; +\draw[color=colorfive] \betaee; +\draw[color=colorsix] \betaef; +\draw[color=colorseven] \betaeg; +\draw[color=coloreight] \betaeh; +\draw[color=colornine] \betaei; +\draw[color=colorten] \betaej; +\draw[color=coloreleven] \betaek; +\draw[color=colortwelve] \betael; +\end{scope} + +\achsen + +\farbviereck + +\farbpunkt{\alphafive}{\betatwelve}{colortwelve} +\farbpunkt{\alphafive}{\betaeleven}{coloreleven} +\farbpunkt{\alphafive}{\betaten}{colorten} +\farbpunkt{\alphafive}{\betanine}{colornine} +\farbpunkt{\alphafive}{\betaeight}{coloreight} +\farbpunkt{\alphafive}{\betaseven}{colorseven} +\farbpunkt{\alphafive}{\betasix}{colorsix} +\farbpunkt{\alphafive}{\betafive}{colorfive} +\farbpunkt{\alphafive}{\betafour}{colorfour} +\farbpunkt{\alphafive}{\betathree}{colorthree} +\farbpunkt{\alphafive}{\betatwo}{colortwo} +\farbpunkt{\alphafive}{\betaone}{colorone} + +\end{scope} + +\begin{scope}[yshift=-1.2cm] + +\begin{scope} +\clip (0,0) rectangle ({1*\dx},{\betamax*\dy}); +\fill[color=colorone,opacity=\opa] (0,0) -- \betaal -- (\dx,0) -- cycle; +\fill[color=colortwo,opacity=\opa] (0,0) -- \betabl -- (\dx,0) -- cycle; +\fill[color=colorthree,opacity=\opa] (0,0) -- \betacl -- (\dx,0) -- cycle; +\fill[color=colorfour,opacity=\opa] (0,0) -- \betadl -- (\dx,0) -- cycle; +\fill[color=colorfive,opacity=\opa] (0,0) -- \betael -- (\dx,0) -- cycle; +\fill[color=colorsix,opacity=\opa] (0,0) -- \betafl -- (\dx,0) -- cycle; +\fill[color=colorseven,opacity=\opa] (0,0) -- \betagl -- (\dx,0) -- cycle; +\fill[color=coloreight,opacity=\opa] (0,0) -- \betahl -- (\dx,0) -- cycle; +\fill[color=colornine,opacity=\opa] (0,0) -- \betail -- (\dx,0) -- cycle; +\fill[color=colorten,opacity=\opa] (0,0) -- \betajl -- (\dx,0) -- cycle; +\fill[color=coloreleven,opacity=\opa] (0,0) -- \betakl -- (\dx,0) -- cycle; +\fill[color=colortwelve,opacity=\opa] (0,0) -- \betall -- (\dx,0) -- cycle; + +\draw[color=colorone] \betaal; +\draw[color=colortwo] \betabl; +\draw[color=colorthree] \betacl; +\draw[color=colorfour] \betadl; +\draw[color=colorfive] \betael; +\draw[color=colorsix] \betafl; +\draw[color=colorseven] \betagl; +\draw[color=coloreight] \betahl; +\draw[color=colornine] \betail; +\draw[color=colorten] \betajl; +\draw[color=coloreleven] \betakl; +\draw[color=colortwelve] \betall; +\end{scope} + +\achsen + +\farbviereck + +\farbpunkt{\alphatwelve}{\betatwelve}{colortwelve} +\farbpunkt{\alphaeleven}{\betatwelve}{coloreleven} +\farbpunkt{\alphaten}{\betatwelve}{colorten} +\farbpunkt{\alphanine}{\betatwelve}{colornine} +\farbpunkt{\alphaeight}{\betatwelve}{coloreight} +\farbpunkt{\alphaseven}{\betatwelve}{colorseven} +\farbpunkt{\alphasix}{\betatwelve}{colorsix} +\farbpunkt{\alphafive}{\betatwelve}{colorfive} +\farbpunkt{\alphafour}{\betatwelve}{colorfour} +\farbpunkt{\alphathree}{\betatwelve}{colorthree} +\farbpunkt{\alphatwo}{\betatwelve}{colortwo} +\farbpunkt{\alphaone}{\betatwelve}{colorone} + +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/papers/dreieck/images/betadist.m b/buch/papers/dreieck/images/betadist.m new file mode 100644 index 0000000..5b466a6 --- /dev/null +++ b/buch/papers/dreieck/images/betadist.m @@ -0,0 +1,58 @@ +# +# betadist.m +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +global N; +N = 201; +global nmin; +global nmax; +nmin = -4; +nmax = 7; +n = nmax - nmin + 1 +A = 3; + +t = (nmin:nmax) / nmax; +alpha = 1 + A * t .* abs(t) +#alpha(1) = 0.01; + +#alpha = [ 1, 1.03, 1.05, 1.1, 1.25, 1.5, 2, 2.5, 3, 4, 5 ]; +beta = alpha; +names = [ "one"; "two"; "three"; "four"; "five"; "six"; "seven"; "eight"; + "nine"; "ten"; "eleven"; "twelve" ] + +function retval = Beta(a, b, x) + retval = x^(a-1) * (1-x)^(b-1) / beta(a, b); + if (retval > 100) + retval = 100 + end +end + +function plotbeta(fn, a, b, name) + global N; + fprintf(fn, "\\def\\beta%s{\n", strtrim(name)); + fprintf(fn, "\t({%.4f*\\dx},{%.4f*\\dy})", 0, Beta(a, b, 0)); + for x = (1:N-1)/(N-1) + X = (1-cos(pi * x))/2; + fprintf(fn, "\n\t--({%.4f*\\dx},{%.4f*\\dy})", + X, Beta(a, b, X)); + end + fprintf(fn, "\n}\n"); +end + +fn = fopen("betapaths.tex", "w"); + +for i = (1:n) + fprintf(fn, "\\def\\alpha%s{%f}\n", strtrim(names(i,:)), alpha(i)); + fprintf(fn, "\\def\\beta%s{%f}\n", strtrim(names(i,:)), beta(i)); +end + +for i = (1:n) + for j = (1:n) + printf("working on %d,%d:\n", i, j); + plotbeta(fn, alpha(i), beta(j), + char(['a' + i - 1, 'a' + j - 1])); + end +end + +fclose(fn); diff --git a/buch/papers/dreieck/images/order.m b/buch/papers/dreieck/images/order.m new file mode 100644 index 0000000..762f458 --- /dev/null +++ b/buch/papers/dreieck/images/order.m @@ -0,0 +1,119 @@ +# +# order.m +# +# (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +global N; +N = 10; +global subdivisions; +subdivisions = 100; +global P; +P = 0.5 + +function retval = orderF(p, n, k) + retval = 0; + for i = (k:n) + retval = retval + nchoosek(n,i) * p^i * (1-p)^(n-i); + end +end + +function retval = orderd(p, n, k) + retval = 0; + for i = (k:n) + s = i * p^(i-1) * (1-p)^(n-i); + s = s - p^i * (n-i) * (1-p)^(n-i-1); + retval = retval + nchoosek(n,i) * s; + end +end + +function retval = orders(p, n, k) + retval = k * nchoosek(n, k) * p^(k-1) * (1-p)^(n-k); +end + +function orderpath(fn, k, name) + fprintf(fn, "\\def\\order%s{\n\t(0,0)", name); + global N; + global subdivisions; + for i = (0:subdivisions) + p = i/subdivisions; + fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", + p, orderF(p, N, k)); + end + fprintf(fn, "\n}\n"); +end + +function orderdpath(fn, k, name) + fprintf(fn, "\\def\\orderd%s{\n\t(0,0)", name); + global N; + global subdivisions; + for i = (1:subdivisions-1) + p = i/subdivisions; + fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", + p, orderd(p, N, k)); + end + fprintf(fn, "\n\t-- ({1*\\dx},0)"); + fprintf(fn, "\n}\n"); +end + +function orderspath(fn, k, name) + fprintf(fn, "\\def\\orders%s{\n\t(0,0)", name); + global N; + global subdivisions; + for i = (1:subdivisions-1) + p = i/subdivisions; + fprintf(fn, "\n\t-- ({%.4f*\\dx},{%.4f*\\dy})", + p, orders(p, N, k)); + end + fprintf(fn, "\n\t-- ({1*\\dx},0)"); + fprintf(fn, "\n}\n"); +end + +fn = fopen("orderpath.tex", "w"); + +orderpath(fn, 0, "zero"); +orderdpath(fn, 0, "zero"); +orderspath(fn, 0, "zero"); + +orderpath(fn, 1, "one"); +orderdpath(fn, 1, "one"); +orderspath(fn, 1, "one"); + +orderpath(fn, 2, "two"); +orderdpath(fn, 2, "two"); +orderspath(fn, 2, "two"); + +orderpath(fn, 3, "three"); +orderdpath(fn, 3, "three"); +orderspath(fn, 3, "three"); + +orderpath(fn, 4, "four"); +orderdpath(fn, 4, "four"); +orderspath(fn, 4, "four"); + +orderpath(fn, 5, "five"); +orderdpath(fn, 5, "five"); +orderspath(fn, 5, "five"); + +orderpath(fn, 6, "six"); +orderdpath(fn, 6, "six"); +orderspath(fn, 6, "six"); + +orderpath(fn, 7, "seven"); +orderdpath(fn, 7, "seven"); +orderspath(fn, 7, "seven"); + +orderpath(fn, 8, "eight"); +orderdpath(fn, 8, "eight"); +orderspath(fn, 8, "eight"); + +orderpath(fn, 9, "nine"); +orderdpath(fn, 9, "nine"); +orderspath(fn, 9, "nine"); + +orderpath(fn, 10, "ten"); +orderdpath(fn, 10, "ten"); +orderspath(fn, 10, "ten"); + +fclose(fn); + + diff --git a/buch/papers/dreieck/images/order.pdf b/buch/papers/dreieck/images/order.pdf Binary files differnew file mode 100644 index 0000000..98a5fbe --- /dev/null +++ b/buch/papers/dreieck/images/order.pdf diff --git a/buch/papers/dreieck/images/order.tex b/buch/papers/dreieck/images/order.tex new file mode 100644 index 0000000..9a2511c --- /dev/null +++ b/buch/papers/dreieck/images/order.tex @@ -0,0 +1,125 @@ +% +% order.tex -- Verteilungsfunktion für Ordnungsstatistik +% +% (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{8} +\definecolor{darkgreen}{rgb}{0,0.6,0} + +\def\n{10} +\def\E#1#2{ + \draw[color=#2] + ({\dx*#1/(\n+1)},{-0.1/\skala}) -- ({\dx*#1/(\n+1)},{4.4*\dy}); + \node[color=#2] at ({\dx*#1/(\n+1)},{3.2*\dy}) + [rotate=90,above right] {$k=#1$}; +} +\def\var#1#2{ + \pgfmathparse{\dx*sqrt(#1*(\n-#1+1)/((\n+1)*(\n+1)*(\n+2)))} + \xdef\var{\pgfmathresult} + \fill[color=#2,opacity=0.5] + ({\dx*#1/(\n+1)-\var},0) rectangle ({\dx*#1/(\n+1)+\var},{4.4*\dy}); +} + +\input{orderpath.tex} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +\def\dx{1.6} +\def\dy{0.5} + +\def\pfad#1#2{ +\draw[color=#2,line width=1.4pt] ({-0.1/\skala},0) + -- + #1 + -- + ({1*\dx+0.1/\skala},0.5); +} + +\pfad{\orderzero}{darkgreen!20} +\pfad{\orderone}{darkgreen!20} +\pfad{\ordertwo}{darkgreen!20} +\pfad{\orderthree}{darkgreen!20} +\pfad{\orderfour}{darkgreen!20} +\pfad{\orderfive}{darkgreen!20} +\pfad{\ordersix}{darkgreen!20} +\pfad{\ordereight}{darkgreen!20} +\pfad{\ordernine}{darkgreen!20} +\pfad{\orderten}{darkgreen!20} +\pfad{\orderseven}{darkgreen} + +\draw[->] ({-0.1/\skala},0) -- ({1.03*\dx},0) coordinate[label={$x$}]; +\draw[->] (0,{-0.1/\skala}) -- (0,0.6) coordinate[label={right:$F(X)$}]; +\foreach \x in {0,0.2,0.4,0.6,0.8,1}{ + \draw ({\x*\dx},{-0.1/\skala}) -- ({\x*\dx},{0.1/\skala}); + \node at ({\x*\dx},{-0.1/\skala}) [below] {$\x$}; +} +\foreach \y in {0.5,1}{ + \draw ({-0.1/\skala},{\y*\dy}) -- ({0.1/\skala},{\y*\dy}); + \node at ({-0.1/\skala},{\y*\dy}) [left] {$\y$}; +} + +\node[color=darkgreen] at (0.65,{0.5*\dy}) [above,rotate=55] {$k=7$}; + +\begin{scope}[yshift=-0.7cm] +\def\dy{0.125} + +\foreach \k in {1,2,3,4,5,6,8,9,10}{ + \E{\k}{blue!30} +} +\def\k{7} +\var{\k}{orange!40} +\node[color=blue] at ({\dx*\k/(\n+1)},{4.3*\dy}) [above] {$E(X_{7:n})$}; + +\def\pfad#1#2{ + \draw[color=#2,line width=1.4pt] ({-0.1/\skala},0) + -- + #1 + -- + ({1*\dx+0.1/\skala},0.0); +} + +\begin{scope} +\clip ({-0.1/\skala},{-0.1/\skala}) + rectangle ({1*\dx+0.1/\skala},{0.56+0.1/\skala}); + +\pfad{\orderdzero}{red!20} +\pfad{\orderdone}{red!20} +\pfad{\orderdtwo}{red!20} +\pfad{\orderdthree}{red!20} +\pfad{\orderdfour}{red!20} +\pfad{\orderdfive}{red!20} +\pfad{\orderdsix}{red!20} +\pfad{\orderdeight}{red!20} +\pfad{\orderdnine}{red!20} +\pfad{\orderdten}{red!20} +\E{\k}{blue} +\pfad{\orderdseven}{red} + +\end{scope} + +\draw[->] ({-0.1/\skala},0) -- ({1.03*\dx},0) coordinate[label={$x$}]; +\draw[->] (0,{-0.1/\skala}) -- (0,0.6) coordinate[label={right:$\varphi(X)$}]; +\foreach \x in {0,0.2,0.4,0.6,0.8,1}{ + \draw ({\x*\dx},{-0.1/\skala}) -- ({\x*\dx},{0.1/\skala}); + \node at ({\x*\dx},{-0.1/\skala}) [below] {$\x$}; +} +\foreach \y in {1,2,3,4}{ + \draw ({-0.1/\skala},{\y*\dy}) -- ({0.1/\skala},{\y*\dy}); + \node at ({-0.1/\skala},{\y*\dy}) [left] {$\y$}; +} + +\node[color=red] at ({0.67*\dx},{2.7*\dy}) [above] {$k=7$}; + + +\end{scope} + +\end{tikzpicture} +\end{document} + diff --git a/buch/papers/dreieck/main.tex b/buch/papers/dreieck/main.tex new file mode 100644 index 0000000..d7bc769 --- /dev/null +++ b/buch/papers/dreieck/main.tex @@ -0,0 +1,28 @@ +% +% main.tex -- Paper zum Thema <dreieck> +% +% (c) 2020 Hochschule Rapperswil +% +\chapter{$\int P(t) e^{-t^2} \,dt$ in geschlossener Form? +\label{chapter:dreieck}} +\lhead{Integrierbarkeit in geschlossener Form} +\begin{refsection} +\chapterauthor{Andreas Müller} + +\noindent +Der Risch-Algorithmus erlaubt, eine definitive Antwort darauf zu geben, +\index{Risch-Algorithmus}% +\index{elementare Stammfunktion}% +ob eine elementare Funktion eine Stammfunktion in geschlossener Form hat. +Der Algorithmus ist jedoch ziemlich kompliziert. +In diesem Kapitel soll ein spezieller Fall mit Hilfe der Theorie der +orthogonale Polynome, speziell der Hermite-Polynome, behandelt werden, +wie er in der Arbeit \cite{dreieck:polint} untersucht wurde. + +\input{papers/dreieck/teil0.tex} +\input{papers/dreieck/teil1.tex} +\input{papers/dreieck/teil2.tex} +\input{papers/dreieck/teil3.tex} + +\printbibliography[heading=subbibliography] +\end{refsection} diff --git a/buch/papers/dreieck/packages.tex b/buch/papers/dreieck/packages.tex new file mode 100644 index 0000000..fd4ebce --- /dev/null +++ b/buch/papers/dreieck/packages.tex @@ -0,0 +1,10 @@ +% +% packages.tex -- packages required by the paper dreieck +% +% (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/dreieck/references.bib b/buch/papers/dreieck/references.bib new file mode 100644 index 0000000..47bd865 --- /dev/null +++ b/buch/papers/dreieck/references.bib @@ -0,0 +1,15 @@ +% +% references.bib -- Bibliography file for the paper dreieck +% +% (c) 2020 Autor, Hochschule Rapperswil +% + +@article{dreieck:polint, + author = { George Stoica }, + title = { Polynomials and Integration in Finite Terms }, + journal = { Amer. Math. Monthly }, + volume = 129, + year = 2022, + number = 1, + pages = {80--81} +} diff --git a/buch/papers/dreieck/teil0.tex b/buch/papers/dreieck/teil0.tex new file mode 100644 index 0000000..f9affe7 --- /dev/null +++ b/buch/papers/dreieck/teil0.tex @@ -0,0 +1,50 @@ +% +% einleitung.tex -- Beispiel-File für die Einleitung +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\section{Problemstellung\label{dreieck:section:problemstellung}} +\rhead{Problemstellung} +Es ist bekannt, dass das Fehlerintegral +\[ +\frac{1}{\sqrt{2\pi}\sigma} \int_{-\infty}^x e^{-\frac{t^2}{2\sigma}}\,dt +\] +nicht in geschlossener Form dargestellt werden kann. +Mit der in Kapitel~\ref{buch:chapter:integral} skizzierten Theorie von +Liouville und dem Risch-Algorithmus kann dies strengt gezeigt werden. + +Andererseits gibt es durchaus Integranden, die $e^{-t^2}$ enthalten, +für die eine Stammfunktion in geschlossener Form gefunden werden kann. +Zum Beispiel folgt aus der Ableitung +\[ +\frac{d}{dt} e^{-t^2} += +-2te^{-t^2} +\] +die Stammfunktion +\[ +\int te^{-t^2}\,dt += +-\frac12 e^{-t^2}. +\] +Leitet man $e^{-t^2}$ zweimal ab, erhält man +\[ +\frac{d^2}{dt^2} e^{-t^2} += +(4t^2-2) e^{-t^2} +\qquad\Rightarrow\qquad +\int (t^2-{\textstyle\frac12}) e^{-t^2}\,dt += +{\textstyle\frac14} +e^{-t^2}. +\] +Es gibt also viele weitere Polynome $P(t)$, für die der Integrand +$P(t)e^{-t^2}$ eine Stammfunktion in geschlossener Form hat. +Damit stellt sich jetzt das folgende allgemeine Problem. + +\begin{problem} +\label{dreieck:problem} +Für welche Polynome $P(t)$ hat der Integrand $P(t)e^{-t^2}$ +eine elementare Stammfunktion? +\end{problem} + diff --git a/buch/papers/dreieck/teil1.tex b/buch/papers/dreieck/teil1.tex new file mode 100644 index 0000000..45c1a23 --- /dev/null +++ b/buch/papers/dreieck/teil1.tex @@ -0,0 +1,94 @@ +% +% teil1.tex -- Beispiel-File für das Paper +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\section{Hermite-Polynome +\label{dreieck:section:hermite-polynome}} +\rhead{Hermite-Polyome} +In Abschnitt~\ref{dreieck:section:problemstellung} hat sich schon angedeutet, +dass die Polynome, die man durch Ableiten von $e^{-t^2}$ erhalten +kann, bezüglich des gestellten Problems besondere Eigenschaften +haben. +Zunächst halten wir fest, dass die Ableitung einer Funktion der Form +$P(t)e^{-t^2}$ mit einem Polynom $P(t)$ +\begin{equation} +\frac{d}{dt} P(t)e^{-t^2} += +P'(t)e^{-t^2} -2tP(t)e^{-t^2} += +(P'(t)-2tP(t)) e^{-t^2} +\label{dreieck:eqn:ableitung} +\end{equation} +ist. +Insbesondere hat die Ableitung wieder die Form $Q(t)e^{-t^2}$ +mit einem Polynome $Q(t)$, welches man auch als +\[ +Q(t) += +e^{t^2}\frac{d}{dt}P(t)e^{-t^2} +\] +erhalten kann. + +Die Polynome, die man aus der Funktion $H_0(t)=e^{-t^2}$ durch +Ableiten erhalten kann, wurden bereits in +Abschnitt~\ref{buch:orthogonalitaet:section:rodrigues} +bis auf ein Vorzeichen hergeleitet, sie heissen die Hermite-Polynome +\index{Hermite-Polynome}% +und es gilt +\[ +H_n(t) += +(-1)^n +e^{t^2} \frac{d^n}{dt^n} e^{-t^2}. +\] +Das Vorzeichen dient dazu sicherzustellen, dass der Leitkoeffizient +immer $1$ ist. +Das Polynom $H_n(t)$ hat den Grad $n$. + +In Abschnitt wurde auch gezeigt, dass die Polynome $H_n(t)$ +bezüglich des Skalarproduktes +\[ +\langle f,g\rangle_{w} += +\int_{-\infty}^\infty f(t)g(t)e^{-t^2}\,dt, +\qquad +w(t)=e^{-t^2}, +\] +orthogonal sind. +Ausserdem folgt aus \eqref{dreieck:eqn:ableitung} +die Rekursionsbeziehung +\begin{equation} +H_{n}(t) += +2tH_{n-1}(t) +- +H_{n-1}'(t) +\label{dreieck:eqn:rekursion} +\end{equation} +für $n>0$. + +Im Hinblick auf die Problemstellung ist jetzt die Frage interessant, +ob die Integranden $H_n(t)e^{-t^2}$ eine Stammfunktion in geschlossener +Form haben. +Mit Hilfe der Rekursionsbeziehung~\eqref{dreieck:eqn:rekursion} +kann man für $n>0$ unmittelbar verifizieren, dass +\begin{align*} +\int H_n(t)e^{-t^2}\,dt +&= +\int \bigl( 2tH_{n-1}(t) - H'_{n-1}(t)\bigr)e^{-t^2}\,dt +\\ +&= +-\int \bigl( \exp'(-t^2) H_{n-1}(t) + H'_{n-1}(t)\bigr)e^{-t^2}\,dt +\\ +&= +-\int \bigl( e^{-t^2}H_{n-1}(t)\bigr)' \,dt += +-e^{-t^2}H_{n-1}(t) +\end{align*} +ist. +Für $n>0$ hat also $H_n(t)e^{-t^2}$ eine elementare Stammfunktion. +Die Hermite-Polynome sind also Lösungen für das +Problem~\ref{dreieck:problem}. + + diff --git a/buch/papers/dreieck/teil2.tex b/buch/papers/dreieck/teil2.tex new file mode 100644 index 0000000..8e89f6a --- /dev/null +++ b/buch/papers/dreieck/teil2.tex @@ -0,0 +1,115 @@ +% +% teil2.tex -- Beispiel-File für teil2 +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\section{Beliebige Polynome +\label{dreieck:section:beliebig}} +\rhead{Beliebige Polynome} +Im Abschnitt~\ref{dreieck:section:hermite-polynome} wurden die +Hermite-Polynome $H_n(t)$ mit $n>0$ als Lösungen des gestellten +Problems erkannt. +Eine Linearkombination von solchen Polynomen hat natürlich +ebenfalls eine elementare Stammfunktion. +Das Problem kann daher neu formuliert werden: + +\begin{problem} +\label{dreieck:problem2} +Welche Polynome $P(t)$ lassen sich aus den Hermite-Polynomen +$H_n(t)$ mit $n>0$ linear kombinieren? +\end{problem} + +Sei also +\[ +P(t) = p_0 + p_1t + \ldots + p_{n-1}t^{n-1} + p_nt^n +\] +ein beliebiges Polynom vom Grad $n$. +Eine elementare Stammfunktion von $P(t)e^{-t^2}$ existiert sicher, +wenn sich $P(t)$ aus den Funktionen $H_n(t)$ mit $n>0$ linear +kombinieren lässt. +Gesucht ist also zunächst eine Darstellung von $P(t)$ als Linearkombination +von Hermite-Polynomen. + +\begin{lemma} +Jedes Polynome $P(t)$ vom Grad $n$ lässt sich auf eindeutige Art und +Weise als Linearkombination +\begin{equation} +P(t) = a_0H_0(t) + a_1H_1(t) + \ldots + a_nH_n(t) += +\sum_{k=0}^n a_nH_n(t) +\label{dreieck:lemma} +\end{equation} +von Hermite-Polynomen schreiben. +\end{lemma} + +\begin{proof}[Beweis] +Zunächst halten wir fest, dass aus der +Rekursionsformel~\eqref{dreieck:eqn:rekursion} +folgt, dass der Leitkoeffizient bei jedem Rekursionsschnitt +mit $2$ multipliziert wird. +Der Leitkoeffizient von $H_n(t)$ ist also $2^n$. + +Wir führen den Beweis mit vollständiger Induktion. +Für $n=0$ ist $P(t)=p_0 = p_0 H_0(t)$ als Linearkombination von +Hermite-Polynomen darstellbar, dies ist die Induktionsverankerung. + +Wir nehmen jetzt im Sinne der Induktionsannahme an, +dass sich ein Polynom vom Grad $n-1$ als +Linearkombination der Polynome $H_0(t),\dots,H_{n-1}(t)$ schreiben +lässt und untersuchen ein Polynom $P(t)$ vom Grad $n$. +Da der Leitkoeffizient des Polynoms $H_n(t)$ ist $2^n$, ist zerlegen +wir +\[ +P(t) += +\underbrace{\biggl(P(t) - \frac{p_n}{2^n} H_n(t)\biggr)}_{\displaystyle = Q(t)} ++ +\frac{p_n}{2^n} H_n(t). +\] +Das Polynom $Q(t)$ hat Grad $n-1$, besitzt also nach Induktionsannahme +eine Darstellung +\[ +Q(t) = a_0H_0(t)+a_1H_1(t)+\ldots+a_{n-1}H_{n-1}(t) +\] +als Linearkombination der Polynome $H_0(t),\dots,H_{n-1}(t)$. +Somit ist +\[ +P(t) += a_0H_0(t)+a_1H_1(t)+\ldots+a_{n-1}H_{n-1}(t) + +\frac{p_n}{2^n} H_n(t) +\] +eine Darstellung von $P(t)$ als Linearkombination der Polynome +$H_0(t),\dots,H_n(t)$. +Damit ist der Induktionsschritt vollzogen und das Lemma für alle +$n$ bewiesen. +\end{proof} + +\begin{satz} +\label{dreieck:satz1} +Die Funktion $P(t)e^{-t^2}$ hat genau dann eine elementare Stammfunktion, +wenn in der Darstellung~\eqref{dreieck:lemma} +von $P(t)$ als Linearkombination von Hermite-Polynomen $a_0=0$ gilt. +\end{satz} + +\begin{proof}[Beweis] +Es ist +\begin{align*} +\int P(t)e^{-t^2}\,dt +&= +a_0\int e^{-t^2}\,dt ++ +\int +\sum_{k=1} a_kH_k(t)\,dt +\\ +&= +a_0 +\frac{\sqrt{\pi}}2 +\operatorname{erf}(t) ++ +\sum_{k=1} a_k\int H_k(t)\,dt. +\end{align*} +Da die Integrale in der Summe alle elementar darstellbar sind, +ist das Integral genau dann elementar, wenn $a_0=0$ ist. +\end{proof} + + diff --git a/buch/papers/dreieck/teil3.tex b/buch/papers/dreieck/teil3.tex new file mode 100644 index 0000000..c0c046a --- /dev/null +++ b/buch/papers/dreieck/teil3.tex @@ -0,0 +1,77 @@ +% +% teil3.tex -- Beispiel-File für Teil 3 +% +% (c) 2020 Prof Dr Andreas Müller, Hochschule Rapperswil +% +\section{Integralbedingung +\label{dreieck:section:integralbedingung}} +\rhead{Lösung} +Die Tatsache, dass die Hermite-Polynome orthogonal sind, erlaubt, das +Kriterium von Satz~\ref{dreieck:satz1} in einer besonders attraktiven +Integralform zu formulieren. + +Aus den Polynomen $H_n(t)$ lassen sich durch Normierung die +\index{orthogonale Polynome}% +\index{Polynome, orthogonale}% +orthonormierten Polynome +\[ +\tilde{H}_n(t) += +\frac{1}{\| H_n\|_w} H_n(t) +\qquad\text{mit}\quad +\|H_n\|_w^2 += +\int_{-\infty}^\infty H_n(t)e^{-t^2}\,dt +\] +bilden. +Da diese Polynome eine orthonormierte Basis des Vektorraums der Polynome +bilden, kann die gesuchte Zerlegung eines Polynoms $P(t)$ auch mit +Hilfe des Skalarproduktes gefunden werden: +\begin{align*} +P(t) +&= +\sum_{k=1}^n +\langle \tilde{H}_k, P\rangle_w +\tilde{H}_k(t) += +\sum_{k=1}^n +\biggl\langle \frac{H_k}{\|H_k\|_w}, P\biggr\rangle_w +\frac{H_k(t)}{\|H_k\|_w} += +\sum_{k=1}^n +\underbrace{ +\frac{ \langle H_k, P\rangle_w }{\|H_k\|_w^2} +}_{\displaystyle =a_k} +H_k(t). +\end{align*} +Die Darstellung von $P(t)$ als Linearkombination von Hermite-Polynomen +hat somit die Koeffizienten +\[ +a_k = \frac{\langle H_k,P\rangle_w}{\|H_k\|_w^2}. +\] +Aus dem Kriterium $a_0=0$ dafür, dass eine elementare Stammfunktion +von $P(t)e^{-t^2}$ existiert, wird daher die Bedingung, dass +$\langle H_0,P\rangle_w=0$ ist. +Da $H_0(t)=1$ ist, folgt als Bedingung +\[ +a_0 += +\langle H_0,P\rangle_w += +\int_{-\infty}^\infty P(t) e^{-t^2}\,dt += +0. +\] + +\begin{satz} +Ein Integrand der Form $P(t)e^{-t^2}$ mit einem Polynom $P(t)$ +hat genau dann eine elementare Stammfunktion, wenn +\[ +\int_{-\infty}^\infty P(t)e^{-t^2}\,dt = 0 +\] +ist. +\end{satz} + + + + |