1. Trang chủ
  2. » Công Nghệ Thông Tin

Giao trinh matlab v5.2 P4 pptx

11 252 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 11
Dung lượng 245,26 KB

Nội dung

Chơng 2 - Ma trận v các phép toán Phần I - Cơ sở 23 4.2000 >> a/b % Phẫp chia ( nhn ) ans = 2.5000 >> b : a % Phẫp chia tri ans = 1.2000 2.200 >> a^b % Phẫp lủy thữa ans = 3.7372 2 2 . . 3 3 . . 2 2 T T h h ử ử t t ỳ ỳ ừ ừ u u t t i i n n c c a a c c c c t t o o n n t t ứ ứ : : Tuy nhin mổt sõ ton tứ cĩ thè kặt hỡp trong mổt bièu thửc sõ hc, khi ĩ iậu quan trng nht lĂ phăi biặt thử tỳ ừu tin ca cc ton tứ trong bièu thửc. Thử tỳ ừu tin Ton tứ 1 Ngoằc ỗn 2 luỵ thữa 3 nhn vĂ chia, tữ tri qua phăi 4 cổng vĂ trữ, tữ tri qua phăi Vẽ dũ: x 3 - 2x 2 + x - 6.3 x 2 + 0.05005x - 3.14 Nặu x lĂ mổt gi tr vỏ hừống thệ gi tr ca f s ừỡc tẽnh theo cc lẻnh sau: >> numerator = x^3 - 2*x^2 + x - 6.3; >> denominator = x^2 + 0.05005*x - 3.14; >> f = numerator/ denominator; 2 2 . . 3 3 . . 3 3 C C c c p p h h ẫ ẫ p p t t o o n n õ õ i i v v ố ố i i v v e e c c t t o o r r Phẫp ton Cỏng thửc Viặt dừối dng Matlab Chơng 2 - Ma trận v các phép toán Phần I - Cơ sở 24 Cổng a + b a + b Trữ a b a - b Nhn măng a x b a.*b Chia phăi măng a/b a./b Chia tri măng b/a a.\b Luỵ thữa măng a b a.^b Cc phẫp ton trn khỏng chì p dũng giựa cc ma trn cĩ kẽch thừốc bng nhau mĂ cín p dũng giựa cc i lừỡng vỏ hừống vĂ i cĩ hừống. Vẽ dũ: B = 3*A; C = A/5; B = A.*; C = A./5; Vẫc tỗ B vĂ C lĂ vẫc tỗ cĩ kẽch thừốc bng 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 cc phn tứ nhừ sau: C = [ 4 15 30 ] Matlab cĩ hai phẫp chia: Chia tri : C = A./B; % Gi tr ca C thu ừỡc s lĂ: C = [ 1 1.667 1.2 ] Chia phăi: C = A.\B; % Gi tr ca C thu ừỡc s lĂ: C = [ 1 0.6 0.883 ] Ton 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Ă du chm thệ ợng Cc vẽ dũ trừốc xẫt cho cc vẫc tỗ, nhừng kặt quă vạn ợng cho cc ma trn hĂng vĂ cổt. Xẫt cc lẻnh sau: C = [ 1:5; -1:-1:-5 ]; Chơng 2 - Ma trận v các phép toán Phần I - Cơ sở 25 Z = ones(D); S = D - Z; P = D.*S; SQ = D.^3; Kặt quă thu ừỡc s lĂ nhựng ma trn nhừ sau: D = 1 2 3 4 5 Z = 1 1 1 1 1 -1 -2 -3 -4 -5 1 1 1 1 1 S = 0 1 2 3 4 P = 0 2 6 12 20 -2 -3 -4 -5 -6 2 6 12 20 30 S = 1 8 27 64 125 -1 -8 -27 -64 -125 Thỏng thừộng, cc dự liẻu kỵ thut ừỡc lừu dừối dng ma trn. è xứ lỷ chợng mổt cch thun tiẻn, phn mậm Matlab ừỡc xy dỳng góm nhiậu hĂm cĩ thè xứ lỷ cc sõ liẻu dừối dng ma trn. 2.4. Cc phẫp ton õi vối ma trn 2 2 . . 4 4 . . 1 1 M M a a t t r r n n c c h h u u y y è è n n v v Ma trn chuyèn v ca ma trn A lĂ mổt ma trn mối, trong ĩ cổt ca ma trn mối lĂ hĂng ca ma trn gõc. Kẽ hiẻu lĂ A T . Vẽ dũ: A = 1 1 1 1 1 2 3 4 1 1 A T = 1 2 1 3 Chơng 2 - Ma trận v các phép toán Phần I - Cơ sở 26 1 4 Cc phn tứ hĂng ca ma trn A trờ thĂnh phn tứ cổt ca ma trn A T . Trong Matlab ngừội ta kẽ hiẻu ma trn chuyèn v lĂ A'. Ngừội ta sứ dũng ton tứ ma trn chuyèn v è chuyèn vectỗ hĂng thĂnh vectỗ cổt vĂ ngừỡc li. 2 2 . . 4 4 . . 2 2 T T ẽ ẽ c c h h v v ỏ ỏ h h ừ ừ ố ố n n g g l l Ă Ă t t ẽ ẽ c c h h c c a a h h a a i i m m a a t t r r n n c c ù ù n n g g c c ở ở Kẽ hiẻu ton hc lĂ: dot-product = A.B = a i .b i Trong Matlab: dot-product = sum(A.*B); 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 = A.*B % Phẫp nhn vỏ hừống 2 ma trn A vĂ B C = 3 8 15 24 35 48 >> sum(C) ans = 27 43 63 2 2 . . 4 4 . . 3 3 N N h h n n m m a a t t r r n n C = AB Trong ĩ: Ci,j = AikBkj Sõ hĂng ca ma trn A phăi bng sõ cổt ca ma trn 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 nhn ma trn trong Matlab: Vẽ dũ: Vối dự liẻu cho trong hai ma trn A vĂ B. Phẫp nhn ma trn ừỡc thỳc hiẻn dừối y. Chơng 2 - Ma trận v các phép toán Phần I - Cơ sở 27 >> B = B; % ăo ma trn B è cĩ sõ hĂng, cổt thẽch hỡp cho >> C = A* B; % phẫp nhn ma trn A,B C = 26 44 62 107 * Phẫp luỵ thữa: Cợ php: A^k =(A*A* *A) #A.^k >> A = [ A(:,1) A( :,2)] % Chẽch 2 cổt 1 vĂ 2 ca ma trn A è to A = % ma trn A vuỏng cho phẫp luỵ thữa 1 2 4 5 >> C = A^3 % Phẫp lủy thữa ca ma trn A C = 57 78 156 213 2 2 . . 4 4 . . 4 4 C C c c t t h h a a o o t t c c m m a a t t r r n n : : a) Rotation (phẫp quay): Cợ php: >> B = rot90(A); Cc phn tứ ca ma trn A ừỡc quay mổt gĩc 90 o theo ngừỡc chiậu kim óng hó. Vẽ dũ: 2 1 0 0 -1 6 A = -2 5 -1 ==> B = rot90(A) = 1 5 4 3 4 6 2 -2 3 HĂm rot90 củng cĩ tham sõ thử hai è xc nh thỳc hiẻn sõ ln quay ca cc phn tứ trong ma trn A. Vẽ dũ: >> B = rot90(A); Chơng 2 - Ma trận v các phép toán Phần I - Cơ sở 28 >>C = rot90(B); Hai díng lẻnh trn từỗng ừỗng vối díng lẻnh sau vối tham sõ ln quay lĂ 2 >> C = rot90(A,2); b) ăo ma trn: Trong Matlab cĩ hai hĂm ừỡc sứ dũng è ăo mổt ma trn to ra ma trn mối: fliplr(A) hĂm ăo cc phn tứ ca ma trn ma trn A tữ tri sang phăi. Vẽ dũ: >> A = [ 1 2 3 4 5 6 7 8 9 ]; >> B = fliplr(A) B = 3 2 1 6 5 4 9 8 7 flipud(B) hĂm ăo cc phn tứ ca ma trn B tữ trn xuõng dừối. Ma trn 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 trn vối sõ hĂng vĂ sõ cổt khc vối ma trn gõc. Sõ phn tứ ca ma trn gõc vĂ ma trn ơ nh dng li phăi bng nhau. HĂm cĩ ba tham sõ: tham sõ u lĂ ma trn gõc, hai tham sõ cín li lĂ sõ hĂng vĂ sõ cổt ca ma trn mối. Vẽ dũ: 2 1 0 A = -2 5 -1 Chơng 2 - Ma trận v các phép toán Phần I - Cơ sở 29 3 4 6 >> B = reshape(A,1,9) B = 2 -2 3 1 5 4 0 -1 6 d) Trẽch cc phn tứ tữ mổt ma trn Cc hĂm diag, triu, tril cho phẫp trẽch cc phn tứ tữ mổt ma trn. Cĩ 3 hĂm lin quan tối ừộng chẫo chẽnh: diag(A) L y cc p hn tứ trn ừộn g chẫo chẽnh vĂ lừu vĂo mổt vectỗ cổt. diag(A,k) Chn ừộn g chẫo tu ỹ thuổc g i tr k. k=0 chn ừộn g chẫo chẽnh. k>0 chn ừộng chẫo thử k ờ trn ừộng chẫo chẽnh k<0,chn ừộng chẫo thử k ờ dừối ừộng chẫo chẽnh. A=diag(V) Nặu V lĂ vectỗ ta ừỡc ma trn vuỏn g A vối vectỗ l Ă ừộng chẫo chẽnh. B=triu(A) Sinh ra ma trn B cùn g cở chửa cc p hn tứ ca A nm trn ừộng chẫo chẽnh vĂ phẽa trn ừộng chẫo chẽnh. Cc v tr ẽ khc bng 0. triu(A.k) LĂ ma trn cùn g cở vối A chửa sõ p hn tứ tữ A ờ n g a y trn vĂ ờ phẽa trn ừộng chẫo thử k, cc v trẽ khc bng 0. tril(A) LĂ ma trn cùn g cở vối A chửa sõ p hn tứ tữ A nm dừối ừộng chẫo chẽnh. Cc v trẽ khc bng 0. tril(A,k) LĂ ma trn cùn g cở vối A chửa sõ p hn tứ tữ A ờ n g a y trn vĂ ờ phẽa dừối ừộng chẫo thử k, cc v trẽ khc bng 0. Vẽ dũ: Vối dự liẻu lĂ ma trn A ơ cho sau >> A = [1 2 3 4; 5 6 7 8; 9 10 11 12]; Cc hĂm trẽch phn tứ ca ma trn ừỡc viặt vĂ thè hiẻn kặt quă trn mĂn hệnh thè hiẻn : >> diag(A) % Vector ừộng chẫo ca A ans = 1 Chơng 2 - Ma trận v các phép toán Phần I - Cơ sở 30 6 11 >> diag(A,-1) % Vector ừộng chẫo dừối, v trẽ sõ 1ca A ans = 5 10 >> B=triu(A) % Phn trn ca ma trn ừỡc lừu vĂo B % Cc phn tứ cín li ừỡc cho = 0 B = 1 2 3 4 0 6 7 8 0 0 11 12 >> B = triu(A,-1) % Phn trn ca ma trn tẽnh tữ ừộng chẫo -1 ừỡc lừu vĂo B % Cc phn tứ cín li ừỡc cho = 0 B = 1 2 3 4 5 6 7 8 0 10 11 12 >>B = tril(A) % Phn dừối ca ma trn ừỡc lừu vĂo B B = % Cc phn tứ cín li ừỡc cho = 0 1 0 0 0 5 6 0 0 9 10 11 0 >> B = tril(A,-1) % Phn dừối ca ma trn tẽnh tữ ừộng chẫo -1 ừỡc lừu vĂo % B. Cc phn tứ cín li ừỡc cho = 0 B = 0 0 0 0 5 0 0 0 9 10 0 0 Chơng 3 - Lập trình trong Matlab Phần I - Cơ sở 31 Chơng 3 Lp trệnh trong matlab 3.1 Cc phn tứ cỗ băn cho chừỗng trệnh 3 3 . . 1 1 . . 1 1 G G i i ố ố i i h h n n c c a a c c c c g g i i t t r r t t ẽ ẽ n n h h t t o o n n t t r r o o n n g g M M A A T T L L A A B B õi vối phn lốn cc my tẽnh, khoăng gi tr cho phẫp tữ 10 -308 ặn 10 308 . Giă sứ cĩ nhựng lẻnh sau: >> x = 2.5e200; >> y = 1.0e200 >> z = x*y; Tuy gi tr ca x vĂ y nm trong khoăng cho phẫp. Nhừng gi tr ca z lĂ 2.5e400 li nm ngoĂi khoăng gi tr cho phẫp. Lồi nĂy ừỡc gi lĂ trĂn sõ mủ trn (exponent overflow). Gi tr ca kặt quă qu lốn õi vối vùng nhố ca my tẽnh. Trong Matlab, kặt quă nĂy ừỡc bièu din lĂ . TrĂn sõ mủ dừối (exponent underflow). Giă sứ cĩ nhựng lẻnh sau: >> x = 2.5e-200; >> y = 1.0e200 >> z = x/y; Gi tr ca z s lĂ 2.5e-400. Trong Matlab, kặt quă nĂy ừỡc bièu din lĂ 0. Chia cho 0 lĂ mổt ton tứ khỏng hỡp lẻ. Nặu mổt gi tr cĩ hn ừỡc chia cho 0, kặt quă nhn ừỡc s lĂ . Chơng 3 - Lập trình trong Matlab Phần I - Cơ sở 32 Matlab s in ra mổt lội cănh bo vĂ sứ dũng gi tr è tiặp tũc tẽnh ton cc phẫp tẽnh sau ĩ. 3 3 . . 1 1 . . 2 2 C C c c k k ỷ ỷ t t ỳ ỳ ằ ằ c c b b i i ẻ ẻ t t [ ] Dng ma trn. Dùng è quy ừốc cho viẻc bièu din ha y vĂo s õ liẻu cho cc biặn vector ha y ma trn. Cc p hn tứ tron g biặn ĩ ừỡc cch nhau bời du s p ace ha y du , nặu trn cùn g hĂn g hoằc cổt. Cc cổt hay hĂng s phn cch nhau bời du ; hay Enter. vẽ dũ: >> a = [ 1 2 3 ; 4 5 6 ; 7 8 9 ] ans = 1 2 3 4 5 6 7 8 9 ( ) Dn g chì sõ. DĂnh cho cc biặn ca hĂm ha y cc chì sõ cc phn tứ trong ma trn khi cn ừỡc nhp hay bièu din. . Phn tch giựa cc chì sõ vĂ cc phn tứ ca ma trn ; Phn tch cc ma trn, cc lẻnh, cc hĂng ca ma trn >> Du nhc cho lẻnh sau Thè hiẻn sỳ tiặp tũc ca lẻnh ờ díng sau % Phn chợ g iăi dín g lẻnh ừỡc g hi sau du nĂ y dùn g è hièu rò nghỉa 1 díng lẻnh chử khỏng tham gia vĂo chừỗng trệnh : Cch ghi tọng qut ma trn \n Du hiẻu to díng mối 3 3 . . 1 1 . . 3 3 C C c c g g i i t t r r ằ ằ c c b b i i ẻ ẻ t t pi Gi tr ca tỳ ổng ừỡc ừa vĂo biặn nĂy ( 3.14156 ) i, j Cc biặn nĂy cĩ gi tr ăo -1 Inf Biặn nĂy i diẻn cho gi tr ca MATLAB, thè hiẻn kặt q u ă chia cho 0. Mổt lội cănh bo s hiẻn ra, nặu bn muõn hièn th kặt q uă [...]... nh ổ chẽnh xc ca sõ thỳc trong qu trệnh tẽnh ton ans Biặn nĂy ừỡc dùng è chửa gi tr tẽnh ton ca bièu thửc nhừng khỏng ghi vĂo tn biặn 3.1.4 Biặn string Biặn string trong Matlab ừỡc bièu din sứ dũng nhừ cc biặn sõ thỏng thừộng khc ca Matlab iậu ĩ cĩ nghỉa biặn ừỡc nhp, thao tc vĂ lừu trự trong cc vector vối mồi phn tứ ca vector lĂ 1 kỷ tỳ Cc kỷ tỳ ừỡc lừu trự trong vector dừối dưng mơ ASCII ca chẽnh...Chơng 3 - Lập trình trong Matlab chia cho 0, gi tr hièn th lĂ NaN Gi tr vỏ nh, bièu thửc khỏng xc nh: 0 chia 0 HĂm cho biặt gi tr ca thội gian hiẻn tưi bao góm nâm, thng, ngĂy, giộ, phợt, giy clock date HĂm cho biặt gi tr hiẻn... chì sõ ca nĩ trong vector Ma trn ca cc kỷ tỳ hay string củng cĩ thè ừỡc sứ dũng nhừng mồi phn tứ trong ĩ phăi bng nhau Vẽ dũ: >> name = Trừộng ưi hc Bch khoa HĂ nổi ans = Trừộng ưi hc bch khoa HĂ nổi Matlab cho phẫp thao tc trn cc kỷ tỳ theo vẽ dũ dừối y a) ăo ngừỡc chuồi kỷ tỳ Function d = dao_tu ( name ) for i = length (name) :-1 : 1 Phần I - Cơ sở 33 . = 1 1 1 1 1 -1 -2 -3 -4 -5 1 1 1 1 1 S = 0 1 2 3 4 P = 0 2 6 12 20 -2 -3 -4 -5 -6 2 6 12 20 30 S = 1 8 27 64 125 -1 -8 -27 -64 - 125 Thỏng thừộng, cc dự liẻu kỵ thut ừỡc lừu dừối dng. Chơng 2 - Ma trận v các phép toán Phần I - Cơ sở 23 4 .20 00 >> a/b % Phẫp chia ( nhn ) ans = 2. 5000 >> b : a % Phẫp chia tri ans = 1 .20 00 2. 200 >> a^b. 1 .2 ] Chia phăi: C = A.B; % Gi tr ca C thu ừỡc s lĂ: C = [ 1 0.6 0.883 ] Ton 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 24 3 729

Ngày đăng: 10/07/2014, 20:21