24
NUMERIČKE METODE I MATEMATIČKO MODELIRANJE 7. PREDAVANJE

NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

  • Upload
    others

  • View
    3

  • Download
    1

Embed Size (px)

Citation preview

Page 1: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

NUMERIČKE METODE I

MATEMATIČKO MODELIRANJE

7. PREDAVANJE

Page 2: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

LINEARNA ALGEBRA U MATEMATIČKOM MODELIRANJU I NUMERIČKIM METODAMA

RJEŠAVANJE SUSTAVA LINEARNIH JEDNADŽBI

Page 3: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

l  algoritmi za rješavanje skupova linearnih jednadžbi zasnovani na Gaussovoj eliminaciji

l  dekompozicija matrice u produkt gornje i donje trokutne matrice, primjena u rješavanju linearnih jednadžbi

l  proračun inverzne matrice, određivanje determinante

l  Ilustrativni primjer problema koji zahtjeva rješavanje sustava linearnih jednadžbi: problem rubnih vrijednosti

SUSTAVI LINEARNIH JEDNADŽBI

RUBNI UVJETI

Page 4: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

l  druga derivacija se može aproksimirati sa

l  gdje je interval podijeljen na n podintervala, korak iznosi

l  funkcija se računa za vrijednosti , l  diferencijalni operator jednadžbe:

SUSTAVI LINEARNIH JEDNADŽBI

Page 5: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

SUSTAVI LINEARNIH JEDNADŽBI

l  početna diferencijalna jednadžba se može zapisati kao diskretizirana jednadžba sa aproksimiranim derivacijama

l  ovdje je

l  rubni uvjeti su

l  problem koji treba riješiti se može raspisati u matričnom obliku kao sustav linearnih jednadžbi

Page 6: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

SUSTAVI LINEARNIH JEDNADŽBI

l  odgovarajući vektori:

l  Dakle, treba riješiti sustav n linearnih jednadžbi

Page 7: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

GAUSSOVA ELIMINACIJA

l  treba riješiti skup linearnih jednadžbi uz pretpostavku da matrica A nije singularna i matrični elementi na dijagonali

l  kao primjer uzmimo matricu

l  Gaussova eliminacija polazi od primjene prve jednadžbe da se eliminira nepoznanica iz preostalih jednadžbi

l  zatim se pomoću druge jednadžbe eliminira nepoznanica itd…

Page 8: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

GAUSSOVA ELIMINACIJA

l  nakon n-1 eliminacija dobije se gornja trokutasta matrica

l  sustav jednadžbi se sada može riješiti rekurzivno, polazeći od , tzv. supstitucija unazad

Page 9: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

GAUSSOVA ELIMINACIJA

l  da bi se dobila trodijagonalna matrica, prva jednadžba množi se sa i onda oduzima od j-te jednadžbe,

Page 10: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

l  vektor sa desne strane jednadžbe:

GAUSSOVA ELIMINACIJA

l  općeniti izrazi:

Page 11: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

l  moguća greška zbog ograničene preciznosti u članovima tipa → potrebno je ukloniti male dijagonalne

elemente permutacijama redova i stupaca matrice

l  npr. u slučaju skupa linearnih jednadžbi

mali element na dijagonali se može ukloniti permutacijom:

GAUSSOVA ELIMINACIJA

Page 12: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

l  najbolja numerička preciznost rezultata može se dobiti permutiranjem redova i stupaca tako da numerički najveće vrijednosti u podmatrici koja još nije obrađena budu postavljene na dijagonalu

l  Gaussova eliminacija zahtjeva velik broj “floating-point” operacija (flop) :n x n matrica zahtjeva flop

l  ako procesor izvodi flop u sekundi (flops), za matricu n=10000 potrebno je 1000 sekundi

l  algoritam Gaussove eliminacije je rijetko korišten u proračunu determinante → češće u primjeni je tzv. LU dekompozicija

GAUSSOVA ELIMINACIJA

Page 13: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

LU DEKOMPOZICIJA MATRICE

l  L(“LOWER”)U(“UPPER”) dekompozicija, poznata i kao Crout ili Doolittle faktorizacija matrice

l  dekompozicija matrice A pomoću matrice B sa elementima ispod dijagonale (“Lower”) i matrice C koja ima dijagonalne elemente i elemente iznad dijagonale (“Upper”)

l  LU dekompozicija se koristi u nizu algoritama linearne algebre, kao i u rješavanju sustava linearnih jednadžbi

Page 14: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

l  Matrica A se može LU faktorizirati ako je njezina determinanta različita od 0

