aboutsummaryrefslogtreecommitdiffstats
path: root/buch/chapters/030-geometrie
diff options
context:
space:
mode:
authorAndreas Müller <andreas.mueller@ost.ch>2022-01-03 16:06:51 +0100
committerAndreas Müller <andreas.mueller@ost.ch>2022-01-03 16:06:51 +0100
commit265b976d0d6bfa665ba5e1be3755ba932f42b97e (patch)
treec1df013d96a3a38cf0a10bbd65361a16de6c8b07 /buch/chapters/030-geometrie
parenttypo (diff)
downloadSeminarSpezielleFunktionen-265b976d0d6bfa665ba5e1be3755ba932f42b97e.tar.gz
SeminarSpezielleFunktionen-265b976d0d6bfa665ba5e1be3755ba932f42b97e.zip
Abbildung kegelschnitte
Diffstat (limited to 'buch/chapters/030-geometrie')
-rw-r--r--buch/chapters/030-geometrie/images/Makefile29
-rw-r--r--buch/chapters/030-geometrie/images/hyperbel.pdfbin0 -> 26762 bytes
-rw-r--r--buch/chapters/030-geometrie/images/hyperbel.tex89
-rw-r--r--buch/chapters/030-geometrie/images/kegelschnitte.jpgbin0 -> 158373 bytes
-rw-r--r--buch/chapters/030-geometrie/images/kegelschnitte.pdfbin0 -> 179256 bytes
-rw-r--r--buch/chapters/030-geometrie/images/kegelschnitte.pov492
-rw-r--r--buch/chapters/030-geometrie/images/kegelschnitte.tex115
-rw-r--r--buch/chapters/030-geometrie/images/zylinder.jpgbin0 -> 147616 bytes
-rw-r--r--buch/chapters/030-geometrie/images/zylinder.pdfbin165606 -> 165606 bytes
-rw-r--r--buch/chapters/030-geometrie/images/zylinder.pov183
-rw-r--r--buch/chapters/030-geometrie/laenge.tex217
11 files changed, 1112 insertions, 13 deletions
diff --git a/buch/chapters/030-geometrie/images/Makefile b/buch/chapters/030-geometrie/images/Makefile
index a18208d..457a0a1 100644
--- a/buch/chapters/030-geometrie/images/Makefile
+++ b/buch/chapters/030-geometrie/images/Makefile
@@ -4,24 +4,30 @@
# (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
#
-all: hyperbelflaeche.pdf \
- polargleichung.pdf \
+all: \
deftrig.pdf \
einheitskreis.pdf \
+ hyperbelflaeche.pdf \
+ hyperbel.pdf \
+ kegelschnitte.pdf \
+ polargleichung.pdf \
zylinder.pdf
-hyperbelflaeche.pdf: hyperbelflaeche.tex
- pdflatex hyperbelflaeche.tex
-
-polargleichung.pdf: polargleichung.tex
- pdflatex polargleichung.tex
-
deftrig.pdf: deftrig.tex
pdflatex deftrig.tex
einheitskreis.pdf: einheitskreis.tex
pdflatex einheitskreis.tex
+hyperbelflaeche.pdf: hyperbelflaeche.tex
+ pdflatex hyperbelflaeche.tex
+
+hyperbel.pdf: hyperbel.tex
+ pdflatex hyperbel.tex
+
+polargleichung.pdf: polargleichung.tex
+ pdflatex polargleichung.tex
+
zylinder.png: zylinder.pov
povray +A0.1 +W1920 +H1080 -Ozylinder.png zylinder.pov
zylinder.jpg: zylinder.png Makefile
@@ -30,3 +36,10 @@ zylinder.jpg: zylinder.png Makefile
zylinder.pdf: zylinder.tex zylinder.jpg
pdflatex zylinder.tex
+kegelschnitte.pdf: kegelschnitte.tex kegelschnitte.jpg
+ pdflatex kegelschnitte.tex
+kegelschnitte.png: kegelschnitte.pov
+ povray +A0.1 +W1920 +H1080 -Okegelschnitte.png kegelschnitte.pov
+kegelschnitte.jpg: kegelschnitte.png Makefile
+ convert -extract 1520x1080+200+0 kegelschnitte.png \
+ -density 300 -units PixelsPerInch kegelschnitte.jpg
diff --git a/buch/chapters/030-geometrie/images/hyperbel.pdf b/buch/chapters/030-geometrie/images/hyperbel.pdf
new file mode 100644
index 0000000..0d4b3a3
--- /dev/null
+++ b/buch/chapters/030-geometrie/images/hyperbel.pdf
Binary files differ
diff --git a/buch/chapters/030-geometrie/images/hyperbel.tex b/buch/chapters/030-geometrie/images/hyperbel.tex
new file mode 100644
index 0000000..adee7da
--- /dev/null
+++ b/buch/chapters/030-geometrie/images/hyperbel.tex
@@ -0,0 +1,89 @@
+%
+% hyperbel.tex -- Hyperbel-Definition
+%
+% (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}
+\begin{document}
+\pgfmathparse{14/18.8}
+\xdef\skala{\pgfmathresult}
+\def\hyperbel#1#2#3{
+\begin{scope}
+ \clip (-9,-7) rectangle (9,7);
+ \draw[color=#3,line width=1.4pt] plot[domain=-2:2,samples=100]
+ ({#1*cosh(\x)},{#2*sinh(\x)});
+ \draw[color=#3,line width=1.4pt] plot[domain=-2:2,samples=100]
+ ({-#1*cosh(\x)},{#2*sinh(\x)});
+\end{scope}
+}
+\definecolor{darkgreen}{rgb}{0,0.6,0}
+\def\punkt#1#2#3{ ({#1*cosh(#3)},{#2*sinh(#3)}) }
+\begin{tikzpicture}[>=latex,thick,scale=\skala]
+
+\def\e{5}
+
+\coordinate (F1) at (\e,0);
+\coordinate (F2) at (-\e,0);
+
+\draw[->] (-9.1,0) -- (9.4,0) coordinate[label={$x$}];
+\draw[->] (0,-7.1) -- (0,7.3) coordinate[label={right:$y$}];
+
+
+\begin{scope}
+\clip (-9,-7) rectangle (9,7);
+
+\draw[color=gray] (-12,-9) -- (12,9);
+\draw[color=gray] (-12,9) -- (12,-9);
+\end{scope}
+
+\foreach \a in {0.5,1,...,4.5}{
+ \pgfmathparse{sqrt(\e*\e-\a*\a)}
+ \xdef\b{\pgfmathresult}
+ \hyperbel{\a}{\b}{red!20}
+}
+
+\def\a{4}
+\def\b{3}
+\def\t{1.2}
+%\coordinate (P) at \punkt{\a}{\b}{\t};
+\coordinate (P) at ({1.8107*\a},{1.5095*\b});
+
+\draw[color=gray] (\e,0) arc (0:atan(\b/\a):\e);
+
+\draw[color=darkgreen,line width=1.4pt] (F1) -- (P) -- (F2);
+
+\draw[color=blue,line width=1.4pt] (0,0) -- (\a,0) -- (\a,\b);
+\node[color=blue] at ({0.5*\a},0) [above] {$a$};
+\node[color=blue] at (\a,{0.5*\b}) [left] {$b$};
+
+\fill[color=blue] (F1) circle[radius=0.10];
+\fill[color=blue] (F2) circle[radius=0.10];
+
+\hyperbel{\a}{\b}{red}
+
+\node at (F1) [above left] {$F_1$};
+\node at (F2) [above left] {$F_2$};
+
+\node[color=blue] at (F1) [below] {$e$};
+\node[color=blue] at (F2) [below] {$-e$};
+
+\fill[color=darkgreen] (P) circle[radius=0.1];
+\node[color=darkgreen] at (P) [below right] {$P$};
+
+\fill[color=red] (\a,0) circle[radius=0.1];
+\node[color=red] at (\a,0) [below left] {$A_+$};
+\fill[color=red] (-\a,0) circle[radius=0.1];
+\node[color=red] at (-\a,0) [below right] {$A_-$};
+
+\node[color=darkgreen] at ($0.5*(F2)+0.5*(P)$) [above left] {$\overline{F_2P}$};
+\node[color=darkgreen] at ($0.5*(F1)+0.5*(P)$) [right] {$\overline{F_1P}$};
+
+\end{tikzpicture}
+\end{document}
+
diff --git a/buch/chapters/030-geometrie/images/kegelschnitte.jpg b/buch/chapters/030-geometrie/images/kegelschnitte.jpg
new file mode 100644
index 0000000..5d0b329
--- /dev/null
+++ b/buch/chapters/030-geometrie/images/kegelschnitte.jpg
Binary files differ
diff --git a/buch/chapters/030-geometrie/images/kegelschnitte.pdf b/buch/chapters/030-geometrie/images/kegelschnitte.pdf
new file mode 100644
index 0000000..aa697f4
--- /dev/null
+++ b/buch/chapters/030-geometrie/images/kegelschnitte.pdf
Binary files differ
diff --git a/buch/chapters/030-geometrie/images/kegelschnitte.pov b/buch/chapters/030-geometrie/images/kegelschnitte.pov
new file mode 100644
index 0000000..60e6964
--- /dev/null
+++ b/buch/chapters/030-geometrie/images/kegelschnitte.pov
@@ -0,0 +1,492 @@
+//
+// kegelschnitte.pov
+//
+// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+//
+#version 3.7;
+#include "colors.inc"
+
+global_settings {
+ assumed_gamma 1
+}
+
+#declare imagescale = 0.090;
+#declare r = 0.03;
+#declare R = 1.3 * r;
+
+camera {
+ location <-33, 20, 50>
+ look_at <0, -1.30, 0>
+ right 16/9 * x * imagescale
+ up y * imagescale
+}
+
+light_source {
+ <10, 5, 40> color White
+ area_light <1,0,0> <0,0,1>, 10, 10
+ adaptive 1
+ jitter
+}
+
+sky_sphere {
+ pigment {
+ color rgb<1,1,1>
+ }
+}
+
+//
+// draw an arrow from <from> to <to> with thickness <arrowthickness> with
+// color <c>
+//
+#macro arrow(from, to, arrowthickness, c)
+#declare arrowdirection = vnormalize(to - from);
+#declare arrowlength = vlength(to - from);
+union {
+ sphere {
+ from, 1.1 * arrowthickness
+ }
+ cylinder {
+ from,
+ from + (arrowlength - 5 * arrowthickness) * arrowdirection,
+ arrowthickness
+ }
+ cone {
+ from + (arrowlength - 5 * arrowthickness) * arrowdirection,
+ 2 * arrowthickness,
+ to,
+ 0
+ }
+ pigment {
+ color c
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+#end
+
+//arrow(<-5,0,0>, <5,0,0>, r, White)
+//arrow(<0,-2,0>, <0,2,0>, r, White)
+//arrow(<0,0,-2>, <0,0,2>, r, White)
+
+#declare kegelfarbe = rgb<0.2,0.6,0.6>;
+#declare kegelfarbetransparent = rgbt<0.6,0.6,0.6,0.7>;
+#declare fokusfarbe = rgb<1,0.2,0.2>;
+#declare scheitelfarbe = rgb<0.0,0.6,0.0>;
+#declare kurvenfarbe = rgb<0.4,0.8,0>;
+#declare leitfarbe = rgb<0.8,0.2,0.8>;
+#declare ebenenfarbe = rgbt<0.6,0.4,0.2,0.0>;
+
+#declare kegelhoehe = 3;
+#declare kegelradius = 1.4;
+
+#macro kegel(X)
+union {
+ cone { <X,0,0>, 0, <X,-kegelhoehe,0>, kegelradius }
+ cone { <X,0,0>, 0, <X,kegelhoehe,0>, kegelradius }
+}
+#end
+
+#macro ebene(X, normale, abstand, anteil)
+difference {
+ intersection {
+ box {
+ <X - anteil*(kegelradius + 0.00), -kegelhoehe, 10>,
+ //<X - 0.2, -kegelhoehe, 10>,
+ <X + 0.9*(kegelradius + 0.00), kegelhoehe, -10>
+ }
+ plane { normale, abstand + 0.001 }
+ plane { -normale, -abstand + 0.001 }
+ }
+ kegel(X)
+ no_shadow
+ pigment {
+ color ebenenfarbe
+ }
+ finish {
+ specular 0.5
+ metallic
+ }
+}
+#end
+
+#declare nparabel = vnormalize(<0, kegelradius, kegelhoehe>);
+#declare nparabel2 = vnormalize(<0, kegelradius, -kegelhoehe>);
+#declare nellipse = vnormalize(<0, kegelradius + 2, kegelhoehe>);
+#declare nellipse2 = vnormalize(<0, kegelradius + 2, -kegelhoehe>);
+#declare nhyperbel = vnormalize(<0, kegelradius - 1, kegelhoehe>);
+
+#declare offsetparabel = -0.6;
+#declare offsetellipse = -1.1;
+#declare offsethyperbel = 0.4;
+
+//
+// Hyperbel
+//
+ebene(3, nhyperbel, offsethyperbel, 0.0)
+intersection {
+ plane { nhyperbel, offsethyperbel }
+ kegel(3)
+ pigment {
+ color kegelfarbe
+ }
+ finish {
+ specular 0.95
+ metallic
+ }
+}
+
+intersection {
+ plane { -nhyperbel, -offsethyperbel-0.001 }
+ kegel(3)
+ no_shadow
+ pigment {
+ color kegelfarbetransparent
+ }
+ finish {
+ specular 0.5
+ metallic
+ }
+}
+
+
+#declare e3 = <0, 1, 0>;
+#declare tunten = -offsethyperbel / vdot(nparabel-nhyperbel, e3);
+#declare toben = offsethyperbel / vdot(nparabel+nhyperbel, e3);
+#declare winkel = acos(vdot(nparabel, nhyperbel));
+
+#declare Cunten = e3 * tunten + <3,0,0>;
+#declare Coben = e3 * toben + <3,0,0>;
+
+#declare runten = -(vdot(Cunten, nhyperbel) - offsethyperbel);
+#declare Funten = Cunten + runten * nhyperbel;
+#declare Punten = Cunten + runten * nparabel;
+#declare Sunten = Cunten + runten * vnormalize(nparabel+nhyperbel) / cos(winkel/2);
+
+#declare roben = -(vdot(Coben, nhyperbel) - offsethyperbel);
+#declare Foben = Coben + roben * nhyperbel;
+#declare Poben = Coben - roben * nparabel2;
+#declare Soben = Coben + roben * vnormalize(-nparabel2+nhyperbel) / cos(winkel/2);
+
+#declare Origin = (Soben + Sunten) / 2;
+#declare xaxis = vnormalize(Sunten - Origin);
+#declare yaxis = <1,0,0>;
+
+#declare a = vlength(Sunten - Soben) / 2;
+#declare e = vlength(Foben - Funten) / 2;
+#declare b = sqrt(e*e - a*a);
+
+#macro hyperbel(s)
+ Origin + (a * cosh(s) * xaxis + b * sinh(s) * yaxis)
+#end
+
+#macro hyperbelneg(s)
+ Origin + (-a * cosh(s) * xaxis + b * sinh(s) * yaxis)
+#end
+
+#declare rkurve = 0.6 * r;
+
+// Hyperbel
+union {
+ #declare N = 100;
+ #declare smin = -1.72;
+ #declare smax = -smin;
+ #declare sstep = (smax - smin) / N;
+ #declare s = smin;
+ #while (s < smax - sstep/2)
+ cylinder { hyperbel(s), hyperbel(s+sstep), rkurve }
+ cylinder { hyperbelneg(s), hyperbelneg(s+sstep), rkurve }
+ sphere { hyperbel(s), rkurve }
+ sphere { hyperbelneg(s), rkurve }
+ #declare s = s + sstep;
+ #end
+ sphere { hyperbel(s), rkurve }
+ sphere { hyperbelneg(s), rkurve }
+ pigment {
+ color kurvenfarbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+// Brennpunkte
+union {
+ sphere { Funten, r }
+ sphere { Foben, r }
+ pigment {
+ color fokusfarbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+// Scheitelpunkte
+union {
+ sphere { Sunten, r }
+ sphere { Soben, r }
+ pigment {
+ color scheitelfarbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+#declare swert = -1.3;
+union {
+ sphere { hyperbel(swert), r }
+ cylinder { Funten, hyperbel(swert), rkurve }
+ cylinder { Foben, hyperbel(swert), rkurve }
+ pigment {
+ color Yellow
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+//
+// Parabeln
+//
+intersection {
+ plane { nparabel, offsetparabel }
+ kegel(0)
+ pigment {
+ color kegelfarbe
+ }
+ finish {
+ specular 0.95
+ metallic
+ }
+}
+
+intersection {
+ plane { -nparabel, -offsetparabel+0.001 }
+ kegel(0)
+ //no_shadow
+ pigment {
+ color kegelfarbetransparent
+ }
+ finish {
+ specular 0.5
+ metallic
+ }
+}
+
+ebene(0, nparabel, offsetparabel, 0.5)
+
+#declare tcenter = 0.5 * offsetparabel / vdot(nparabel, e3);
+#declare C = tcenter * e3;
+#declare F = C + 0.5 * offsetparabel * nparabel;
+#declare S = <0, tcenter, tcenter * (kegelradius/kegelhoehe) >;
+#declare xaxis = vnormalize(F - S);
+#declare p = 4 * vlength(S - F);
+
+#declare L = S + (S-F);
+
+#macro parabel(Y)
+ (S + Y * yaxis + Y * (Y/p) * xaxis)
+#end
+#macro leitgerade(Y)
+ L + Y * yaxis
+#end
+
+//
+// Parabel
+//
+union {
+ #declare ymin = -1.19;
+ #declare ymax = -ymin;
+ #declare ystep = (ymax - ymin) / N;
+ #declare Y = ymin;
+ #while (Y < ymax - ystep/2)
+ sphere { parabel(Y), rkurve }
+ cylinder { parabel(Y), parabel(Y+ystep), rkurve }
+ #declare Y = Y + ystep;
+ #end
+ sphere { parabel(Y), rkurve }
+ pigment {
+ color kurvenfarbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+union {
+ cylinder { leitgerade(ymin), leitgerade(ymax), rkurve }
+ sphere { leitgerade(ymin), rkurve}
+ sphere { leitgerade(ymax), rkurve}
+ pigment {
+ color leitfarbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+union {
+ sphere { F, r }
+ pigment {
+ color fokusfarbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+union {
+ sphere { S, r }
+ pigment {
+ color scheitelfarbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+#declare ywert = -0.7;
+union {
+ sphere { parabel(ywert), r }
+ cylinder { F, parabel(ywert), rkurve }
+ cylinder { parabel(ywert), leitgerade(ywert), rkurve }
+ sphere { leitgerade(ywert), r }
+ pigment {
+ color Yellow
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+//
+// Dandelin Kugeln für die Ellipse
+//
+
+ebene(-3, nellipse, offsetellipse, 1)
+intersection {
+ plane { nellipse, offsetellipse }
+ kegel(-3)
+ pigment {
+ color kegelfarbe
+ }
+ finish {
+ specular 0.95
+ metallic
+ }
+}
+
+intersection {
+ plane { -nellipse, -offsetellipse+0.001 }
+ kegel(-3)
+ //no_shadow
+ pigment {
+ color kegelfarbetransparent
+ }
+ finish {
+ specular 0.5
+ metallic
+ }
+}
+
+#declare tunten = -offsetellipse / vdot(nparabel-nellipse, e3);
+#declare toben = offsetellipse / vdot(nparabel+nellipse, e3);
+#declare winkel = acos(vdot(nparabel, nellipse));
+#declare winkel2 = acos(-vdot(nparabel2, nellipse));
+
+#declare Cunten = e3 * tunten + <-3,0,0>;
+#declare Coben = e3 * toben + <-3,0,0>;
+
+#declare runten = -(vdot(Cunten, nellipse) - offsetellipse);
+#declare Funten = Cunten + runten * nellipse;
+#declare Punten = Cunten + runten * nparabel;
+#declare Sunten = Cunten + runten * vnormalize(nparabel+nellipse) / cos(winkel/2);
+
+#declare roben = (vdot(Coben, nellipse) - offsetellipse);
+#declare Foben = Coben - roben * nellipse;
+#declare Poben = Coben + roben * nparabel2;
+#declare Soben = Coben - roben * vnormalize(-nparabel2+nellipse) / cos(winkel2/2);
+
+#declare Origin = (Soben + Sunten) / 2;
+#declare xaxis = vnormalize(Sunten - Origin);
+#declare yaxis = <1,0,0>;
+
+#declare a = vlength(Sunten - Soben) / 2;
+#declare e = vlength(Foben - Funten) / 2;
+#declare b = sqrt(a*a-e*e);
+
+#macro ellipse(s)
+ Origin + (a * cos(s) * xaxis + b * sin(s) * yaxis)
+#end
+
+union {
+ #declare N = 100;
+ #declare smin = -pi;
+ #declare smax = -smin;
+ #declare sstep = (smax - smin) / N;
+ #declare s = smin;
+ #while (s < smax - sstep/2)
+ cylinder { ellipse(s), ellipse(s+sstep), rkurve }
+ sphere { ellipse(s), rkurve }
+ #declare s = s + sstep;
+ #end
+ sphere { ellipse(s), rkurve }
+ pigment {
+ color kurvenfarbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+union {
+ //sphere { Cunten, runten + 0.001 }
+ //sphere { Coben, roben + 0.001 }
+ sphere { Funten, r }
+ sphere { Foben, r }
+ pigment {
+ color fokusfarbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+union {
+ sphere { Sunten, r }
+ sphere { Soben, r }
+ pigment {
+ color scheitelfarbe
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+#declare swert = -1.2;
+union {
+ sphere { ellipse(swert), r }
+ cylinder { Funten, ellipse(swert), rkurve }
+ cylinder { Foben, ellipse(swert), rkurve }
+ pigment {
+ color Yellow
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
diff --git a/buch/chapters/030-geometrie/images/kegelschnitte.tex b/buch/chapters/030-geometrie/images/kegelschnitte.tex
new file mode 100644
index 0000000..b8067ad
--- /dev/null
+++ b/buch/chapters/030-geometrie/images/kegelschnitte.tex
@@ -0,0 +1,115 @@
+%
+% kegelschnitt.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,calc}
+\usepackage{ifthen}
+\begin{document}
+
+\definecolor{kegelfarbe}{rgb}{0.2,0.6,0.6}
+\definecolor{ebenenfarbe}{rgb}{0.6,0.4,0.2}
+\definecolor{fokusfarbe}{rgb}{0.8,0.0,0.0}
+\definecolor{scheitelfarbe}{rgb}{0,0.6,0}
+\definecolor{leitfarbe}{rgb}{0.8,0.2,0.8}
+
+\newboolean{showgrid}
+\setboolean{showgrid}{false}
+\def\breite{7}
+\def\hoehe{5}
+
+\begin{tikzpicture}[>=latex,thick]
+
+% Povray Bild
+\node at (0,0) {\includegraphics[width=14cm]{kegelschnitte.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];
+}{}
+
+\begin{scope}[yshift=-7.5cm]
+
+\begin{scope}
+\clip (-2,-2.5) rectangle (2,1.5);
+\fill[color=kegelfarbe!40]
+ (-1.4,-3) -- (1.4,-3) -- (-1.4,3) -- (1.4,3) -- cycle;
+\begin{scope}[xshift=0.5cm]
+\draw[color=ebenenfarbe,line width=1.4pt]
+ (-1.4,-3) -- (1.4,3);
+\end{scope}
+\end{scope}
+
+\begin{scope}[xshift=-4.5cm]
+\clip (-2,-2.5) rectangle (2,1.5);
+\fill[color=kegelfarbe!40]
+ (-1.4,-3) -- (1.4,-3) -- (-1.4,3) -- (1.4,3) -- cycle;
+\begin{scope}[xshift=-0.3cm]
+\draw[color=ebenenfarbe,line width=1.4pt] (-0.4,-3) -- (0.4,3);
+\end{scope}
+\end{scope}
+
+\begin{scope}[xshift=4.5cm]
+\clip (-2,-2.5) rectangle (2,1.5);
+\fill[color=kegelfarbe!40]
+ (-1.4,-3) -- (1.4,-3) -- (-1.4,3) -- (1.4,3) -- cycle;
+\begin{scope}[xshift=0.9cm]
+\draw[color=ebenenfarbe,line width=1.4pt] (-3.4,-3) -- (3.4,3);
+\end{scope}
+\end{scope}
+
+\end{scope}
+
+\def\marke#1#2#3#4{
+ \fill[color=white,opacity=0.5]
+ ({#1-0.25},{#2-0.2}) rectangle ({#1+0.20},{#2+0.2});
+ \node[color=#3] at ({#1},{#2}) {#4};
+}
+
+\node[color=fokusfarbe] at (-5,0.5) {$F_1$};
+\node[color=fokusfarbe] at (-4.5,4.4) {$F_2$};
+%\node[color=scheitelfarbe] at (-4.5,4.1) [below left] {$S_2$};
+%\node[color=scheitelfarbe] at (-4.7,0.8) [above left] {$S_1$};
+\marke{-4.9}{3.7}{scheitelfarbe}{$S_2$}
+\marke{-5.1}{1.1}{scheitelfarbe}{$S_1$}
+\node[color=yellow] at (-3.9,-0.9) [right] {$P$};
+
+\node[color=fokusfarbe] at (0.05,0.75) {$F$};
+%\node[color=scheitelfarbe] at (0.4,1.0) [above left] {$S$};
+\marke{0.35}{1.4}{scheitelfarbe}{$S$};
+\node[color=yellow] at (0.95,-0.6) [right] {$P$};
+\node[color=leitfarbe] at (2.2,1.2) {$l$};
+
+\node[color=fokusfarbe] at (3.5,-2.9) {$F_1$};
+\node[color=fokusfarbe] at (4.4,-0.8) {$F_2$};
+%\node[color=scheitelfarbe] at (3.6,-3.5) [below left] {$S_1$};
+%\node[color=scheitelfarbe] at (4.8,-0.4) [above right] {$S_2$};
+\marke{3.05}{-3.85}{scheitelfarbe}{$S_1$}
+\marke{5.3}{-0.0}{scheitelfarbe}{$S_2$}
+\node[color=yellow] at (4.8,-2.7) [below right] {$P$};
+
+\begin{scope}[yshift=-5.5cm]
+\node at (-4.5,0)
+ {Hyperbel: $\overline{F_1P}-\overline{F_2P}=\text{const}$\strut};
+
+\fill[color=white,opacity=0.7] (-1.3,-0.25) rectangle (1.3,0.25);
+\node at (0,0) {Parabel: $\overline{FP}=\overline{lP}$\strut};
+
+\fill[color=white,opacity=0.7] (2.4,-0.25) rectangle (6.6,0.25);
+\node at (4.5,0)
+ {Ellipse: $\overline{F_1P}+\overline{F_2P}=\text{const}$\strut};
+\end{scope}
+
+\end{tikzpicture}
+
+\end{document}
+
diff --git a/buch/chapters/030-geometrie/images/zylinder.jpg b/buch/chapters/030-geometrie/images/zylinder.jpg
new file mode 100644
index 0000000..56962e4
--- /dev/null
+++ b/buch/chapters/030-geometrie/images/zylinder.jpg
Binary files differ
diff --git a/buch/chapters/030-geometrie/images/zylinder.pdf b/buch/chapters/030-geometrie/images/zylinder.pdf
index 423e217..2e73d80 100644
--- a/buch/chapters/030-geometrie/images/zylinder.pdf
+++ b/buch/chapters/030-geometrie/images/zylinder.pdf
Binary files differ
diff --git a/buch/chapters/030-geometrie/images/zylinder.pov b/buch/chapters/030-geometrie/images/zylinder.pov
new file mode 100644
index 0000000..c593379
--- /dev/null
+++ b/buch/chapters/030-geometrie/images/zylinder.pov
@@ -0,0 +1,183 @@
+//
+// zylinder.pov
+//
+// (c) 2022 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule
+//
+#version 3.7;
+#include "colors.inc"
+
+global_settings {
+ assumed_gamma 1
+}
+
+#declare imagescale = 0.064;
+#declare r = 0.025;
+#declare R = 1.3 * r;
+
+camera {
+ location <-43, 20, 40>
+ look_at <1, 0.65, 2.1>
+ right 16/9 * x * imagescale
+ up y * imagescale
+}
+
+light_source {
+ <-40, 20, 10> color White
+ area_light <1,0,0> <0,0,1>, 10, 10
+ adaptive 1
+ jitter
+}
+
+sky_sphere {
+ pigment {
+ color rgb<1,1,1>
+ }
+}
+
+//
+// draw an arrow from <from> to <to> with thickness <arrowthickness> with
+// color <c>
+//
+#macro arrow(from, to, arrowthickness, c)
+#declare arrowdirection = vnormalize(to - from);
+#declare arrowlength = vlength(to - from);
+union {
+ sphere {
+ from, 1.1 * arrowthickness
+ }
+ cylinder {
+ from,
+ from + (arrowlength - 5 * arrowthickness) * arrowdirection,
+ arrowthickness
+ }
+ cone {
+ from + (arrowlength - 5 * arrowthickness) * arrowdirection,
+ 2 * arrowthickness,
+ to,
+ 0
+ }
+ pigment {
+ color c
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+#end
+
+arrow(<-1.5,0,0>, <1.5,0,0>, r, White)
+arrow(<0,-1,0>, <0,2.5,0>, r, White)
+arrow(<0,0,-1.5>, <0,0,2*pi+0.5>, r, White)
+
+#declare cylindercolor = rgb<0.6,0.8,1.0>;
+#declare transparentcylinder = rgbf<0.6,0.8,1.0,0.7>;
+#declare planecolor = rgb<0.2,0.8,0.4>;
+#declare transparentplane = rgbf<0.2,0.8,0.4,0.7>;
+
+difference {
+ cylinder { <0,0,0>, <0,2,0>, 1 }
+ cylinder { <0,-1,0>, <0,3,0>, 0.99 }
+ pigment {
+ color transparentcylinder
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+
+box {
+ <1,0,0>, <0.99,2,2*pi>
+ pigment {
+ color transparentplane
+ }
+ finish {
+ specular 0.9
+ metallic
+ }
+}
+
+#macro punkt(phi)
+ <cos(phi), phi/pi, sin(phi)>
+#end
+#macro geschwindigkeit(phi)
+ <-sin(phi), 1/pi, cos(phi)>
+#end
+
+union {
+ #declare N = 100;
+ #declare phistep = 2*pi/N;
+ #declare phi = 0;
+ #declare maxphi = 2*pi;
+ #while (phi < maxphi - phistep/2)
+ sphere { punkt(phi), r}
+ cylinder { punkt(phi), punkt(phi+phistep), r }
+ #declare phi = phi + phistep;
+ #end
+ sphere { punkt(phi), r}
+ pigment {
+ color Red
+ }
+ finish {
+ specular 0.95
+ metallic
+ }
+}
+
+union {
+ sphere { <1,0,0>, r }
+ sphere { <1,2,2*pi>, r }
+ cylinder { <1,0,0>, <1,2,2*pi>, r }
+ pigment {
+ color Orange
+ }
+ finish {
+ specular 0.95
+ metallic
+ }
+}
+
+#declare winkel = (130/180) * pi;
+
+#declare rr = 0.5 * r;
+
+union {
+ sphere { <0,winkel/pi,0>, rr }
+ sphere { punkt(winkel), rr }
+ cylinder { <0,winkel/pi,0>, punkt(winkel), rr }
+ sphere { <cos(winkel), 0, sin(winkel)>, rr }
+ sphere { <cos(winkel), 2, sin(winkel)>, rr }
+ cylinder { <cos(winkel), 2, sin(winkel)>, <0, 2, 0>, rr }
+ sphere { <0,2,0>, rr }
+ sphere { <cos(winkel), 0, sin(winkel)>, rr }
+ cylinder { <cos(winkel), 0, sin(winkel)>, <0, 0, 0>, rr }
+ sphere { <0,0,0>, rr }
+ cylinder {
+ <cos(winkel), 0, sin(winkel)>
+ <cos(winkel), 2, sin(winkel)>
+ rr
+ }
+ pigment {
+ color White
+ }
+ finish {
+ specular 0.95
+ metallic
+ }
+}
+
+#declare geschwindigkeitsfarbe = rgb<1,0.6,1>;
+
+arrow(punkt(winkel), punkt(winkel) + geschwindigkeit(winkel), r, geschwindigkeitsfarbe)
+
+sphere { punkt(winkel), 1.3 * r
+ pigment {
+ color geschwindigkeitsfarbe
+ }
+ finish {
+ specular 0.95
+ metallic
+ }
+}
diff --git a/buch/chapters/030-geometrie/laenge.tex b/buch/chapters/030-geometrie/laenge.tex
index 0561eca..e82577f 100644
--- a/buch/chapters/030-geometrie/laenge.tex
+++ b/buch/chapters/030-geometrie/laenge.tex
@@ -280,10 +280,149 @@ Tatsächlich ist die Ableitung davon
was mit der Integralformel~\ref{buch:geometrie:eqn:kreislaenge}
übereinstimmt.
-\subsection{Hyperbeln und Ellipsen
-\label{buch:geometrie:subsection:hyperbeln-und-ellipsen}}
+\subsection{Hyperbeln
+\label{buch:geometrie:subsection:hyperbeln}}
+\begin{figure}
+\centering
+\includegraphics{chapters/030-geometrie/images/kegelschnitte.pdf}
+\caption{Hyperbeln, Parabeln und Ellipsen sind die Schnittkurven einer
+Ebene mit einem Kegel
+\label{buch:geometrie:laenge:fig:kegelschnitte}}
+\end{figure}
+Eine Hyperbel entsteht durch Schneiden eines geraden Kreiskegels mit
+einer Ebene wie in Abbildung~\ref{buch:geometrie:laenge:fig:kegelschnitte}.
+Es lässt sich ableiten, dass die Punkte der Hyperbel die Eigenschaft
+haben, dass die Differenzt der Entfernung von zwei festen Punkte,
+den sogenannten Brennpunkten, konstant ist.
+Dies ist die Definition, von der wir in diesem Abschnitt ausgehen
+wollen.
+
+\subsubsection{Geometrie einer Hyperbel}
+\begin{figure}
+\centering
+\includegraphics{chapters/030-geometrie/images/hyperbel.pdf}
+\caption{Geometrie einer Hyperbel in der Ebene.
+Die Hyperbel besteht aus den Punkten $P$ der Ebene, deren Entfernungsdifferenz
+$\overline{F_1P}-\overline{F_2P}$
+von zwei vorgegebenen Punkten $F_1$ und $F_2$ konstant ist.
+Die Differenz $\pm 2a$ führt auf die Hyperbeln mit Halbachsen
+$a$ und $b$.
+\label{buch:geometrie:hyperbel:fig:2d}}
+\end{figure}
+Die Brennpunkte der Hyperbel sollen $F_1=(e,0)$ und $F_2=(-e,0)$ sein.
+Die Grösse $e$ heisst auch die {\em lineare Exzentrizität} der Hyperbel.
+Die beiden Äste der Hyperbel schneiden die $x$-Achse in den Punkten
+$A_\pm=(\pm a,0)$.
+In Abbildung~\ref{buch:geometrie:hyperbel:fig:2d} ist diese Situation
+dargestellt.
+
+Die Differenz der Entfernungen von $A_+$ zu den beiden Brennpunkten ist
+\[
+\overline{A_+F_2}
+-
+\overline{A_+F_1}
+=
+(e+a)-(e-a) = 2a
+\]
+Für einen beliebigen Punkt $P=(x,y)$ in der Ebene wird die Bedingung
+an die Abstände zu
+\[
+\overline{PF_2}
+-
+\overline{PF_1}
+=
+\sqrt{(x+e)^2+y^2}
+-
+\sqrt{(x-e)^2+y^2}
+=
+2a.
+\]
+Quadrieren ergibt
+\begin{align*}
+4a^2
+&=
+(x+e)^2+y^2
++
+2\sqrt{
+((x+e)^2+y^2)
+((x-e)^2+y^2)
+}
++
+(x-e)^2+y^2
+\\
+2a^2-x^2-e^2-y^2
+&=
+\sqrt{
+y^4 + y^2((x+e)^2 + (x-e)^2) +(x^2-e^2)^2
+}
+\\
+&=
+\sqrt{y^4 + 2y^2 ( x^2+e^2) +x^4 - 2x^2e^2 + e^4}.
+\end{align*}
+Erneutes Quadrieren bringt auch die Wurzel auf der rechten Seiten
+zum Verschwinden:
+\begin{align}
+4a^4 + x^4 + e^4 + y^4
+-4a^2(x^2+y^2+e^2)
++2y^2(x^2+e^2)+2x^2e^2
+&=
+y^4+2y^2(x^2 +e^2) + x^4 -2x^2e^2+e^4
+\notag
+\\
+4a^4
+-4a^2(x^2+y^2+e^2)
++2x^2e^2
+&=
+-2x^2e^2
+\notag
+\\
+a^4+x^2e^2&=a^2(x^2+y^2+e^2)
+\notag
+\\
+x^2(e^2-a^2)&=a^2(e^2-a^2) + a^2y^2.
+\notag
+\end{align}
+Schreiben wir $b^2=e^2-a^2$ und stellen die Gleichung etwas um,
+ergibt sich
+\begin{equation}
+b^2x^2 - a^2y^2 = a^2b^2
+\qquad\Rightarrow\qquad
+\frac{x^2}{a^2} - \frac{y^2}{b^2} = 1.
+\label{buch:geometrie:hyperbel:gleichung}
+\end{equation}
+Die Zahlen $a$ und $b$ heissen die {\em grosse} bzw.~{\em kleine Halbachse}
+der Hyperbel.
+
+Die Hyperbeln können auch als Graphen einer Funktion von $x$ gefunden werden.
+Dazu wird die Gleichung~\eqref{buch:geometrie:hyperbel:gleichung}
+nach $y$ aufgelöst:
+\[
+\frac{y^2}{b^2} = \frac{x^2}{a^2} - 1
+\qquad\Rightarrow\qquad
+y
+=
+\pm
+b\sqrt{\frac{x^2}{a^2}-1}.
+\]
+Die rechte Seite hat für $|x|<a$ keine reellen Werte.
+Ebenso kann die Hyperbel als Graph der Funktion
+\[
+y\mapsto x = \pm a\sqrt{1+\frac{y^2}{b^2}}
+\]
+dargestellt werden, die für alle $x\in\mathbb{R}$ definiert ist und
+nur Werte mit Betrag $\ge a$ hat.
+
+Ein besonders einfacher Spezialfall ist $a=b=1$, genannt eine
+{\em gleichseitige Hyperbel}.
+\index{gleichseitige Hyperbel}%
+\index{Hyperbel, gleichseitig}%
+In diesem Fall ist $x^2-y^2=1$ und $e^2=2$.
+
+\subsubsection{Länge eines gleichseitigen Hyperbelbogens}
Die Funktion $f(x)=\sqrt{1+x^2}$ beschreibt eine gleichseitige
-Hyperbel.
+Hyperbel, die gegenüber der Situation in
+Abbildung~\ref{buch:geometrie:hyperbel:fig:2d}
+an der Winkelhalbierenden des ersten Quadranten gespiegelt ist.
Die Bogenlänge zwischen dem Punkt $(0,1)$ und $(x,y)$ auf der
Hyperbel ist gegeben durch das Integral:
\[
@@ -301,6 +440,61 @@ verwendet werden, die entstehenden Integrals, dies ändert jedoch
nichts an der Schwierigkeit, einen Ausdruck für den Wert des
Integrals anzugeben.
+\subsubsection{Parametrisierung mit hyperbolischen Funktionen}
+Etwas allgemeiner wird eine Hyperbel durch die Gleichung
+\begin{equation}
+\frac{x^2}{a^2} - \frac{y^2}{b^2} = 1
+\label{buch:geometrie:hyperbel:eqn}
+\end{equation}
+beschrieben.
+Die hyperbolischen Funktionen parametrisieren alle Paare von Zahlen
+$(X,Y=(\cosh t,\sinh t)$ mit der Eigenschaft $X^2-Y^2=1$.
+Aus \eqref{buch:geometrie:hyperbel:eqn} folgt daher, dass
+\[
+\frac{x}{a} = \cosh t, \frac{y}{b} = \sinh t
+\qquad\Rightarrow\qquad
+x=a\cosh t, y=b\sinh t.
+\]
+Somit ist
+\[
+\gamma\colon
+\mathbb{R}\to\mathbb{R}^2
+:
+t\mapsto \begin{pmatrix}a\cosh t\\b\sinh t\end{pmatrix}
+\]
+eine Parametrisierung der Hyperbel.
+Für die Länge eines Hyperbelbogens zwischen zwei Parameterwerten
+$t_0$ und $t_1$ wird dann
+\begin{align*}
+l
+&=
+\int_{t_0}^{t_1}
+\sqrt{a^2 \sinh^2 t + b^2 \cosh^2 t}
+\,dt
+=
+\int_{t_0}^{t_1}
+\sqrt{a^2 \sinh^2 t + b^2 (1+\sinh^2 t)}
+\,dt
+\\
+&=
+b
+\int_{t_0}^{t_1}
+\sqrt{1 + \frac{a^2+b^2}{b^2} \sinh^2 t }
+\,dt
+=
+b
+\int_{t_0}^{t_1}
+\sqrt{1 + \frac{e^2}{b^2} \sinh^2 t }
+\,dt.
+\end{align*}
+Das Integral auf der rechten Seite ist nicht mit elementaren Funktionen
+ausführbar und rechtfertigt die Definition neuer spezieller Funktionen.
+Die Kurvenlänge auf einer Hyperbel kann mit den in
+Kapitel~\ref{buch:chapter:elliptischefunktionen}
+beschriebenen elliptischen Integralen beschrieben werden.
+
+\subsection{Ellipsen
+\label{buch:geometrie:subsection:ellipsen}}
Für eine Ellipse kann man die Parameterdarstellung
\[
t\mapsto \begin{pmatrix}a\cos t\\b\sin t\end{pmatrix}
@@ -317,12 +511,24 @@ a^2 \sin^2 t + b^2 \cos^2t
}
\,dt
=
+\int_\alpha^\beta
+\sqrt{
+a^2 - (a^2-b^2)\cos^2 t
+}
+\,dt
+=
a
\int_\alpha^\beta
\sqrt{
-\sin^2 t + \frac{b^2}{a^2} \cos^2t
+1 - \frac{a^2-b^2}{a^2} \cos^2t
}
\,dt.
+=
+a\int_\alpha^\beta
+\sqrt{
+1-\varepsilon^2 \cos^2t
+}
+\,dt
\]
Auch dieses Integral ist nicht in geschlossener Form lösbar.
Dies motiviert in Kapitel~\ref{buch:chapter:elliptischefunktionen}
@@ -330,7 +536,8 @@ die Definition~\ref{buch:elliptisch:def:integrale123}
der sogenannten elliptischen Intefrale als neue
spezielle Funktionen.
Auf Seite~\pageref{buch:elliptisch:fig:ellipsenumfang} wird gezeigt,
-dass der Umfang einer Ellipse $aE(b/a)$ ist (siehe auch
+dass der Umfang einer Ellipse $4aE(\varepsilon)$ ist,
+wobei $\varepsilon=e/a$ und $e^2=a^2-b^2$ (siehe auch
Abbildung~\ref{buch:elliptisch:fig:ellipsenumfang}).