2 Vezba - Matrice I Operacije

You might also like

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 14

2.

VEBA - MATRICE I OPERACIJE


2.1. MATRICE I VEKTORI
Ve smo naglasili, da su u MATLAB-u, promenljive polja brojeva, koje
mogu da se tumae kao matrice u uobiajenom smislu.

Matrica je polje brojeva koje se definie sa dva indeksa mxn, gde prvi indeks m
oznaava broj vrsta, a drugi n broj kolona. Elementi se uglavnom unose po vrstama, a
zagrade [ , ] ograniavaju listu elemenata. U okviru liste, elementi se razdvajaju
zarezom ili razmakom. Taster Enter ili ; se koriste za odvajanje vrsta matrice.
PRIMER 1:
1

Uneti matricu A 6
7

2
8

4
5 .
2

>> A=[1 -2 4; -6 8 5; 7 -4 2]
A=
1 -2 4
-6 8 5
7 -4 2
Druga mogunost upisa je da se razmak izmeu elemenata zameni zarezom.
>> A=[1, -2, 4; -6, 8, 5; 7, -4, 2]
A=
1 -2 4
-6 8 5
7 -4 2
Vektori su matrice vrste ili kolone i unose se na isti nain.
Ako su vrednosti elemenata ekvidistantne (sa istim korakom) koristi se simbol : .
PRIMER 2:
Uneti vektor x=(1, 2, ... , 10).
>> x=1:10; x
x=
1 2 3 4

10

Naredba length izraunava duinu vektora.


>> length(x)
ans =
10

Ako elimo proizvoljan korak, a ne 1, kao u predhodnom primeru, koristimo naredbu


h=a:k:b, gde su a i b poetna i krajnja vrednost, a k je korak.
Kod matrica sa kompleksnim elementima moemo da koristimo dva naina unoenja
podataka, tako to posebno unosimo realni i imaginarni deo ili broj kao celinu.
PRIMER 3:
1 5i

2 6i

Uneti matricu Z
, tako to emo posebno unositi realne, a posebno
3 7i 4 8i
imaginarne delove kompleksnih brojeva.
>> a=[-1, 2; 3, 4] ; b=[5, -6; 7, 8] ; Z=a+b*i
Z=
-1.0000 + 5.0000i 2.0000 - 6.0000i
3.0000 + 7.0000i 4.0000 + 8.0000i
PRIMER 4:
Uneti matricu Z iz prethodnog primera tako to elemente odmah unosimo kao
kompleksne brojeve
>> Z=[-1+5*i , 2-6*i ; 3+7*i , 4+8*i]
Z=
-1.0000 + 5.0000i 2.0000 - 6.0000i
3.0000 + 7.0000i 4.0000 + 8.0000i

Element matrice A koji se nalazi u


j-te kolone moe se dobiti primenom naredbe A(i,j).

preseku

i-te

vrste

PRIMER 5:
1
2
A

Iz matrice

2
3
5

1
6

izdvojiti element u preseku druge vrste i tree

kolone.
>> A=[1 2 3 ; 2 -3 1 ; -4 -5 -6] ;
>> A(2 , 3)
ans =
1
Ako elimo da izdvojimo vrstu koristimo komandu A(k,:) ili kolonu komandu A(:,k), gde k
predstavlja traenu vrstu, odnosno kolonu.
Dimenzije matrice odreuju se naredbama size(A) ili [m,n]=size(A).

PRIMER 6:
Odrediti dimenzije date matrice A, koristei naredbu size.
>> size(A)
ans =
3 3

PRIMER 7:
Odrediti dimenzije matrice A koristei naredbu [m,n]=size(A).
>> [m, n]=size(A)
m=
3
n=
3

2.2. MATRICE SPECIJALNIH STRUKTURA


Naredba eye definie jedininu matricu .
Naredba

Opis

eye(n)

Jedinina matrica dimenzija nxn

eye(m,n)

Jedinina matrica dimenzija mxn

eye(size(A))

Jedinina matrica dimenzija date matrice A

PRIMER 7:
Formirati matricu sa dve vrste i tri kolone iji su elementi na glavnoj dijagonali
jednaki 1, a svi ostali elementi su jednaki 0.
>> X=eye(2,3)
X=
1 0 0
0 1 0
PRIMER 8:
Odrediti jedininu matricu istih dimenzije kao data matrice A .
>> X=eye(size(A))
X=
1 0 0
0 1 0
0 0 1
Naredba ones definie matricu iji su svi elementi jedinice
Naredba
ones(n)
ones(m,n)
ones(size(A))

Opis

Matrica dimenzije nxn iji su svi elementi


jedinice
Matrica dimenzije mxn iji su svi elementi
jedinice
Matrica dimenzije date matrice A iji su
svi elementi jedinice

PRIMER 9:
Formirati kvadratnu matricu reda 2 iji su svi elementi jednaki 1.

