From 531c564ecc1d73e1ddf25890720212d89f18edc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Wed, 8 Dec 2021 20:15:41 +0100 Subject: add new stuff about airy and hypergeometric functions --- buch/chapters/040-rekursion/gamma.tex | 251 ++++++++++++++++++++- buch/chapters/040-rekursion/hypergeometrisch.tex | 85 +++++++ buch/chapters/050-differential/bessel.tex | 14 +- buch/chapters/050-differential/chapter.tex | 13 +- .../chapters/050-differential/hypergeometrisch.tex | 248 +++++++++++++++++++- .../050-differential/uebungsaufgaben/501.tex | 63 ++++++ .../050-differential/uebungsaufgaben/502.tex | 60 +++++ .../050-differential/uebungsaufgaben/503.tex | 19 ++ .../050-differential/uebungsaufgaben/Makefile | 15 ++ .../050-differential/uebungsaufgaben/airy.cpp | 118 ++++++++++ .../050-differential/uebungsaufgaben/airy.pdf | Bin 0 -> 18892 bytes .../050-differential/uebungsaufgaben/airy.tex | 59 +++++ buch/chapters/050-differential/verallghyper.maxima | 12 + 13 files changed, 925 insertions(+), 32 deletions(-) create mode 100644 buch/chapters/050-differential/uebungsaufgaben/501.tex create mode 100644 buch/chapters/050-differential/uebungsaufgaben/502.tex create mode 100644 buch/chapters/050-differential/uebungsaufgaben/503.tex create mode 100644 buch/chapters/050-differential/uebungsaufgaben/Makefile create mode 100644 buch/chapters/050-differential/uebungsaufgaben/airy.cpp create mode 100644 buch/chapters/050-differential/uebungsaufgaben/airy.pdf create mode 100644 buch/chapters/050-differential/uebungsaufgaben/airy.tex create mode 100644 buch/chapters/050-differential/verallghyper.maxima diff --git a/buch/chapters/040-rekursion/gamma.tex b/buch/chapters/040-rekursion/gamma.tex index 00eee19..36937c7 100644 --- a/buch/chapters/040-rekursion/gamma.tex +++ b/buch/chapters/040-rekursion/gamma.tex @@ -106,7 +106,7 @@ und erhalten \begin{equation} x! = -\frac{n!n^x}{(x+1)_n}\cdot +\frac{n!\,n^x}{(x+1)_n}\cdot \frac{(n+1)_x}{n^x}. \label{buch:rekursion:gamma:eqn:produkt3} \end{equation} @@ -139,7 +139,7 @@ Dies würde die folgende Definition rechtfertigen. Die Gamma-Funktion $\Gamma(x)$ einer Zahl $x\in\mathbb{C}\setminus\{0,-1,-2,-3,\dots\}$ ist der Grenzwert \[ -\Gamma(x) = \lim_{n\to\infty} \frac{n!n^{x-1}}{(x)_n}. +\Gamma(x) = \lim_{n\to\infty} \frac{n!\,n^{x-1}}{(x)_n}. \] \end{definition} @@ -170,11 +170,11 @@ dies ist möglich, indem man mit $x$ erweitert: \begin{align*} \Gamma(x+1) &= -\lim_{n\to\infty}\frac{n!n^x}{(x+1)_n} +\lim_{n\to\infty}\frac{n!\,n^x}{(x+1)_n} = -x\lim_{n\to\infty}\frac{n!n^x}{x(x+1)_n} +x\lim_{n\to\infty}\frac{n!\,n^x}{x(x+1)_n} = -x\lim_{n\to\infty}\frac{n!n^x}{(x)_{n+1}}. +x\lim_{n\to\infty}\frac{n!\,n^x}{(x)_{n+1}}. \intertext{Wir müssen jetzt nur noch zeigen, dass der Grenzwert auf der rechten Seite gegen $\Gamma(x)$ konvergiert, in dessen Definition aber die Potenz $n^{x-1}$ vorkommt. @@ -217,7 +217,7 @@ Dies ist aber viel zu kleine, um gute Approximationen auch für kleine Werte von $x$ zu geben. So findet man zum Beispiel für $x=\frac12$ und $n=170$ mit Octave \[ -\frac{n!n^{x-1}}{(x)_n} +\frac{n!\,n^{x-1}}{(x)_n} = \frac{170!}{\sqrt{170}\cdot \frac12\cdot\frac32\cdot\ldots\cdot\frac{339}{2}} = @@ -304,7 +304,7 @@ berechnen wir \frac{1}{\Gamma(x)} &= \lim_{n\to\infty} -\frac{(x)_n}{n!n^{x-1}} +\frac{(x)_n}{n!\,n^{x-1}} = \lim_{n\to\infty} \frac{x(x+1)(x+2)\cdots(x+n-1)}{1\cdot 2\cdot3\cdots (n-1)\cdot n\cdot n^{x-1}} @@ -584,6 +584,243 @@ Die Genauigkeit erreicht sechs korrekte Nachkommastellen mit nur % \subsection{Die Beta-Funktion} +\begin{definition} +Das Beta-Integral ist das Integral +\[ +B(x,y) += +\int_0^1 t^{x-1} (1-t)^{y-1}\,dt +\] +für $\operatorname{Re}x>0$, $\operatorname{Re}y>0$. +\end{definition} + +Aus der Definition kann man sofort ablesen, dass $B(x,y)=B(y,x)$. +Für $y=1$ folgt ausserdem +\[ +B(x,1) = \int_0^1 t^{x-1}\,dt = \biggl[ \frac{t^x}{x}\biggr]_0^1 = \frac{1}{x}. +\] +Speziell gilt $B(1,1)=1$. + +\subsubsection{Rekursionsformeln für das Beta-Integral} +Aus der Definition folgt direkt +\begin{align*} +B(x,y+1) +&= +\int_0^1 t^{x-1} (1-t)^{y+1-1}\,dt += +\int_0^1 (1-t) t^{x-1} (1-t)^{y-1}\,dt +\\ +&= +\int_0^1 t^{x-1} (1-t)^{y-1}\,dt +- +\int_0^1 t^{x} (1-t)^{y-1}\,dt +\\ +&= +B(x,y) - B(x+1,y) +\end{align*} +oder +\begin{equation} +B(x+1,y) = B(x,y) - B(x,y+1). +\label{buch:rekursion:gamma:betarek1} +\end{equation} +% +%XXX Vergleich mit der Rekursionsformel für Binomialkoeffizienten +% +Durch partielle Integration kann man eine weitere Rekursionsformel finden. +Dazu berechnet man +\begin{align} +B(x,y+1) +&= +\int_0^1 t^{x-1}(1-t)^{y}\,dt +\notag +\\ +&= +\biggl[\frac{t^x}x(1-t)^y\biggr]_0^1 ++ +\frac{y}x \int_0^1 t^x(1-t)^{y-1}\,dt +\notag +\\ +&= + \frac{y}x B(x+1,y). +\label{buch:rekursion:gamma:betarek2} +\end{align} +Durch Gleichsetzen +\eqref{buch:rekursion:gamma:betarek1} +und +\eqref{buch:rekursion:gamma:betarek2} +entsteht die Rekursionsformel +\[ +B(x,y)-B(x,y+1) += +B(x+1,y) += +\frac{x}{y}B(x,y+1) +\] +oder +\begin{equation} +B(x,y) += +\frac{x+y}{y}B(x,y+1). +\label{buch:rekursion:gamma:betarek3} +\end{equation} + +\subsubsection{Beta-Funktion und Gamma-Funktion} +Die Rekursionsbeziehung~\eqref{buch:rekursion:gamma:betarek3} +kann jetzt dazu verwendet werden, eine Darstellung der Beta-Funktion +durch die Gamma-Funktion zu finden. +Durch $n$-fache Anwendung von \eqref{buch:rekursion:gamma:betarek3} +ergibt sich zunächst +\begin{align*} +B(x,y) +&= +\frac{x+y}{y} +B(x,y+1) += +\frac{x+y}{y} +\frac{x+y+1}{y+1} +B(x,y+2) +\\ +&= +\frac{x+y}{y} +\frac{x+y+1}{y+1} +\cdot +\ldots +\cdot +\frac{x+y+n-1}{y+n-1} +B(x,y+n) += +\frac{(x+y)_n}{(y)_n} +B(x,y+n) +\intertext{Die Beta-Funktion auf der rechten Seite kann als Integral +geschrieben werden:} +&= +\frac{(x+y)_n}{(y)_n} +\int_0^1 t^{x-1}(1-t)^{y+n-1}\,dt. +\intertext{Wir streben an, mit dem Grenzübergang $n\to\infty$ aus den +Pochhammer-Symbolen Gamma-Funktionen zu machen, dazu müssen gemäss +Definition~\ref{buch:rekursion:gamma:def:definition} weitere Faktoren +$1/(n!\,n^{x-1})$ vorhanden sein. +Wir erweitern geeignet und nehmen die übrig bleibenden Faktoren in +das Integral. +So ergibt sich} +&= +\frac{(x+y)_n}{n!\, n^{x+y-1}} +\frac{n!\,n^{y-1}}{(y)_n} +\int_0^1 n^{x} t^{x-1}(1-t)^{y+n-1}\,dt. +\intertext{Mit der Substition $s/n=t$ wird das Integral zu einem Integral +über das Interval $[0,n]$} +&= +\frac{(x+y)_n}{n!\, n^{x+y-1}} +\frac{n!\,n^{y-1}}{(y)_n} +\int_0^n +n^{x} +\biggl(\frac{s}{n}\biggr)^{x-1} +\biggl(1-\frac{s}{n}\biggr)^{y+n-1} +\,\frac{ds}{n}. +\\ +&= +\frac{(x+y)_n}{n!\, n^{x+y-1}} +\frac{n!\,n^{y-1}}{(y)_n} +\int_0^n +n^{x-1} +\biggl(\frac{s}{n}\biggr)^{x-1} +\biggl(1-\frac{s}{n}\biggr)^{y+n-1} +\,ds. +\intertext{Beim Grenzübergang $n\to\infty$ wird daraus} +&= +\underbrace{\frac{(x+y)_n}{n!\, n^{x+y-1}}}_{\displaystyle \to 1/\Gamma(x+y)} +\underbrace{\frac{n!\,n^{y-1}}{(y)_n}}_{\displaystyle\to \Gamma(y)} +\int_0^n +s^{x-1} +\underbrace{\biggl(1-\frac{s}{n}\biggr)^{n}}_{\displaystyle\to e^{-s}} +\underbrace{\biggl(1-\frac{s}{n}\biggr)^{y-1}}_{\displaystyle\to 1} +\,ds. +\\ +&\to \frac{\Gamma(y)}{\Gamma(x+y)} \int_0^\infty s^{x-1}e^{-s}\,ds += +\frac{\Gamma(y)\Gamma(x)}{\Gamma(x+y)}. +\end{align*} + +\begin{satz} +Die Beta-Funktion kann aus der Gamma-Funktion nach +\begin{equation} +B(x,y) = \frac{\Gamma(x)\Gamma(y)}{\Gamma(x+y)} +\end{equation} +berechnet werden. +\end{satz} + +\subsubsection{Beta-Funktion und Binomialkoeffizienten} +Die Binomialkoeffizienten können mit Hilfe der Fakultät als +\begin{equation} +\binom{n}{k} += +\frac{n!}{(n-k)!\,k!} += +\frac{\Gamma(n-1)}{\Gamma(n-k-1)\Gamma(k-1)} += +\frac{(n-2)\Gamma(n-2)}{\Gamma(n-k-1)\Gamma(k-1)} += +\frac{n-2}{B(n-k-1,k-1)} +\label{buch:rekursion:gamma:binombeta} +\end{equation} +geschrieben werden. +Die Rekursionsbeziehung +\[ +\binom{n+1}{k} = \binom{n}{k-1} + \binom{n}{k} +\] +der Binomialkoeffizienten erzeugt das vertraute Pascal-Dreieck, +die Formel \eqref{buch:rekursion:gamma:binombeta} für die +Binomialkoeffizienten macht daraus +\[ +\frac{n-1}{B(n-k,k-1)} += +\frac{n-2}{B(n-k,k-2)} ++ +\frac{n-2}{B(n-k-1,k-1)}, +\] +die für ganzzahlige Argumente gilt. +Wir wollen nachrechnen, dass dies für beliebige Argumente gilt. +\begin{align*} +\frac{(n-1)\Gamma(n-1)}{\Gamma(n-k)\Gamma(k-1)} +&= +\frac{(n-2)\Gamma(n-2)}{\Gamma(n-k)\Gamma(k-2)} ++ +\frac{(n-2)\Gamma(n-2)}{\Gamma(n-k-1)\Gamma(k-1)} +\\ +\frac{\Gamma(n)}{\Gamma(n-k)\Gamma(k-1)} +&= +\frac{\Gamma(n-1)}{\Gamma(n-k)\Gamma(k-2)} ++ +\frac{\Gamma(n-1)}{\Gamma(n-k-1)\Gamma(k-1)} +\intertext{Durch Zusammenfassen der Faktoren im Zähler mit Hilfe +der Rekursionsformel für die Gamma-Funktion und Multiplizieren +mit dem gemeinsamen Nenner +$\Gamma(n-k)\Gamma(k-1)=(n-k-1)\Gamma(n-k-1)(k-2)\Gamma(k-2)$ wird daraus} +\Gamma(n) +&= +(k-2) +\Gamma(n-1) ++ +(n-k-1) +\Gamma(n-1) +\intertext{Indem wir die Rekursionsformel für die Gamma-Funktion auf +die rechte Seite anwenden können wir erreichen, dass in allen Termen +ein Faktor +$\Gamma(n-1)$ auftritt:} +(n-1)\Gamma(n-1) +&= +(k-2)\Gamma(n-1) ++ +(n+k-1)\Gamma(n-1) +\\ +n-1 +&= +k-2 ++ +n-k-1 +\end{align*} + + % % % diff --git a/buch/chapters/040-rekursion/hypergeometrisch.tex b/buch/chapters/040-rekursion/hypergeometrisch.tex index 2bbb1f4..d836277 100644 --- a/buch/chapters/040-rekursion/hypergeometrisch.tex +++ b/buch/chapters/040-rekursion/hypergeometrisch.tex @@ -825,4 +825,89 @@ Term, der in der hypergeometrischen Funktion $\mathstrut_nF_m$ vorkommt, aber nicht in der Summe~\eqref{buch:rekursion:hypergeometrisch:eqn:stammfunktion:summe}. +\subsection{Integraldarstellung der hypergeometrischen Funktion +$\mathstrut_2F_1$} +Das Integral +\[ +f(x) += +\int_0^1 t^{b-1} (1-t)^{c-b-1} (1-xt)^{-a}\,dt +\] +kann im allgemeinen nicht in geschlossener Form evaluiert werden. +Die Newtonsche binomische Reihe ermöglicht, den $x$ enthaltenden +Faktor als +\[ +(1-xt)^{-a} += +\sum_{k=0}^\infty +\frac{(a)_k}{k!} x^k t^k +\] +zu schreiben. +Setzt man dies ins Integral ein, erhält man +\[ +f(x) += +\sum_{k=0}^\infty \frac{(a)_k}{k!} x^k +\int_0^1 t^{b-1} (1-t)^{c-b-1} t^k\,dt += +\sum_{k=0}^\infty \frac{(a)_k}{k!} x^k +\int_0^1 t^{k+b-1} (1-t)^{c-b-1} t^k\,dt. +\] +Das Integral ist die Beta-Funktion $B(k+b,c-b)$ und kann daher mit Hilfe +der Gamma-Funktion geschrieben werden. +Es gilt +\[ +B(k+b,c-b) += +\frac{\Gamma(k+b)\Gamma(c-b)}{\Gamma(c+k)}. +\] +Mit Hilfe der Funktionalgleichung der Gamma-Funktion kann man +\begin{align*} +\Gamma(u+k) +&= +\Gamma(u+k-1) (u+k-1) += +\Gamma(u+k-2) (u+k-2)(u+k-1) +\\ +&= +\ldots +\\ +&= +\Gamma(u) u(u+1)\cdots(u+k-2)(u+k-1) +\end{align*} +schreiben, womit das Integral zu +\begin{align*} +f(x) +&= +\sum_{k=0}^\infty \frac{(a)_k}{k!} x^k +\frac{\Gamma(k+b)\Gamma(c-b)}{\Gamma(c+k)} += +\sum_{k=0}^\infty \frac{(a)_k}{k!} x^k +\frac{\Gamma(b)(b)_k\Gamma(c-b)}{\Gamma(c)(c)_k} +\\ +&= +\frac{\Gamma(b)\Gamma(c-b)}{\Gamma(c)} +\sum_{k=0}^\infty\frac{(a)_k(b)_k}{(c)_k} x^k += +\frac{\Gamma(b)\Gamma(c-b)}{\Gamma(c)}\,\mathstrut_2F_1(a,b;c;x) +\end{align*} +vereinfacht werden kann. +Damit ist das Integral bestimmt. +Durch Auflösung nach der hypergeometrischen Funktion bekommt man +die folgende Integraldarstellung. + +\begin{satz} +Die hypergeometrische Funktion $\mathstrut_2F_1$ hat die +Integraldarstellung +\[ +\mathstrut_2F_1\biggl( +\begin{matrix}a,b\\c\end{matrix};x +\biggr) += +\frac{\Gamma(c)}{\Gamma(b)\Gamma(c-b)} +\int_0^1 t^{b-1}(1-t)^{c-b-1}(1-xt)^{-a}\,dt. +\] +\end{satz} + + diff --git a/buch/chapters/050-differential/bessel.tex b/buch/chapters/050-differential/bessel.tex index 13880b8..5cf15b5 100644 --- a/buch/chapters/050-differential/bessel.tex +++ b/buch/chapters/050-differential/bessel.tex @@ -218,7 +218,7 @@ y_1(x) = \biggl(\frac{x}{2}\biggr)^\alpha \sum_{k=0}^\infty -\frac{(-1)^k}{\Gamma(\alpha+k+1)} +\frac{(-1)^k}{k!\,\Gamma(\alpha+k+1)} \biggl(\frac{x}{2}\biggr)^{2k}. \] Dabei haben wir es durch @@ -233,7 +233,7 @@ J_{\alpha}(x) = \biggl(\frac{x}{2}\biggr)^\alpha \sum_{k=0}^\infty -\frac{(-1)^k}{\Gamma(\alpha+k+1)} +\frac{(-1)^k}{k!\,\Gamma(\alpha+k+1)} \biggl(\frac{x}{2}\biggr)^{2k} \] heisst {\em Bessel-Funktionen der Ordnung $\alpha$}. @@ -247,14 +247,14 @@ Die Summe beginnt also erst bei $k=n$ oder \begin{align*} J_{-n}(x) &= -\sum_{k=n}^\infty \frac{(-1)^k}{m!k!}\biggl(\frac{x}{2}\biggr)^{2k-n} +\sum_{k=n}^\infty \frac{(-1)^k}{m!\,k!}\biggl(\frac{x}{2}\biggr)^{2k-n} = \sum_{l=0}^\infty -\frac{(-1)^{l+n}}{m!(l+n)!}\biggl(\frac{x}{2}\biggr)^{2(l+n)-n} +\frac{(-1)^{l+n}}{m!\,(l+n)!}\biggl(\frac{x}{2}\biggr)^{2(l+n)-n} = (-1)^n \sum_{l=0}^\infty -\frac{(-1)^l}{m!\Gamma(l+n+1)}\biggl(\frac{x}{2}\biggr)^{2l+n} +\frac{(-1)^l}{m!\,\Gamma(l+n+1)}\biggl(\frac{x}{2}\biggr)^{2l+n} \\ &= (-1)^n @@ -283,7 +283,7 @@ Die erzeugende Funktion der Bessel-Funktionen ist die Summe \sum_{n\in\mathbb{Z}} {\color{darkred} \sum_{k=0}^\infty -\frac{(-1)^k}{k!\Gamma(k+n+1)} +\frac{(-1)^k}{k!\,\Gamma(k+n+1)} \biggl(\frac{x}{2}\biggr)^{2k+n} } z^n. @@ -296,7 +296,7 @@ Wir schreiben $m=k+n$ und drücken alle Terme durch $k$ und $m$ aus:} &= \sum_{n\in \mathbb{Z}} \sum_{k=0}^\infty -\frac{(-1)^k}{k!\Gamma(n+k+1)} +\frac{(-1)^k}{k!\,\Gamma(n+k+1)} \biggl(\frac{x}{2}\biggr)^k \biggl(\frac{x}{2}\biggr)^{n+k} z^{n+k} diff --git a/buch/chapters/050-differential/chapter.tex b/buch/chapters/050-differential/chapter.tex index e4cd7d7..08bf6c6 100644 --- a/buch/chapters/050-differential/chapter.tex +++ b/buch/chapters/050-differential/chapter.tex @@ -64,11 +64,12 @@ die Bessel-Funktionen erster Art vorgestellt. \input{chapters/050-differential/bessel.tex} \input{chapters/050-differential/hypergeometrisch.tex} -%\section*{Übungsaufgaben} -%\rhead{Übungsaufgaben} -%\aufgabetoplevel{chapters/060-differential/uebungsaufgaben} -%\begin{uebungsaufgaben} +\section*{Übungsaufgaben} +\rhead{Übungsaufgaben} +\aufgabetoplevel{chapters/050-differential/uebungsaufgaben} +\begin{uebungsaufgaben} %\uebungsaufgabe{0} -%\uebungsaufgabe{1} -%\end{uebungsaufgaben} +\uebungsaufgabe{501} +\uebungsaufgabe{502} +\end{uebungsaufgaben} diff --git a/buch/chapters/050-differential/hypergeometrisch.tex b/buch/chapters/050-differential/hypergeometrisch.tex index 1cba88a..1d3cb64 100644 --- a/buch/chapters/050-differential/hypergeometrisch.tex +++ b/buch/chapters/050-differential/hypergeometrisch.tex @@ -141,30 +141,254 @@ c\frac{(a)_{k+1}(b)_{k+1}}{(c)_{k+1}} \frac{1}{k!} -ab \frac{(a)_k(b)_k}{(c)_k}\frac{1}{k!} \\ &= -\frac{(a)_k(b)_k}{(c)_k} -\frac{1}{(k-2)!} +\frac{(a)_k(b)_k}{(c)_{k+1}} +\frac{1}{k!} \biggl( -\frac{(a+k)(b+k)}{c+k}\frac1{k-1} --1 +(a+k)(b+k)k +-(c+k)(k-1)k + -c\frac{(a+k)(b+k)}{c+k}\frac1{(k-1)k} +c(a+k)(b+k) \\ &\qquad --(a+b+1)\frac1{k-1} --ab \frac1{(k-1)k} +\qquad +\qquad +-(a+b+1)(c+k)k +-ab(c+k) +\biggr). +\intertext{Der zweite, vierte und fünfte Term können zu} +&= +\frac{(a)_k(b)_k}{(c)_{k+1}} +\frac{1}{k!} +\biggl( +(a+k)(b+k)k ++ +c(a+k)(b+k) +-(ab+ak+bk+k^2)(c+k) \biggr) -\\ +\intertext{zusammengefasst werden. +Der Faktor $(ab+ak+bk+k^2)$ kann als Produkt $(a+k)(b+k)$ faktorisiert +werden, der dann als gemeinsamer Faktor aus allen Termen ausgeklammert +werden kann:} &= \frac{(a)_k(b)_k}{(c)_{k+1}} \frac{1}{k!} \biggl( -(a+k)(b+k)k - (c+k)(k-1)k + (a+k)(b+k) - (a+b+1)(c+k)k-ab(c+k) +(a+k)(b+k)k ++ +c(a+k)(b+k) +-(a+k)(b+k)(c+k) +\biggr) +\\ +&= +\frac{(a)_{k+1}(b)_{k+1}}{(c)_{k+1}} +\frac{1}{k!} +\biggl( +k ++ +c +-(c+k) \biggr) +=0. \end{align*} +Damit ist gezeigt, dass $\mathstrut_2F_1(a,b;c;x)$ eine Lösung +der Differentialgleichung ist. +Die hypergeometrische Reihe kann auch direkt mit Hilfe der +Potenzreihenmethode als Lösung der Differentialgleichung gefunden +werden. +\subsection{Lösung als verallgemeinerte Potenzreihe} +Da die hypergeometrische Reihe eine Differentialgleichung +zweiter Ordnung mit einer Singularität bei $x=0$ ist, +kann man versuchen eine zweite, linear unabhängige Lösung mit +Hilfe der Methode der verallgemeinerten Potenzreihen zu finden. +Dazu setzt man die Lösung in der Form +\begin{align*} +y_2(x) +&= +\sum_{k=0}^\infty a_kx^{\varrho+k} +& +&\Rightarrow& +y_2'(x) +&= +\sum_{k=0}^\infty (\varrho+k)a_kx^{\varrho+k-1} +\\ +&& +&& +y_2''(x) +&= +\sum_{k=0}^\infty (\varrho+k)(\varrho+k-1)a_kx^{\varrho+k-2} +\end{align*} +an, wobei $a_0\ne 0$ sein soll. +Einsetzen in die Differentialgleichung ergibt +\begin{align*} +0&= +x(1-x)y_2''(x) + (c-(a+b+1)x) y_2'(x) -aby_2(x) +\\ +&= +x(1-x) +\sum_{k=0}^\infty (\varrho+k)(\varrho+k-1)a_kx^{\varrho+k-2} ++ +(c-(a+b+1)x) +\sum_{k=0}^\infty (\varrho+k)a_kx^{\varrho+k-1} +- +abx^{\varrho}\sum_{k=0}^\infty a_kx^{\varrho+k} +\\ +&= +-\sum_{k=0}^\infty (\varrho+k)(\varrho+k-1)a_kx^{\varrho+k} ++ +\sum_{k=0}^\infty (\varrho+k)(\varrho+k-1)a_kx^{\varrho+k-1} ++ +c +\sum_{k=0}^\infty (\varrho+k)a_kx^{\varrho+k-1} +\\ +&\qquad +- +(a+b+1) +\sum_{k=0}^\infty (\varrho+k)a_kx^{\varrho+k} +- +ab +\sum_{k=0}^\infty a_kx^{\varrho+k}. +\intertext{Durch Verschiebung des Summationsindex in der zweiten +und dritten Summe wird der Koeffizientenvergleich etwas +einfacher} +&= +-\sum_{k=0}^\infty (\varrho+k)(\varrho+k-1)a_kx^{\varrho+k} ++ +\sum_{k=-1}^\infty (\varrho+k+1)(\varrho+k)a_{k+1}x^{\varrho+k} ++ +c +\sum_{k=-1}^\infty (\varrho+k+1)a_{k+1}x^{\varrho+k} +\\ +&\qquad +- +(a+b+1) +\sum_{k=0}^\infty (\varrho+k)a_kx^{\varrho+k} +- +ab +\sum_{k=0}^\infty a_kx^{\varrho+k} +\\ +&= +-\sum_{k=0}^\infty (\varrho+k)(\varrho+k-1)a_kx^{\varrho+k} ++ +\sum_{k=-1}^\infty (\varrho+k+1)(\varrho+k+c)a_{k+1}x^{\varrho+k} +\\ +&\qquad +- +\sum_{k=0}^\infty ((\varrho+k)(a+b+1)+ab)a_kx^{\varrho+k} +\\ +&= +\bigl( +\varrho(\varrho-1) ++c\varrho \bigr) +x^{\varrho-1} ++ +\sum_{k=0}^\infty +\bigl( +-(\varrho+k)(\varrho+k-1)a_k ++(\varrho+k+1)(\varrho+k+c)a_{k+1} +\\ +& +\qquad +\qquad +\qquad +\qquad +\qquad +\qquad +-((\varrho+k)(a+b+1)+ab)a_k +\bigr) +x^{\varrho+k}. +\end{align*} +Aus dem ersten Term kann man die Indexgleichung +\[ +0 += +\varrho(\varrho-1)+c\varrho += +\varrho(\varrho-1+c) +\] +ablesen, die die Nullstellen $\varrho=0$ und $\varrho=1-c$ hat. +Die Nullstelle $\varrho=0$ ergibt natürlich die bereits gefundene +hypergeometrische Reihe. +Nach Einsetzen der zweiten Lösung der Indexgleichung in der Summe +legt der Koeffizientenvergleich eine Beziehung +\begin{align} +0 +&= +\bigl( +-(k-c+1)(k-c) +-(k-c+1)(a+b+1)+ab +\bigr)a_k ++ +(k-c+2)(k+1) +a_{k+1} +\notag +\intertext{zwischen $a_k$ und $a_{k+1}$ fest. +Daraus kann man den Quotienten aufeinanderfolgender +Koeffizienten als} +\frac{a_{k+1}}{a_k} +&= +\frac{ +-(k-c+1)(k-c) +-(k-c+1)(a+b+1)+ab +}{ +\notag +(k-c+2)(k+1) +} +\\ +&= +%(%i4) factor(coeff(y,q,0)) +%(%o4) - (k - c + a + 1) (k - c + b + 1) +%(%i5) factor(coeff(y,q,1)) +%(%o5) (k + 1) (k - c + 2) +\frac{ +(a-c+1+k) +(b-c+1+k) +}{ +(2-c+k)(k+1) +} +\label{buch:differentialgleichungen:hypergeo:verallgkoef} +\end{align} +finden. +Setzt man $a_0=1$, ist die zweite Lösung ist also wieder eine +hypergeometrische Funktion.%, nämlich +%\[ +%y_2(x) +%= +%x^{1-c} +%\sum_{k=0}^\infty \frac{(a-c+1)_k(b-c+1)_k}{(2-c)_k}\frac{x^k}{k!} +%= +%x^{1-c} +%\mathstrut_2F_1\biggl(\begin{matrix}a-c+1,b-c+1\\2-c\end{matrix};x\biggr) +%\] +Diese Lösung ist aber nur möglich, wenn in +\eqref{buch:differentialgleichungen:hypergeo:verallgkoef} +der Nenner nicht verschwindet, d.~h.~$2-c+k\ne 0$ +oder $c \ne k+2$ für all natürlichen $k$. +$c$ darf also kein natürliche Zahl $\ge 2$ sein. +Wir fassen die Resultate dieses Abschnitts im folgenden Satz zusammen. - - - +\begin{satz} +Die eulersche hypergeometrische Differentialgleichung +\begin{equation} +x(1-x)\frac{d^2y}{dx^2} ++(c+(a+b+1)x)\frac{dy}{dx} +-ab y += +0 +\end{equation} +hat die Lösung +\[ +y_1(x) += +\mathstrut_2F_1\biggl(\begin{matrix}a,b\\c\end{matrix};x\biggr). +\] +Falls $c-2\not\in \mathbb{N}$ ist, ist +\[ +y_2(x) += +x^{1-c} \mathstrut_2F_1\biggl(\begin{matrix}a-c+1,b-c+1\\2-c\end{matrix};x\biggr) +\] +eine zweite, linear unabhängige Lösung. +\end{satz} diff --git a/buch/chapters/050-differential/uebungsaufgaben/501.tex b/buch/chapters/050-differential/uebungsaufgaben/501.tex new file mode 100644 index 0000000..d27e21c --- /dev/null +++ b/buch/chapters/050-differential/uebungsaufgaben/501.tex @@ -0,0 +1,63 @@ +Finden Sie eine Lösung der Airy Differentialgleichung +\[ +y''-xy=0 +\] +mit Anfangsbedingungen $y(0)=a$ und $y'(0)=b$. + +\begin{loesung} +An der Stelle $x=0$ folgt aus der Differentialgleichung, dass $y''(0)=0$ +gelten muss. +In einem Potenzreihenansatz der Form +\begin{align*} +y(x) +&= +\sum_{k=0}^\infty a_kx^k +&&\Rightarrow& +y'(x) +&= +\sum_{k=1}^\infty a_kx^{k-1} +\\ +&&&& +y''(x) +&= +\sum_{k=2}^\infty k(k-1)a_kx^{k-2} +\end{align*} +kann man daher $a_2=0$ setzen und damit die Summation in der +Reihenentwicklung für $y''(x)$ erst bei $k=3$ beginnen. + +Setzt man den Ansatz in die Differentialgleichung ein, erhält man +\begin{align*} +0 +&= +y''(x)-xy(x) +\\ +&= +\sum_{k=3}^\infty k(k-1)a_kx^{k-2} +- +\sum_{k=0}^\infty a_kx^{k+1} +\\ +&= +\sum_{k=0}^\infty (k+3)(k+2)a_{k+3}x^{k+1} +- +\sum_{k=0}^\infty a_{k}x^{k+1} +\\ +&= +\sum_{k=0}^\infty \bigl((k+3)(k+2)a_{k+3}-a_{k}\bigr)x^{k+1}. +\end{align*} +Koeffizientenvergleich liefert jetzt die Rekursionsbeziehungen +\[ +a_{k+3} = \frac1{(k+3)(k+2)} {a_k}. +\] +Da $a_2=0$ ist folgt daraus auch, dass $a_5=a_8=a_{11}=\dots=0$ ist. + +Aus den Anfangsbedingungen liest man ab dass $a_0=a$ und $a_1=b$, daraus +kann man jetzt die Lösung konstruieren, es ist +\[ +y(x) += +a\biggl(1+\frac{1}{2\cdot 3}x^3 + \frac{1}{2\cdot3\cdot5\cdot 6}x^6 + \dots\biggr) ++ +b\biggl(x+\frac{1}{3\cdot 4}x^4 + \frac{1}{3\cdot 4\cdot 6\cdot 7}x^7+\dots\biggr). +\qedhere +\] +\end{loesung} diff --git a/buch/chapters/050-differential/uebungsaufgaben/502.tex b/buch/chapters/050-differential/uebungsaufgaben/502.tex new file mode 100644 index 0000000..cb0256d --- /dev/null +++ b/buch/chapters/050-differential/uebungsaufgaben/502.tex @@ -0,0 +1,60 @@ +Schreiben Sie die in Aufgabe~\ref{501} gefundenen Lösungen der +Airy-Differentialgleichung als hypergeometrische Funktionen. + +\begin{loesung} +Die Lösung für $a=1$ und $b=0$ hat die Reihenentwicklung +\begin{align*} +y_1(x) +&= +\sum_{k=0}^\infty +\frac{1}{2\cdot 3\cdot 5\cdot 6\cdot\ldots\cdot (3k-1)\cdot 3k} +x^{3k} +\\ +&= +\sum_{k=0}^\infty +\frac{1}{2\cdot 5\cdot \ldots\cdot (3k-1)} +\frac{1}{3\cdot 6\cdot \ldots\cdot 3k} +x^{3k} +\\ +&= +\sum_{k=0}^\infty +\frac{1}{3^k\cdot \frac23\cdot(\frac23+1)\cdot\ldots\cdot(\frac23+k-1)} +\frac{1}{3^k\cdot k!} +(x^3)^k +\\ +&= +\sum_{k=0}^\infty +\frac{1}{(\frac23)_k} \frac{1}{k!}\biggl(\frac{x^3}{9}\biggr)^k += +\mathstrut_0F_1\biggl( +\begin{matrix}\text{---}\\\frac23\end{matrix};\frac{x^3}{9} +\biggr). +\end{align*} +Aus der zweiten Lösung für $a=0$ und $b=1$ muss erst der gemeinsame +Faktor $x$ ausgeklammert werden: +\begin{align*} +y_2(x) +&= +x\sum_{k=0}^\infty +\frac{1}{3\cdot4\cdot 6\cdot 7\cdot\ldots\cdot 3k\cdot(3k+1)}x^{3k} +\\ +&= +x\sum_{k=0}^\infty +\frac{1}{4\cdot 7\cdot\ldots\cdot (3k+1)} +\frac{1}{3^k} +\frac{(x^3)^k}{k!} +\\ +&= +x\sum_{k=0}^\infty +\frac{1}{\frac43\cdot (\frac43+1)\cdot (\frac43+2)\cdot\ldots\cdot \frac43+k-1} +\frac{1}{(3^2)^k} +\frac{(x^3)^k}{k!} +\\ +&= +x\cdot\mathstrut_0F_1\biggl( +\begin{matrix}\text{---}\\\frac43\end{matrix}; +\frac{x^3}{9} +\biggr). +\qedhere +\end{align*} +\end{loesung} diff --git a/buch/chapters/050-differential/uebungsaufgaben/503.tex b/buch/chapters/050-differential/uebungsaufgaben/503.tex new file mode 100644 index 0000000..7cb47de --- /dev/null +++ b/buch/chapters/050-differential/uebungsaufgaben/503.tex @@ -0,0 +1,19 @@ +Verwenden Sie die Funktion \texttt{gsl_sf_hyperg_0F1} oder ein Programm, +welches die Reihenentwicklung der hypergeometrischen Funktion +$\mathstrut_0F_1$ direkt berechnet, um die +in Aufgabe \ref{501} gefundenen Lösungen der Airy-Differentialgleichung +zu plotten. + +\begin{loesung} +\begin{figure} +\centering +\includegraphics{chapters/050-differential/uebungsaufgaben/airy.pdf} +\caption{Plot der Lösungen der Airy-Differentialgleichung $y''-xy=0$ +zu den Anfangsbedingungen $y(0)=1$ und $y'(0)=0$ in {\color{red}rot} +und $y(0)=0$ und $y'(0)=1$ in {\color{blue}blau}. +\end{figure} +Die Implementation der hypergeometrische Funktion $\mathstrut_0F_1$ in der +GNU Scientific Library führt $\mathstrut_0F_1$ auf Bessel-Funktionen +zurück, was für $c=\frac23$ nicht möglich ist. +In diesem Fall ist also eine eigene Implementation nötig. +\end{loesung} diff --git a/buch/chapters/050-differential/uebungsaufgaben/Makefile b/buch/chapters/050-differential/uebungsaufgaben/Makefile new file mode 100644 index 0000000..b62f60c --- /dev/null +++ b/buch/chapters/050-differential/uebungsaufgaben/Makefile @@ -0,0 +1,15 @@ +# +# Makefile +# +# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +# +all: airy.pdf + +airy: airy.cpp + g++ -o airy -Wall -g -O2 `pkg-config --cflags gsl` airy.cpp `pkg-config --libs gsl` + +airypaths.tex: airy + ./airy --debug + +airy.pdf: airy.tex airypaths.tex + pdflatex airy.tex diff --git a/buch/chapters/050-differential/uebungsaufgaben/airy.cpp b/buch/chapters/050-differential/uebungsaufgaben/airy.cpp new file mode 100644 index 0000000..20cad38 --- /dev/null +++ b/buch/chapters/050-differential/uebungsaufgaben/airy.cpp @@ -0,0 +1,118 @@ +/* + * airy.cpp + * + * (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule + */ +#include +#include +#include +#include +#include +#include + +bool debug = false; + +struct option options[] = { +{ "debug", no_argument, 0, 'd' }, +{ "outfile", required_argument, 0, 'o' }, +{ "a", required_argument, 0, 'a' }, +{ "b", required_argument, 0, 'b' }, +{ "s", required_argument, 0, 's' }, +{ NULL, 0, 0, 0 } +}; + +double h0f1(double c, double x) { + if (debug) + fprintf(stderr, "%s:%d: c = %.5f, x = %.5f\n", + __FILE__, __LINE__, c, x); + double s = 0; + int k = 0; + double term = 1.; + s += term; + int counter = 0; + while (fabs(term) > 0.000000000001) { + k++; + term *= x / ((c+k-1) * k); + s += term; + // if (debug) + // fprintf(stderr, "term = %.14f\n", term); + counter++; + } + if (debug) + fprintf(stderr, "x = %f, terms = %d\n", x, counter); + return s; +} + +double f0(double x) { + //return gsl_sf_hyperg_0F1(2/3, x*x*x/9.); + return h0f1(2./3., x*x*x/9.); +} +double f1(double x) { + //return gsl_sf_hyperg_0F1(2/3, x*x*x/9.); + return h0f1(2./3., x*x*x/9.); +} + +double f2(double x) { + return x * gsl_sf_hyperg_0F1(4./3., x*x*x/9.); +} + +double f3(double x) { + return x * h0f1(4./3., x*x*x/9.); +} + +void plot(FILE *outfile, const char *name, double (*f)(double x), + double a, double b, int steps) { + fprintf(outfile, "\\def\\%s{\n", name); + fprintf(outfile, "({%.5f*\\dx},{%.5f*\\dy})", a, f(a)); + double h = (b-a)/steps; + for (int i = 0; i <= steps; i++) { + double x = a + h*i; + if (debug) + fprintf(stderr, "x = %.5f\n", x); + fprintf(outfile, "\n\t--({%.5f*\\dx},{%.5f*\\dy})", + x, f(x)); + } + fprintf(outfile, "}\n"); +} + +int main(int argc, char *argv[]) { + std::string outfilename("airypaths.tex"); + int c; + int longindex; + double a = -8; + double b = 2.5; + int steps = 200; + while (EOF != (c = getopt_long(argc, argv, "a:b:do:s:", + options, &longindex))) + switch (c) { + case 'a': + a = std::stod(optarg); + break; + case 'b': + b = std::stod(optarg); + break; + case 'd': + debug = true; + break; + case 'o': + outfilename = std::string(optarg); + break; + case 's': + steps = std::stoi(optarg); + break; + } + + if (debug) + fprintf(stderr, "%s:%d: outfile: '%s'\n", + __FILE__, __LINE__, outfilename.c_str()); + + FILE *outfile = fopen(outfilename.c_str(), "w"); + + plot(outfile, "yonepath", f1, a, b, 100); + plot(outfile, "ytwopath", f2, a, b, 100); + plot(outfile, "ythreepath", f3, a, b, 100); + + fclose(outfile); + + return EXIT_SUCCESS; +} diff --git a/buch/chapters/050-differential/uebungsaufgaben/airy.pdf b/buch/chapters/050-differential/uebungsaufgaben/airy.pdf new file mode 100644 index 0000000..f52e601 Binary files /dev/null and b/buch/chapters/050-differential/uebungsaufgaben/airy.pdf differ diff --git a/buch/chapters/050-differential/uebungsaufgaben/airy.tex b/buch/chapters/050-differential/uebungsaufgaben/airy.tex new file mode 100644 index 0000000..27ee546 --- /dev/null +++ b/buch/chapters/050-differential/uebungsaufgaben/airy.tex @@ -0,0 +1,59 @@ +% +% 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} +\input{airypaths.tex} +\definecolor{darkgreen}{rgb}{0,0.6,0} +\begin{tikzpicture}[>=latex,thick,scale=\skala] + +% add image content here +\def\dx{1} +\def\dy{1} + +\begin{scope} +\clip ({-8*\dx},{-1.3*\dy}) rectangle ({2.5*\dx},{4*\dy}); +\draw[color=red,line width=1.4pt] \yonepath; +%\draw[color=darkgreen,line width=1.4pt] \ytwopath; +\draw[color=blue,line width=1.4pt] \ythreepath; +\end{scope} + +\draw[->] (-8.1,0) -- (2.9,0) coordinate[label={$x$}]; +\draw[->] (0,-1.4) -- (0,4.4) coordinate[label={$y$}]; + +\foreach \x in {-8,...,-1}{ + \draw ({\x*\dx},-0.1) -- ({\x*\dx},0.1); +} +\foreach \y in {-1,1,2,3,4}{ + \draw (-0.1,{\y*\dy}) -- (0.1,{\y*\dy}); +} +\draw ({\dx},-0.1) -- ({\dx},0.1); +\draw ({2*\dx},-0.1) -- ({2*\dx},0.1); + +\node at (\dx,0) [below] {$1$}; +\node at ({2*\dx},0) [below] {$2$}; + +\foreach \x in {-7,...,-1}{ + \node at ({\x*\dx},0) [below] {$\x$}; +} +\foreach \y in {2,3,4}{ + \node at (-0.1,{\y*\dy}) [left] {$\y$}; +} +\node at (-0.1,\dy) [above left] {$-1$}; +\node at (0.1,-\dy) [right] {$-1$}; + +\node[color=red] at ({-1.2*\dx},{0.6*\dy}) [above left] {$y_1(x)$}; +\node[color=blue] at ({-1.4*\dx},{-1.1*\dy}) [below] {$y_2(x)$}; + +\end{tikzpicture} +\end{document} + diff --git a/buch/chapters/050-differential/verallghyper.maxima b/buch/chapters/050-differential/verallghyper.maxima new file mode 100644 index 0000000..d914bbc --- /dev/null +++ b/buch/chapters/050-differential/verallghyper.maxima @@ -0,0 +1,12 @@ +x: +-(rho+k)*(rho+k-1) ++(rho+k+1)*(rho+k)*q ++c*(rho+k+1)*q +-(a+b+1)*(rho+k)-a*b; + +y: subst(1-c,rho,x); + +factor(coeff(y, q, 0)); +factor(coeff(y, q, 1)); + + -- cgit v1.2.1