Vier- und fünfdimensionale Figuren in Projektionen und Schnitten
Von: Roland17
Datum: Mi. 21. Juni 2023 17:00:29
Thema: Software

Mit den heutigen mathematischen Zeichenprogrammen ist es möglich, Figuren, die mehr als drei Dimensionen haben, durch Projektionen in den und Schnitte im dreidimensionalen euklidischen Raum mit wenig Mühe wenigstens teilweise darzustellen und dadurch erahnbar zu machen. In den folgenden Beispielen wird dazu das Programm GNU Octave verwendet, welches kostenlos heruntergeladen werden kann. In Abbildung 1 wird zum Nachweis der Funktionsfähigkeit zunächst eine dreidimensionale Schwingung mit einem Schnitt in der x-y-Ebene bei z = 0 nebst dem verwendeten Programm dargestellt. Abb. 1: 2D-Schnitt durch eine 3D-Figur, benannt „Knäuel“ Mit p wird der Azimutwinkel phi bezeichnet, mit t der Polarwinkel theta. Mit dem Befehl ‚idx‘ wird eine auswählende Bedingung formuliert, so dass anschließend nur die ausgewählten Punkte gezeichnet werden. Der „Schnitt“ ist eine dünne Schicht der Dicke 2a, wenn abs (z) < a gilt. Bei einem ‚plot‘- oder ‚plot3‘-Befehl werden alle (hier unter ‚linspace‘) definierten Punkte erfasst. Lässt man Koordinaten weg, entstehen folglich Projektionen, keine Schnittfiguren, s. Anhang Abb. 5. Es folgt eine vierdimensionale Schwingung mit ihren Projektionen und Schnitten in den vier möglichen dreidimensionalen Unterräumen. Das Programm befindet sich im Anhang, Abb. 6.
Abb. 2: Links die 3D-Projektionen und rechts die zugehörigen 3D-Schnitte der 4D-Figur „Octopus“ in den 4 möglichen euklidischen 3D-Unterräumen des 4D-Raumes Nun eine Schwingung im vierdimensionalen euklidischen Raum, benannt „Kugelspirale“, mit ihren Projektionen und Schnitten in den 4 dreidimensionalen Unterräumen (das Programm s. Anhang Abb. 7):
 
Abb. 3: Links befinden sich die 3D-Projektionen und rechts die zugehörigen 3D-Schnitte der 4D-Figur „Kugelspirale“. GNU Octave vertauscht manchmal nicht korrigierbar die Koordinatenachsen, so dass ihre Reihenfolgen links und rechts nicht immer übereinstimmen. Der ‚Schnitt orthogonal zu x4‘ besteht eigentlich nur aus den beiden „Polpunkten“ der „Kugelspirale“ (0|0|1|0) und (0|0|-1|0), wird aber durch die Näherung nicht exakt erfasst. Wählt man bei den beiden Schnitten orthogonal zu x1 und zu x2 den a-Wert kleiner als 0.1, fehlen Punkte in den Mitten der Bögen, sonst muss man Ansätze von Schwingungen an den Spitzen in Kauf nehmen. Die Bögen sind die Ränder der „Zylinder-Keile“. Der ‚Schnitt orthogonal zu x3‘ ist die „Kegelspitze“ (0|0|0|0). Zum Schluss eine fünfdimensionale Figur, benannt „Spule“. Es gibt 10 dreidimensionale Unterräume des fünfdimensionalen euklidischen Raumes (s. Anhang nach Abb. 9). Denn dem Urnenmodell folgend wird hier aus den n = 5 Koordinatenachsen dreimal (k = 3) eine Achse gezogen und diese werden ohne Beachtung der Reihenfolge kombiniert. Die Anzahl der Möglichkeiten dafür beträgt (n;k)=(5;3)=10 . (Beim vierdimensionalen Raum sind es entsprechend (4;3)=4 dreidimensionale Unterräume.) Es folgt eine Auswahl von 3 der 10 3D-Räume, um nicht den Rahmen dieser Darstellung zu sprengen, und weil fast alle anderen der 3D-Projektionen ähnlich (nur gedreht, wie z.B. die beiden „Zylinderkeile“ in Abb. 3) aussehen.
 
