You are on page 1of 30

Szchenyi Istvn Egyetem

Informatika II. Szmtsi mdszerek

12. elads
Matlab 6.
(Lineris algebrai alkalmazsok)

Dr. Szrnyi Mikls,


Dr. Kalls Gbor
20142015
11

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Tartalom
Matematikai alapok
Transzformcis mtrixok
Swap mtrixok
Forgatmtrixok
Titkosts

Vektoralgebra
Vektorok skalris szorzata, hajlsszge
Vektorok vektorilis szorzata
Vektorok vegyes-szorzata, fggetlensge

Lineris egyenletrendszerek
ttekints
Alapeset
Szveges feladatok
Tlhatrozott rendszerek
sszefgg rendszerek
Idmrs

Normk, kondciszm
Sajtrtk, sajtvektor
2

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Matematikai alapok (lineris algebra)


Vektortr, bzis, lineris transzformcik

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Matematikai alapok (transzform. mtrixok)


Lineris transzformcik, transzformcis mtrixok* (forrs: Kiss Emil, ELTE)

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Transzformcis mtrixok
Adott egy nn-es transzformcis A mtrix, s egy megfelel (n1-es) x vektor
A transzformcis mtrix oszlopai a bzis egysgvektorok kpeit tartalmazzk (lsd: Swap)

Az x vektorra alkalmazzuk az A transzformcit.


Ekkor az eredmnyvektort y = A(x) = A x mdon szmolhatjuk.
Megj.: Egyszerre tbb vektorra is alkalmazhatjuk a transzformcit

Plda: Swap (csere) mtrix (eml.: gyak.; bra most: Excel; Mszorzat fggvnnyel)
Mit kapunk, ha a transzformcit mg egyszer elvgezzk?
Nzzk meg ugyanezt az SW13 = [0 0 1; 0 1 0; 1 0 0] s az SW23 = [1 0 0; 0 0 1; 0 1 0]
mtrixokkal is!

Az egysgmtrix is transzformcis mtrix


Mi a megvalstott mvelet?

Alkalmazs: Projektormtrix (korbbi ea.)

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Transzformcis mtrixok
Alkalmazs: Forgatmtrixok (2D, 3D; gyak. is)

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Transzformcis mtrixok
Alkalmazs: Titkosts
A (be)kdols (encoding) y = A x mod p mdon trtnik, ahol p alkalmas
prm, A pedig olyan specilis mtrix, amelynek inverze nmaga mod p
(visszakdolshoz, decoding)
Azaz A ngyzete az egysgmtrix

Kdoland karakterek: 32-tl 127-ig (95 db nyomtathat jel, az utols a DEL)


>> x = reshape(32:127, 32, 3)', c = char(x)
Legyen p = 97, kdolhat karakterek: 0:p-1 tartomnyban (+ 2 extra jel lehet)
J A mtrix: A = [71, 2; 2, 26]
Ellenrzs
>> E = mod(A*A, p)

Kdolhat: egy (vagy tbb) 21-es x vektor, pl.


>> x = 'TV', x', x = x'+0-32
Kdols (eredm.: '1U')
>> A*x, y = mod(A*x, p), char(y+32)
Visszakdols (eredm.: 'TV')
>> A*y, z = mod(A*y, p), char(z+32)
7

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Transzformcis mtrixok
Titkosts (folyt.)
Script, s futtatsa

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Vektoralgebra
Megj.: vals koordintj sor- s oszlopvektorokkal dolgozunk
Skalris szorzat
Euklideszi skalrszorzat (szorzatsszeg), ahol x s y azonos mret vektorok
(nem csak a geometriai vektorok terben!)
Megvalsts a Matlabban: dot(x, y) vagy sum(x.*y)
Plda
>> a = [3,4,0], b = [-4,3,0], dot(a, b) % merlegesek

Vektorilis szorzat
Vektorilis-szorzat, ahol a s b pontosan 3-elem vektorok, eredmny az S(a,b)
skra merleges vektor lesz
Megvalsts a Matlabban: cross(a, b)
Plda
>> a = [1 0 0], b = [0 1 0], cross(a, b)

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Vektoralgebra
Vegyesszorzat
Hrom trbeli vektor vegyesszorzata; a hrom vektor ltal kifesztett
paralelepipedon eljeles trfogata
Ha ez 0, akkor a vektorok sszefggk

