8.1 Sisteme liniare și analiză matricială

Sistemele de ecuații algebrice liniare apar în multe aplicații care implică calcule științifice, cum ar fi procesarea semnalelor, dinamica computațională a fluidelor și altele. Astfel de sisteme pot apărea în mod natural sau pot fi rezultatul aproximării ecuațiilor diferențiale prin ecuații algebrice.

Tipuri de matrice

Indiferent de aplicație, este întotdeauna necesar să găsim o soluție exactă pentru sistemul de ecuații, într-un mod foarte eficient. In notație matrice-vector, un astfel de sistem de ecuații algebrice liniare are forma Ax = b, unde A este o matrice n× n, b este un anumit vector constând din n elemente, iar x este vectorul soluție necunoscută care urmează să fie determinată. Matricea A este reprezentată de un șir 2D de elemente. Aceste elemente pot fi numere reale, numere complexe, funcții sau operatori. Matricea A prezentată mai jos este o matrice de m rânduri și n coloane cu m×n elemente.

Aici, ai,j reprezintă al (i, j)-lea element situat în rândul i și coloana j. În general, o astfel de matrice se numește matrice dreptunghiulară. Când numărul de rânduri este egal cu numărul de coloane, se numește matrice pătrată. O matrice (m rânduri și o coloană) se numește vector coloană. Un vector rând este o matrice (1 rând și n coloane). Dacă toate elementele, altele decât elementele diagonale, sunt zero (adică aij = 0, i≠j), o astfel de matrice se numește matrice diagonală. De exemplu,

este o matrice diagonală. O matrice diagonală cu toate elementele diagonale egale cu unu se numește matrice identitate, cunoscută și sub denumirea de matrice unitate. Dacă toate elementele de sub diagonala principală sunt zero, matricea este cunoscută ca o matrice triunghiulară superioară. Pe de altă parte, dacă toate elementele de deasupra diagonalei principale sunt zero, atunci matricea este cunoscută ca o matrice triunghiulară inferioară. Atunci când toate elementele sunt numere reale, matricea este menționată ca o matrice reală. Pe de altă parte, atunci când cel puțin unul dintre elementele matricei este un număr complex, matricea este menționată ca o matrice complexă. Pentru a simplifica înțelegerea lucrurilor, veți lucra în principal cu matrice reale în această lecție. Cu toate acestea, pentru cei aventuroși, există și câteva exerciții care implică matrice complexe.

Determinantul unei matrice

Unul dintre cele mai importante atribute ale unei matrice este determinantul ei. În cel mai simplu caz, determinantul unei matrice 2 x 2

este dat de ad-cb.

Determinantul unei matrice pătrate este format prin luarea determinantului elementelor sale. De exemplu, dacă

determinantul lui A, notat cu IAI, este

= -196

Determinantul indică multe proprietăți importante ale matricei. De exemplu, dacă determinantul matricei este zero, atunci matricea este singulară. Cu alte cuvinte, matricea de mai sus (cu determinant nenul) este nesingulară. Veți revizui conceptul de singularitate mai târziu în secțiunea C, atunci când lecția va discuta soluția ecuațiilor liniare și inverse de matrice.

Transpusa unei Matrice

Transpusa unei matrici reale este formată prin interschimbarea rândurilor sale cu coloane. Dacă matricea B reprezintă transpusa lui A, notat cu AT, atunci bj,i = ai,j. Pentru matricea A definită mai sus,

În cazul matricelor complexe, este definită transpusa conjugatei complexe. Dacă matricea D reprezintă transpusa conjugatei complexe a unei matrice complexe C, atunci D = CH ⇒ dij = c*j,i (dacă a = x + iy, conjugatul complex este a* = x - iy).

Adică, matricea D este obținută prin înlocuirea fiecărui element din C prin conjugatul său complex și apoi prin schimbarea rândurilor și coloanelor matricei rezultate.

O matrice reală este numită matrice simetrică dacă transpusa matricei este egală cu matricea însăși. Matricea de exemplu A nu este o matrice simetrică. Dacă o matrice complexă C satisface relația C = CH , atunci C este numită matrice hermitiană.

