Aplicații ale algebrei liniare în C++

Proiect
7/10 (1 vot)
Conține 1 fișier: doc
Pagini : 14 în total
Cuvinte : 1868
Mărime: 90.45KB (arhivat)
Publicat de: Radu-Miron Neagu
Puncte necesare: 6
Profesor îndrumător / Prezentat Profesorului: conf.univ. Oancea Romana
Acest proiect are ca scop implementarea unui algoritm de rezolvare a sistemelor liniare prin metoda lui Gauss in limbajul de programare C++. A fost prezentat in cadrul UNIVERSITATII AUREL VLAICU ARAD.

Extras din proiect

1. Considerente generale

Pornim de la o matrice A pătratică, nesingulară şi b vector nenul.

Ideea metodei este de a elimina succesiv necunoscutele astfel încât matricea coeficienţilor A să fie adusă în formă superior triunghiulară.

O matrice este superior triunghiulară dacă , pentru i>j.

O matrice este inferior triunghiulară dacă , pentru i<j.

Pas 1.

Eliminarea necunoscutei din ecuaţiile de rang 2,3,...,n astfel încât prima coloană a matricei coeficienţilor A să fie adusă în formă superior triunghiulară.

Pas 2.

Eliminarea necunoscutei din ecuaţiile de rang 3,...,n astfel încât a doua coloană a matricei coeficienţilor A să fie adusă în formă superior triunghiulară, fără a afecta forma primei coloane a matricei A.

...

Pas k. ( )

Eliminarea nescunoscutei din ecuaţiile de rang p+1,...,n astfel încât matricea coeficienţilor A să fie adusă în formă superior triunghiulară, fără a afecta forma coloanelor 1,...,p-1.

Înainte de primul pas, sistemul are următoarea formă:

Pasul 1. Eliminăm necunoscuta din ecuaţiile de rang 2,3,...,n astfel încât să anulăm ( ), în felul următor.

Păstrăm prima ecuaţie, iar ecuaţiile i, le transformăm astfel:

sau , . Deci rezultă .

Pasul 2.

Eliminăm necunoscuta din ecuaţiile de rang 3,...,n astfel încât ( obţinut la pasul 1) să devină 0, pentru .

După pasul 1, sistemul devine:

Păstrăm primele două ecuaţii neschimbate şi se transformă ecuaţiile i, astfel:

Deci =0, .

Pasul p ( ).

Eliminăm necunoscuta din ecuaţiile de rang p+1,...,n astfel încât să aducem coloanele p în formă superior triunghiulară.

Păstrăm primele p ecuaţii şi transformăm ecuaţiile i, .

.

Algoritmul are n-1 paşi. Pentru a putea aplica acest algoritm, avem nevoie ca:

Aceste elemente se numesc pivoţi.

Pentru a evita împărţirea la 0 sau la numere foarte mici se introduce pivotarea parţială.

Pivotarea parţială înseamnă schimbarea ordinii ecuaţiilor sistemului astfel încât pivotul la pasul p să fie cel mai mare coeficient al necunoscutei .

Astfel:

Pasul 1.

Vom calcula întâi maximul dintre coeficienţii lui în modul.

Preview document

Aplicații ale algebrei liniare în C++ - Pagina 1
Aplicații ale algebrei liniare în C++ - Pagina 2
Aplicații ale algebrei liniare în C++ - Pagina 3
Aplicații ale algebrei liniare în C++ - Pagina 4
Aplicații ale algebrei liniare în C++ - Pagina 5
Aplicații ale algebrei liniare în C++ - Pagina 6
Aplicații ale algebrei liniare în C++ - Pagina 7
Aplicații ale algebrei liniare în C++ - Pagina 8
Aplicații ale algebrei liniare în C++ - Pagina 9
Aplicații ale algebrei liniare în C++ - Pagina 10
Aplicații ale algebrei liniare în C++ - Pagina 11
Aplicații ale algebrei liniare în C++ - Pagina 12
Aplicații ale algebrei liniare în C++ - Pagina 13
Aplicații ale algebrei liniare în C++ - Pagina 14

Conținut arhivă zip

  • Aplicatii ale Algebrei Liniare in C++.doc

Alții au mai descărcat și

Metode Numerice de Prelucrare și Baze de Date

ENUNŢUL PROBLEMEI Folosind datele experimentale din tabelul de mai jos: 1. Scrieţi tabelul diferenţelor divizate crescător (forward difference...

Grilă sisteme informaționale de gestiune - Access

Adăugarea de câmpuri la o tabelă se face în modul de vizualizare:...... Previzualizare inaintea imprimarii Aplicarea unei restrictii de...

Hackeri

Hackerii sunt pasionati ai informaticii, care, de obicei au ca scop „spargerea” anumitor coduri, baze de date, pagini web etc. Ei sunt considerati...

Baze de Date

3.Introducere in bd si sgbd-uri Definitie: Numim baza de date o colectie partajata de date aflata in interdependenta logica impreuna cu o...

Te-ar putea interesa și

Vectori Proprii și Valori Proprii

INTRODUCERE Termenul de matrice a fost introdus de matematicianul englez James Joseph Sylvester(1814-1897) în lucrarea “On New Class of Theorems”...

Algebră liniară numerică - aplicații ale POO în C++

~ Prefaţă ~ Programarea orientată pe obiecte este un concept întâlnit sub diverse denumiri, printre care: programare obiectuală, programare...

Curbura grupurilor pseudo-riemanniene

INTRODUCERE CURBURA GRUPURILOR PSEUDO-RIEMANNIENE este, in mare măsura, o tema inedita care reflecta proprietati geometrice ale grupurilor Lie....

Modelarea Geometrică și Proiectarea Asistată de Calculator

CAPITOLUL I Modelarea geometrică şi proiectarea asistată de calculator Una dintre activităţile cheie în orice proces de design de produs este de...

Algebră și Geometrie pentru Inginerie Economica

ALGEBRĂ LINIARĂ CAPITOLUL 1 SPAŢII VECTORIALE §1. Spaţii vectoriale Spaţiul vectorial este una din cele mai importante structuri matematice,...

Management

CAPITOLUL I BAZELE ORGANIZĂRII ŞI CONDUCERII Şcoli principale de management În principal, sunt identificate: 1. Şcoala tradiţionalistă,...

Statistică socială în drept

Încă din cele mai vechi timpuri s-au formulat idei şi concepţii despre populaţie, vizând aspecte precum: care este numărul optim al populaţiei şi...

Limbaje de Programare Inginerești

Obiectivele disciplinei Studiul acestei discipline face ca studentii sa se familarizeze cu notiunile, metodele si tehnicile specifice programarii...

Ai nevoie de altceva?