>> X=ones(2)
X=
1 1
1 1
Naredba zeros definie matricu iji su svi elementi nule
Naredba
zeros(n)
zeros(m,n)
zeros(size(A))

Opis

Matrica dimenzije nxn iji su svi


elementi nule
Matrica dimenzije mxn iji su svi
elementi nule
Matrica dimenzija date matrice A iji su
svi elementi nule

PRIMER 10:
Formirati matricu sa dve vrste i tri kolone iji su svi elementi jednaki 0.
>> X=zeros(2,3)
X=
0 0 0
0 0 0
Naredba magic(n) definie matricu sa celobrojnim elementima izmeu 1 i n2,
dimenzija nxn, sa osobinom da je zbir elemenata po vrstama i kolonama konstantan
(arobni kvadrat).
PRIMER 11:
Formirati matricu treeg reda koristei naredbu magic.
>> X3=magic(3)
X3=

8
3
4

1
5
9

6
7
2

Naredbom diag(A) dobijamo dijagonalnu matricu date matrice A.

PRIMER 12:
Uoiti osobine matrica dobijenih korienjem naredbe diag.
>> A , X1=diag(A) , X2=diag(diag(A))
A=
1 2 3
2 -3 1
-4 -5 -6
X1 =
1
-3
-6
X2 =

1
0
0

0 0
-3 0
0 -6

2.3. OPERACIJE SA MATRICAMA


Osnovne operacije sa matricama su: sabiranje, oduzimanje, mnoenje, stepenovanje,
deljenje i transponovanje.
SABIRANJE I ODUZIMANJE MATRICA
Sabiranje i oduzimanje matrica vri se tako to se sabiraju, odnosno oduzimaju
odgovarajui elementi matrica. Tom prilikom moramo voditi rauna da matrice budu
istih dimenzija.
PRIMER 13:
2 3 4

Sabrati datu matricu A i matricu B 1 1 1 .


3 2 1
>> A , B=[2, 3,-4; 1 -1, 1; 3, 2, -1] ; C=A+B
A=
1 2 3
2 -3 1
-4 -5 -6
C=
3 5 -1
3 -4 2
-1 -3 -7
Sabiranje i oduzimanje je izvodljivo i u sluaju da je jedan inilac skalar. Takav izraz
MATLAB tumai tako to svakom elementu matrice dodaje ili od njega oduzima
naznaeni skalar, tj. skalar posmatra kao konstantnu matricu dimenzija prilagoenih
matrici koja se sabira ili oduzima.
PRIMER 14 :
Od date matrice A oduzeti skalar 1.
>>A, D=A-1
A=
1 2 3
2 -3 1
-4 -5 -6
D=
0 1 2
1 -4 0
-5 -6 -7

Napomena: Skalar 1 automatski se shvata kao matrica istih dimenzija kao to je


matrica A, iji su svi elementi jednaki 1.
MNOENJE MATRICA
Mnoenje matrica skalarom se vri tako to svaki element te matrice pomnoimo
vrednou datog skalara. Treba imati u vidu da vai zakon komutativnosti tj. kA Ak .
PRIMER 15 :
Ako je k 5 , odrediti matricu F 5 A .
>> A , F=5*A
A=
1 2 3
2 -3 1
-4 -5 -6
F=
5 10 15
10 -15 5
-20 -25 -30
Mnoenje dve matrice: Proizvod matrica A={ a i , j } (dimenzija mxr) i B={ bi , j }
r

(dimenzija rxn) je nova matrica C (dimenzija mxn) iji su elementi cij ai ,k bk , j .


k 1

PRIMER 16:
1 2

Pomnoiti matrice A i A1 2 3
1 6
>> A; A1=[1, 2 ; 2, -3 ; 1, 6] ; P=A*A1
P=
8 14
-3 19
-20 -29
PRIMER 17:
Pomnoiti matrice A1 i A .
>> A1*A
??? Error using ==> *
Inner matrix dimensions must agree.

Napomena: Kao to smo ve istakli MATLAB daje opis svih greaka koje smo
nainili tokom rada i u ovom primeru podsea da kod mnoenja matrica mora da se
vodi rauna o dimenzijama.
OPERACIJE NAD POLJEM BROJEVA
Operatori nad poljem brojeva se razlikuju od operatora nad matricama. U zapisu
sadre decimalni taku ispred operatora.
Kada je u pitanju sabiranje i oduzimanje, razlike nema, pa se i ne koriste simboli + i -.
Kod ostalih operacija, napr mnoenja, razlika je to se operacije nad poljem brojeva
obavljaju lan po lan, to ne mora da bude sluaj sa operacijama sa matricama.
PRIMER 18:
Uoiti razliku izmeu mnoenja * i .*
>> A ; C=[-2 4 0 ; 4 -6 4 ; 0 -4 -12] ;
>> A*C
ans =
6 -20 -44
-16 22 0
-12 38 92
>> A .*C
ans =
-2 8 0
8 18 -4
0 20 72
TRANSPONOVANJE MATRICA
Transponovanje matrica sa realnim koeficijentima, je zamena vrsta i kolona. Vri se
pomou operatora ' .
PRIMER 19 :
Transponovati datu matricu A.
>> A , E=A'
A=
1 2 3
2 -3 1
-4 -5 -6
E=
1 2 -4
2 -3 -5
3 1 -6

