Post on 06-Feb-2018
Algebra si Geometrie
Seminar 4 si 5
Octombrie 2017
ii
Matematica este muzica ratiunii .
James Joseph Sylvester
2Aplicatii liniare
Grafica vectoriala
In grafica pe calculator, grafica vectoriala este un procedeu prin care imaginilesunt construite cu ajutorul descrierilor matematice prin care se determina pozi-tia, lungimea si direct, ia liniilor folosite in desen. Imaginile vectoriale sunt com-plementare imaginilor bitmap, din grafica raster, n care imaginile sunt reprezen-tate ca un tablou de pixeli.
Astfel de tehnici, in care un obiect este reprezentat prin conturul sau, eraufolosite in programarea jocurilor video in anii de la inceputurile fenomenului.Putem sa descriem tot felul de miscari si deformari ale obiectelor cu ajutorul
1
https://en.wikipedia.org/wiki/Vector_graphics
unor transformari realizate de catre matrice. In cele ce urmeaza prezentam doarcateva situatii, extrem de simple, care au survenit in programarea jocurilor 2,pentru cele 3 miscarea fiind si mai complexa.
Sa reprezentam o nava spa-tiala printr-un triunghi cu varfurile(0, 0), (2, 0) si (1, 3). Putem sa memo-ram aceste coordonate sub forma unei
matrice
0 2 10 0 3
, presupunand si oordine in care varfurile sunt conectate.
Putem sa lucram cu aceasta matrice dar este mult mai elegant sa o rotunjimla o matrice 3 3 prin adaugarea unei linii de 1-uri:
=
0 2 1
0 0 3
1 1 1
Translatia printr-un vector (, ) este acum realizata cu ajutorul unei matrice data mai jos:
=
1 0
0 1
0 0 1
0 2 1
0 0 3
1 1 1
= 2 + 1 +
3 +
1 1 1
De exmplu, pentru a deplasa nava
in directia sus va trebui sa facemo translatie de vector (0, 2) si astfelobtinem noile coordonate, continute inmatricea:
0 2 + 0 1 + 0
2 2 3 + 2
1 1 1
Acestea sunt (0, 2), (2, 2) si (1, 5) si dau noua imagine a navei. Daca dorimsa rotim nava cu un unghi in sensul opus acelor de ceasornic, rotatie facuta injurul originii reperului cartezian, atunci matricea care realizeaza aceasta trans-formare este:
=
cos sin 0
sin cos 0
0 0 1
2
De exemplu, pentru o rotatie de = 90 avem:0 1 0
1 0 0
0 0 1
0 2 1
0 0 3
1 1 1
=
0 0 3
0 2 1
1 1 1
si obtinem:
dar situatia nu arata prea bine iar daca deplasam nava cu doua unitati este simai nesatisfacatoare:
O rotatie mult mai realista se realizeaza in jurul centrului navei, pe care il fixamin punctul (1, 1.5), daca nava e in pozitia de la inceput. Pentru a realizaaceasta rotatie trebuie sa translatam acest centru in originea reperului, apoi sarealizam rotatia de unghi = 90 in jurului lui (0, 0), apoi sa translatam totulinapoi. Aceasta transformare va fi:
1 90
unde este translatia de vector (1,1.5) de care avem nevoie pentru a duce in origine iar 90 este rotatia necesara.
1 este evident translatia din origineinapoi in , deci de vector (1, 1.5).
190 =
1 0 1
0 1 1.5
0 0 1
0 1 0
1 0 0
0 0 1
1 0 1
0 1 1.5
0 0 1
=
0 1 2.5
1 0 0.5
0 0 1
Obtinem:
1 90 =
2.5 2.5 0.5
0.5 2.5 1.5
1 1 1
Grafic situatia arata in felul urmator:
3
Prin acelasi procedeu daca nava se deplaseaza doua unitati in sus obtinem:
In zilele noastre acest domeniu al graficii digitale a atins culmi nebanuitedar in anii 80 modelarea matematica prezentata anterior reflecta destul de binerealitatea. Aveti mai jos imagini din jocurile video populare in acei ani, jucatepe celebra consola Atari:
4
https://en.wikipedia.org/wiki/Atari_2600
Transformarea Warhol
Vom memora culoarea fiecarui pixel a unei imagini intr-un vector =
unde (, , ) reprezinta codul RGB al culorii pixelului. Folosind o multiplicarecu o matrice putem sa recoloram intreaga imagine aplicand fiecarui pixeltransformarea . De exemplu pentru:
=
13
13
13
13
13
13
13
13
13
pixelul de la () care avea culoarea =
(25 77 51
)devine cel de la () avand
culoarea(
51 51 51)
:
Atunci cand aplicam aceasta transformare unei imagini intregi vom obtine vari-anta in gri a acesteia:
Unul dintre cei mai cunoscuti reprezentanti ai curentului Pop art americaneste Andy Warhol. Acesta folosea astfel de tehnici pentru a transforma imagini.Mai precis folosind matricea:
=
0 1 0
0 0 1
1 0 0
imaginea () de jos se transforma in cea de la ():
5
https://en.wikipedia.org/wiki/Pop_arthttps://en.wikipedia.org/wiki/Andy_Warhol
Atunci cand realizam transformari ale unor obiecte (vectori) ne dorim saexiste o transformare inversa. Adica aplicata obiectului transformat acesta sarevina la forma initiala. Astfel de transformari se numesc bijective.
In cazul imaginii clown-ului nu putem sa revenim de la varianta in gri la vari-anta colorata printr-o transformare de tipul , dar pentru imaginea maimuteise poate reconstrui imaginea initiala aplicand transformarea data de:
=
0 0 1
1 0 0
0 1 0
imaginii ().
Plecand de la prototipul prezentat anterior, transformarea : R3 R3,
=
, 3(R),vom incepe sa studiem functii definite intre doua spatii vectoriale care pastreazaproprietatea de a avea toate informatiile codificate intr-o matrice: aplicatiileliniare.
6
Notiuni teoretice:
daca = {1, 2, . . . , } si = {1, 2, . . . , } sunt baze in(,+, ,K), respectiv (,+, ,K) iar:
(1) = 111 + 21
2 + . . . + 1
(2) = 121 + 22
2 + . . . + 2
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
() = 11 + 2
2 + . . . +
se numeste matricea aplicatiei liniare : in bazele si matricea:
[ ] =
11 12 . . . 1
21 22 . . . 2...
... . . ....
1 2 . . .
are loc identitatea:
[()] = [ ] []
Comportarea unui operator liniar la schimbarea bazei:Daca 2 este o alta baza in iar
2 alta baza din atunci are loc relatia:
[ ]22 = 12
[ ] 2
un operator liniar bijectiv : 1 2 se numeste izomorfism si spunemca 1 si 2 sunt izomorfe.
daca 1 = 2 spunem ca este automorfismFie aplicatia liniara : 1 2. Se numeste nucleul aplicatiei liniare
multimea:Ker(f) = { 1 : () = 2}
se numeste imaginea aplicatiei liniare multimea:
Im(f) = { 2 : 1, () = }
se numeste rang al aplicatiei liniare dimensiunea imaginii sale:
rang(f) = dim(Im)
se numeste defect al aplicatiei liniare dimensiunea nucleului sau:
def(f) = dim(Kerf)
7
Teorema: Daca 1 si 2 sunt spatii vectoriale finit dimensionale atunci pentruun operator liniar : 1 2 are loc identitatea:
rang(f) + def(f) = dim1
In plus: este surjectiv rang(f) = dim2 dim1
este injectiv Ker(f) = {0}
este bijectiv rang(f) = dim2 = dim1iar pentru 1 = 2:
este surjectiv este injectiv
Probleme rezolvate
Problema 1. Fie : IR1[] IR3, aplicatia definita prin:
( + ) = (, , + )
iar:
= {21,+1} IR1[] si = {(1, 1, 1), (1, 1, 0), (1, 0, 0)} IR3
sunt doua baze.Sa se arata ce este o aplicatie liniara si sa se determine [ ].
Solutie: Pentru a arata ca este liniara trebuie sa verificam daca suntindeplinite proprietatile definitorii ale acestora:
transforma sumele vectoriale in sume vectoriale
( + ) = () + (), , ,
scalarii ies in afara
() = (), , ,
Tinand cont de spatiul vectorial pe care actioneaza , fie = + si = + :
8
( + ) = ( + + + ) =
(( + ) + +
)prin inlocuire
= ( + , + , + + + ) prin definitia lui
Daca evaluam expresia:
() + () = ( + ) + ( + ) = (, , + ) + (, , + ) definitia lui
= ( + , + , + + + ) definitia adunarii vectoriale
observam ca obtinem acelasi vector ca si rezultat, deci are loc prima identitate.Pentru a doua se verifica usor:
() =
(( + )
)= ( + )
= (, , + ) definitia
si
() = ( + ) = (, , + )
= (, , + ) definitia scalarii vectoriale
deci ce era de demonstrat. In concluzie este o aplicatie liniara.Folosind regula de constructie a [ ] e nevoie de relatiile:
(2 1) = 1(1, 1, 1) + 2(1, 1, 0) + 3(1, 0, 0)
( + 1) = 4(1, 1, 1) + 5(1, 1, 0) + 6(1, 0, 0)
dar pe de alta parte:
(21) = (2,1, 21) iar ( + 1) = (1, 1,1 + 1)
Se rezolva sistemele de ecuatii, atasate celor doua identitati de mai sus, pentrua completa coeficientii 1, 2, 3, 4, 5, 6 in:
[ ] =
1 4
2 6
3 6
Problema 2. Fie [0, 2] si : IR2 IR2 functia definita prin:
(, ) = ( cos sin , sin + cos ), (, ) IR2.
a) Aratati ca este o aplicatie liniara si aflati matricea asociata acestuioperator.b) Determinati nucleul si imaginea sa.c) Aratati ca este un automorfism al spatiului vectorial IR
2.
9
Solutie: a) se arata ca
( + ) = () + ()
unde = (, ) si = (, )b) se subintelege ca e vorba de matricea asociata relativ la bazele canonice
[] deci avem nevoie de
(1, 0) = (cos , sin ) = cos (1, 0) + sin (0, 1)
(0, 1) = ( sin , cos ) = sin (1, 0) + cos (0, 1)
deci
[] =
cos sin sin cos
Determinam acum nucleul si imaginea acestei aplicatii liniare:
:= {(, ) IR2 : (, ) = (0, 0)}
se rezolva sistemul rezultat:{ cos sin = 0 sin + cos = 0
si se obtine = {(0, 0)}
deci este injectiva
= {(, ) IR2 : exista (, ) IR2 astfel incat (, ) = (, )}