SlideShare uma empresa Scribd logo
1 de 30
Baixar para ler offline
MAS135: MATLAB for Mechanical
Engineers
Forelesning 3 : Mer om Vektorer. Matriser.
Operasjoner med vektorer og matriser.
Enkle plot
Victoria Popsueva
Bergen, C208
27 august 2018
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…
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
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
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
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
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
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
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
Matriseindekser
• For eksempel en matrise
• >> a = 1 2 3
4 5 6
2 3 4
>> a(2:3,1:2)
ans =
4 5
2 3
Oppgaver
• Oppg. I boka: 3,7 og 12, 13, 34, 35, 42
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!
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
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!
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
Operasjoner med vektorer og matriser
• Addisjon og subtraksjon av vektorer og matriser
fungerer ”rett fram”
• Operasjonene *, / og ^ kan fungere på to forskjellige
måter:
• 1) som i lineær algebra
• 2) ”element-for-element”, dvs. at det å gange
sammen to matriser ikke er det samme som å gange
sammen elementene i matrisene!
Addisjon og subtraksjon
• Vi kan legge sammen/ subtrahere to vektorer /matriser
med samme dimensjon
• A+B legger sammen et element i A med tilsvarende
element i B. A-B trekker et element i B fra tilsvarende
element i A
• Hvis vi legger et skalar til en matrise blir verdien til
skalaren lagt til i alle elementene i matrisen
Matrisemultiplikasjon
• Multiplikasjonsoperatoren * fungerer som i lineær
algebra: Hvis A er en m × n matrise og B ei n × k
matrise, vil produktet av A*B bli en m × k matrise.
• NB! Det motsatte produktet (B*A) er ikke definert
med mindre matrisen er kvadratisk!
• Generelt er matrisemultiplikasjon er ikke-
kommutativ, dvs. A*B er ikke likt B*A, selv når begge
er kvadratiske.
Matriseegenskaper
• Lag 3 matriser A, B og C. Finn A+B og B+A for å vise at
matriseaddisjon er kommutativ ( kommutativ: A+B=B+A)
• Regn ut A+(B+C) og (A+B)+C for å vise at matriseaddisjon
er assosiativ (assosiativ: A+(B+C) = (A+B)+C)
• Regn ut 5(A+C) og 5A+5C for å visa at
matrisemultiplikasjon er distributiv ( distributiv: 5A + 5B =
5(A+B))
• Regn ut A(B+C) og AB+AC for å vise at
matrisemultiplikasjon er distributiv
Multiplikasjon av vektorer
• Multiplikasjon * fungerer på same måte for vektorer som
for matriser, forutsatt at den første vektoren i produktet er
en rekkevektor, og den andre en søylevektor
• Innebygd funksjon dot(a,b) regner ut ”prikkproduktet” av
vektorene a og b, begge kan være rekkevektorer eller
søylevektorer (må ha same dimensjon)
Divisjon med matriser
• Den inverse av matrisen A er matrisen inv(A) som er
slik at inv(A) * A = I (identitetsmatrisen)
• Løser ligningen Ax = b
inv(A)*A*x = inv(A)*b dvs.
x = inv(A)*b,
der x og b er søylevektorer (x=A-1*b)
• Dette tilsvarer «matrisedivisjon» Ab (venstredivisjon)
Divisjon med matriser
Løsing av ligningen x*C=d vha
høyredivisjonsoperatoren ”/”:
• x*C=d der x og d er vektorer. C en matrise.
• x*C*inv(C) = d*inv(C)
• x = d*inv(C)
• x=d/C
Eksempel med en matriselikning
• Vi har Ax = b der A og b er definert som
>> A = [4 -2 6; 2 8 2; 6 10 3];
>> b = [8 4 0]';
>> x=Ab eller x=inv(A)*b gir
Venstredivisjon!
x =
-1.8049
0.2927
2.6341
Eksempel med en matriselikning
• Gitt de same A og B:
>> A = [4 -2 6; 2 8 2; 6 10 3];
>> b = [8 4 0];
• Kan også løses som
>> x=b/A’ eller x=b*inv(A’)
x = Høyredivisjon!
-1.8049 0.2927 2.6341
Elementvise operasjoner
• Ofte er det nødvendig å utføre matriseoperasjonene
element for element.
• Alle operasjonene kan utføres elementvis ved å skrive
”.” foran operatoren
• F.eks. hvis hvert element i A skal multipliseres med
hvert element i C, skriv:
>> A.*C
Elementvise operasjoner
• Elementvise operasjoner er nyttige når vi skal finne
verdien av en funksjon for veldig mange forskjelllige
argumenter. F.eks.:
>> x = [1:7]
x = 1 2 3 4 5 6 7
>> y = x.^2-4*x
y = -3 -4 -3 0 5 12 21
Plotting i MatLab
• MatLab har mange funksjoner for å plotte data, og alle
krever input som vektorer eller matriser
• Den enkleste funksjonen er plot, som kan plotte en
funksjon y = f(x) der x og y er vektorer (som i
eksempelet på forrige side)
• Skriv ”help plot” for å få opp en liste med alle mulige
måter å plotte på
Plotting i MatLab
>> plot(x,y)
Plotting i MatLab
>> plot(x,y,’r-*’)
• r rød farge
• -
sammenhengend
e linje
• * stjerne i et
datapunkt
Plotting i MatLab
>> plot(x,y); xlabel('x'); ylabel('y'); title('Mitt plott!');

