Hva er en matrise?
Komponent listes opp i to retninger, horisontalt, vertikalt.
Store bokstaver, komponenter i små
= rad, søyle
(n søyler nedover)
Alle rader har like mange komponenter, alle søyler har like mange koponenter
er kvadratisk når
radvektor: et hosistonalt segment i
søylevektor: vertikalt segment
Transponere matrise
er snudd, rad 1 blir søyle 1 osv
A.T transponerer A
Symmetrisk matrise:
blir da
og så videre til vi står komponentvis
Egenskaper ved matrisemultiplikasjon
- # men ikke endre på rekkefølgen!!!
- distributivitet
- også distributivitet
- For alle skalarer ,
- A så og . er nøytralt element.
Matrisaddisjon
Definert komponentvis.
Hvis og begge er mxn, så definerer vi
samme bare minus
matrise med komponenter
Matrisemultiplikasjon
Matrise-vektor-multiplikasjon
hvis er mxn og en søylebektor med n komponenter
Ved defisisjon av vektoraddisjon kan dette skrives:
summen av rad 1 ganget med skalar fra rad 1 av søylevektor
og så videre for alle radene.
kan også skrives komponentvis. (se forelesnignsnotat)
Likningssystem
A er koeffisientmartrisen. Bare om antall søyler i A = komponenter i b (og x)
Brukes til å utlede (?) matrise x matrise
Matrise-matrise-multiplikasjon
mekanisk:) Rad x søyle
Hvis er en matrise, og er en matrise, så er matrise.
Men, for at dette skal gå opp, må ALTSÅ MÅ matrise 2 ha like mange rader som matrise 1 har søyler.
Hvis har rader
Hvis B har rader
Med python
a, alt gr, b (???) eget tegn som
A @ BYtre produkt
Kolonne ganget med rad gir matrise? Vi går fort forbi…
slipper å summere:)
evt a_ eller
søyle, r
er kolonnevektorer (men transponerer x slik at det blir en radvektor)
Egenskaper ved matrisemultiplikasjon
- # men ikke endre på rekkefølgen!!!
- distributivitet
- også distributivitet
- For alle skalarer ,
- A så og . er nøytralt element.
Bevis for #1
se forelesningsnotat
Bruker summeformel (definisjonen av produktet ) for matrisemultiplikasjon definert tidligere.
Gir sånn ca mening.
Gir mye mer mening utifra lineære transformasjoner…
Bevis for #5
Trekke ut delmatriser
trekke ut søyle j, trekke ut søyle i
eller
der e har bare 0 bortsett fra komponent i=1 eller j=1.
Langt over det nivået som forventes at vi skal regne på.
Skrive matrisen som summen av sine søyler trenger ikke vi å drive på med.
Lineære transformasjoner og matrisemultiplikasjoner
egenskaper:
F har matrise A. Hva er egenltig F? transformere koordinatsystemeet
Vi kan i hvertfall bevise at den fins? og at den er lineær
Matrisen til en vektorprojeksjon
projeksjonsmatrise
Utledes i forelesningsnotat
Finne matrise til avbildning (transformation?) med rotasjon vinkel
Trigonometri:)
og
sett sammen de nye posisjonene til og som vanligvis har verdiene og
Eks: speiling om
og
lineær transformasjon blir da lik
slik at vilkårlige punkt blir
For rotasjon av akser med vinkel
og
så tranformasjonen
Lage matriser i python
A=np.array([[1,2,3]])#radvektor
B=np.array([[1],[2],[3]])#søylevektor
Og obs Python indeksering starter fortsatt på 0
A[0,1] gir 2
B[1,0] gir også 2
3 x 4 matrisen
A=np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])
m, n = np.shape(A) #3, 4
#KOLONNOTASJON
A[i, :] #radvektor
A[:,j] #søylevektor
#noter forskjell
print(A[1,:]) #skriver ut en vektor, uten noe referanse til matrise
print(A[[1],:]) #spytter ut en matrise [[5,6,7,8]]Undermatrise i python
ix notasjon for gitte rader og gitte søyler, ny matrise, men den skal vi ikke bruke så mye.
Reshape
y.reshape((1,-1) tar en vektor og git en radvektor. -1 betyr regn ut automatisk hvo mange rader/søyler. 1 betyr 1 rad. (1,-1) gir da en søylevektor
Operasjoner ved både vektorer og MATRISER
np.max(A,axis=0) trekker ut maksverdien i hver søyle og returnerer en vektor.
np.min(A,axis=0 tilsvarende
sum: summerer søylevis og returnerer vektor
prod: ganger sammen alle tall i hver søyle, returnerer vektor
Vektoriserte funksjoner for vektorer er vektorisert for matriser også. Funkjsonen av alle komponentene:)
sqrt, abs, sin, log osv
np.maximum sammenligner komponentvis for to matriser. og returnerer en matrise. np.minimum gjør samme.
Multiplikasjon og potens i Python: ganger sammen komponentvis og returnerer matrise.
Skalarer
Plusse på skalar går helt fint komponentvis men ikke definer matematisk
Hvis a er en rad-vektor, kan den plusses med b søylevektor returnerer MATRISE
artige matriser
matrisen med bare nuller
matrisen med bare enere
matrisen med vektor a på diagonalen. Resten null?
identitetsmatrisen, n=m=det vu vil den skal være, 1 på diagonalen.
Diagonalmatriser er symmetriske:)
Hilbertmatrisen
kode: med reshape og transponering.
Vandermondematrisen
Fouriertranformasjonen
ER MEGET KUL men ikke pensum.
Matriseaddisjon
plotte polynomer
m=100
x=np.linspace(0,1,m).reshape((-1,1)
plt.plot(x, x)
plt.plot(x, x**2)
plt.plot(x, x**3)
plt.legend(['q_1','q_2','q_3'])
plt.show()
#Eller
plt.plot(x, x, x, x**2, x, x**3)
Vandermonde pluss polynomer som søyler med koeffisitenten til nye polynomet.
np.block setter sammen som søyler.
plt.plot(x, Y) der Y er matrise.
Blokkmatriser
“egentlig mindre viktige ting”
Sette sammen flere matriser til en størrematrise.
De som har tid og lyst kan lese gjennom det stoffet, ikke så veldig eksamensrelevant.