Megvalsts a Matlabban:
dot(cross(a, b), c) vagy det([a; b; c]) ill. det([a, b, c])
Plda
>> a = rand(1, 3), b = rand(1, 3), c = rand(1, 3),
dot(cross(a, b), c), det([a; b; c])

Vektorok hajlsszge
Matlabban a subspace(x, y) paranccsal hatrozhat meg, az eredmny
a kt oszlopvektor szge radinban (magasabb dimenziban is!)
Sorvektorokra nem kapunk helyes eredmnyt

Plda
>> subspace(a', b'), subspace(a, b)
Hasznlhatjuk ehelyett az acos(dot(x, y)/(norm(x)*norm(y))) kifejezst,
ahol a norm(x) = sqrt(dot(x, x)) kifejezs az euklideszi norma, azaz az x
vektor hossza, ez sorvektorokra is mkdik
10

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Lineris egyenletrendszerek
ttekints
Gyakori feladat, sokszor elbukkan
Nagyon j Matlab tmogats, kivlan
illeszkedik eddigi tanulmnyainkhoz

Rvid felrs: A*x = b


n db ismeretlen, m db egyenlet
Egytthatmtrix, ismeretlenek vektora,
konstansvektor

Klasszikus osztlyozs
Ngyzetes rendszer
A megoldsok szma A-tl fgg
(Lehet 1, vgtelen sok vagy 0)

Alulhatrozott eset
Kevesebb egyenlet, mint ismeretlen
Vgtelen sok megolds

Tlhatrozott eset
Tbb egyenlet, mint ismeretlen
ltalban nincs megolds
Leggyakrabban minimlis A*x b hibavektort
keresnk norma fogalma (vektorokra,
mtrixokra)

11

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Lineris egyenletrendszerek
Alapeset
A fggetlen egyenletek (sorok/oszlopok)
szma megegyezik
az ismeretlenek szmval, azaz
det(A) ~= 0 vagy rank(A) == length(A)
Eml.: a megolds ekkor egyrtelm;
Excelbl mr tanultuk

Ekkor x = A\b vagy x = inv(A)*b vagy


x = pinv(A)*b
Plda
>> A = [3 4 1; -1 2 5; 7 -2 3],
b = [18 8 32]', rang = rank(A),
x = A\b, A*x == b
Az A\b megoldsi mdszer gyorsabb
Lsd: gyakorlat
Itt Gauss-eliminci hajtdik vgre
rszleges felem-kivlasztssal, *st ha A
szimmetrikus s pozitv definit, akkor
a Cholesky-felbonts kerl alkalmazsra
(lsd mg: sg)
12

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Lineris egyenletrendszerek
Alapeset (folyt.)
Tipikus alkalmazs: az egytthatmtrixot kls fjlbl olvassuk be, gyakran
oly mdon, hogy az A mtrix s b vektor kzs tblzatban adott; ennek
mrete: n(n + 1)
Ekkor a tnyleges megolds eltt sztdarabols is szksges, a mr ismert mdon

Lehetsg tbb egyenletrendszer kzs megoldsra:


Ha az A eh.mtrix egyenletrendszert tbb klnbz b vektor esetn akarjuk
megoldani, akkor ezeket egy B mtrixba foglalhatjuk:
AX = B X = A\B,
ahol a megoldsokat
tartalmaz X mtrixnak
ugyanannyi oszlopvektora
van, mint a B-nek
Megj.: a fenti esetek
persze gy is
alkalmazhatk, hogy
nem egyrtelm a mo.
(lsd lent)

13

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Lineris egyenletrendszerek
Alapeset szveges feladatok
Eml.: Excel szmtsok rsz,
keversi feladatok
A megolds Matlabbal is lnyegben
ugyangy trtnik
Infk kihmozsa, egyenletrendszer
megadsa, megolds

