Krummlinige Koordinatensysteme: Zylinderkoordinaten und Kugelkoordinaten
Geometrische oder dynamische Probleme in drei Dimensionen, die eine Zylindersymmetrie oder Kugelsymmetrie besitzen, lassen sich besonders einfach mit Zylinderkoordinaten beziehungsweise Kugelkoordinaten beschreiben. Diskutiert werden deren Definition, die Koordinatenlinien und -flächen sowie die Basisvektoren. In den R-Skripten werden einige spezielle Eigenschaften näher untersucht und zugleich Beispiele gezeigt, wie dreidimensionale Graphiken mit scatterplot3d erstellt werden.
- Einordnung des Artikels
- Einführung
- Koordinatenlinien, Koordinatenflächen und Basisvektoren in kartesischen Koordinaten
- Zylinderkoordinaten
- Definition der Zylinderkoordinaten
- Koordinatenlinien in Zylinderkoordinaten
- Koordinatenflächen der Zylinderkoordinaten
- Basisvektoren der Zylinderkoordinaten
- Beispiel: Schraubenlinie
- Kugelkoordinaten
- Definition der Kugelkoordinaten
- Koordinatenlinien in Kugelkoordinaten
- Koordinatenflächen in Kugelkoordinaten
- Basisvektoren in Kugelkoordinaten
- R-Skripte
- Darstellung der Schraubenlinie mit scatterplot3d
- Exemplarische Untersuchung der Ortsabhängigkeit der Basisvektoren
Einordnung des Artikels
- Ausgewählte Kapitel der Mathematik (für Programmierer, Informatiker, Ingenieure und Naturwissenschaftler)
- Anwendungen in Physik und Technik
- Klassische Mechanik
- Krummlinige Koordinatensysteme: ebene Polarkoordinaten
- Krummlinige Koordinatensysteme: Zylinderkoordinaten und Kugelkoordinaten
- Klassische Mechanik
- Anwendungen in Physik und Technik
Es werden mehrere Begriffe verwendet, die bei den ebenen Polarkoordinaten eingeführt wurden. Als mathematische Voraussetzung muss wieder der sichere Umgang mit trigonometrischen Funktionen genannt werden.
Einführung
In Krummlinige Koordinatensysteme: ebene Polarkoordinaten wurden die ebenen Polarkoordinaten als der wichtigste Vertreter von krummlinigen Koordinaten in zwei Dimensionen vorgestellt und es wurde argumentiert, dass das Koordinatensystem an die Symmetrie eines Systems angepasst werden sollte, da sich dadurch seine Beschreibung deutlich vereinfacht.
In drei Dimensionen gibt es zahlreiche Probleme, die entweder Zylindersymmetrie oder Kugelsymmetrie aufweisen. Paradebeispiele sind etwa die Rotation eines Zylinders um seine Zylinderachse oder die Bewegung eines Körpers im Gravitationsfeld eines Zentralgestirns. Die entsprechenden Koordinatensysteme sind Zylinderkoordinaten und Kugelkoordinaten.
Im Folgenden wird für diese Koordinatensysteme gezeigt:
- Wie sind die Koordinaten definiert?
- Welche Gestalt haben die Koordinatenlinien und Koordinatenflächen?
- Wie lauten die Basisvektoren und welche Ortsabhängigkeit besitzen sie?
In den R-Skripten werden einige spezielle Eigenschaften näher erläutert:
- Das Beispiel der Bewegung auf einer Schraubenlinie (Zylindersymmetrie).
- Die Winkelabhängigkeit der x-Komponente des Basisvektorvektors er in Kugelkoordinaten.
Koordinatenlinien, Koordinatenflächen und Basisvektoren in kartesischen Koordinaten
Im zweidimensionalen Koordinatensystemen kann man nur Koordinatenlinien aber noch keine Koordinatenflächen bilden; in Krummlinige Koordinatensysteme: ebene Polarkoordinaten wurden sie für kartesische Koordinaten und ebene Polarkoordinaten diskutiert. In kartesischen Koordinaten sind es Geraden parallel zu den Koordinatenachsen, in Polarkoordinaten Kreise um den Ursprung (r = const., φ ist variabel) und Halbgeraden, die vom Ursprung radial nach außen laufen (φ = const., r ist variabel).
In dreidimensionalen Koordinatensystemen kann man jetzt Koordinatenlinien und Koordinatenflächen bilden, dazu werden zwei beziehungsweise eine Koordinate konstant gehalten und die anderen sind variabel. Abbildung 1 und 2 zeigen für kartesische Koordinaten:
- Eine Koordinatenlinie mit festgehaltenen x und y; die Variable z kann alle reellen Zahlen annehmen, wodurch eine Gerade entsteht, die parallel zur z-Achse ist.
- Eine Koordinatenfläche mit festgehaltenem z; hier können die x- und y-Koordinaten alle reellen Zahlen durchlaufen; es entsteht eine Ebene parallel zur xy-Ebene.
Die Basisvektoren in kartesischen Koordinaten in einem Punkt (x, y, z) werden dadurch erzeugt, dass man die Einheitsvektoren entlang der Koordinatenlinien bildet; ihre Orientierung wird durch die Richtung festgelegt, in der die x-, y- beziehungsweise z-Werte ansteigen. Bemerkenswert – im Vergleich zu den krummlinigen Koordinaten – ist, dass an jedem Punkt (x, y, z) die drei identischen Basisvektoren
ex = (1, 0, 0), ey = (0, 1, 0), ez = (0, 0, 1)
entstehen. Der Grund dafür ist einfach: die Koordinatenlinien sind jeweils Geraden, die zur x-, y- beziehungsweise z-Achse parallel sind.
Zylinderkoordinaten
Definition der Zylinderkoordinaten
In Abbildung 3 ist ein Punkt P mit den kartesischen Koordinaten (x, y, z) gezeigt. Der Punkt P wird entlang der z-Achse in die Ebene z = 0 projiziert, wobei der Punkt P' entsteht, dessen x- und y-Koordinate mit der von P übereinstimmen. Dem Punkt P' kann man jetzt eindeutig (mit einer kleinen Einschränkung, die sofort besprochen wird) die ebenen Polarkoordinaten (r, φ) zuordnen. Die drei Zahlen (r, φ, z) werden als die Zylinderkoordinaten des Punktes P bezeichnet.
Wenn Polarkoordinaten verwendet werden, muss man zwei Dinge per Konvention festlegen:
- In welchem Intervall liegen die Winkel φ?
- Für r = 0 kann eigentlich kein Winkel φ definiert werden. Wie wird dieser Fall behandelt?
Zu 1.: Für die Winkel φ benötigt man ein Intervall der Länge 2π, das meist mit ]-π; π] oder [0; 2π[ gewählt wird. Wie schon bei den Polarkoordinaten wird hier die Konvention φ ∈ [0; 2π[ verwendet.
Zu 2.: Der Fall r = 0 tritt für alle Punkte ein, die auf der z-Achse liegen. Sie werden entweder nur durch die Angabe von r = 0 und z oder durch die zusätzliche Vereinbarung φ = 0 charakterisiert. Hier wird für r = 0 stets φ = 0 gesetzt.
Mit diesen Konventionen können die Zylinderkoordinaten (r, φ, z) eines Punktes P(x, y, z) eindeutig definiert werden:
- Der Radius r stimmt mit dem Abstand des Punktes P von der z-Achse überein. Er wird mit Hilfe des "Pythagoras" aus x und y berechnet (siehe Gleichung (1) in Abbildung 3). Er
- Der Azimutwinkel φ ist der Winkel, den der Ortsvektor von P' (Projektion von P auf die xy-Ebene) mit der x-Achse einschließt, wobei der Winkel zwischen 0 und 2π liegt. Berechnet wird der Azimutwinkel φ wie bei den ebenen Polarkoordinaten. In Krummlinige Koordinatensysteme: ebene Polarkoordinaten (siehe dort vor allem die Diskussion zu Abbildung 3) wurde ausführlich besprochen, dass die arctan-Funktion (siehe Gleichung (2) in Abbildung 3) nur für Punkte P im ersten Quadranten das richtige Ergebnis liefert und wie die arctan-Funktion modifiziert werden muss, um den Azimutwinkel richtig zu berechnen.
- Die z-Koordinate wird unverändert aus den kartesischen Koordinaten übernommen (siehe Gleichung (3) in Abbildung 3). Um zu betonen, dass z in den Zylinderkoordinaten (r, φ, z) eigentlich von z in (x, y, z) unterschieden werden sollte, wird in der Literatur oft eine andere Bezeichnung für z der Zylinderkoordinaten gewählt; dies geschieht hier nicht.
Koordinatenlinien in Zylinderkoordinaten
Koordinatenlinien entstehen dadurch, dass man für zwei Koordinaten feste Werte vorgibt und die dritte Koordinate durch alle erlaubten Werte laufen lässt. Es gibt dann drei Arten von Koordinatenlinien. Im dreidimensionalen kartesischen Koordinatensystem sind dies Geraden parallel zu den drei Koordinatenachsen.
In Zylinderkoordinaten ergeben sich folgende Koordinatenlinien:
festgehaltene Variablen | freie Variable | Koordinatenlinie |
φ = const., z = const. | r ≥ 0 | Halbgeraden, die von der z-Achse radial nach außen verlaufen |
r = const., z = const. | φ ∈ [0; 2π[ | Kreise um die z-Achse (im Fall r = 0 wird dies zu einem Punkt auf der z-Achse) |
r = const., φ = const. | z ∈ R | Geraden parallel zur z-Achse (siehe Abbildung 4) |
Da die Koordinatenlinien mit variablem φ gekrümmt sind, werden die Zylinderkoordinaten als krummlinige Koordinaten bezeichnet.
Aufgaben:
1. Skizzieren Sie die anderen beiden Koordinatenlinien.
Hinweis: Wie haben die Koordinatenlinien in ebenen Polarkoordinaten ausgesehen?
2. Stehen die Koordinatenlinien in jedem Punkt (x, y, z) paarweise aufeinander senkrecht? Gibt es Ausnahmen?
Koordinatenflächen der Zylinderkoordinaten
Um Koordinatenflächen zu bilden, wird für eine Koordinate ein fester Wert vorgegeben, die anderen zwei Koordinaten können alle erlaubten Werte durchlaufen. Es entstehen wieder drei Arten von Koordinatenflächen:
festgehaltene Variable | freie Variablen | Koordinatenlinie |
r = const. (r ≥ 0) | φ ∈ [0; 2π[, z ∈ R | Zylindermantel mit Radius r, wobei die z-Achse die Zylinderachse ist (siehe Abbildung 5, hellblauer Zylindermantel) |
φ = const. | r ≥ 0, z ∈ R | Halbebenen, deren einseitige Begrenzung die z-Achse ist (siehe Abbildung 6, hellblaue Ebene) |
z = const. | r ≥ 0, φ ∈ [0; 2π[ | Ebenen parallel zur xy-Ebene |
Aufgabe:
Skizzieren Sie eine Koordinatenfläche mit festgehaltenem r.
Basisvektoren der Zylinderkoordinaten
Die Basisvektoren werden wieder gebildet, indem man einen Punkt P mit den Zylinderkoordinaten (r, φ, z) vorgibt und die drei Einheitsvektoren entlang der Koordinatenlinien bildet; die Orientierung ist dadurch festgelegt, in welcher Richtung die Werte der Koordinate zunehmen. Abbildung 7 zeigt die Basisvektoren: links in der Veranschaulichung, rechts als Spaltenvektoren.
Die Richtungen der Basisvektoren und ihre Ortsabhängigkeit sind leicht nachzuvollziehen, wenn man die Koordinatenlinien der Zylinderkoordinaten und der ebenen Polarkoordinaten kennt:
- Der Basisvektor ez ist an jedem Punkt (r, φ, z) identisch und zeigt in positive z-Richtung.
- Der Vektor er liegt immer in einer Ebene parallel zur xy-Ebene und zeigt radial nach außen.
- Der Vektor eφ ist in dieser Ebene Tangente an den Kreis mir Radius r.
Die Basisvektoren er und eφ zeigen die Ortsabhängigkeit (genauer: φ-Abhängigkeit), die von den ebenen Polarkoordinaten bekannt ist.
Aufgaben:
1. Berechnen Sie die möglichen Skalarprodukte zwischen den Basisvektoren der Zylinderkoordinaten und zeigen Sie damit:
- Die drei Vektoren er, eφ, ez haben die Länge 1.
- Die Vektoren stehen paarweise aufeinander senkrecht.
2. Ist folgende Aussage richtig:
In jedem Punkt einer Koordinatenfläche sind zwei der Basisvektoren Tangenten und der dritte Basisvektor steht senkrecht auf der Koordinatenfläche.
Beispiel: Schraubenlinie
Die Zylinderkoordinaten sind für die Untersuchung von Bewegungen dann das angemessene Koordinatensystem, wenn die Bewegung die Symmetrie der Zylinderkoordinaten aufweist. Paradebeispiel dafür ist die Bewegung auf einer Schraubenlinie, die man sich aus einer Kreisbewegung und einer geradlinigen Bewegung mit konstanter Geschwindigkeit zusammengesetzt denken kann. Die z-Achse wird natürlich in Richtung der geradlinigen Bewegung gewählt. Die Bewegung wird dann durch drei Parameter charakterisiert:
- Kreisradius R
- Winkelgeschwindigkeit ω der Kreisbewegung
- Geschwindigkeit v der geradlinigen Bewegung.
In Zylinderkoordinaten lautet die Zeitabhängigkeit der Koordinaten:
r(t) = R, φ(t) = ωt, z(t) = vt.
Abbildung 8 zeigt ein Beispiel, in dem drei Umläufe zu sehen sind.
Kugelkoordinaten
Die Kugelkoordinaten sind eng verwandt mit dem Koordinatensystem, das in der Geographie verwendet wird, um Punkte auf der Erdoberfläche mit Längen- und Breitengrad zu beschreiben. Im Detail gibt es Unterschiede, die man kennen muss, um keine falschen Winkelangaben zu machen.
Aufgaben: Formulieren Sie:
1. Wie werden in der Geographie Längen- und Breitengrad definiert? Skizzieren Sie dazu die Erdkugel mit einem Längen- und Breitenkreis.
2. Welche Werte können (im Winkelmaß) Längen- und Breitengrad annehmen?
3. Wie ist jeweils der Nullpunkt des Längen- und Breitengrades definiert?
Definition der Kugelkoordinaten
Zur Definition der Kugelkoordinaten betrachtet man einen Punkt P mit den kartesischen Koordinaten (x, y, z), siehe Abbildung 9, wo der Ortsvektor von P rot eingetragen ist. Der Punkt P kann durch die Angabe des Radius r und zweier Winkel (Polarwinkel θ und Azimutwinkel φ) eindeutig charakterisiert werden – die Eindeutigkeit besteht mit kleinen Einschränkungen ähnlich wie bei den ebenen Polarkoordinaten, sie werden unten diskutiert. Besonders leicht nachvollziehen lassen sich die Definitionen der Winkel, wenn man den Ortsvektor von P einmal auf die z-Achse und einmal auf die Äquatorialebene orthogonal projiziert:
- Der Radius r ist der Abstand des Punktes P vom Ursprung, er kann leicht mit Hilfe des "Pythagoras" aus (x, y, z) berechnet werden.
- Der Polarwinkel θ ist definiert als der Winkel zwischen der z-Achse und dem Ortsvektor von P. (Der Name Polarwinkel ist damit verständlich: Der Nordpol befindet sich auf der positiven z-Achse, womit man die z-Achse auch als Polachse bezeichnen kann.)
- Der Azimutwinkel φ wird wie bei den Zylinderkoordinaten definiert: Man projiziert den Punkt P auf die Äquatorialebene, wo ein Punkt P' entsteht. Der Winkel zwischen der x-Achse und diesem Ortsvektor legt den Winkel φ fest.
Wie bei den ebenen Polarkoordinaten muss man jetzt klären, welche Werte die Kugelkoordinaten (r, θ, φ) annehmen können und ob sie tatsächlich eindeutig definiert sind oder ob weitere Vereinbarungen getroffen werden müssen.
- Der Radius r kann positive Werte annehmen oder gleich 0 sein. Letzteres ist nur dann der Fall, wenn P gleich dem Ursprung ist, also für (x, y, z) = (0, 0, 0).
- Für den Polarwinkel θ wird man zunächst vermuten, dass er im Intervall [0; 2π[ liegen kann und daher der blaue Halbkreis in Abbildung 9 zu einem Vollkreis ergänzt werden muss. Richtig ist aber, dass das Intervall [0; π] ausreicht, da man die Punkte "auf der Rückseite" der Kugel durch die geeignete Angabe des Azimutwinkels φ charakterisiert.
- Für die Definition des Azimutwinkels φ gelten alle Eigenschaften, die in Krummlinige Koordinatensysteme: ebene Polarkoordinaten diskutiert wurden – was hier nicht wiederholt wird. Hier wird φ ∈ [0; 2π[ vereinbart.
Um schnell mit den Kugelkoordinaten vertraut zu werden, sollen einige Spezialfälle beschrieben werden:
- Punkte mit θ = 0 liegen auf der positiven z-Achse, wie etwa der Nordpol. Punkte mit θ = π liegen auf der negativen z-Achse (Südpol). Für Punkte in der Äquatorialebene gilt θ = π/2.
- Sind r und θ fest vorgegebenen und lässt man φ im Intervall [0; 2π[ variieren, so entsteht – wie man in der Geographie sagen würde – ein Breitenkreis.
- Ist φ ≤ π, so liegen sich die beiden Punkte (r, θ, φ) und (r, θ, φ + π) auf dem Breitenkreis gegenüber.
- Sind r und φ fest vorgegeben und lässt man θ im Intervall [0; π] variieren, so entsteht ein "halber" Längenkreis – wie der blaue Halbkreis in Abbildung 9. Möchte man den Halbkreis zu einem vollen Kreis komplettieren, muss man von φ zu φ + π übergehen.
- Für Punkte auf der z-Achse, also θ = 0 oder θ = π, ist der Azimutwinkel φ nicht eindeutig definiert, er wird hier gleich 0 gesetzt.
- Für den Ursprung sind eigentlich weder θ noch φ eindeutig definiert; der Ursprung wird meist nur durch die Angabe r = 0 charakterisiert. Manchmal vereinbart man auch θ = 0 und φ = 0.
Hinweis: Der Radius r wie auch der zugehörige Basisvektor er, der weiter unten definiert wird, werden in der Bezeichnung nicht vom Radius r dem Basisvektor er in Zylinderkoordinaten unterschieden. Beachten Sie, dass beide unterschiedlich definiert sind. Oft wird in der Literatur daher die Bezeichnung r und er bei Zylinderkoordinaten vermieden und stattdessen ρ und eρ verwendet.
Aufgaben:
1. Formulieren Sie ausdrücklich, wie der Radius r in Zylinderkoordinaten und in Kugelkoordinaten definiert ist und wie er aus den kartesischen Koordinaten (x, y, z) berechnet wird.
2. Wie erhält man zu gegebenem (r, θ, φ) den Gegenpunkt auf der Kugeloberfläche? In kartesischen Koordinaten ist dies der Übergang von (x, y, z) zu (-x, -y, -z).
3. Geben Sie die Funktionen an, die zu gegebenen (x, y, z) die Kugelkoordinaten (r, θ, φ) berechnen.
Koordinatenlinien in Kugelkoordinaten
Um eine Koordinatenlinie zu bilden, werden zwei Variablen festgehalten, die andere Variable durchläuft alle erlaubten Werte. Die folgende Tabelle beschreibt die drei Koordinatenlinien in Kugelkoordinaten; man beachte, dass zwei von ihnen nicht geradlinig sind:
festgehaltene Variablen | freie Variable | Koordinatenlinie |
θ = const., φ = const. | r ≥ 0 | Halbgeraden, die vom Ursprung radial nach außen verlaufen (rot in Abbildung 9: die unendliche Verlängerung des Ortsvektors von P) |
r = const., θ = const. | φ ∈ [0; 2π[ | Breitenkreis: Kreise um die z-Achse mit Radius r sinθ in einer Ebene parallel zur xy-Ebene; diese Ebene ist um r cosθ gegenüber der xy-Ebene in z-Richtung verschoben, siehe roter Kreis in Abbildung 10 (im Fall r = 0 wird dies zu einem Punkt auf der z-Achse) |
r = const., φ = const. | θ ∈ [0; π] | Längenkreis: Halbkreis mit Radius r vom Nordpol bis zum Südpol (siehe türkisfarbener Halbkreis in Abbildung 10; in Abbildung 9 ist der Längenkreis durch P blau eingetragen) |
Koordinatenflächen in Kugelkoordinaten
Um Koordinatenflächen zu bilden wird eine Koordinate fest vorgegeben und die anderen beiden Koordinaten durchlaufen alle erlaubten Werte. Dabei dabei entstehenden Flächen müssen keine Ebenen sein. Die folgende Tabelle beschreibt die drei Koordinatenflächen:
festgehaltene Variable | freie Variablen | Koordinatenfläche |
r = const. | θ ∈ [0; π], φ ∈ [0; 2π[ | Kugeloberfläche mit Radius r |
θ= const. | r ≥ 0, φ ∈ [0; 2π[ | Kegelmantel: Die Spitze des Kegels liegt im Ursprung, der Öffnungswinkel beträgt 2 θ. Die Kegelachse ist gleich der die positiven z-Achse für 0 < θ < π/2 und gleich der negativen z-Achse für π/2 < θ < π. Für θ = π/2 stimmt die Koordinatenfläche mit der xy-Ebene überein, für θ = 0 beziehungsweise π entartet die Koordinatenfläche zur positiven beziehungsweise negativen z-Achse. |
φ = const. | r ≥ 0, θ ∈ [0; π] | Halbebenen, deren einseitige Begrenzung die z-Achse ist. |
Aufgabe: Skizzieren Sie die anderen beiden Koordinatenflächen der Kugelkoordinaten.
Basisvektoren in Kugelkoordinaten
Um die Basisvektoren zu bilden, gibt man sich einen Punkt P mit Kugelkoordinaten (r, θ, φ) vor und bildet die Einheitsvektoren in Richtung der Koordinatenlinien. In Abbildung 12 sind sie links im Diagramm dargestellt, rechts als Vektoren ausgedrückt.
Man erkennt wieder die Ortsabhängigkeit: Die Einheitsvektoren sind jetzt von beiden Winkeln θ und φ abhängig, aber nicht vom Radius r.
Aufgabe: Berechnen Sie die möglichen Skalarprodukte zwischen den Basisvektoren der Kugelkoordinaten und zeigen Sie damit:
- Die drei Vektoren er, eθ, eφ haben die Länge 1.
- Die Vektoren stehen aufeinander senkrecht.
R-Skripte
In Erzeugen von dreidimensionalen Graphiken mit scatterplot3d wurden die wichtigsten Funktionen aus dem Paket scatterplot3d erklärt. Im Folgenden werden zwei Beispiele aus dem Theorieteil gewählt und mit Hilfe der Bibliothek scatterplot3d dreidimensionale Graphiken erstellt. Die Skripte unten setzen daher voraus, dass scatterplot3d installiert und inkludiert wird.
Darstellung der Schraubenlinie mit scatterplot3d
Im Skript können N und v gesetzt werden, alle weiteren Größen werden daraus berechnet. Das heißt man kann die Konfiguration der Bewegung allein über diese beiden Variablen vornehmen.
# N Umläufe:
N <- 3
# Geschwindigkeit:
v <- 2
# t, x, y, z:
ts <- N * (0:6282) / 1000 # Werte von 0 bis 2 * pi, multipliziert mit N
xs <- cos(ts)
ys <- sin(ts)
zs <- v * ts
# Scatteplot3d:
sc <- scatterplot3d(x = xs, y = ys, z = zs,
color = "red",
type = "p",
highlight.3d = TRUE,
xlab = "x", ylab = "y", zlab = "z",
main = paste0("Schraubenlinie, v = ", v),
lwd = 1, angle = 42)
# z-Achse:
p <- as.data.frame(matrix(data = c(0, 0, 0, 0, 0, N * v * 2 * pi), nrow = 2, ncol = 3, byrow = TRUE))
p2 <- sc$xyz.convert(p)
segments(x0 = p2$x[1], x1 = p2$x[2], y0 = p2$y[1], y1 = p2$y[2], lwd = 2)
# Farben für xy-Ebenen:
cs <- rainbow(n = N+1)
# xy-Ebenen:
lapply(X = (0:N), function(i){sc$plane3d(Intercept = i * v * 2* pi,
x.coef = 0, y.coef = 0, lty = "dotted", col = cs[N-i+1])} )
Exemplarische Untersuchung der Ortsabhängigkeit der Basisvektoren
Für Kugelkoordinaten sind die Basisvektoren in Abbildung 12 ausdrücklich angegeben. Hat man die Abbildung vor Augen, kann man leicht nachvollziehen, wie sich die Komponenten der Basisvektoren verändern, wenn man sich auf der Oberfläche der Kugel bewegt. Und diese Vorstellung kann man mit den formalen Ausdrücken für die Basisvektoren in Verbindung bringen. Exemplarisch wird dazu die x-Komponente des Einheitsvektors er, also der Term
sin(θ)·cos(φ) mit θ ∈ [0; π], φ ∈ [0; 2π[,
als zweidimensionale Funktion der Variablen θ und φ aufgefasst und untersucht.
Dazu wird die x- Komponente von er als Funktion implementiert:
e_r_x <- function(phi, theta){
return(sin(theta) * cos(phi))
}
Diese Funktion soll nun mit Hilfe der Funktion contour3d() des Pakets scatterplot3d dargestellt werden. (Die Funktion contour3d() ist im Rückgabewert von scatterplot3d() enthalten; genauer: der Rückgabewert ist eine Liste mit sechs Komponenten und jede dieser Komponenten ist eine Funktion.) Viele derartige Plots lassen sich erst dann eindeutig interpretieren, wenn man die Ansichten aus verschiedenen Winkeln gesehen hat; daher wird die Funktion zunächst unter verschiedenen Winkeln angle dargestellt. Mit dem folgenden Skript wird Abbildung 13 erzeugt:
# Blickwinkel auf den Plot:
angles <- c(24, 40, 56, 72)
par(mfrow = c(2, 2))
for(i in angles){
# Plot: Ursprung und Festlegen der Graphik-Parameter
sc <- scatterplot3d(x = 0, y = 0, z = 0,
color = "red",
type = "p",
xlim = c(0, 2*pi), ylim = c(0, pi), zlim = c(-1, 1),
xlab = "phi", ylab = "theta", zlab = "z",
main = "z = sin(theta) * cos(phi)",
lwd = 1, angle = i, box = FALSE)
# xy-Ebene:
sc$plane3d(Intercept = 0,
x.coef = 0, y.coef = 0, lty = "dotted", col = "blue")
# Kontur-Linien für e_r_x:
sc$contour3d(f = e_r_x, x.count = 20, y.count = 20, col = "red")
}
Zeile 2: Festlegen der Winkel angles, unter denen der Plot betrachtet wird.
Zeile 6 bis 20: In der for-Schleife wird über die Winkel angles iteriert und für jeden Blickwinkel ein Plot erzeugt.
Zeile 8: Mit scatterplot3d() wird vorerst nur der Ursprung dargestellt; der Funktionsaufruf dient mehr dazu, die anderen Graphik-Parameter festzulegen und das Objekt sc zu erzeugen, mit dessen Hilfe der Plot ergänzt wird.
Zeile 16 und 17: Damit das Diagramm besser verständlich ist, wird die xy-Ebene eingetragen.
Zeile 19: Das Herzstück des Skripts. Durch den Aufruf von contour3d() wird ein Kontur-Plot der zu untersuchenden Funktion erzeugt.
Man kann die Darstellung noch verbessern, indem man zusätzlich spezielle Punkte einträgt. Die Punkte, die sich auf der Kugel am Äquator befinden, werden durch
θ = π / 2 und φ ∈ [0; 2π[
charakterisiert. Im Definitionsbereich von sin(θ)·cos(φ) ist dies die Gerade parallel zur φ-Achse durch θ = π / 2.
Im folgenden Skript werden 64 Punkte auf dieser Geraden ausgewertet und als Histogramm in den Plot eingetragen. Da Histogramme üblicherweise bis zum "Boden" des Diagramms (hier z = -1) gezeichnet werden, wird die Spur der 64 Punkte auf der xy-Ebene berechnet. Eingetragen wird dann als Histogramm die Verbindung vom z-Wert zur Spur auf der xy-Ebene. (Wie man eine derartige Spur mit Hilfe von xyz.convert() berechnet und mit dem Ergebnis segments() zum Zeichnen des Histogramms aufruft, wurde in Erzeugen von dreidimensionalen Graphiken mit scatterplot3d erklärt.)
par(mfrow = c(1, 1))
sc <- scatterplot3d(x = 0, y = 0, z = 0,
color = "red",
type = "p",
xlim = c(0, 2*pi), ylim = c(0, pi), zlim = c(-1, 1),
xlab = "phi", ylab = "theta", zlab = "z",
main = "z = sin(theta) * cos(phi)",
lwd = 1, angle = 72, box = TRUE)
sc$plane3d(Intercept = 0,
x.coef = 0, y.coef = 0, lty = "dotted", col = "blue")
# Eigentliche Darstellung der Funktion als contour3d():
sc$contour3d(f = e_r_x, x.count = 20, y.count = 20, col = "red", lty = 1)
# Äquator:
# 2 * pi * 10 # 62.832
phis <- (0:63) / 10
lgth.phis <- length(phis)
# (x, y, z) für Äquator auf 2 Dim proj.:
p <- sc$xyz.convert(x = phis, y = rep(pi / 2, times = lgth.phis), z = e_r_x(phi = phis, theta = pi / 2))
# Spur (x, y , z = 0) für Äquator auf 2 Dim proj.:
p.0 <- sc$xyz.convert(x = phis, y = rep(pi / 2, times = lgth.phis), z = rep(x = 0, times = lgth.phis))
# als Histogramm eintragen (schwarz):
segments(x0 = p$x, y0 = p$y, x1 = p.0$x, y1 = p.0$y,
col = "black", lty = 1, lwd = 2)
Man erkennt jetzt deutlicher den Kosinus-förmigen Verlauf von sin(θ)·cos(φ) bei festgehaltenem θ = π/2 und variierendem φ. Man kann dieses Verhalten auch leicht an Abbildung 12 erklären: Der Basisvektor er liegt immer in der Äquatorialebene und stimmt mit dem Einheitsvektor ex überein, wenn φ = 0. Für φ = π/2 ist er = ey und somit die x-Komponente von er gleich 0.
Und gibt man sich anstelle von θ = π/2 einen anderen Winkel für θ vor, so bewegt man sich auf einem Breitenkreis. Jetzt besitzt er immer eine Komponente in z-Richtung, so dass die x-Komponente nicht gleich 1 werden kann. Dass der Verlauf Kosinus-förmig ist (mit verkleinerter Amplitude) bleibt richtig.
Aufgabe: Beschreiben Sie welche Punktmenge in Abbildung 15 durch das Histogramm dargestellt ist und interpretieren Sie den Verlauf.