2016-09-09 3 views
0

Wenn wir eine Variable a in Matlab als a = [1 2] definieren, wird a als eine Matrix mit den Dimensionen 1x2 double dargestellt. Wenn wir jetzt eine Variable b in Matlab als b = 3 definieren, dann wird b als eine Matrix mit den Dimensionen 1x1 double dargestellt. Nun, wenn wir den Standard Multiplikationsoperator "Mtimes" a*b verwenden, ist das Ergebnis [3 6]. Ich erwarte, dass es einen Fehler wirft, dass die Dimensionen nicht übereinstimmen, aber es funktioniert, obwohl, wenn wir versuchen, [1 2]*[3 4] gibt es eine Dimension nicht einverstanden Fehler. Warum wirft Matlab im ersten Fall keinen Fehler, wenn er a*b tut.mtimes-Operator für Multiplikation in Matlab falsches Verhalten

Danke.

+0

Siehe auch ["Konvertieren Skalare über Matrizen?"] (Http://math.stackexchange.com/questions/1214224/do-scalars-commute-across-matrices). – TroyHaskin

Antwort

0

Die Dimension 1x1 bedeutet Skalar. Somit haben Sie das Produkt zwischen einem Skalar und einer Matrix.

Verwandte Themen