6 svar
91 visningar
destiny99 behöver inte mer hjälp
destiny99 7944
Postad: 17 jan 2023 21:40 Redigerad: 17 jan 2023 21:43

Matrices and vectors

Hej!

Vi började med en kurs idag där vi jobbar med språket matlab. I videon nedan säger att vi ej kan upphöja x^2 utan måste skriva x.^2. Jag förstod ej riktigt varför. En matris kan väl multipliceras med sig själv väl? 

Matsmats 571 – Livehjälpare
Postad: 17 jan 2023 21:59

x är en vektor med dimensionen 1 x 100.

Du kan inte multiplicera en 1 x 100 vektor med en 1 x 100 vektor.

Däremot kan du t.ex. multiplicera x' * x, det blir 100x1 * 1x100  (apostrofen ger dig transponatet); en 100 x 100 matris

Eller x * x'  (1x100 * 100x1); en skalär

Överkurs, apostrofen ger egentligen konjugatet av transponatet men i ditt fall var det reella tal så det blir samma sak. Vill man ha ett rent transponat av komplexa tal är det en punkt före apostrofen ( x.' )

destiny99 7944
Postad: 17 jan 2023 22:30
Matsmats skrev:

x är en vektor med dimensionen 1 x 100.

Du kan inte multiplicera en 1 x 100 vektor med en 1 x 100 vektor.

Däremot kan du t.ex. multiplicera x' * x, det blir 100x1 * 1x100  (apostrofen ger dig transponatet); en 100 x 100 matris

Eller x * x'  (1x100 * 100x1); en skalär

Överkurs, apostrofen ger egentligen konjugatet av transponatet men i ditt fall var det reella tal så det blir samma sak. Vill man ha ett rent transponat av komplexa tal är det en punkt före apostrofen ( x.' )

Jaha så det är som att jag försöker multiplicera raderna med varandra i samma dimension?

Matsmats 571 – Livehjälpare
Postad: 18 jan 2023 07:28

Ja, det är en matrismultiplikation du försöker göra och eftersom dimensionerna är fel så går det inte (precis det som står i felmeddelandet). Allt i Matlab är matriser, en skalär är specialfallet matris med dimensionen 1x1.

destiny99 7944
Postad: 18 jan 2023 21:08
Matsmats skrev:

Ja, det är en matrismultiplikation du försöker göra och eftersom dimensionerna är fel så går det inte (precis det som står i felmeddelandet). Allt i Matlab är matriser, en skalär är specialfallet matris med dimensionen 1x1.

Hur vet jag att dimsionen är fel?

Matsmats 571 – Livehjälpare
Postad: 18 jan 2023 21:13

Du kan göra size(x) för att se dimensionen; i ditt fall kommer den att säga (1,100) dvs 1x100

destiny99 7944
Postad: 18 jan 2023 21:15 Redigerad: 18 jan 2023 21:16
Matsmats skrev:

Du kan göra size(x) för att se dimensionen; i ditt fall kommer den att säga (1,100) dvs 1x100

Heter det ej whos? Okej så vår dimension är 1×100 och då går det ej o multiplicera dimensionerna med varandra dvs 1x100 med 1x100 ?

Svara
Close