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?
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.' )
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?
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.
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?
Du kan göra size(x) för att se dimensionen; i ditt fall kommer den att säga (1,100) dvs 1x100
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 ?