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