Introduksjon til Matrisedekomponering
Å løse systemer som Ax=b kan være beregningsmessig krevende, spesielt for store systemer.
Matrisedekomponering forenkler denne prosessen ved å dele matrisen A opp i enklere deler – som vi deretter kan løse trinnvis.
LU vs QR
Vi dekomponerer matrisen A i andre strukturerte matriser.
LU-dekomponering
Deler A opp i en nedre og en øvre triangulær matrise:
- Bygges ved hjelp av Gauss-eliminasjon;
- Fungerer best for kvadratiske matriser.
QR-dekomponering
Deler A opp i en ortogonal og en øvre matrise:
- Ofte brukt for ikke-kvadratiske matriser;
- Ideell for minste kvadraters problemer eller når LU ikke fungerer.
LU-dekomponering
Start med en kvadratisk matrise:
A=[4633]Målet vårt er å skrive dette som:
A=LUHvor:
L=[1l2101], U=[u110u12u22]Denne dekomponeringen er mulig hvis A er kvadratisk og inverterbar.
Viktige punkter:
- Nedre triangulære matriser har alle nullverdier over diagonalen, noe som forenkler fremoversubstitusjon;
- Øvre triangulære matriser har nullverdier under diagonalen, noe som gjør bakoversubstitusjon enkel;
- En ortogonal matrise har kolonner som er ortonormale vektorer (vektorer med lengde 1 som er ortogonale);
- Denne egenskapen bevarer vektorlengde og vinkler, noe som er nyttig ved løsning av minste kvadraters problemer og forbedrer numerisk stabilitet.
Gauss-eliminasjon
Bruk Gauss-eliminasjon for å eliminere elementet under det øverste venstre pivot-elementet:
R2→R2−46R1Dette gir oss:
R2′=[0,−1.5]De oppdaterte matrisene blir da:
U=[403−1.5]Og fra radoperasjonen vet vi:
L=[11.501]Viktige punkter:
- Gauss-eliminasjon eliminerer systematisk elementene under pivotelementet i hver kolonne ved å trekke fra skalerte versjoner av pivot-raden fra radene under;
- Denne prosessen omformer A til en øvre triangulær matrise U;
- Multiplisatorene som brukes for å eliminere disse elementene lagres i L, slik at vi kan representere A som produktet LU.
Resultat av LU-dekomponering
Vi verifiserer:
A=LU=[11.501][403−1.5]=[4633]Nå kan systemet Ax=b løses i to steg:
- Løs Ly=b ved fremoversubstitusjon;
- Løs Ux=y ved bakoversubstitusjon.
QR-dekomponering
Vi ønsker å uttrykke en matrise A som et produkt av to matriser:
A=QRHvor:
- A er innmatrisen (for eksempel data, koeffisienter, osv.);
- Q er en ortogonal matrise (kolonnene er ortonormale vektorer);
- R er en øvre triangulær matrise.
Et eksempel på oppdeling:
A=[a1a3a2a4]=[q1q3q2q4][r110r12r22]Denne dekomponeringen brukes ofte når:
- Matrisen A ikke er kvadratisk;
- Løsning av minste kvadraters problemer;
- LU-dekomponering ikke er stabil.
Hva er ortonormale vektorer?
Ortogonale vektorer
To vektorer u,v er ortogonale hvis deres skalarprodukt er null:
u⋅v=0Normalisert vektor
En vektor u er normalisert når ∣u∣=1.
Ortonormalt sett
Et sett med vektorer {q1,q2,...,qk} er ortonormalt hvis hver vektor har lengde én og de er gjensidig ortogonale:
qi⋅qj={1, hvis i=j,0, hvis i=j.Hvorfor det er viktig: ortonormale kolonner i Q bevarer geometrien, forenkler projeksjoner og gir bedre numerisk stabilitet.
Definer matrisen A
La oss starte med dette eksempelet:
A=[4633]Vi skal bruke Gram-Schmidt-prosessen for å finne matriser Q og R slik at A=QR. Gram-Schmidt-prosessen lager et ortonormalt sett med vektorer fra kolonnene i A.
Dette betyr at vektorene i Q er ortogonale (vinkelrette) på hverandre og har lengde én (normalisert). Denne egenskapen forenkler mange beregninger og gir bedre numerisk stabilitet ved løsning av ligningssystemer.
Målet her er å:
- Gjøre kolonnene i Q ortonormale;
- Lage matrisen R som vil inneholde projeksjonene.
Beregn første basisvektor
Vi tar ut den første kolonnen i A:
a1=[46]For å normalisere denne, beregner vi normen:
∣a1∣=42+62=16+36=52Deretter:
q1=521[46]=[524526]Dette er den første ortonormale vektoren for Q.
Hvordan normalisere en vektor
Gitt en vektor:
v=v1v2⋮vnVi beregner normen:
∣v∣=v12+v22+...+vn2Deretter normaliserer vi:
v^=∣v∣1vEksempel:
v=[34], ∣v∣=32+42=5Så vår normaliserte vektor er:
v^=51[34]=[0.60.8]Når vi vet hvordan vi normaliserer og ortogonaliserer vektorer, kan vi bruke Gram-Schmidt-prosessen til å danne Q-matrisen, og bruke den til å beregne R i QR-dekomponeringen.
Beregn q₂ ved hjelp av Gram-Schmidt
For å beregne q2, starter vi med den andre kolonnen i A:
a2=[33]Deretter projiserer du a2 på q1:
r12=q1Ta2=521(4⋅3+6⋅3)=521⋅30Fjern projeksjonen fra a2:
u2=a2−r12q1Normaliser deretter (som vist ovenfor):
q2=∣u2∣u2Nå danner både q1 og q2 det ortonormale basiset for Q. Du setter nå sammen det endelige resultatet:
Q=[q1q2], R=[r110r12r22]Disse tilfredsstiller:
A=QRTakk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Awesome!
Completion rate improved to 1.96
Introduksjon til Matrisedekomponering
Sveip for å vise menyen
Å løse systemer som Ax=b kan være beregningsmessig krevende, spesielt for store systemer.
Matrisedekomponering forenkler denne prosessen ved å dele matrisen A opp i enklere deler – som vi deretter kan løse trinnvis.
LU vs QR
Vi dekomponerer matrisen A i andre strukturerte matriser.
LU-dekomponering
Deler A opp i en nedre og en øvre triangulær matrise:
- Bygges ved hjelp av Gauss-eliminasjon;
- Fungerer best for kvadratiske matriser.
QR-dekomponering
Deler A opp i en ortogonal og en øvre matrise:
- Ofte brukt for ikke-kvadratiske matriser;
- Ideell for minste kvadraters problemer eller når LU ikke fungerer.
LU-dekomponering
Start med en kvadratisk matrise:
A=[4633]Målet vårt er å skrive dette som:
A=LUHvor:
L=[1l2101], U=[u110u12u22]Denne dekomponeringen er mulig hvis A er kvadratisk og inverterbar.
Viktige punkter:
- Nedre triangulære matriser har alle nullverdier over diagonalen, noe som forenkler fremoversubstitusjon;
- Øvre triangulære matriser har nullverdier under diagonalen, noe som gjør bakoversubstitusjon enkel;
- En ortogonal matrise har kolonner som er ortonormale vektorer (vektorer med lengde 1 som er ortogonale);
- Denne egenskapen bevarer vektorlengde og vinkler, noe som er nyttig ved løsning av minste kvadraters problemer og forbedrer numerisk stabilitet.
Gauss-eliminasjon
Bruk Gauss-eliminasjon for å eliminere elementet under det øverste venstre pivot-elementet:
R2→R2−46R1Dette gir oss:
R2′=[0,−1.5]De oppdaterte matrisene blir da:
U=[403−1.5]Og fra radoperasjonen vet vi:
L=[11.501]Viktige punkter:
- Gauss-eliminasjon eliminerer systematisk elementene under pivotelementet i hver kolonne ved å trekke fra skalerte versjoner av pivot-raden fra radene under;
- Denne prosessen omformer A til en øvre triangulær matrise U;
- Multiplisatorene som brukes for å eliminere disse elementene lagres i L, slik at vi kan representere A som produktet LU.
Resultat av LU-dekomponering
Vi verifiserer:
A=LU=[11.501][403−1.5]=[4633]Nå kan systemet Ax=b løses i to steg:
- Løs Ly=b ved fremoversubstitusjon;
- Løs Ux=y ved bakoversubstitusjon.
QR-dekomponering
Vi ønsker å uttrykke en matrise A som et produkt av to matriser:
A=QRHvor:
- A er innmatrisen (for eksempel data, koeffisienter, osv.);
- Q er en ortogonal matrise (kolonnene er ortonormale vektorer);
- R er en øvre triangulær matrise.
Et eksempel på oppdeling:
A=[a1a3a2a4]=[q1q3q2q4][r110r12r22]Denne dekomponeringen brukes ofte når:
- Matrisen A ikke er kvadratisk;
- Løsning av minste kvadraters problemer;
- LU-dekomponering ikke er stabil.
Hva er ortonormale vektorer?
Ortogonale vektorer
To vektorer u,v er ortogonale hvis deres skalarprodukt er null:
u⋅v=0Normalisert vektor
En vektor u er normalisert når ∣u∣=1.
Ortonormalt sett
Et sett med vektorer {q1,q2,...,qk} er ortonormalt hvis hver vektor har lengde én og de er gjensidig ortogonale:
qi⋅qj={1, hvis i=j,0, hvis i=j.Hvorfor det er viktig: ortonormale kolonner i Q bevarer geometrien, forenkler projeksjoner og gir bedre numerisk stabilitet.
Definer matrisen A
La oss starte med dette eksempelet:
A=[4633]Vi skal bruke Gram-Schmidt-prosessen for å finne matriser Q og R slik at A=QR. Gram-Schmidt-prosessen lager et ortonormalt sett med vektorer fra kolonnene i A.
Dette betyr at vektorene i Q er ortogonale (vinkelrette) på hverandre og har lengde én (normalisert). Denne egenskapen forenkler mange beregninger og gir bedre numerisk stabilitet ved løsning av ligningssystemer.
Målet her er å:
- Gjøre kolonnene i Q ortonormale;
- Lage matrisen R som vil inneholde projeksjonene.
Beregn første basisvektor
Vi tar ut den første kolonnen i A:
a1=[46]For å normalisere denne, beregner vi normen:
∣a1∣=42+62=16+36=52Deretter:
q1=521[46]=[524526]Dette er den første ortonormale vektoren for Q.
Hvordan normalisere en vektor
Gitt en vektor:
v=v1v2⋮vnVi beregner normen:
∣v∣=v12+v22+...+vn2Deretter normaliserer vi:
v^=∣v∣1vEksempel:
v=[34], ∣v∣=32+42=5Så vår normaliserte vektor er:
v^=51[34]=[0.60.8]Når vi vet hvordan vi normaliserer og ortogonaliserer vektorer, kan vi bruke Gram-Schmidt-prosessen til å danne Q-matrisen, og bruke den til å beregne R i QR-dekomponeringen.
Beregn q₂ ved hjelp av Gram-Schmidt
For å beregne q2, starter vi med den andre kolonnen i A:
a2=[33]Deretter projiserer du a2 på q1:
r12=q1Ta2=521(4⋅3+6⋅3)=521⋅30Fjern projeksjonen fra a2:
u2=a2−r12q1Normaliser deretter (som vist ovenfor):
q2=∣u2∣u2Nå danner både q1 og q2 det ortonormale basiset for Q. Du setter nå sammen det endelige resultatet:
Q=[q1q2], R=[r110r12r22]Disse tilfredsstiller:
A=QRTakk for tilbakemeldingene dine!