Problem z wymnożeniem macierzy

0

Witam jestem początkującym programistą. Mam pytanie odnośnie matlaba. Mianowicie chodzi tu o wymnożenie macierzy. Wyrzuca mi błąd "Error using *
Inner matrix dimensions must agree.". Kombinowałem już chyba na wszystkie sposoby, żaden nie zadziałał. Poniżej wrzucam

>> t=0:2*pi

t =

     0     1     2     3     4     5     6
>> x=t.*(cos(2*pi*t))

x =

     0     1     2     3     4     5     6
>> t^2.*(sin(2*pi*t))
Error using  ^ 
One argument must be a square matrix and the other must be a scalar. Use POWER (.^) for
elementwise power.
0

Matlab nie wie, co Masz na myśli tutaj: t^2? Iloczyn skalarny (dot(t, t)), pomnożyć przez siebie każdy element(t.^2)?

0

Ale co ty chcesz osiągnąć? Przecież błędy są dość jasne:

  1. Error using * Inner matrix dimensions must agree -> wymiary macierzy muszą do siebie pasować żeby dało się je pomnożyć.
  2. One argument must be a square matrix and the other must be a scalar. Use POWER (.^) for elementwise power. -> operator ^ pozwala potęgować macierz kwadratową przez liczbę, a ty masz wektor / macierz prostokątną i potęgujesz przez jakieś 2.*(sin(2*pi*t))
0

"Tak. Przy takim Zapisie wyrzuca mi z kolei inny błąd >> (t^2)(sin(2pi*t)) Error using ^ One argument must be a square matrix and the other must be a scalar. Use POWER (.^) for elementwise power".
Znowu Robisz to samo: t^2, W świecie wektorów nie ma mnożenia, chyba, że je Zdefiniujesz. Matlab, dla ułatwienia wykonuje działania "elementwise", albo iloczyn skalarny.

1 użytkowników online, w tym zalogowanych: 0, gości: 1