Abb. 4: Links die dreidimensionalen Projektionen und rechts die dreidimensionalen „Schnitte“ der fünfdimensionalen Figur „Spule“ Die namengebende 1. Projektion ist räumlich, die 2. und 3. sind flächig. Weil die „Schnitte“ dünne Schichten sind, besteht der obere Schnitt nur aus dem mittleren Punkt, der mittlere Schnitt nur aus dem linken oberen der 3 abgebildeten Punkte (s. Anhang Abb. 9) und der untere Schnitt aus 5 Punkten, die jeweils in der Mitte ihrer Punktgruppe liegen. In der zugehörigen Projektion sind es die 3 Kreuzungspunkte und die beiden äußeren Extrempunkte. Bisher sind alle Schnitte bei der Koordinate x4 = 0 ausgeführt worden. Um eine vage Vorstellung wenigstens von den beiden vierdimensionalen Figuren zu erhalten, kann man die Schnitte bei mehreren unterschiedlichen x4-Koordinaten durchführen. Lässt man die Schnitte in äquidistanten Abständen von der kleinsten zur größten Koordinate von x4 wandern und augenblicklich darstellen, erhält man eine Art Zeichentrickfilm, wodurch ansatzweise Anschaulichkeit gegeben wird. (Natürlich ist es immer noch ein Unterschied, ob die vierte Dimension wie hierbei die Zeit oder eben eine räumliche Ausdehnung ist - aber immerhin.) Im Anhang befindet sich in Abb. 10 das Programm für einen solchen Trickfilm der Figur "4D-Octopus" mit 401 Bildern, in Abb. 11 das Programm für die "Kugelspirale" mit 101 Bildern. Man muss es leider etwas mühsam selbst bei GNU Octave eintippen. Dafür sieht man dann aber z.B. bei der "Kugelspirale", wie sich - beginnend bei den beiden Polen - die beiden Schnittpunkte spiralig aus der vierten Dimension durch den dreidimensionalen Raum winden, wobei die Radien einer Kugel entsprechend wachsen. Sie vereinigen sich kurzzeitig am Kugeläquator, wobei wegen der endlichen Dicke der Schnitt-"schicht" mehr als nur ein Punkt gezeichnet wird, von denen der mittlere der Schnittpunkt ist. Will man solche Kurzfilme auch mit Schnitten orthogonal zu x1, x2 oder x3 herstellen, so braucht man nur bei den Befehlen ‚idx‘ und ’set‘ die Achsen entsprechend auszutauschen, so wie es in den Programmen für die Schnittfilme orthogonal zu x1 und zu x3 gemacht wurde (s. Anhang Abb. 12 und 13). Werden bei der Wiedergabe zunächst viele Punkte ausgelassen, so muss man die halbe „Schichtdicke“ a bei ‚idx‘ vergrößern (in Abb. 12: a = 0.01). Wählt man a zu groß, werden zu viele Punkte mehrfach dargestellt. Es gilt also, sich ein Optimum auszusuchen. Die Geschwindigkeit lässt sich bei dem Befehl ‚pause(b)‘ verändern, wobei b die Zeitspanne zwischen zwei Bildern in s ist. Die Gesamtzahl der Bilder n in der ‚for‘-Schleife bestimmt die „Auflösung der Bewegung“ und die Länge des Filmchens. Ist n zu klein, springen die Punkte statt sich zu verschieben. Der Koeffizient vor (n-1) muss an die Bilderzahl und die zu durchlaufende x4-Strecke angepasst werden. Die Gesamtzahl der t-Werte im ‚linspace‘-Befehl (hier meist 10000) bestimmt die Genauigkeit der Darstellung. Ist sie zu klein, ist die Figur eckig statt rund; ist sie zu groß, geht es auf die Rechenzeit und könnte zum Konflikt mit dem b-Wert führen. Auch die Punktsymbole können verändert werden (z.B. *, o, größerer Punkt), wie in Abb. 12 geschehen, um die Sichtbarkeit individuell zu optimieren. Um so einen Kurzfilm zu speichern und auch außerhalb von GNU Octave abspielen zu können, kann man daraus bei GNU Octave ein mp4-Video machen. Das Programm ist in Abb. 14 dargestellt. Man braucht dazu auf seinem Rechner bei GNU Octave das Ergänzungsprogramm ‚video‘, was aber beim Betriebssystem ‚windows‘ vorhanden ist. Gibt man bei GNU Octave den Befehl ‚pkg list‘ ein, erscheint die Liste der Ergänzungsprogramme (packages: pkg). Man muss dann mit ‚pkg load video‘ das Programm ‚video‘ aktivieren (was in der Liste durch einen Stern * hinter ‚video‘ erkennbar ist). Dann tippt man das Programm zusammen mit dem Befehl ‚VideoWriter‘ bei GNU Octave ein, s. Abb. 14. Das fertige Video wird mit ‚open (Name des Videos)‘ aufgerufen. Danksagung: Ich bedanke mich ausdrücklich bei folgenden Forums-Aktivisten von GNU Octave, die mir wichtige Hilfen zur Erstellung der Programme gegeben haben: andy, Pantxo, arungiridhar, datsergatskov, mmuetzel, igusak200
 

Anhang:

Abb. 5: Die ununterbrochene Linie in der rechten Abbildung zeigt, dass alle Punkte des „Knäuels“ erfasst sind und es sich damit um eine Projektion handelt.
Abb. 6: Programm der 4D-Figur „Octopus“
Abb. 7: Programm der 4D-Figur „Kugelspirale“
Abb. 8: Programm der 5D-„Spule“
Abb. 9: Schnitt 5D-„Spule“ im x4-x5-x1-Raum Die 10 dreidimensionalen Unterräume des fünfdimensionalen euklidischen Raumes, gekennzeichnet durch ihre 3 Koordinatenachsen, eine Auswahl aus den 5 Achsen x1, x2, x3, x4, x5: x1,x2,x3 x1,x2,x4 x1,x2,x5 x2,x3,x4 x2,x3,x5 x3,x4,x5 x4,x5,x1 x4,x5,x2 x5,x1,x3 x1,x3,x4
Abb. 10: Programm für einen Zeichentrickfilm, in welchem der "4D-Octopus" in einer Zeitreise dreidimensional durchschnitten wird (muss bei GNU Octave eingetippt werden).
Abb. 11: Programm für einen Zeichentrickfilm, in welchem die "4D-Kugelspirale" sukzessive dreidimensional orthogonal zu x4 durchschnitten wird.
Abb. 12: Programm für einen Zeichentrickfilm für die sukzessive dreidimensionale Durchschneidung der „Kugelspirale“ orthogonal zu x1
Abb. 13: Programm für einen Zeichentrickfilm für die sukzessive dreidimensionale Durchschneidung der „Kugelspirale“ orthogonal zu x3
Abb. 14: Programm für ein mp4-Video der „Kugelspirale“, geschnitten orthogonal zu x4; Rechenzeit ca. 20 s; Videodauer 33 s
 


Dieser Artikel kommt von Matroids Matheplanet
https://matheplanet.de

Die Url für diesen Artikel ist:
https://matheplanet.de/default3.html?article=1997