Obținerea unui vector ca o combinație liniară a altor vectori (Independența liniară)

Un set de vectori x1, x2, ...., xn se spune că sunt liniar dependenți dacă și numai dacă există scalari α12,...,αn nu toți zero, astfel că,

α1x1 + α2x2 +...+αnxn = 0

În termeni mai simpli, dacă unul dintre vectori poate fi scris ca o combinație liniară a celorlalți, atunci se spune că vectorii sunt liniar dependenți.

Dacă singurul set de αi pentru care ecuația de mai sus se menține este α1 = 0, α2 = 0, ...αn = 0, setul de vectori x1, x2, ...,xn se spune că este liniar independent. Deci, în acest caz, nici unul dintre vectori nu poate fi scris ca o combinație liniară a celorlalți. Având în vedere orice set de vectori, ecuația de mai sus este valabilă mereu pentru α1 = 0, α2 = 0, ...αn = 0. Prin urmare, pentru a arăta independența liniară a setului, trebuie să arătați că α1 = 0, α2 = 0, ...αn = 0 este singurul set de αi pentru care ecuația de mai sus este valabilă.

De exemplu, mai întâi considerăm vectorii

Observați dacă α1 = 0 și α2 = 0 sunt singurele valori pentru care relația α1x + α2y = 0 este adevărată. Deci, acești doi vectori sunt liniar independenți unul față de celălalt. Acum, considerați vectorii

Observați că, dacă α1 = -2 și α2 = 1 atunci α1x + α2y = 0. Prin urmare, acești doi vectori sunt liniar dependenți unul de celălalt. Trebuie să înțelegeți complet această definiție a independenței liniare a vectorilor pentru a aprecia pe deplin conceptul de rang al matricei, după cum urmează.

Cum poți determina independența liniară? (Rangul Matricei)

Rangul unei matrice A, notată cu ρ(A), este numărul maxim de coloane liniar independente în A. Dacă te uiți la exemplul matricei A, vei constata că toate coloanele lui A sunt liniar independente una de cealaltă. Adică, nici una dintre coloane nu poate fi obținută prin formarea unei combinații liniare a celorlalte coloane. Prin urmare, rangul matricei este 3. Considerați încă o matrice, de exemplu B, unde

Această matrice are doar două coloane independente liniar, deoarece a treia coloană a lui B este liniar dependentă de primele două coloane. Prin urmare, rangul acestei matrice este 2. Se poate arăta că numărul de coloane liniar independente dintr-o matrice este egal cu numărul de linii independente. Deci, rangul nu poate fi niciodată mai mare decât dimensiunea mai mică a matricei. În consecință, dacă A este o matrice n×m, atunci

ρ(A) ≤ min (n,m)

unde min reprezintă minimul celor două numere. În teoria matricei, rangul unei matrice pătrate se referă la matricea nesingulară de ordin cel mai mare care poate fi formată din ea. Rețineți din discuția anterioară că o matrice este singulară dacă determinantul ei este zero. Deci, gradul se referă la matricea de cel mai înalt ordin pe care o puteți obține cu determinant diferit de zero. De exemplu, considerați o matrice de 4x4

Pentru această matrice, det(B) = 0, dar

Prin urmare, rangul lui B este 3. O matrice pătrată are rangul maxim dacă și numai dacă determinantul ei este diferit de zero. Matricea B nu este o matrice cu rang maxim.

"Magnitudinea" (normele) matricelor

Trebuie să dezvoltați o noțiune de "magnitudine" a vectorilor și a matricelor pentru a măsura erorile și sensibilitatea în rezolvarea unui sistem liniar de ecuații. Ca un exemplu, aceste sisteme liniare pot fi obținute din aplicații în sistemele de control și dinamica computațională a fluidelor. De exemplu, în două dimensiuni, nu puteți compara doi vectori x = [x1 x2] și y = [y1 y2], pentru că ați putea avea x1 > y1 dar x2 < y2. O normă vectorială este o modalitate de a atribui acestor vectori o cantitate scalară, astfel încât ei să poată fi comparați unul cu altul. Este similar cu conceptul de magnitudine, modul sau valoare absolută pentru numerele scalare.

