Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Mas135 forelesning2
1. MAS135: MATLAB for Mechanical
Engineers
Forelesning 2 : Vektorer. Matriser.
Indeksering. Enkle plot
Victoria Popsueva
Bergen, C208
21 august 2018
2. Matriser og vektorer (arrays)
• Alle variabler i MATLAB er «egentlig» vektorer eller
matriser.
• Skalarer er spesialtilfeller av matriser – dvs 1 × 1
matriser.
• Størrelsen til en vektor elle en matrise blir bestemt
når den defineres. (NB! Kilde til feil!)
• Man også forandre dimensjonene til
vektoren/matrisen underveis. (som verdien til en
variabel) -> også en viktig kilde til feil…
• Derfor – hold øye med dem i workspace…
3. Hvordan lage en vektor
• En vektor (one-dimensional array): en rekke med tall
arrangert i en rekke eller søyle (row or column vector)
• I MatLab kan de lages på flere måter, bl.a.:
• Man lager en (rekke)vektor ved å skrive
Navnet_til_vektoren = [elementene i vektoren]
• En kolonnevektor får man ved å skrive Kolonnevektor =
[element1; element2; ... elementN]
• Det er en matematisk forskjell på rekke- og
kolonnevektorer, så det er viktig å være oppmerksom
• Transponeringsoperator ‘ gjør søyler om til rekker
4. Vektorer: enkelt eksempel
• >> a = [1 2 3]
• a =
• 1 2 3
• >> a = [1 2 3]'
• a =
• 1
• 2
• 3
• >> a = [1; 2; 3]
• a =
• 1
• 2
• 3
5. Flere måter å lage en vektor på
• Vi kan lage vektorer som inneholder tall med en gitt differanse mellom tallene:
Navnet_til_vektoren = [start:differanse:slutt]
parenteser kan droppes. Hvis man dropper differansen, blir den satt til 1
Hvis man «bommer» s.a. den gitte differansen i går opp til siste element, så droppes
det siste elementet og erstattes med det nærmeste tallet som passer med den gitte
differansen
• Eller
Navnet_til_vektoren = linspace(start, slutt, antall_elementer)
• F.eks. vektor = [2:2:10]
vektor =
2 4 6 8 10
6. Matriser (two-dimensional arrays)
• I likhet med en vektor, kan vi lage en matrise på denne måten:
Matrise = [elementer i 1 rekke; … ; elementer i Nte rekke]
• F.eks. >> a = [1 2 3; 4 5 6; 7 8 9]
a = 1 2 3
4 5 6
7 8 9
7. Matriser og vektorer-forts.
• Alle rekkevektorene må ha samme lengde!
• Hvis noen matriseelementer er null, så må man skrive 0
• Elementene i matriser/vektorer har samme indeksering som i
matematisk notasjon:
• Vektor(n) = Vektor(element nummer n) = gir n-te element i vektoren
• A(m,n) = A(rekke, søyle) = gir matriseelement i rekke m, søyle n
8. Mer om matriser
• zeros(m,n), ones(m,n) og eye(m,n) lager m ganger n matriser med
henholdsvis alle elemneter lik null, 1 eller en diagonal matrise med
diagonalelementene lik 1.
• Transponeringsperatoren ’ virker på matriser også, som speiling om
diagonalen
9. Bruk av (:)
• Kolon-tegnet (:) er svært nyttig når vi trenger å få tak i flere elementer
på en gang. Denne notasjonen virker på både vektorer og matriser.
• For vektorer:
v(:) alle elementene i vektor v
v(m:n) alle elementene fra og med element m og til og med element n
10. Bruk av (:)
• A(:,n) alle elementene i søyle nummer n
• A(n,:) alle elementene i rekke nummer n
• A(:,m:n) alle elementene fra søyle nummer m og til søyle nummer n
• A(m:n,:) alle elementene fra rekke nummer m og til rekke nummer n
• A(m:n,p:q) alle elementene fra rekke nummer m til rekke nummer n og fra
søyle nummer p og til søyle nummer q
13. Manipulasjoner med vektorer
• Man kan legge flere elementer til en vektor :
>> v = [1 2 3 4];
>> v(7) = 2
v =
1 2 3 4 0 0 2
Legg merke til at her vil MATLAB sette inn nuller foran det siste
elementet!
14. Manipulasjoner med matriser
• Å legge til en ekstra rekke til en matrise:
>> b = [10 11 12];
>> c = [a;b]
c = 1 2 3
4 5 6
7 8 9
10 11 12
15. Manipulasjoner med matriser
• Man kan utvide en matrise ved å legge til et element ”som det ikke er
plass til” – da vil matrisen utvides ved at det fylles inn nuller der det
ikke er tall (se eksempel)
• Det blir ikke gitt noen feilmelding – man må passe på selv!
16. Tips
• Viktig å holde styr på hvor store matrisene/vektorene er!
• MATLAB gir feilmeldinger dersom dimensjonene ikke matcher, men
forteller ikke hvor det er mismatch.
• Derfor:
length(v) gir antall elementer i vektoren v
size(a) gir dimensjonene til matrisen a