Chõìng 2 Ma trºn v¡ CŸc phĨp toŸn cho ma trºn Trong phĂn n¡y, ta s xem xĨt cŸc biƯn Ơìn, cŸc Ơi lõìng vâ hõỉng cïng vỉi cŸc biƯn ma trºn cïng cŸc phĨp tÏnh cì b¨n, cŸc h¡m chöc n¯ng s
Trang 1Chõìng 2
Ma trºn v¡ CŸc phĨp toŸn cho ma trºn
Trong phĂn n¡y, ta s xem xĨt cŸc biƯn Ơìn, cŸc Ơi lõìng vâ hõỉng cïng vỉi cŸc biƯn ma trºn cïng cŸc phĨp tÏnh cì b¨n, cŸc h¡m chöc n¯ng s¹n cÜ v¡ cŸc toŸn tø Ơõìc sø dòng trong phĂn mỊm Matlab
2.1 Vector - Ơi lõìng vâ hõỉng v¡ ma trºn
Khi gi¨i quyƯt mưt vÊn ƠỊ kþ thuºt n¡o Ợ, ƠiỊu quan trăng l¡ ph¨i xem xĨt cŸc
dù liÎu liƠn quan tỉi vÊn ƠỊ Ợ Mưt sđ dù liÎu cÜ giŸ trÙ Ơìn nhõ diÎn tÏch hÖnh vuâng, mưt sđ dù liÎu liƠn quan tỉi nhiỊu Ơi lõìng nhõ to Ơư 1 ƠiÌm trong khâng gian gêm 3 giŸ trÙ x,y,z
TÊt c¨ nhùng dù liÎu n¡y cÜ dng cÊu trîc Ơ»c biÎt găi l¡ ma trºn (matrix) CŸc phĂn tø cða ma trºn Ơõìc sºp xƯp theo h¡ng v¡ cưt Mưt giŸ trÙ Ơìn cÜ thÌ coi l¡ mưt
ma trºn ch× cÜ duy nhÊt 1 h¡ng v¡ 1 cưt hay cÝn găi l¡ Ơi lõìng vâ hõỉng (scalar) Ma trºn ch× cÜ mưt h¡ng ho»c mưt cưt Ơõìc găi l¡ vector ŠÌ cºp nhºt tỉi 1 phĂn tø cða ma trºn ta sø dòng ch× sđ h¡ng v¡ cưt cða nÜ (subscripts)
VÏ dò: C4,3
KÏch thõỉc cða ma trºn Ơõìc thÌ hiÎn mxn cÜ nghØa l¡ cÜ m h¡ng v¡ n cưt
CÜ 4 cŸch liÎt kƠ sau Ơ¿y cho viÎc v¡o dù liÎu cho cŸc biƯn vâ hõỉng hay ma trºn
+ LiÎt kƠ trúc tiƯp cŸc phĂn tø cða ma trºn
Trang 2+ CÜ thÌ Ơăc dù liÎu t÷ mưt file dù liÎu
+ Sø dòng toŸn tø (:)
+ V¡o sđ liÎu trúc tiƯp t÷ b¡n phÏm
TƠn ma trºn ph¨i Ơõìc bºt ƠĂu b±ng chù cŸi v¡ cÜ thÌ chöa tỉi 19 kû tú l¡ sđ, chù cŸi, ho»c dÊu gch dõỉi Ơõìc Ơ»t í bƠn trŸi dÊu b±ng
BƠn ph¨i cða dÊu b±ng l¡ cŸc giŸ trÙ cða ma trºn Ơõìc viƯt theo thö tú h¡ng trong dÊu ngo»c vuâng
DÊu chÊm phÂy (;) ph¿n cŸch cŸc h¡ng CŸc giŸ trÙ trong h¡ng Ơõìc ph¿n cŸch nhau bíi dÊu phÂy (,) ho»c dÊu cŸch; cŸc giŸ trÙ cÜ thÌ l¡ sđ ¿m hay dõìng DÊu thºp ph¿n Ơõìc thÌ hiÎn l¡ dÊu chÊm (.) Khi kƯt thîc nhºp mưt ma trºn ph¨i cÜ dÊu (;)
a.LiÎtkƠ rúc iƯp:
L¡ cŸch ƠÙnh nghØa ma trºn mưt cŸch Ơìn gi¨n nhÊt CŸc phĂn tø cða ma trºn Ơõìc liÎt kƠ trong dÊu ngo»c vuâng
>> A=[3,5];
>> B=[1.5,3.1];
>> C=[-1,0,0; -1,1,0; 1,-1,0; 0,0,2];
CÜ thÌ xuđng dÝng Ờ ph¿n biÎt t÷ng h¡ng ma trºn
VÏ dò:
>>C=[ -1 0 0
-1 1 0
1 -1 0
0 0 2 ];
Khi sđ phĂn tø trƠn mưt h¡ng cða ma trºn quŸ lỉn, ta cÜ thÌ dïng dÊu ba chÊm ( ) Ờ thÌ hiÎn sđ phĂn tø cða h¡ng v¹n cÝn V¡ tiƯp tòc viƯt cŸc phĂn tø í dÝng tiƯp theo
VÏ dò: Vector F cÜ 10 phĂn tø ta cÜ thÌ viƯt nhõ sau:
>> F = [ 1, 52, 64, 197, 42, -42,
55, 82, 22, 109 ];
Bn cÜ thÌ ƠÙnh nghØa mưt ma trºn t÷ mưt ma trºn khŸc nhõ sau
>> B = [ 1.5, 3.1 ];
Trang 3>> S = [ 3.0, B ];
Ma trºn S cÜ thÌ hiÌu nhõ sau: S = [ 3.0, 1.5, 3.1];
Bn cÜ thÌ cºp nhºt tỉi t÷ng phĂn tø mưt b±ng cŸch sø dòng ch× sđ cða nÜ:
>> S(2) = -1.0;
GiŸ trÙ cða phĂn tø thö 2 trong ma trºn S s thay Ơôi t÷ 1.5 th¡nh -1.0
Bn cÜ thÌ mí rưng ma trºn b±ng cŸch thƠm cho nÜ phĂn tø mỉi Thúc hiÎn lÎnh sau:
>> S(4) = 5.5;
Ma trºn S lîc n¡y s cÜ 4 phĂn tø: S = [ 3.0, -1.0, 3.1, 5.5 ];
NƯu ta thúc hiÎn lÎnh n¡y:
>> S(8) = 9.5;
ThÖ ma trºn S s cÜ 8 phĂn tø, cŸc phĂn tø S(5), S(6), S(7) s tú Ơưng nhºn giŸ trÙ l¡ 0
b.CÜ hÌ Ơăc dù lÎu ÷ mưtfie dù lÎu Ơ¬ cÜ:
Thâng qua lÎnh load cho phƯp nhºp v¡o dù liÎu cða ma trºn lõu trù trõỉc trong ƠØa
c.Sø dòng oŸn ø (:)
DÊu hai chÊm (:) Ơõìc sø dòng Ờ to vector t÷ ma trºn ŠiỊu n¡y to ƠiỊu kiÎn cho thuºn lìi trong viÎc xø lû sđ liÎu
- VÏ dò: Muđn v biÌu Ơê theo hÎ to Ơư x,y cho 1 file dù liÎu n¡o Ợ, ta dÍ d¡ng ghi cŸc sđ liÎu x v¡o 1 vector v¡ cŸc sđ liÎu y v¡o 1 vector khŸc
Ti vÙ trÏ cða dÊu (:) trong ma trºn, nÜ Ơi diÎn cho tÊt c¨ cŸc h¡ng ho»c tÊt c¨ cŸc cưt
- VÏ dò: CŸc lÎnh sau Ơ¿y s Ơõa tÊt c¨ cŸc dù liÎu í cưt thö nhÊt trong ma trºn data1 v¡o vector x v¡ to¡n bư dù liÎu í cưt thö 2 cða ma trºn v¡o vector y:
>> x = data1 (: , 1);
>> y = data1 (: , 2);
DÊu hai chÊm cÝn cÜ thÌ sø dòng l¡m kû hiÎu tông quŸt trong ma trºn mỉi NƯu dÊu hai chÊm n±m í giùa 2 sđ nguyƠn, thÖ nÜ Ơi diÎn cho tÊt c¨ cŸc sß nguyƠn n±m giùa 2 sđ nguyƠn Ợ VÏ dò: dÊu 2 chÊm l¡ kû hiÎu tông quŸt cða vector H cÜ chöa cŸc sđ t÷ 1 ƠƯn 8
>> H = 1:8;
Trang 4NƯu dÊu hai chÊm n±m í giùa 3 sđ, thÖ dÊu 2 chÊm Ơi diÎn cho tÊt c¨ cŸc sđ cÜ giŸ trÙ t÷ sđ thö nhÊt ƠƯn sđ thö 3, sđ thö 2 Ơõìc sø dòng l¡m möc t©ng
- VÏ dò: dÊu 2 chÊm l¡ kû hiÎu tông quŸt trong vector h¡ng cÜ tƠn TIME cÜ chöa cŸc sđ t÷ 0.0 ƠƯn 5.0 cÜ möc t©ng l¡ 0.5:
>> TIME = 0.0 : 0.5 : 5.0;
Möc t©ng ¿m Ơõìc thÌ hiÎn trong vÏ dò sau:
>> VALUES = 10 : -1 : 0;
DÊu hai chÊm cÝn Ơõìc sø dòng Ờ chăn cŸc ma trºn con t÷ 1 ma trºn khŸc
- VÏ dò: Gi¨ sø cÜ ma trºn C Ơõìc cho nhõ sau:
>> C=[ -1 0 0
-1 1 0
1 -1 0
0 0 2 ];
Dïng lÎnh:
>> C_PARTIAL_1 = C( : ,2:3);
>> C_PARTIAL_2 = C(3:4,1:2);
Ta s nhºn Ơõìc ma trºn sau:
C_PARTIAL_1 =[ 0 0
1 0 -1 0
0 2 ];
C_PARTIAL_2 =[1 -1
0 0 ];
NƯu dÊu hai chÊm ƠÙnh nghØa cŸc ch× sđ khâng hìp lÎ nhõ C(5:6,:), thÖ s cÜ hiÌn thÙ thâng bŸo lơi
Trong MATLAB ma trºn rơng (empty matrix) l¡ giŸ trÙ hìp lÎ Ma trºn rơng cÜ thÌ Ơõìc ƠÙnh nghØa nhõ sau:
>> A = [ ];
>> B = 4 : -1 : 5
Ma trºn rơng khŸc vỉi ma trºn ch× to¡n sđ 0
Cuđi cïng, C(:) tõìng Ơõìng vỉi mưt cưt d¡i cÜ chöa cưt ƠĂu tiƠn cða ma trºn
C, tiƯp ƠƯn l¡ cưt thö hai cða ma trºn C, v¡ cö nhõ vºy tiƯp tòc Š¿y l¡ toŸn tø rÊt mnh cða Matlab
Trang 5d.V¡o sđ lÎu rúc iƯp ÷ b¡n phÏm.
Ta cÜ thÌ nhºp ma trºn t÷ b¡n phÏm
Cî phŸp:
>> Z = input('Nhºp giŸ trÙ cho Z');
Khi thúc hiÎn lÎnh n¡y, mŸy s hiÌn thÙ x¿u kû tú 'Nhºp giŸ trÙ cho Z' v¡ Ơìi ngõĩi sø dòng nhºp sđ liÎu v¡o Ngõĩi sø dòng cÜ thÌ gß mưt biÌu thöc nhõ sau [5.1 6.3 -18.0] Ờ xŸc ƠÙnh giŸ trÙ cða Z NƯu ngõĩi sø dòng ch× gß enter m¡ khâng nhºp giŸ trÙ n¡o v¡o thÖ ma trºn Z s Ơõìc coi l¡ ma trºn rơng NƯu lÎnh kƯt thîc vỉi dÊu (;) thÖ giŸ trÙ cða Z s Ơõìc hiÌn thÙ NƯu khâng cÜ dÊu (;) thÖ khâng Ơõìc hiÌn thÙ
CÜ nhiỊu cŸch Ờ hiÌn thÙ ma trºn CŸch Ơìn gi¨n nhÊt gß tƠn cða ma trºn rêi enter Tuy nhiƠn, cÜ mưt sđ lÎnh Ơõìc dïng Ờ hiÌn thÙ ma trºn vỉi cŸc phĂn tø ma trºn Ơõìc biÌu diÍn theo nhiỊu kiÌu khŸc nhau
Dng m»c ƠÙnh l¡ 5 chù sđ cÜ nghØa sau dÊu thºp ph¿n (găi l¡ short format)
Mưt sđ dng hiÌn thÙ khŸc Ơõìc liÎt kƠ dõỉi Ơ¿y:
format long Dng sđ chù sđ cÜ nghØa d¡i (15 chù sđ cÜ nghØa sau dÊu
thºp ph¿n trí lƠn) format short CÝn găi l¡ default format (cÜ 5 chù sđ cÜ nghØa)
format short e Dng sđ phÂy Ơưng ngºn (dõỉi 1015)
format long e Dng sđ phÂy Ơưng lỉn (t÷ 1015 trí lƠn VÏ dò:
6.023e+23) format HiÌn thÙ dÊu (¿m, dõìng) cða cŸc phĂn tø cða ma trºn format compact Cho phĨp gi¨m kho¨ng cŸch giùa cŸc phĂn tø trong ma
trºn format loose Huý bÞ lÎnh format compact trí li chƯ Ơư hiÌn thÙ thâng
thõĩng
disp HiÌn thÙ thâng bŸo trong dÊu ngo»c Ơìn ho»c hiÌn thÙ nưi
dung cða ma trºn
VÏ dò:
>> disp(temp); disp(' Ơư F ');
Ta s nhºn Ơõìc: 78 Ơư F
Trang 6Trong Ợ temp l¡ tƠn cða ma trºn chöa 1 giŸ trÙ nhiÎt Ơư
F l¡ 78
fprintf LÎnh n¡y cho phĨp in tham sđ ƠĂu ra theo Ơîng dng m¡
ta mong muđn: c¨ text v¡ c¨ giŸ trÙ sđ Trong lÎnh n¡y cÜ thÌ cÜ chöa c¨ nhùng dÝng trđng Cî phŸp cða nÜ nhõ sau:
>> fprint( ƠÙnh dng, ma trºn);
Trong ƠÙnh dng cÜ thÌ chöa c¨ text v¡ cŸc kû hiÎu dng Ơ»c biÎt (%e, %f,%g, /n – Ơõìc ghi trong c»p dÊu nhŸy Ơìn) ƠiỊu khiÌn cŸch in cŸc giŸ trÙ cða ma trºn NƯu sø dòng:
%e cŸc giŸ trÙ Ơõìc in ra dõỉi dng sđ phÂy Ơưng
%f cŸc giŸ trÙ Ơõìc in ra dõỉi dng sđ phÂy tØnh
%g thÖ giŸ trÙ Ơõìc in ra cÜ thÌ cÜ dng sđ phÂy Ơưng ho»c tØnh tuü thuưc v¡o b¨n th¿n nÜ
\n thÖ 1 dÝng trđng s Ơõìc in ra
VÏ dò:
>> fprintf( 'NhiÎt Ơư l¡: \n %4.1f Ơư F \n', temp);
NghØa l¡ sđ vÙ trÏ d¡nh Ờ in giŸ trÙ cða biƯn temp l¡ 4 v¡ mưt sđ sau dÊu ph¨y
NÜ s Ơõìc hiÌn thÙ nhõ sau:
NhiÎt Ơư l¡: 78.0 Ơư F
2.2 CŸc ma trºn Ơ»c biÎt:
Matlab cÜ s¹n mưt sđ h¡m lõu cŸc h±ng, giŸ trÙ Ơ»c biÎt v¡ cŸc ma trºn Ơ»c biÎt MATLAB cÜ mưt sđ h¡m Ờ to ra cŸc ma trºn Ơ»c biÎt
2.2.1 Ma rºn ma phõìng (magic( n ) )
Ma phõìng bºc n l¡ ma trºn vuâng cÊp n bao gêm cŸc sđ nguyƠn t÷ 1 ƠƯn n2 CŸc sđ nguyƠn Ơõìc sºp xƯp sao cho tông cŸc phĂn tø trƠn mưt h¡ng, mưt cưt, Ơõĩng chĨo l¡ b±ng nhau H¡m cða ma trºn ma phõìng tông quŸt ch× cĂn mưt tham sđ l¡ bºc cða nÜ
VÏ dò:
>> magic(4)
Trang 7ans =
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
2.2.2 Ma rºn 0 ( zeros )
H¡m zeros(m,n) l¡ ma trºn cÜ kÏch thõèc mxn chöa to¡n sâ 0 NÆu tham sâ cða h¡m ch× cÜ 1 giŸ trÙ thÖ h¡m l¡ ma trºn vuáng ŠÌ to ra ma trºn 0, dïng h¡m zeros(n), zeros(m,n), zeros(A) vèi A l¡ ma trºn bÃt kü
VÏ dò:
>> zeros ( 4 , 4 )
ans =
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
2.2.3 Ma rºn 1 ( ones )
H¡m ones Åõìc ÅÙnh nghØa giâng nhõ h¡m zeros nhõng sâ 0 Åõìc thay bêi sâ 1
vÏ dò:
>> ones( 4 , 4 )
ans =
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
2.2.4 Ma rºn Åõéng chÉo Å»c biÎt(Identity Matrix)
Ma trºn Åõéng chÉo l¡ ma trºn cÜ cŸc phÀn tø n±m trÅn Åõéng chÉo chÏnh l¡
1, cÝn cŸc phÀn tø ê vÙ trÏ khŸc l¡ 0
VÏ dò:
>> eye ( 4 )
Trang 8ans =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
Chî û l¡ kháng ch× cÜ ma trºn vuáng mèi cÜ Åõéng chÉo chÏnh m¡ khŸi niÎn n¡y cÝn mê ræng cho c¨ ma trºn chù nhºt
L¡ ma trºn Åõéng chÉo mê ræng vèi ma trºn hÖnh chù nhºt cÜ m h¡ng, n cæt CŸc phÀn tø cÜ ch× sâ h¡ng v¡ cæt b±ng nhau cÜ giŸ trÙ l¡ 1, ti cŸc vÙ trÏ khŸc cŸc phÀn
tø cÜ giŸ trÙ l¡ kháng Khi h¡m ch× cÜ 1 giŸ trÙ tham sâ thÖ ma trºn Åõéng chÉo mê ræng
sÁ trê th¡nh ma trºn Åõéng chÉo Ma trºn n¡y Åõìc to ra bêi h¡m eye(m,n); eye(n); eye (C) (giâng cŸc ÅÙnh nghØa trÅn)
VÏ dò:
>> eye ( 4,5 )
ans =
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
2.2.6 Ma rºn Pas al ( pas a (n) )
L¡ ma trºn chöa cŸc giŸ trÙ cða tam giŸc Pascal
VÏ dò:
>> pascal(4)
ans =
1 1 1 1
1 2 3 4
1 3 6 10
1 4 10 20
Trang 9compan Companion matrix
gallery Several small test matrices
invhilb Inverse Hilbert matrix
kron Kronecker tensor product
rosser Classic symmetric eigenvalue test problem
wilkinson Wilkinson's eigenvalue test matrix
2.3 CŸc phÉp toŸn vá hõèng
VÏ dò:
>> a = 3 ; b = 1.2; % PhÉp nhºp dù liÎu
ans =
Trang 104.2000
ans =
2.5000
ans =
1.2000 2.200
ans =
3.7372
Tuy nhiƠn mưt sđ toŸn tø cÜ thÌ kƯt hìp trong mưt biÌu thöc sđ hăc, khi Ợ ƠiỊu quan trăng nhÊt l¡ ph¨i biƯt thö tú õu tiƠn cða cŸc toŸn tø trong biÌu thöc
Thö tú õu tiƠn ToŸn tø
3 nh¿n v¡ chia, t÷ trŸi qua ph¨i
4 cưng v¡ tr÷, t÷ trŸi qua ph¨i
VÏ dò:
x3 - 2x2 + x - 6.3 x2 + 0.05005x - 3.14 NƯu x l¡ mưt giŸ trÙ vâ hõỉng thÖ giŸ trÙ cða f s Ơõìc tÏnh theo cŸc lÎnh sau:
>> numerator = x^3 - 2*x^2 + x - 6.3;
>> denominator = x^2 + 0.05005*x - 3.14;
>> f = numerator/ denominator;
PhĨp toŸn Câng thöc ViƯt dõỉi dng Matlab
Trang 11Cưng a + b a + b
CŸc phĨp toŸn trƠn khâng ch× Ÿp dòng giùa cŸc ma trºn cÜ kÏch thõỉc b±ng nhau m¡ cÝn Ÿp dòng giùa cŸc Ơi lõìng vâ hõỉng v¡ Ơi cÜ hõỉng
VĨc tì B v¡ C l¡ vĨc tì cÜ kÏch thõỉc b±ng vĨc tì A XĨt hai vĨc tì nhõ sau:
>> A = [ 2 5 6 ]
>> B = [ 2 3 5 ]
TÏch hai vĨc l¡ s Ơõìc viƯt nhõ sau:
>> C = A.*B;
VĨc tì C s chöa cŸc phĂn tø nhõ sau:
C = [ 4 15 30 ]
Matlab cÜ hai phĨp chia:
Chia trŸi : C = A./B; % GiŸ trÙ cða C thu Ơõìc s l¡: C = [ 1 1.667 1.2 ] Chia ph¨i: C = A.\B; % GiŸ trÙ cða C thu Ơõìc s l¡: C = [ 1 0.6 0.883 ] ToŸn tø mñ Ơđi vỉi vĨc tì:
C = A.^2; % C = [ 4 25 36 ]
D = A.^B; % D = [ 4 125 7776 ]
E = 3.0.^A; % E = [ 9 243 729 ] LÎnh n¡y cÝn cÜ thÌ viƯt l¡: E = (3).^A; Chî û: E = 3.^A; % s Ơõìc xĨt sau
E = 3 ^A; % NƯu cÜ kho¨ng trđng giùa sđ 3 v¡ dÊu chÊm thÖ Ơîng CŸc vÏ dò trõỉc xĨt cho cŸc vĨc tì, nhõng kƯt qu¨ v¹n Ơîng cho cŸc ma trºn h¡ng v¡ cưt XĨt cŸc lÎnh sau:
C = [ 1:5; -1:-1:-5 ];
Trang 12Z = ones(D);
S = D - Z;
P = D.*S;
SQ = D.^3;
KƯt qu¨ thu Ơõìc s l¡ nhùng ma trºn nhõ sau:
Thâng thõĩng, cŸc dù liÎu kþ thuºt Ơõìc lõu dõỉi dng ma trºn ŠÌ xø lû chîng mưt cŸch thuºn tiÎn, phĂn mỊm Matlab Ơõìc x¿y dúng gêm nhiỊu h¡m cÜ thÌ
xø lû cŸc sđ liÎu dõỉi dng ma trºn
2.4 CŸc phĨp toŸn Ơđi vỉi ma trºn
Ma trºn chuyÌn vÙ cða ma trºn A l¡ mưt ma trºn mỉi, trong Ợ cưt cða ma trºn mỉi l¡ h¡ng cða ma trºn gđc KÏ hiÎu l¡ AT
VÏ dò:
Trang 131 4 CŸc phĂn tø h¡ng cða ma trºn A trí th¡nh phĂn tø cưt cða ma trºn AT Trong Matlab ngõĩi ta kÏ hiÎu ma trºn chuyÌn vÙ l¡ A' Ngõĩi ta sø dòng toŸn tø ma trºn chuyÌn vÙ Ờ chuyÌn vectì h¡ng th¡nh vectì cưt v¡ ngõìc li
KÏ hiÎu toŸn hăc l¡:
dot-product = A.B = Σ ai.bi
Trong Matlab:
NƯu c¨ A v¡ B ƠỊu l¡ vectì cưt ho»c h¡ng thÖ A.*B cñng l¡ mưt vectì NƯu A l¡ vectì h¡ng v¡ B l¡ vectì cưt thÖ tÏch vâ hõỉng Ơõìc tÏnh nhõ sau:
dot-product = sum(A'.*B) = sum(A.*B');
VÏ dò:
>> A = [ 1 2 3; 4 5 6 ];
>> B = [ 3 4 5; 6 7 8];
C =
3 8 15
24 35 48
>> sum(C)
ans =
27 43 63
C = AB
Trong Ợ: Ci,j = Σ AikBkj
Sđ h¡ng cða ma trºn A ph¨i b±ng sđ cưt cða ma trºn B Chî û l¡ AB#BA (cÜ thÌ tên ti tÏch AB nhõng khâng tên ti tÏch BA) KÏ hiÎu phĨp nh¿n ma trºn trong Matlab:
VÏ dò: Vỉi dù liÎu cho trong hai ma trºn A v¡ B PhĨp nh¿n ma trºn Ơõìc thúc hiÎn dõỉi Ơ¿y
Trang 14>> B = B’; % Ѝo ma trºn B Ờ cÜ sđ h¡ng, cưt thÏch hìp cho
C =
26 44
62 107
* PhĨp luþ th÷a:
Cî phŸp: A^k =(A*A* *A) #A.^k
>> A = [ A(:,1) A( :,2)] % ChÏch 2 cưt 1 v¡ 2 cða ma trºn A Ờ to
A = % ma trºn A vuâng cho phĨp luþ th÷a
1 2
4 5
C =
57 78
156 213
a) Rotation (phĨp quay):
Cî phŸp:
>> B = rot90(A);
CŸc phĂn tø cða ma trºn A Ơõìc quay mưt gÜc 90o theo ngõìc chiỊu kim Ơêng
hê
VÏ dò:
A = -2 5 -1 ==> B = rot90(A) = 1 5 4
H¡m rot90 cñng cÜ tham sđ thö hai Ờ xŸc ƠÙnh thúc hiÎn sđ lĂn quay cða cŸc phĂn tø trong ma trºn A
VÏ dò:
>> B = rot90(A);
Trang 15>>C = rot90(B);
Hai dÝng lÎnh trƠn tõìng Ơõìng vỉi dÝng lÎnh sau vỉi tham sđ lĂn quay l¡ 2
>> C = rot90(A,2);
b) Ѝo ma trºn:
Trong Matlab cÜ hai h¡m Ơõìc sø dòng Ờ Ơ¨o mưt ma trºn to ra ma trºn mỉi:
fliplr(A) h¡m Ơ¨o cŸc phĂn tø cða ma trºn ma trºn A t÷ trŸi sang ph¨i
VÏ dò:
>> B = fliplr(A)
B =
3 2 1
6 5 4
9 8 7
flipud(B) h¡m Ơ¨o cŸc phĂn tø cða ma trºn B t÷ trƠn xuđng dõỉi Ma trºn thu Ơõìc kƯt qu¨ nhõ sau:
>> C = flipud (B)
C =
9 8 7
6 5 4
3 2 1
c) Reshape:
H¡m n¡y cho phĨp ƠÙnh dng li ma trºn vỉi sđ h¡ng v¡ sđ cưt khŸc vỉi ma trºn gđc Sđ phĂn tø cða ma trºn gđc v¡ ma trºn Ơ¬ ƠÙnh dng li ph¨i b±ng nhau H¡m
cÜ ba tham sđ: tham sđ ƠĂu l¡ ma trºn gđc, hai tham sđ cÝn li l¡ sđ h¡ng v¡ sđ cưt cða
ma trºn mỉi
VÏ dò:
A = -2 5 -1