14

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Lineris egyenletrendszerek
Alapeset a megolds rszletei
A Gauss-elimincirl ltalban
Plda: a megoldand rendszer
A = [10 -7 0; -3 2 6; 5 -1 5], b = [7; 4; 6]

1. lps 0,3, ill. 0,5 els egyenl. +/2.a) lps egyenletcsere (pivotls)
2.b) lps 0,04 msodik egyenl. +
3. lps ismeretlenek meghatrozsa
4. lps ellenrzs
Bevezethetk
Szorzk (L), vgs egytthatk (U), pivotls v. permutcik (P)

Itt rvnyes
St, ha P = E, akkor x = U \ ( L \ b)

Ellenrzs
>> [L, U, P] = lu(A), L*U
% Az lu eredetileg a LAPACK csomag rsze (lsd sg)
15

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Lineris egyenletrendszerek
A megolds rszletei *numerikus hibk hatsa
Pldnkban: nincs pivotls, ill. rosszul csinljuk
Tfh. olyan gpen dolgozunk, amely 5 decimlis jegy pontosan szmol
Az eredeti s az j rendszer
A megolds mindkt esetben x = [0; -1; 1]

1. lps 0,3, ill. 0,5 els egyenl. +


2. lps 2500 msodik egyenl. +
3. lps ismeretlenek meghatrozsa
Kerektsi hibk
6,0012500 = 1,50025104, kerektve: 1,5002104, + 2,5 helyett 2
gy az egyenletnk
Ebbl (x3)
Visszahelyettests
Ebbl (x2)
Vgl az els egyenletbl
Ebbl (x1)

Vgl a [0,35; 1,5; 0,99993] rossz megoldst kapjuk

16

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Lineris egyenletrendszerek
Szingulris esetek
Ilyenkor tipikusan kevesebb fggetlen egyenletnk van, mint ismeretlen, azaz
det(A) == 0 s rank(A) < length(A)
Kt eset klnbztethet meg
A b vektorral bvtett A mtrix rangja nagyobb, mint az A mtrix rangja, azaz b
nincs az A mtrix oszlopvektorai ltal meghatrozott lineris trben. Ekkor a
szingulris egytthat-mtrix egyenletrdsz. ellentmondsos, s nincs megolds.
Az A, ill. [A b] mtrixok rangja megegyezik, de kevesebb az ismeretlenek
szmnl. Ilyenkor az egyenletrendszer sszefgg, s ennek vgtelen sok
megoldsa van.
Azaz: egy vagy tbb ismeretlen szabadon megvlaszthat

Mit lehet tenni? (megoldsi lehetsgek)


Pontos megoldst nem kaphatunk, de treksznk arra, hogy || Ax b || a lehet
legkzelebb legyen 0-hoz.
Megvalsts Matlabban: x = pinv(A)*b vagy x = A\b
A vgtelen sok megolds kzl egy specilisat meghatrozunk. Azt a mo.vektort
szoktuk ilyenkor megadni, amelyik a legrvidebb vektorhossz.
Megvalsts Matlabban: x = pinv(A)*b (x = A\b is ad mo-t, de nem a legjobbat)

17

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Lineris egyenletrendszerek
Szingulris esetek (folyt.)
Az esetek sztvlasztsa technikailag:
rank(A), rank([A b])
Plda
>> A = [3 4 1; -1 2 5; 2 6 6], b = [18 8 8]', rank(A), rank([A b])

Msik lehetsg: az eltolt rendszer vizsglata; pl. 33-as eset:


rank([A(:,2:3) b]) vagy det([A(:,2:3) b])
sszefgg esetben az eltolt det == 0,
ellentmondsos esetben nem
Ez a technika determinns vizsglattal Excelben
is jl alkalmazhat, s persze nemcsak az els
oszlop elhagysval

Esetsztvlaszts plda s megolds Excelben

