Banner image

Deep Dive - Die hessesche Normalenform

Published on 3/7/2024, 2:30:00 PM


In diesem Beitrag werden wir die hessesche Normalenform genauer untersuchen. Ihr solltet dafür ein fundiertes Verständnis von Ebenengleichungen haben. Lest euch dazu gerne die anderen Beiträge zum Thema Mathe & Geometrie durch!

In diesem Beitrag ist es enorm wichtig, mit den Simulationen zu experimentieren und zu verstehen, was vor sich geht! Bitte nimm dir die Zeit und benutze die Simulationen!

Nimm dir auch die Zeit, die mathematischen Formeln & Gleichungen zu verstehen!

Die hessesche Normalenform

Wie der Name schon impliziert ist die hessesche Normalenform eine besondere Form der Normalenform. Wie wir wissen, gibt der Normalenvektor die "Richtung" der Ebene an, da definiert ist, dass der Normalenvektor immer senkrecht auf der Ebene steht. Die Länge dieses Vektors war bisher völlig irrelevant. Otto Hesse hat der Normalenform noch eine Besonderheit verpasst. Die Länge des Normalenvektors muss 11 sein. Nun mag sich der ein oder andere vielleicht fragen, was das für einen Sinn hat. Es wird sich allerdings herrausstellen, dass dies einen enormen Nutzen in der Abstandsbestimmung hat.

Um also die hssesche Normalenform zu bilden, müssen wir die Länge des Normalenvektors auf 11 bringen. Das wird auch Normieren genannt.

Ein Vektor wird normiert, in dem man ihn durch seine Länge teilt. Ist der Vektor 2.52.5 lang, teilen wir den Vektor durch 2.52.5, wodurch wir ihn skalieren und einen Einheitsvektor der Länge 11 erhalten. Der Einheitsvektor zeigt dabei immernoch in die gleiche Richtung!

Allgemein bedeutete das n^=nn\hat{n} = \frac{\overrightarrow{n}}{\vert \overrightarrow{n} \vert}. Das sogenannte Zirkumflex   ^  \; \hat{} \; beschreibt einen Einheitsvektor.

Wir skalieren also einen Vektor, indem wir alle seine Komponenten mit einem Wert multiplizieren / durch einen Wert teilen. Um von der Normalenform zur hesseschen Normalenform zu gelangen, teilen wir sie einfach durch die Länge des Normalenvektors.

n1x1+n2x2+n3x3+cn=0\frac{n_1 \cdot x_1 + n_2 \cdot x_2 + n_3 \cdot x_3 + c}{\vert \overrightarrow{n} \vert} = 0

Das funktioniert, da in der Normalenform jedes Polynom / jeder Summand eine Komponente des Normalenvektors als Faktor enthält. Somit bewirkt die Division durch die Länge des Normalenvektors hier auch einfach eine Skalierung.

Die hessesche Normalenform hat noch eine weitere Bedingung. Der Normalenvektor muss vom Koordinatenursprung wegzeigen. Oder anders formuliert: Er muss sich auf der gegenüberliegenden Seite des Ursprungs "befinden". Mathmatisch ausgedrückt muss nA>=0\overrightarrow{n} \circ \overrightarrow{A} >= 0 sein. Das spielt bei der im Folgenden erklährten Abstandsbestimmung im Prinzip keine Rolle, aber um zu definieren, auf welcher Seite der Ebene sich ein Punkt befindet, ist es relevant.

Annäherung an die hessesche Normalenform über das Skalarprodukt

Mit dem Skalarprodukt lässt sich irgendein Winkel ausrechnen. Das weis man vielleichgt aus weit entfernten Mathematik Stunden noch. Mit dem Skalarprodukt geht aber noch viel mehr!

Zunächst wollen wir uns im Zweidimensionalen aufhalten, da Einiges leichter zu erklähren ist. Alle Erklährungen lassen sich genauso auf drei Dimensionen anwenden.

Folgende Simulation zeigt zwei Vektoren und das Skalarprodukt zwischen diesen.

n\overrightarrow{n} zeigt in positive X-Richtung. Durch Bewegung des zweiten Vektors stellen wir fest, dass solange dieser senkrecht nach oben oder unten liegt, das Skalarprodukt 00 beträgt. Macht Sinn, denn der Winkel zwischen den beiden Vektoren beträgt dann 90°90° Verschiebt man den Vektor allerdings ins positive, ist das Skalarprodukt positiv, genau andersherum ist es im negativen. Tatsächlich gibt das Skalarprodukt hier den Abstand unseres zweiten Vektors von der y-Achse an.

Zeigt der Vektor n\overrightarrow{n} in positive y-Achse, gibt das Skalarprodukt den Abstand des zweiten Vektors von der x-Achse an.

Das Skalarprodukt scheint also immer den Abstand zu der Gerade anzugeben, dessene Normalenvektor n\overrightarrow{n} ist und durch den Ursprung verläuft. Beträgt die Länge des Vektors n\overrightarrow{n} allerdings nicht 11, scheint unsere Abstandsbestimmung nicht mehr zu funktionieren.

Ist die Länge von n\overrightarrow{n} 2, scheint unser Abstand doppelt so groß zu sein. Es stellt sich herraus, dass man das Skalarprodukt noch durch die Länge von n\overrightarrow{n} teilen muss, damit man den echten Abstand erhält.

d(P,g)=nPnd(P, g) = \frac{\overrightarrow{n} \circ \overrightarrow{P}}{\vert \overrightarrow{n} \vert}