2.4. DETERMINANTA MATRICE


Determinanta kvadratne matrice je broj koji se u MATLAB-u izraunava pomou
operatora det.
PRIMER 20 :
Izraunti determinantu matrice A.
>> A , D=det(A)
A=
1 2 3
2 -3 1
-4 -5 -6
D= -27

2.5. INVERZNA MATRICA


1
Inverzna matrica matrice A definie se kao A

1
adjA .
det( A)

U MATLAB- u inverzna matrica A 1 odreuje se pomou operatora inv(A).


PRIMER 21 :
Nai inverznu matricu date matrice A.
>> A ; I=inv(A)
I=
-0.8519 0.1111 -0.4074
-0.2963 -0.2222 -0.1852
0.8148 0.1111 0.2593
PRIMER 22 :
Izraunati inverznu matricu singularne matrice (determinanta jednaka nuli)
1 2 3
S 4 5 6 .
7 8 9
>> S=[1 2 3 ; 4 5 6 ; 7 8 9]
>>det(A)=0
0
>> inv(S)
Warning: Matrix is close to singular or badly scaled.
Results may be inaccurate.

2.6. DELJENJE
DELJENJE MATRICA
U matrinom raunu operacija deljenja nije definisana, ali u MATLAB- u , postoje dva
operatora deljenja:
\ oznaava deljenje sa leva, a / oznaava deljenje sa desna
Neka je A kvadratna regularna matrica.
A \ B A1 * B
A / B B * A1
Rezultati se dobijaju direktno, bez raunanja inverzne matrice.
PRIMER 23:
U sledeem primeru moemo uoiti razliku izmeu operatora deljenja sa leva \ i sa
desna /.
>> A ; B ; K=A\B , K1=A/B
K=
-2.8148 -3.4815 3.9259
-1.3704 -1.0370 1.1481
2.5185 2.8519 -3.4074
K1 =
-2.2000 -3.0000 2.8000
0.9000 3.5000 -1.1000
4.6000 6.0000 -6.4000
DELJENJE POLJA BROJEVA
Za deljenje polja brojeva koristi se simbol . / gde taka izpred oznake za deljenje
ukazuje da se operacija vri element po element.
Elementima C=A./B podrazumeva sledei postupak:
c(i,j) = a(i,j) / b(i,j), gde su a(i,j), b(i,j) elementi matrica A, B.
Na identian nain se definie deljenje A.\B.

PRIMER 24:
U sledeem primeru moemo uoiti razliku izmeu A./B i A.\B
>> A./B
ans =
0.5000 0.6667 -0.7500
2.0000 3.0000 1.0000
-1.3333 -2.5000 -6.0000
>> A.\B
ans =
2.0000 1.5000 -1.3333
0.5000 0.3333 1.0000
-0.7500 -0.4000 -0.1667
Napomena: Izraz X=A\B (X= A 1 B) predstavlja reenje jednaine AX=B, a izraz
X=A/B (X=B A 1 ), predstavlja reenje jednaine XA=B.
PRIMER 25:
Reiti matrinu jednainu AX=B gde su date matrice
1
A 2
4

2
3
5

3
1
6

i B 2 .
2

(Uputstvo: AX B X A1B )
>> A ; B ; X=inv(A)*B
X=
0.1852
-0.3704
0.5185
ili
>> X=A\B
X=
0.1852
-0.3704
0.5185

PRIMER 26:
Podeliti matricu A skalarom 2, sa leva i sa desna.
>> A\2
??? Error using ==> \
Matrix dimensions must agree.

>> A/2
ans =
0.5000 1.0000 1.5000
1.0000 -1.5000 0.5000
-2.0000 -2.5000 -3.0000
VEBA:
1.

Koristei datu matricu A odrediti:


a) lan na mestu (3,1),
b) drugu vrstu matrice A,
c) determinantu matrice A 2 ,
d) transponovanu matricu matrice A 1 .
A
Izraunati

2 T

2.
3.
1
A
1

A1

koristei datu matricu A .


4 det A
Reiti matrinu jednainu A 2 XB C (na dva naina), ako je:
2
0
, B

0
2

3
8 17
,C

.
1
8 11

4.
Dati su elementi , e, 2 . Formirati matricu 3x3, iju prvu vrstu ine dati
brojevi, drugu vrstu njihovi logaritmi, a treu vrstu kvadratni koreni datih brojeva.

You might also like