18

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Lineris egyenletrendszerek
Szingulris esetek (folyt.)
A megolds vizsglata az sszefgg esetben
>> A = [3 4 1; -1 2 5; 2 6 6], b = [18 8 26]', rank(A),
rank([A b])
>> w = A\b, A*w, norm(w)
% balosztval van eredmny, de figyelmeztetssel (warning)
>> y = pinv(A)*b, A*y, y_norma = norm(y)
% a kvziinverzzel kapott megolds (a leg)rvidebb
vektorhossz, nincs warning
A fggetlen egyenletek szmnak lecskkentse a rangig
>> A(3,:)=[], b(3)=[], rank(A), rank([A b])
% trljk az utols egyenletet
>> z = A\b, A*z, z_norma = norm(z)
% a baloszt is ad megoldst, a normja nem minimlis
>> x = pinv(A)*b, A*x, x_norma = norm(x)
% a kvziinverzes megolds a fent szmolttal egyezik,
normja minimlis
>> v = A'/(A*A')*b
% ekkor a kvziinverzes megolds gy is szmthat

19

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Lineris egyenletrendszerek
Tlhatrozott eset
(Logikailag tekinthetjk az ellentmondsos esethez tartoznak)
Ilyenkor tipikusan tbb egyenletnk van, mint ismeretlen
(Pl. polinomilis interpolci helyett alacsonyabb fok regresszit krnk)

Az A mtrix rangja megegyezik az ismeretlenek szmval, a kibvtett [A b]


mtrix rangja pedig eggyel nagyobb
Ekkor is azt a megoldst keressk, amelyre az || Ax b || normban mrt
eltrs minimlis
Megvalsts Matlabban: x = pinv(A)*b vagy x = A\b
Ekkor valjban a Moore-Penrose kvziinverz (pszeudoinverz) kiszmtsa trtnik
rdekes, hogy ekkor a baloszt a kvziinverzet adja!

Plda
>> A = [3 4
>> rank(A),
>> x = A\b,
% az utols
>> [A*x b],

1; -1 2 5; 7 -2 3; 3 5 1], b = [18 8 32 6]'