Există mai multe moduri de a calcula norma unei matrice. Acestea includ norma-2 (norma euclidiană), norma-1, norma-Frobenius (norma F) și norma-Infinity (inf-norm). Fiecare normă are propria sa interpretare fizică. Considerați o sferă unitate care conține originea. Norma euclidiană a unui vector este pur și simplu factorul prin care sfera trebuie să fie extinsă sau mărită pentru a cuprinde exact vectorul dat. Acest lucru este arătat în figurile de mai jos:

Figura 1a prezintă o sferă unitate de rază = 1 unitate. Figura 1b prezintă un vector cu lungimea √22+22= √8 = 2√2. Așa cum se arată în figura 1c, sfera unitate trebuie să fie extinse cu un factor de 2√2 înainte de a putea acoperi exact vector dat. Prin urmare, norma euclidiană a vectorului este 2√2.

Norma unei matrice este definită în termenii unei norme vectoriale de bază. Este extensia relativă maximă pe care o face matricea pentru orice vector. Cu norma-2 vectorială, sfera unitate se extinde cu un factor egal cu norma. Pe de altă parte, cu norma-2 matriceală, sfera unitate poate deveni un elipsoid (elipsă în 3D), cu unele axe mai lungi decât altele. Cea mai lungă axă determină norma matricei.

Unele norme de matrice sunt mult mai ușor de calculat decât altele. Norma-1 se obține prin găsirea sumei valorii absolute a tuturor elementelor din fiecare coloană a matricei. Cea mai mare dintre aceste sume se numește norma-1. În termeni matematici, norma-1 este pur și simplu suma maximă absolută a coloanei matricei.

De exemplu,

atunci

Inf-norm unei matrice este suma maximă absolută a liniei unei matrice

În acest caz, adunați mărimile tuturor elementelor din fiecare linie a matricei. Valoarea maximă pe care o obțineți se numește inf-norm. Pentru exemplul matricei de mai sus,

Norma-2 este cel mai dificil de calculat, deoarece este dată de cea mai mare valoare singulară a matricei. Valorile singulare sunt discutate în Secțiunea 8.4 și exercițiul 8-9 verifică validitatea declarației de mai sus.

Determinarea singularității (număr de condiționare)

În timp ce norma matricei oferă o modalitate de a măsura magnitudinea matricei, numărul de condiționare al unei matrice este o măsură a cât de aproape este matricea de a fi singulară. Numărul de condiționare al unei matrice pătrate nesingulare este definit ca:

unde p poate fi unul dintre cele patru tipuri de norme discutate mai sus. De exemplu, pentru a găsi numărul de condiționare al unei matrice A, puteți găsi norma-2 a lui A, norma 2 a inversei matricei A, notată cu A-1 și apoi înmulțiți-le împreună. După cum am menționat anterior, norma-2 este dificil de calculat pe hârtie. Puteți utiliza Matrix Norm VI din biblioteca Analysis pentru a calcula norma-2. De exemplu,

Numărul de condiționare poate varia între 1 și infinit. O matrice cu un număr mare de condiționare este aproape singulară, în timp ce o matrice cu un număr de condiționare apropiat de 1 este departe de a fi singulară. Matricea A de mai sus este nesingulară. Considerați matricea

Numărul de condiționare al acestei matrici este 47168 și, prin urmare, matricea este aproape de a fi singulară. După cum vă puteți aminti, o matrice este singulară dacă determinantul ei este egal cu zero. Dar, determinantul nu este un bun indicator pentru a evalua cât de aproape este o matrice de a fi singulară. Pentru matricea B de mai sus, determinantul (0,0299) este nenul; dar, numărul de condiționare mare indică faptul că matricea este aproape de a fi singulară.

Nu uitați că numărul de condiționare unei matrice este întotdeauna mai mare sau egal cu unu; acesta din urmă fiind adevărat pentru matricile de identitate și permutare. Numărul de condiționare este o cantitate foarte utilă în evaluarea exactității soluțiilor pentru sisteme liniare.

În această secțiune, v-ați familiarizat cu unele notații de bază și concepte de matrice fundamentale, cum ar fi determinantul unei matrice și rangul acesteia. Următorul exercițiu ar trebui să vă ajute să înțelegeți în continuare acești termeni, care vor fi folosiți frecvent pe tot parcursul restului lecției.

Exercițiul 8-1

Obiectiv: Pentru a construi matrici, calculați numărul de condiționare, rangul și determinantul și observați cum numărul de condiționare afectează precizia soluției.

În acest exercițiu, veți completa un VI care construiește patru matrici diferite de mărime 9x9. Veți determina numărul de condiționare, rangul și determinantul acestor matrici. Veți rezolva apoi o problemă de aproximare a curbei și veți observa cum numărul de condiționare al acestor matrici afectează precizia soluției finale.

1. Deschideți Construct Matrices VI din Lvspcex.llb.

2. Matricea population (nouă elemente) conține date privind populația din Statele Unite pentru anii 1900 până în 1980, la intervale de 10 ani. Aceste date au fost reprezentate pentru dvs. în graficul population graph. Pentru a găsi populația în oricare dintre anii intermediari, trebuie să interpolați între aceste nouă puncte de date. Această interpolare poate fi obținută mai întâi prin aproximarea unei curbe la aceste puncte de date și apoi folosind curba pentru a obține valorile intermediare. Această curbă este reprezentată de un polinom unic de gradul opt care interpolează aceste nouă puncte de date, dar acel polinom poate fi reprezentat în mai multe moduri diferite. Considerați următoarele patru moduri de a reprezenta termenii individuali în polinom:

De exemplu, polinomul real în cazul (i) este dat de

y = ao + a1 t + a2 t2 + ...

unde ai sunt parametrii curbei de determinat.

Pentru a determina acești parametri, este necesar să se rezolve un sistem liniar de ecuații va = y, unde v este o matrice, a = [ao, a1, ...], și y este vectorul populație.

Pentru fiecare din aceste patru reprezentări, puteți genera matricea V, unde elementul al (i, j)-lea al acestei matrice este dat de

O astfel de matrice V este denumită matrice Vandermonde. De exemplu, dacă utilizați reprezentarea polinomială (i) de mai sus, matricea Vandermonde va arăta ca:

unde ti (0 < i < n-1) este al i - lea element al vectorului „year“.

Diagrama bloc

3. Deschideți schema bloc pentru acest VI și completați-o așa cum se arată mai sus.

Matrix Condition Number VI (Analysis » Linear Algebra » Advanced Linear Algebra subpalette). În acest exercițiu, această funcție calculează numărul de condiționare al matricei.

Determinant VI (Analysis » Linear Algebra subpalette). In acest exercițiu, această funcție calculează determinantul matricei.

Matrix Rank VI (Analysis » Linear Algebra » Advanced Linear Algebra subpalette). În acest exercițiu, această funcție calculează rangul matricei.

Funcția Bundle (subpaleta Cluster). În acest exercițiu, funcția asamblează șirul population și șirul year pentru a le trasa pe grafic.

4. Subdiagrame din Case t^j, (t-1900)^j, (t-1940)^j, și ((t-1940)/40)^j construiesc matricile corespunzătoare funcțiilor polinomiale (i), (ii), (iii), respectiv (iv). Subdiagramele în primele trei cazuri, așa cum este arătat mai sus, sunt deja construite. Nu aveți nevoie decât să completați subdiagrama în Case ((t-1940)/40)^j.

5. Matrix Condition Number VI are o intrare numită norm type. Mai devreme în secțiune, ați văzut diferite tipuri de norme. Acest VI poate calcula numărul de condiționare folosind patru tipuri de norme diferite. În acest exercițiu, veți seta tipul de normă = 0, care este norma-2.

6. Determinant VI are o intrare numită matrix type. În acest exercițiu, veți seta tipul matricei = 0 (matrice generală).