l  Ako postoji LU faktorizacija i matrica A nije singularna, onda je LU faktorizacija jedinstvena i determinanta matrice A je dana sa

LU DEKOMPOZICIJA MATRICE

l  Algoritam za izračun matrica B i C u primjeru 4x4 matrice: kreće se od prvog stupca A matrice:

Page 15: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

l  za drugi stupac A matrice:

LU DEKOMPOZICIJA MATRICE

l  kada se prelazi iz prvog na drugi stupac, više ne trebamo elemente, općenito svojstvo kroz čitav algoritam l  generalizirana procedura se može zapisati kao

Page 16: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

Sumarni algoritam za LU dekompoziciju po stupcima (j): l  1) izračunati prvi element l  2) izračunati elemente

l  3) izračunati dijagonalne elemente

l  4) izračunati elemente (dijagonalni elementi su 1)

LU DEKOMPOZICIJA MATRICE

Page 17: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

l  u slučaju , gdje je , , može se primjeniti i algoritam Cholesky faktorizacije

l  prijelomna točka kod LU dekompozicije je slučaj kada je blizu ili jednak nuli, što rezultira ozbiljnim problemom Npr. 2 x 2 matrica U ovom slučaju algoritam za LU dekompoziciju ne radi jer Matrica se može malo modificirati da se ukloni nula:

Page 18: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

l  za modificiranu matricu dobije se

l  B i C matrice dobivene LU dekompozicijom:

l  sada je LU dekompozicija stabilna, ali nije stabilna unazad jer zbog ograničenja preciznosti

LU DEKOMPOZICIJA MATRICE

Page 19: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

LU DEKOMPOZICIJA MATRICE

l  rješenje problema je u permutacijama redova i stupaca i LU dekompozicija se izvodi sa modificiranom matricom

Page 20: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

l  LU dekompozicija može se izvesti koristeći postojeću funkciju iz “Numerical Recipes in C”

l  tekst knjige na webu: www.nrbook.com

Potrebne funkcije nalaze se u lib.cpp i lib.h (web).

l  LU dekompozicija:

Matrice dobivene LU dekompozicijom su zapisane kompaktno (matrica C na dijagonali i iznad dijagonale, matrica B ispod dijagonale) u polje umjesto originalne matrice a.

LU DEKOMPOZICIJA MATRICE

Page 21: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

RJEŠAVANJE SUSTAVA LINEARNIH JEDNADŽBI

l  koristeći LU dekompoziciju, sustav linearnih jednadžbi se može jednostavno riješiti

l  zapis u matričnom obliku:

l  Primjenom LU dekompozicije,

l  jednadžba se može rješavati u dva koraka,

Page 22: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

l  u slučaju 4x4 matrice,

RJEŠAVANJE SUSTAVA LINEARNIH JEDNADŽBI

Page 23: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

RJEŠAVANJE SUSTAVA LINEARNIH JEDNADŽBI

l  sumarni pregled algoritma za rješavanje sustava jednadžbi: 1) Definirati matricu A i vektor w sa odgovarajućim dimenzijama 2) LU dekompozicija matrice → može se koristiti funkcija

3) Primjena LU dekomponirane matrice u rješavanju sustava jednadžbi sa ciljem određivanja nepoznanica x

→ može se koristiti funkcija Funkcija koristi LU dekomponiranu matricu a i vektor w, i vraća rješenje x u polju gdje je na ulazu bio pohranjen vektor w

Page 24: NUMERIČKE METODE I MATEMATIČKO MODELIRANJE · 2014-04-27 · matrice, primjena u rješavanju linearnih jednadžbi ! proračun inverzne matrice, ... Gaussova eliminacija polazi od

ZADATAK 7 l  Napišite program koji izvodi LU dekompoziciju proizvoljne

matrice A (dozvoljeno koristenje funkcija iz Num. Recipes).

l  1) Ispisati matricu A i matrice dobivene LU dekompozicijom i provjeriti na jednostavnom primjeru (npr. 3x3 matrica) da je dekompozicija dobro napravljena.

l  2) Koristeći LU dekompoziciju, izračunati determinantu matrice A, provjeriti rezultat na primjeru (npr. 3x3 matrica)

l  3) Primjeniti LU dekompoziciju u rješavanju sustava n linearnih jednadžbi sa n nepoznanica (dozvoljeno je korištenje funkcije lubksb iz Numerical Recipes). Treba provjeriti da dobiveno rješenje doista odgovara polaznim jednadžbama.