Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1824to1828
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

OsterSpecial: Kreuzprodukt & INDEX -Info

OsterSpecial: Kreuzprodukt & INDEX -Info
04.04.2021 03:36:44
Luc:-?
Aus gegebenem Anlass hatte ich mich in den Letzten 2 Wochen mit dem Kreuzprodukt 2er Vektoren befasst, das häufig bei diversen technisch-wissenschaftlichen Aufgaben benutzt wird. Ich habe dann mal das im Wikipedia-Lemma vorgestellte Bsp nachvollzogen und es dafür wie üblich in ein xyz-KoordinatenSystem eingetragen, um das Ganze zu visualisieren. Zwei der im WP-Lemma vorgeschlagenen Lösungswege habe ich mit Xl ausprobiert und im Folgenden dargestellt.
Mit Hilfe des Kreuzprodukts a×b wird ein Vektor ermittelt, der im 3dimensionalen Vektorraum senkrecht auf der durch die beiden Vektoren a und b aufgespannten Ebene, die idR¹ die Form eines Parallelogramms (P[ab]) hat, steht und dessen Betrag L(a×b) der Fläche A(P[ab]) entspricht. Das habe ich zusätzlich am Fuße der grafischen Darstellung (Abb.3) überprüft.
1. Die einfache direkte algebraische Methode besteht darin, die (x y z)-Koordinaten per Kreuzprodukt der jeweils anderen beiden zu ermitteln, wobei das 2.Produkt vom 1. subtrahiert wird. Lt WP-Bsp sei a=A1:A3={1;2;3}, b=B1:B3={-7;8;9}. Dann ergäbe sich auf einem Xl-Blatt folgende plurale Matrix-Fml:
{=INDEX(A1:A3;{2;3;1};1)*INDEX(B1:B3;{3;1;2};1)-INDEX(A1:A3;{3;1;2};1)*INDEX(B1:B3;{2;3;1};1)}.
Als einzelne NormalFmln könnte man aber auch die Adressen der xyz-Komponenten der Vektoren zusammensetzen und die so gebildete Fml per XLM-Fkt AUSWERTEN oder einer entsprd UDF (bspw TxEval) auswerten:
="a"&REST(ZEILE(A2)-1;3)+1&"*b"&REST(ZEILE(B3)-1;3)+1&"-a"&REST(ZEILE(A3)-1;3)+1&"*b"&REST(ZEILE(B2) -1;3) +1
2. Eine andere Methode bestünde darin, beide Vektoren (wiederholt) mit jeder Spalte der Einheitsmatrix zusammenzufügen und dann die Determinante der jeweils gebildeten Matrix zu berechnen, wobei sich x, y und z des a×b-Vektors (in dieser Reihenfolge) ergeben. Wollte man das mit INDEX lösen, müsste die Einheitsmatrix in einem HilfszellBereich angelegt wdn (wie in Abb.2 gezeigt). Das ergäbe dann bei Verwendung weiterer Hilfszellen für die EinzelMatrizen eine plurale MatrixFml mit interessanter INDEX-Nutzung (s. da).
Man könnte allerdings auch mit einer einfacheren INDEX-Fml und UDFs einen Lösungsweg beschreiten, der nachfolgend (Abb.1) zuerst gezeigt wird, wobei hier auch der Beweis angetreten wird, dass Xl (wie schon beim Kronecker-Produkt) mehr berechnet als es ohne zusätzliche Hilfsmittel abbilden kann:

Verwendete UDFs (m.Links): VJoin², TensEx und Couple (unveröffentlicht³).
Die nachfolgende Darstellung (Abb.2) zeigt die gleiche Methode, aber ohne UDF-Nutzung, wobei hierbei ggf Hilfszellen (zumindest für die Einheitsmatrix) angelegt wdn müssen:

Zum Schluss folgt noch die grafische Darstellung dieses Bsps mit Fmln zur Ermittlung der VektorBeträge L, der Höhe des Parallelogramms P[ab] H und der Nachweis der Gleichheit von a×b-Betrag und ParallelogrammFläche A(P[ab]) (im Kasten unten rechts):

¹ Wenn a auf der x- und b auf der y-Achse liegt, wird a×b auf der z-Achse positioniert, wobei alle Vektoren generell im 0-Punkt des Koordinatensystems entspringen. Die Vektoren a und b spannen dann ein Rechteck auf, dessen FlächenInhalt A sich aus a·b ergibt, während es beim Parallelogramm bekanntlich Hₐ·b (bzw analog umgekehrt ist).
² Mit der verlinkten Version 1.4 lässt sich das MatrixKonstanten-Ergebnis nicht erzielen (müsste nachkorrigiert wdn). Das ist erst ab Version 1.5 möglich.
³ Die UDF fügt die 3 Spalten zu einer Matrix zusammen. Da sie bereits recht alt ist und überarbeitet wdn müsste, sollte sie publiziert wdn (eher schreibe ich eine neue), müsste so etwas vorerst jeder Interessent selber schreiben.

Allen trotz alledem ein Frohes Osterfest! Luc :-?

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Schöne Ausarbeitung
04.04.2021 13:08:48
lupo1
... leider kann ich da intellektuell nicht mithalten. Frohe Ostern Dir ... und bleib gesund!
AW: Danke, Dir ebenfalls & dito! ;-) orT
04.04.2021 16:32:36
Luc:-?
Gruß, Luc :-?
OsterSpecial: Nachtrag u.Ergänzung Abb.1/2
05.04.2021 20:03:58
Luc:-?
Der untere Teil von Abb.1 kann auch auf die unveröffentlichte UDF Couple verzichten, wenn statt der dortigen Fml eine längere mit 3 UDFs aus dem Archiv verwendet wird (Abb.1a):

(UDFs: DataSet, TxEval, VJoin* und VSplit - * Normalerweise reicht hier die dort publizierte Version 1.4 aus, nicht aber für das umfassende VJoin von A36:A38 [Versionen ab 1.5], dessen Ergebnis wieder nachkorrigiert wdn müsste, um H36:H38 [Variante V4] in gezeigter Form zu ermöglichen.)
In Abb.2 kann die Fml für Variante V2 noch etwas vereinfacht wdn:
R11:T19: {=INDEX((INDEX(A17:C19;{1;2;3;1;2;3;1;2;3};{1;1;1;2;2;2;3;3;3});INDEX(A1:B3;{1;2;3;1;2;3;1;2;3};0));0;{1.1.2};{1.2.2})}
Die Lösungsvariante in X21:X23 wäre dann eine 3. (V3), wobei die zuvor genannten und gezeigten Varianten inkl der in den Abb.1/1a nicht mitgezählt wurden. Insgesamt sind es also noch mehr.
Luc :-?
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige