35 0 150KB
Universitatea Tehnica a Moldovei Catedra Informatica Aplicata
Metode numerice
Referat Lucrare de laborator nr.2 Varianta 2
A efectuat
st. gr. ISBM-111 Timotin Pavel
A verificat
lector asistent Coscodan Mihail
Chisinau 2012
Scopul lucrării: 1.
Să se rezolve sistemul de ecuaţii liniare Ax=b, utilizând:
•
Metoda eliminării Gauss;c
•
Metoda lui Cholesky(metoda înjumătăţirii pătrate);
•
Metoda iterativă a lui Iacobi cu oeroare e=10-3;
•
Metoda iterativăa lui Gauss-Seidel cu o eroare e=10-3 şi e=10-5;
2. Să se determine numărul de iteraţii necesare pentru aproximarea solutiei cu eroarea dată e.Să se compare rezultatele. 3.
Să se inverseze matricea A cu ajutorul metodei Jordan-Gauss.
Partea teoretică: Rezolvarea sistemelor de ecuatii liniare printr-o metoda interativa inseamna construirea unui sir de vectori x(k), k=0, 1,2,...(pornind de la un vector x0 ales arbitrar), convergent catre solutia sistemului considerat.In metodele interative , de obicei, o iteratie necesita efectuarea unui numar de ordin n2 operatii aritmetice.De aceea metodele interative se utilizeaza pentru rezolvarea sistemelor ”mari” , de dimensiune n>100 (in cazul asigurarii unei viteze sporite de convergenta pentru o alegere a aproximarii initiale adecvate). Trunchierea sirului {xk }are loc la un indice m , astfel incit xm constituie o aproximatie satisfacatoare a solutiei cautate x* . Există mai multe metode de rezolvare a sistemelor neliniare şi a problemelor de minimizare necondiţionată. Metida eliminarii lui Gauss.Metoda eliminarii a lui Gauss consta in a adduce sistemul initial la un system echivalent, avind matricea coificientilor superiori triunghiulara. Transformarea sistemului dat intr-un sistem de forma triunghiulara fara ca sa se modifice solutia sistemului se realizeaza cu ajutorul urmatoarelor obtiuni de baza: 1)rearanjarea ecuatiilor(schimbarea a 2 ecuatii intre ele); 2)inmultirea unei ecuatii cu o constanta ( diferita de zero); 3)scarderea unei ecuatii din alta si inlocuirea celei de a doua cu rezultatul scaderei.
Metoda iteraţiei şi metoda Gauss-Seidel neliniară. Metoda iteraţiei reprezintă o extindere a metodei aproximaţiilor succesive folosite în cazul ecuaţiilor de o singură necunoscută şi metoda Jacobi pentru rezolvarea sistemelor de ecuaţii liniare. Acestă metodă permite rezolvarea sistemelor de ecuaţii neliniare de forma: x1=g1(x1,x2,...xn) x2=g1(x1,x2,...xn)
................... xn=g1(x1,x2,...xn) Metoda Newton. Una dintre cele mai răspîndite metode de rezolvare a sistemelor de ecuaţii neliniare este metoda lui Newton. Această metodă este o generalizare a metodei tangentelor, propusă de însuşi Newton ca o aplicaţie practică a noţiunii de derivată. Metoda lui Newton a devenit, de-a lungul anilor, foarte populară, datorită faptului că este cu convergenţă pătratică. Eficacitatea acestei metode s-a dovedit în special în problemele de optimizare de cea mai variată formă. Metoda lui Cholesky. Metoda lui Cholesky de rezolvare a sistemelor de ecuaţii liniare algebrice se mai numeşte metoda rădăcinii pătratice şi constă în descompunerea sistemului Ax=b în două sisteme triunghiulare. In aceasta metoda se presupune ca matricea A este o matrice simetrica si pozitiv definite.
l1 l12 . l1n l21 0 . l2n
l1 0 . 0 l12 l2 . 0
L 0 0 . l , LT l l . 0 3n 13 23 . . . . . . . . . . . . . . . . . . 0 0 . ln l1n l2n . ln
Matricea L se allege astfel, incit A=LTL. Aceasta descompunere a matricei A se numeste factorizarea Choleskly. Teorema:Daca matricea A este simetrica si pozitiva definite, atunci exista o unica matrice inferior triunghiulara LT cu elementele diagonale pozitive, astfel incit A=LT . Codul sursa: #include #include #include #include #define N 4 #include
clock_t start,stop; float A[4][4]={ 8.1,-0.9,0.6,0.8, -0.9,14.3,0.3,0.7, 0.6,0.3,7.9,-0.4, 0.8,0.7,-0.4,10.6 }; float B[4]={7.2,10.3,-11.9,9.2}; float nota (int w,int z,float h) { int t,t1,t2; if (w