OsterSpecial: Kreuzprodukt & INDEX -Info
04.04.2021 03:36:44
Luc:-?
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 :-?