Mais conteúdo relacionado

Destaque

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Destaque (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Mas135 forelesning 3

  • 1. MAS135: MATLAB for Mechanical Engineers Forelesning 3 : Mer om Vektorer. Matriser. Operasjoner med vektorer og matriser. Enkle plot Victoria Popsueva Bergen, C208 27 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. 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
  • 9. 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
  • 10. Matriseindekser • For eksempel en matrise • >> a = 1 2 3 4 5 6 2 3 4 >> a(2:3,1:2) ans = 4 5 2 3
  • 11. Oppgaver • Oppg. I boka: 3,7 og 12, 13, 34, 35, 42
  • 12. 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!
  • 13. 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
  • 14. 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!
  • 15. 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
  • 16. Operasjoner med vektorer og matriser • Addisjon og subtraksjon av vektorer og matriser fungerer ”rett fram” • Operasjonene *, / og ^ kan fungere på to forskjellige måter: • 1) som i lineær algebra • 2) ”element-for-element”, dvs. at det å gange sammen to matriser ikke er det samme som å gange sammen elementene i matrisene!
  • 17. Addisjon og subtraksjon • Vi kan legge sammen/ subtrahere to vektorer /matriser med samme dimensjon • A+B legger sammen et element i A med tilsvarende element i B. A-B trekker et element i B fra tilsvarende element i A • Hvis vi legger et skalar til en matrise blir verdien til skalaren lagt til i alle elementene i matrisen
  • 18. Matrisemultiplikasjon • Multiplikasjonsoperatoren * fungerer som i lineær algebra: Hvis A er en m × n matrise og B ei n × k matrise, vil produktet av A*B bli en m × k matrise. • NB! Det motsatte produktet (B*A) er ikke definert med mindre matrisen er kvadratisk! • Generelt er matrisemultiplikasjon er ikke- kommutativ, dvs. A*B er ikke likt B*A, selv når begge er kvadratiske.
  • 19. Matriseegenskaper • Lag 3 matriser A, B og C. Finn A+B og B+A for å vise at matriseaddisjon er kommutativ ( kommutativ: A+B=B+A) • Regn ut A+(B+C) og (A+B)+C for å vise at matriseaddisjon er assosiativ (assosiativ: A+(B+C) = (A+B)+C) • Regn ut 5(A+C) og 5A+5C for å visa at matrisemultiplikasjon er distributiv ( distributiv: 5A + 5B = 5(A+B)) • Regn ut A(B+C) og AB+AC for å vise at matrisemultiplikasjon er distributiv
  • 20. Multiplikasjon av vektorer • Multiplikasjon * fungerer på same måte for vektorer som for matriser, forutsatt at den første vektoren i produktet er en rekkevektor, og den andre en søylevektor • Innebygd funksjon dot(a,b) regner ut ”prikkproduktet” av vektorene a og b, begge kan være rekkevektorer eller søylevektorer (må ha same dimensjon)
  • 21. Divisjon med matriser • Den inverse av matrisen A er matrisen inv(A) som er slik at inv(A) * A = I (identitetsmatrisen) • Løser ligningen Ax = b inv(A)*A*x = inv(A)*b dvs. x = inv(A)*b, der x og b er søylevektorer (x=A-1*b) • Dette tilsvarer «matrisedivisjon» Ab (venstredivisjon)
  • 22. Divisjon med matriser Løsing av ligningen x*C=d vha høyredivisjonsoperatoren ”/”: • x*C=d der x og d er vektorer. C en matrise. • x*C*inv(C) = d*inv(C) • x = d*inv(C) • x=d/C
  • 23. Eksempel med en matriselikning • Vi har Ax = b der A og b er definert som >> A = [4 -2 6; 2 8 2; 6 10 3]; >> b = [8 4 0]'; >> x=Ab eller x=inv(A)*b gir Venstredivisjon! x = -1.8049 0.2927 2.6341
  • 24. Eksempel med en matriselikning • Gitt de same A og B: >> A = [4 -2 6; 2 8 2; 6 10 3]; >> b = [8 4 0]; • Kan også løses som >> x=b/A’ eller x=b*inv(A’) x = Høyredivisjon! -1.8049 0.2927 2.6341
  • 25. Elementvise operasjoner • Ofte er det nødvendig å utføre matriseoperasjonene element for element. • Alle operasjonene kan utføres elementvis ved å skrive ”.” foran operatoren • F.eks. hvis hvert element i A skal multipliseres med hvert element i C, skriv: >> A.*C
  • 26. Elementvise operasjoner • Elementvise operasjoner er nyttige når vi skal finne verdien av en funksjon for veldig mange forskjelllige argumenter. F.eks.: >> x = [1:7] x = 1 2 3 4 5 6 7 >> y = x.^2-4*x y = -3 -4 -3 0 5 12 21
  • 27. Plotting i MatLab • MatLab har mange funksjoner for å plotte data, og alle krever input som vektorer eller matriser • Den enkleste funksjonen er plot, som kan plotte en funksjon y = f(x) der x og y er vektorer (som i eksempelet på forrige side) • Skriv ”help plot” for å få opp en liste med alle mulige måter å plotte på
  • 28. Plotting i MatLab >> plot(x,y)
  • 29. Plotting i MatLab >> plot(x,y,’r-*’) • r rød farge • - sammenhengend e linje • * stjerne i et datapunkt
  • 30. Plotting i MatLab >> plot(x,y); xlabel('x'); ylabel('y'); title('Mitt plott!');