Das Skalarprodukt liefert uns also neben dem Winkel zwischen zwei Vektoren auch den Abstand eines Vektors / Punktes zu jeder beliebigen Gerade, welche durch den Normalenvektor n\overrightarrow{n} beschrieben ist.

Dieses Phänomen lässt sich auch mit der anderen Darstellungsform des Skalarprodukts erklären.

nP=nPcos(n,P)\overrightarrow{n} \circ \overrightarrow{P} = \vert \overrightarrow{n} \vert \cdot \vert \overrightarrow{P} \vert \cdot cos(\overrightarrow{n},\overrightarrow{P})

Die Definition des Skalarprodukts beginnt mit dem Produkt der Längen der beiden Vektoren. Demnach wäre ohne den Kosinus das Skalarprodukt sehr groß, wenn die Längen der beiden Vektoren sehr groß sind. Jetzt wird dieses Produkt allerdings noch mit dem Kosinus des Winkels zwischen den beiden Vektoren multipliziert. Dadurch wird das Skalarprodukt sehr klein, sollte der Winkel gegen 90° gehen, da der Kosinus bei 90° = 0 ist. Je näher der Punkt P (A in der Simulation) der Geraden kommt, desto näher kommt der Winkel zwischen den beiden Vektoren an 90° heran. Dieses Verhältnis zwischen Produkt der beiden Vektoren und dem Kosinus zwischen den beiden Vektoren scheint sich so auszugleichen, dass am Schluss der Abstand des Punktes A von der Geraden herauskommt.

Die Gerade verläuft bisher allerdings immer durch den Ursprung. Durch einfache Subtraktion können wir durchaus auch den Abstand zu einer Gerade gg berechnen, welche nicht durch den Ursprung verläuft. Es sei gg eine Gerade mit Aufpunkt AA, welche an beliebiger Stelle im Raum liegt. Es sei hh eine Gerade, welche durch den Ursprung verläuft, mit gleichem Normalenvektor wie gg. Wir ziehen den Abstand des Aufpunkts AA zu hh vom Abstand eines beliebigen Punktes PP zu hh ab, um den Abstand von PP zu gg zu erhalten.

d(P,g)=nPnnAn=nPnAn=n(PA)nd(P, g) = \frac{\overrightarrow{n} \circ \overrightarrow{P}}{\vert \overrightarrow{n} \vert} - \frac{\overrightarrow{n} \circ \overrightarrow{A}}{\vert \overrightarrow{n} \vert} = \frac{\overrightarrow{n} \circ \overrightarrow{P} - \overrightarrow{n} \circ \overrightarrow{A}}{\vert \overrightarrow{n} \vert} = \frac{\overrightarrow{n} (\overrightarrow{P} - \overrightarrow{A})}{\vert \overrightarrow{n} \vert}

(Genaugenommen müssen noch Betragsstriche drum rum, denn der Abstand ist immer positiv.)

Kommt uns das bekannt vor? Richtig! Das ist die hessesche Normalenform der Ebene! Unsere Normalenform ist nichts anderes, als zwei voneinander abgezogene Skalarprodukte und somit die Subtraktion der zwei Distanzen! Zwar bezogen wir uns bisher nur auf Abstände zu Geraden, mit Ebenen ist es allerdings genau das selbe!

Die Normalenform war bisher =0= 0 gesetzt, um zu prüfen, ob ein Punkt auf einer Ebene liegt. Das macht auch völlig Sinn, denn wenn ein Punkt auf der Ebene ist, beträgt seine Distanz zu dieser 00!

Das Teilen durch die Länge des Normalenvektors ist genau das, was Otto Hesse mit seiner hesseschen Normalenform gemacht hat. Somit ist die hessesche Normalenform die direkte Funktion zur Abstandsbestimmung eines Punktes von einer Ebene!

Annährung an die hessesche Normalenform über Trigonometrie

Es gilt:

d=APcos(φ)d = \vert \overrightarrow{AP} \vert \cdot cos(\varphi)

Den Kosinus können wir auch mit dem Skalarprodukt berechnen.

cos(φ)=ababcos(\varphi) = \frac{\overrightarrow{a} \circ \overrightarrow{b}}{\vert \overrightarrow{a} \vert \cdot \vert \overrightarrow{b} \vert}

In unserem Fall

cos(φ)=nAPnAPcos(\varphi) = \frac{\overrightarrow{n} \circ \overrightarrow{AP}}{\vert \overrightarrow{n} \vert \cdot \vert \overrightarrow{AP} \vert}

Wir gehen nun davon aus, dass der Normalenvektor bereits die Länge 11 hat, und setzen den Kosinus über das Skalarprodukt in unsere Formel für die Distanz ein.

d=nAP=n(PA)d = \vert \overrightarrow{n} \circ \overrightarrow{AP} \vert = \vert \overrightarrow{n} \circ (\overrightarrow{P} - \overrightarrow{A}) \vert

(Es wurden noch Betragsstriche hinzugefügt, damit die Distanz immer positiv ist)

Kommt uns das bekannt vor? Exakt: Das ist die Ebenengleichung in Normalenform! Auch hier können wir durch die Länge des Normalenvektors teilen, um den Abstand für beliebige Normalenvektoren zu bestimmen.

Abschließende Worte

Die hessesche Normalenform anzuwenden ist eine Leichtigkeit, auch ohne diesen Beitrag. Für Menschen wie mich, die immer alles ganz genau wissen wollen und verstehen wollen, was hinter den Kulissen geschieht, ist er vielleicht aber ganz nützlich!


This post on GitHub

Written and developed with ♥ by Felix