7. Matrix Rank VI are o intrare numită tolerance. Lăsați acest terminal neconectat, folosind valoarea implicită pentru acest exercițiu.

8. Întoarceți-vă pe panoul frontal și rulați VI-ul. Alegeți diferite funcții polinomiale folosind controlul polynomial function selector.

9. Privește numerele de condiționare ale celor patru matrici. Ceea ce este foarte aproape de a fi singulară?

10. Salvați și închideți acest VI.

11. Acum veți folosi matricile (calculate în Construct Matrices VI) pentru a calcula populația pentru orice an între 1900 și 1980. Pentru a face acest lucru, deschideți Compute Population VI din Lvspcex.llb. Acest VI calculează un polinom pentru a interpola valorile datelor cu datele despre populație. Apoi calculează populația pentru un an specificat folosind schema de evaluare imbricată a lui Horner.

12. Reveniți la panoul frontal pentru VI, deschis la pasul 10. Setați controlul “choose year” la 1950. Folosind fiecare dintre cele patru funcții polinomiale executați VI-ul pentru calcularea populației pentru acest an. Punctul roșu al graficului populației arată valoarea populației pentru anul ales. Care dintre aceste valori este cea mai apropiată de adevărata valoare de 151.325.798, conform recensământului din 1950?

13. Salvați VI și închideți-l.

Sfârșitul exercițiului 8-1

Exercițiul 8-2

Obiectiv: Studierea matricilor speciale.

În acest exercițiu, veți învăța să utilizați Create Special Matrix VI din biblioteca de analiză. Examinați diferitele tipuri de matrici speciale pe care acest VI le creează. Rețineți că acest VI generează și matricea Vandermonde folosită în exercițiul precedent.

Panoul frontal

1. Construiți panoul frontal așa cum se arată mai sus. Puteți redimensiona matricile bidimensionale D, U și L pentru a vedea toate elementele din matrice.

2. Construiți diagrama bloc așa cum se arată mai sus.

Create Special Matrix VI (Analysis » Linear Algebra » Advanced Linear Algebra subpalette). In acest exercițiu, această funcție creează matrici speciale. Îl veți completa în pașii 4, 5 și 6.

3. Construiți Diagonal Matrix D utilizând Create Special Matrix VI. Intrarea matrix size determină mărimea dimensiunii matricei speciale de ieșire Special Matrix. Alegeți matrix size = 6.

4. Intrarea matrix type determină tipul de matrice specială care este generat la ieșire. Alegeți matrix type = Diagonală.

5. Introduceți elementele diagonale 1, 2, 3, 4, 5 și 6 în controlul Diagonal Elements de pe panoul frontal. Conectați acest control la terminalul Input Vector1. Terminalul Input Vector1 este intrarea pentru a construi o matrice specială în funcție de tipul de matrice ales.

6. Reveniți pe panoul frontal și executați VI-ul.

7. Calculați determinantul acestei matrice așa cum ați făcut în exercițiul anterior. Găsiți ceva interesant în legătură cu această valoare de determinant? Dacă da, ce este? Dacă nu, priviți mai atent la elementele diagonale ale matricei D.

8. Selectați Upper Lower Symmetric Matrix VI din Lvspcex.llb. Setați Select Type Matrix=0 (matrice triunghiulară superioară). Setați matrix Size = 6. Conectați matricea D la terminalul input matrix. Matricea de ieșire U (output matrix) este o matrice triunghiulară superioară.

9. Calculați determinantul acestei matrici. Găsiți ceva interesant în legătură cu această valoare a determinantului? Dacă da, ce este?

10. Alegeți tipul matricei = 1 (matricea triunghiulară inferioară). Setați dimensiunea matricei egală cu 6. Conectați matricea D la terminalul input matrix. Matricea de ieșire L este o matrice triunghiulară inferioară. Repetați pasul 6.

11. Salvați VI ca Special Matrix.vi și închideți-l.

Notă: determinantul pentru toate cele trei matrici este egal cu produsul elementelor diagonale ale matricei.

Sfârșitul exercițiului 8-2

8.2 Despre operațiile cu matrice