Operationen auf Skalare, Vektoren und Matrizen

Copyright

Copyright 1994,  Claudia Funke
TU-Berlin, FB 13, Fachgebiet Ökonometrie und Statistik
Dieses Notebook darf ausschließlich als Unterrichtsmaterial und für private 
Zwecke verwendet und nicht ohne Zustimmung der Autorin verändert werden.

Die meisten in Mathematica verfügbaren mathematischen Operatoren sind
so implementiert, daß sie auf einen Vektor und eine Matrix angewendet diese
elementweise auswerten. Im folgenden werden die wichtigsten dieser
mathematischen Operatoren beschrieben. Dabei wird Ordnungskonformität
der betrachteten Vektoren und Matrizen vorausgesetzt.

Numerische Operatoren

Addition/Subtraktion

mit	A = (m,n) - Matrix,	 B = (m,n) - Matrix,	C = (m,n) - Matrix

b = { {1,2}, {3,4} }; MatrixForm[b]

c = { {c11,c12}, {c21,c22} }; MatrixForm[c]

a = b + c; MatrixForm[a]

Wird ein Skalar zu einer Matrix addiert/subtrahiert, expandiert Mathematica
diesen intern zu einer Matrix gleicher Größe.

mit	A = (m,n) - Matrix,	 B = (m,n) - Matrix,	s = (1,1) - Matrix

a = b + s; MatrixForm[a]

Multiplikation

Das normale Matrizenprodukt ist als

mit	A = (m,n) - Matrix,	 B = (m,k) - Matrix,	C = (k,n) - Matrix

und

definiert.

d = { {4,3}, {2,5} }; MatrixForm[d]

Die Multiplikation zweier Matrizen kann numerisch

a = b . d; MatrixForm[a]

wie auch symbolisch erfolgen.

a = b . c; MatrixForm[a]

Die Multiplikation einer Matrix mit einem Vektor ist ebenfalls kein Problem.

a = b . {v1, v2}; MatrixForm[a]

Bei der Multiplikation einer Matrix mit einem Skalar wird jedes Element
der Matrix mit dem Skalar multipliziert.

mit	A = (m,n) - Matrix,	 B = (m,n) - Matrix,	s = (1,1) - Matrix

a = s  b; MatrixForm[a]

Das n-te Produkt einer Matrix

wird mit

berechnet.

b = { {b11,b12}, {b21,b22} }; MatrixForm[b]

a = MatrixPower[b, 3]; MatrixForm[a]

Dimensions[a]

Bei der Reihenfolge der Operatoren muß nicht auf Ordnungskonformität
geachtet werden, da der dot-Operator  .   sowohl die Möglichkeit der 
Prämultiplikation als auch der Postmultiplikation prüft und die Operation
ausführt, die möglich ist. Für das Multiplizieren von Vektoren gilt, daß
Mathematica nur Listen kennt und daher ebenfalls nicht auf Ordnungs-
konformität in der Reihenfolge der Operanden prüft.

Spezielle Vektorprodukte

Das innere Produkt zweier Vektoren (Skalarprodukt)

mit	z = (1,1) - Matrix,	 u = (n,1) - Matrix,	v = (n,1) - Matrix

und

wird ebenfalls über den dot-Operator berechnet.

u = {1, 2, 3}; v = {v1, v2, v3};

z = u . v

Das äußere Produkt zweier Vektoren (dyadisches Produkt)

mit	Z = (m,n) - Matrix,	 u = (m,1) - Matrix,	v = (n,1) - Matrix

und

wird mit der Funktion

berechnet.

z = Outer[Times, u, v]; MatrixForm[z]

Kronekerprodukt

Mit der gleichen Funktion wird auch das Kroneckerprodukt ermittelt.

mit	A = (mp,nq) - Matrix,	 u = (m,n) - Matrix,	v = (p,q) - Matrix
	Ø ist der Ersatz für das hier nicht darstellbare Zeichen des
	Kroneckerproduktes

mit

b = { {b11,b12},{b21,22} };
c = { {c11,c12}, {c21,c22}, {c31,c32} };
a = Outer[Times, b, c]

MatrixForm[a]

Dimensions[a]

Potenzen

Der Potenzoperator   ^   kann ebenfalls auf eine Matrix angewandt werden
und ergibt

b = { {b11,b12}, {b21,b22} }; a = b^2;
MatrixForm[a]

Der Exponent selbst kann auch eine Matrix sein und es ergibt sich dann

c = { {c11,c12}, {c21,c22} }; a = b^c;
MatrixForm[a]