rank([A b])
pinv(A)*b, (A'*A)\A'*b
a pszeudoinverz (lsd korbban)
tavolsag = norm(A*x-b)
20

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Lineris egyenletrendszerek
Idmrsi plda
Tblzat, bra
Tesztelshez:
Tplitz-mtrixok
Idmrs az ismert
mdon
Adatok most Excelbl
(vessz )

Kulturlt (szp) bra


Klnbz sznek
Klnbz vonalstlusok (!)
Az idadatok osztva n^2-tel
Fl-logaritmikus sklzs
Jelmagyarzat
Tengelyfeliratok

21

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Normk, kondciszm
A gyakorlatban a lineris egyenletrendszer mtrixa s a jobb oldali
konstansvektor ltalban nem pontosan ismert
Mrsi (esetleg: leolvassi) hibk, kerektsi pontatlansgok stb.

Fontos krds: a megolds rzkenysgnek vizsglata


Mennyire befolysolja a megoldst, ha (kisebb mrtkben) megvltoznak
A s b elemei?

Egyszer megfontols: az rzkenysg ersen fgg a konkrt


rendszertl (!)
Ha A szingulris, akkor egyes b vektorokra nincs megolds, msokra
vgtelen sok lesz
Ilyenkor kis vltozs is nagyon jelentsen mdostja az eredmnyt

Msrszt, ha A kzel egysgmtrix, akkor b s x is kzel ugyanaz


Ilyenkor kis vltozsok az eredmnyben is csak kis vltozst okoznak

A pivotls hatsn is rdemes elgondolkodni

Rajzos plda: kis vltozsra nem rzkeny (jl kondicionlt) s kis


vltozsra nagyon rzkeny (rosszul kondicionlt) lineris
egyenletrendszer ktdimenziban
22

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Normk, kondciszm
Egzakt mrszm az rzkenysgre: vektor- s mtrixnorma (kondciszm)
Definci: a norma egy
lekpezs, amely minden vektorra
(mtrixra), ill. vektorprra (mtrixprra) teljesti a kvetkez tulajdonsgokat
Definit(sg): nemnegatv, s csak akkor 0, ha a
vektor nullvektor
Homogenits: skalrszoros normja egyenl
a vektor normjval, a skalr abszolt rtkvel
Hromszg-egyenltlensg

Ezt a defincit a vektorok, ill. mtrixok vektorterben tbbfle mdon lehet


teljesteni
A bevezetett tbbfle norma azonban konvergens vektor- ill. mtrixsorozatokra
ekvivalens (0-hoz tart eltrssorozat)

Leggyakrabban hasznlt vektor- ill. mtrixnormk (itt: vektorokra nzzk)


1-es norma (Manhattan-norma)
2-es norma (euklideszi tvolsg)
Hasonlan: p-es (p-edik) norma

Vgtelen norma (Csebisev-norma)

Normk a Matlabban
>> x = (1:4)/5, norm1 = norm(x,1)
>> norm2 = norm(x), norminf = norm(x,inf)
23

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Normk, kondciszm
Ha egy x vektort megszorzunk egy A mtrixszal, akkor az j Ax vektor normja nagyon
eltrhet x-tl. Ez a vltozs mutatja azt az rzkenysget, amit keresnk
A max s min itt minden x 0 vektorra ellltand
Ha A szingulris, akkor m = 0

Az M/m hnyadost nevezzk A kondciszmnak


(szemlletes jelents: kb. ennyiszeres hibt okozhat a zavar)
A pontos rtk (persze) fgg a hasznlt vektornormtl, de elssorban a nagysgrend fontos

Mivel M m, ezrt nyilvnval, hogy (A) 1


Specilis mtrixok kondciszma
(E) = 1, (cA) = (A)
Diagonlis mtrixokra: a |max| s |min| elemek hnyadosa

A kondciszm mtrixnormval is bevezethet


Ekkor
Azaz

A Matlab beptett fggvnyei a szmols elvgzsre


cond(A) == cond(A, 2)
cond(A, 1), cond(A, inf), rcond(A) (becsls 1/cond(A, 1)-re)

Plda
>> A=[4 5 6; 5 6 8; 1 7 7], norm(A)*norm(inv(A)), cond(A)
>> 1/(norm(A,1)*norm(inv(A),1)), rcond(A)

24

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Kondciszm
Eml.: A Hilbert-mtrixok gyengn
kondicionltak (nagy cond rtkek)
Hilbert-mtrixok sorozatt vizsgljuk
(2-tl 20-ig)
12 felett pontatlan az eredmny

25

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Sajtrtk, sajtvektor
Egy konstanst s egy x 0 vektort az A ngyzetes mtrixhoz tartoz
sajtrtknek (eigenvalue) s sajtvektornak (eigenvector) nevezzk, ha
kielgtik az A x = x egyenletet
(Ebben az esetben A csak nyjt)
Pontosan n db sajtrtk van, s mindegyikhez legalbb egy sajtvektor tartozik

*Egy konstanst s az u, v 0 vektort az A ngyzetes mtrixhoz tartoz


szingulris rtknek s szingulris vektoroknak neveznk, ha kielgtik
az
s
egyenleteket
Itt A' a szoksos konjuglt-transzponlt

Megvalsts Matlabban: eig (sajtrtk), ill. svd (szing. rtk) parancs


*A kondciszm felrhat a legnagyobb s a legkisebb szingulris rtk
hnyadosaknt is, s a szingulris rtkek pont A'*A sajtrtkei
Plda

>> cond(A)
>> sqrt(max(abs(eig(A'*A))))/sqrt(min(abs(eig(A'*A))))
>> max(svd(A))/min(svd(A))
A sajtrtk/sajtvektor sok gyakorlati mrnki feladat megoldsnl fontos
szerepet jtszik
Pl.: hd terhelsprbja, megnylsok alapjn rezonancia-frekvencik szmtsa
26

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Sajtrtk, sajtvektor
Egy A ngyzetes mtrix sajtrtkeit a karakterisztikus polinomjnak a
zrushelyei adjk
Ezek a det(A E) = 0 megoldsval kaphatk meg
A sajtrtk-egyenlet: (A E)x = 0, x 0

Komplex rtkeket is kaphatunk (vals szimmetrikus esetben nem)

A Matlabban a megoldsra egyszeren a poly, ill. a roots parancs is


hasznlhat
A poly(A) hvs egy sorvektort eredmnyez, elemei a karakterisztikus polinom
egytthati
A roots hvs a gykket szolgltatja

Plda
>> A = [4 5 6; 5 6 8; 1 7 7], a = poly(A)
>> lambda = roots(a), poly(lambda)

A megoldsra beptett kincstri fggvny az eig


Az [U Lambda] = eig(A) hvsnl az U mtrix oszlopvektorai az 1-re normlt
sajtvektorokat adjk, a Lambda mtrix ftlbeli elemei pedig a
sajtrtkeket
Plda
>> [U Lambda] = eig(A)
>> A*U, U*Lambda
>> U*Lambda*inv(U) % A-t kapjuk (sajtrtk-felbonts)
% Nem szingulris szimmetrikus mtrixra U*Lambda*U' is A-t adja
27

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Sajtrtk, sajtvektor
Sajtrtk-felbonts (eigenvalue decomposition)
Legyenek 1, 2, , n az A mtrix sajtrtkei, legyenek x1, x2, , xn hozzjuk
tartoz sajtvektorok
Helyezzk el a sajtrtkeket az adott sorrendben egy mtrix ftljban, a
sajtvektorokat pedig egy X mtrixban (a j-edik oszlopban legyen xj)
Ekkor AX = X
Ha a sajtvektorok fggetlen rendszert alkotnak (ez nem mindig igaz), akkor ltezik
X1, azaz A = XX1
Ha a sajtrtk-felbonts ltezik, akkor A sok tulajdonsga segtsgvel
vizsglhat, pl. An = XnX1 teljesl

*Szingulris felbonts (singular value decomposition, SVD)


Mint az elbb, rjuk mtrixokba a szingulris rtkeket ( csak a ftlban vannak
nem 0 elemek), s a megfelel szingulris vektorokat (U s V)
Ekkor AV = U s A'U = V '
Itt U s V teljesti: U'U = E, V'V = E (ortogonlisak)
Egy mtrix ortogonlis, ha az inverze megegyezik a transzponltjval (lsd: linalg. f.)

Ebbl A = UV'
A szingulris felbonts nemcsak ngyzetes A mtrixokra rtelmezhet

Megvalsts a Matlabban a mr ismert eig s svd parancsokkal


28

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Sajtrtk, sajtvektor
Plda (kis ngyzetes mtrixra)
Legyen A = gallery(3)
Ekkor det(A E) = 3 62 + 11 6 =
= ( 1)( 2)( 3)
gy teht a sajtrtkek: 1, 2, 3
>> A = gallery(3)
>> a = poly(A), lambda = roots(a) % karakt. polinommal
>> B = sym(A), syms l, det(B-l*eye(3)) % szimbolikusan
Sajtvektorok
>> [U L] = eig(A)
U mdosthat gy, hogy (1,1) s (3,2) eleme
1 legyen, (3,3) eleme 9 legyen
gy egsz koordintj sajtvektorok, det(U) = 1

Ekkor U inverze is egsz elemeket tartalmaz,


s A = ULU1
>> inv(U), U*L*inv(U)
Szingulris felbonts
>> [X, S, V] = svd(A)
>> X*S*V' % A szingulris rtkek kztt nagy a klnbsg!
29

Informatika II. Szmtsi mdszerek

Szchenyi Istvn Egyetem

Sajtrtk, sajtvektor
*rzkenysgi elemzs
A sajtrtkek rzkenysge a sajtvektor
mtrix kondciszmval becslhet
Plda 1.
>> A = gallery(3)
>> [U L] = eig(A), cond(U)
% Itt mg pontos vlaszt kapunk
Plda 2.
>> A = gallery(5)
>> B = sym(A), det(B-lambda*eye(5))
% Ebbl lambda_i = 0, pontos szimbolikus eredmny
>> [U L] = eig(A)
% Numerikus hibval terhelt eredmny
>> cond(U) % gyengn kondicionlt
>> e = eig(A)
>> plot(real(e), imag(e), 'r*', 0, 0, 'ko')
>> axis(0.1*[-1 1 -1 1]), axis square
% az tszg alakzat hiba
30

You might also like