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

Giao trinh matlab v5.2 P2 doc

11 267 1

Đ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 264,43 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Cßn víi m«i tr−íng Unix, Dos th«ng qua dßng lÖnh : Matab Giao diÎn cða MATLAB sø dòng 2 cøa sô: cøa sô thö nhÊt Ơõìc sø dòng Ờ Ơõa cŸc lÎnh v¡ dù liÎu v¡o Ơêng thĩi Ờ in kƯt qu¨; cøa sô

Trang 1

Ch−¬ng 1

C¸c kh¸i niÖm c¬ b¶n

1.1 Kh¨ n¯ng cða Matlab

Matlab l¡ gÖ ? Matlab ho­t Åæng ra sao ?

Matlab cÜ thÌ l¡m Åõìc nhùng gÖ v¡ ai cÜ thÌ hàc v¡ sø dòng Matlab ?

SÁ cÜ rÃt nhiËu b­n Åàc sÁ b¯n kho¯n vèi cŸc c¿u hÞi trÅn V¡ ê chõçng n¡y chîng ta sÁ cïng tÖm ra léi gi¨i ÅŸp

Matlab l¡ chõçng trÖnh phÀn mËm trì giîp cho viÎc tÏnh toŸn v¡ hiÌn thÙ Matlab cÜ thÌ ch­y trÅn hÀu hÆt cŸc hÎ mŸy tÏnh t÷ mŸy tÏnh cŸ nh¿n ÅÆn cŸc hÎ mŸy tÏnh lèn super computer

Matlab Åõìc ÅiËu khiÌn bêi tºp cŸc bæ lÎnh, tõçng tŸc b±ng b¡n phÏm trÅn cøa

sä ÅiËu khiÌn, Åãng théi Matlab cÝn cho phÉp kh¨ n¯ng lºp trÖnh vèi cî phŸp tháng dÙch lÎnh hay cÝn gài l¡ script file CŸc lÎnh, bæ lÎnh cða Matlab lÅn ÅÆn con sâ h¡ng tr¯m v¡ ng¡y c¡ng Åõìc mê ræng bêi cŸc phÀn Tools box trì giîp, hay cŸc h¡m öng dòng t­o ra bêi ngõéi sø dòng

CŸc lÎnh cða Matlab rÃt m­nh v¡ hiÎu qu¨ cho phÉp gi¨i cŸc lo­i hÖnh toŸn khŸc nhau v¡ Å»c biÎt hiÎu qu¨ cho cŸc hÎ phõçng trÖnh tuyÆn tÏnh cñng nhõ thao tŸc trÅn cŸc b¡i toŸn ma trºn Khánng nhùng thÆ Matlab cÝn rÃt hùu hiÎu trong viÎc trì giîp thao tŸc v¡ truy xuÃt Åã ho­ trong kháng gian 2D cñng nhõ 3D cñng kh¨ n¯ng t­o ho­t c¨nh cho viÎc má t¨ b¡i toŸn mæt cŸch sinh Åæng

Cïng vèi trÅn 25 Tools box (thõ viÎn trì giîp) khŸc nhau Matlab Åõa ÅÆn cho cŸc b­n sú lúa chàn ho¡n ch×nh v¡ phong phî vË cŸc cáng cò trì giîp źc lúc cho nhùng lØnh vúc khŸc nhau trÅn con Åõéng nghiÅn cöu m¡ cŸc b­n Ŭ lúa chàn

Dõèi Å¿y chîng tái xin liÎt kÅ mæt sâ lØnh vúc m¡ Matlab Ŭ v¡ Åang gi¨i quyÆt mæt cŸnh hiÎu qu¨

Trang 2

• NghiÅn cửu vĂ phŸt trièn trong lỉnh vỳc cỏng nghiẻp

• Giăng dưy, nghiÅn cửu lºp cŸc chừỗng trệnh ửng dũng trong giăng dưy cho cŸc mỏn kỵ thuºt nhừ toŸn, lỷ, hoŸ trong cŸc trừộng phọ thỏng nh±m n¿ng cao khă n¯ng tiặp thu củng nhừ ỷ sŸng tưo trong hàc sinh

• Giăng dưy vĂ lºp cŸc chừỗng trệnh giăng dưy vậ toŸn Åằc biẻt lĂ cŸc loưi hệnh nguyÅn lỷ cỗ băn vĂ cŸc phừỗng trệnh tuyặn tẽnh cho sinh viÅn củng nhừ hàc sinh cŸc trừộng kỵ thuºt

• Giăng dưy vĂ nghiÅn cửu trong lỉnh vỳc kỵ thuºt vĂ khoa hàc bao góm nhừ: Åiẻn tứ, lỷ thuyặt Åiậu khièn, vºt lỷ , Åó hoư , xứ lỷ ănh, vºt liẻu

• Giăng dưy vĂ nghiÅn cửu trÅn mài lỉnh vỳc cĩ xuÃt hiẻn tẽnh toŸn bao góm toŸn kinh tặ, hoŸ, cỗ hàc, sinh hàc

1.2 Hoưt Åổng cða Matlab

Muõn sứ dũng Åừỡc phÀn mậm MATLAB, trừốc tiÅn bưn phăi cĂi Åằt nĩ Vệ viẻc cĂi Åằt MatLab cỳc kỹ dÍ dĂng nÅn ờ Å¿y chợng ta khỏng Åậ cºp Åặn Tuy nhiÅn cŸc bưn nÅn chợ ỷ khi cĂi Åằt nặu cŸc bưn muõn sứ dũng thÅm cŸc ToolBox cða MatLab nhừ Simulink, Fuzzy ToolBox, DSP (digital signal processing) v.v hay muõn tẽch hỡp vối MatLab mổt sõ ngỏn ngự lºp trệnh quen thuổc mĂ bưn khỏng muõn xa cŸch nhừ C, C++, Fortran

Chương trình ứng dụng ở đây thường có ở các phiên bản sau:

MatLab 3.5 trở xuống với môi trường hoạt động lμ MS-Dos

MatLab 4.0, 4.2, 5.1, 5.2 hoạt động trong môI trường Windows

Hệnh 1.1 Giao diẻn mμn hệnh khi khời tưo Matlab 4.2

Trang 3

(ị ®©y chóng ta sÏ cê ngay lÖnh c¬ b¶n dμnh cho viÖc giíi thiÖu ch−¬ng tr×nh

lμ : intro, demo, help help )

Vμ c¸c version MatLab kh¸c cho m«i tr−íng t−¬ng t¸c Unix

ViÖc khịi ®ĩng Matlab trªn mìi hÖ thỉng mìi kh¸c Trong m«i tr−íng Window hay Macintosh ch−¬ng tr×nh th−íng ®−îc khịi ®ĩng th«ng qua viÖc click chuĩt trªn c¸c icon hay cßn gôi lμ c¸c biªu t−îng Cßn víi m«i tr−íng Unix, Dos th«ng qua dßng lÖnh

: Matab

Giao diÎn cða MATLAB sø dòng 2 cøa sô: cøa sô thö nhÊt Ơõìc sø dòng Ờ Ơõa cŸc lÎnh v¡ dù liÎu v¡o Ơêng thĩi Ờ in kƯt qu¨; cøa sô thö hai trì giîp cho viÎc truy xuÊt Ơê ho­ dïng Ờ thÌ hiÎn nhùng lÎnh hay kƯt qu¨ ƠĂu ra dõỉi d­ng graphics

ViÎc ngºt chõìng trÖnh Ơang thúc hiÎn ho»c cŸc chõìng trÖnh thúc hiÎn khâng Ơîng theo yƠu cĂu thâng qua phÏm nÜng Ctrl + C

ŠÌ thoŸt ra khÞi mâi trõĩng l¡m viÎc Matlab, chîng ta cÜ thÌ sø dòng lÎnh cða Matlab l¡ :

>> quit %ho»c

>> exit

HÖnh v 1.2 Hai cøa sô giao diÎn cða Matlab

Trang 4

1.2.1.CŸ phÏm ch yƠn dòn v¡ c c Înh hâ g dò g hÎ hđng

↑ ho»c Ctrl + p Găi l­i lÎnh v÷a thúc hiÎn trõỉc Ợ

↓ ho»c Ctrl + n Găi l­i lÎnh Ơ¬ ƠŸnh v¡o rÊt l¿u trõỉc Ợ

→ ho»c Ctrl + f ChuyÌn con trÞ sang ph¨i 1 kû tú

← ho»c Ctrl + b ChuyÌn con trÞ sang trŸi 1 kû tú

Ctrl + l ho»c Ctrl + ← ChuyÌn con trÞ tú sang trŸi 1 t÷

Ctrl + r ho»c Ctrl + → ChuyÌn con trÞ tú sang ph¨i 1 t÷

Ctrl + a hay Home ChuyÌn con trÞ vỊ ƠĂu dÝng

Ctrl + k XoŸ cho ƠƯn cuđi dÝng

CŸ Înh hÎ hđn

casesen off -BÞ thuưc tÏnh ph¿n biÎt chù hoa v¡ chù thõĩng

casesen on - Sø dòng thuưc tÏnh ph¿n biÎt chù hoa v¡ chù thõĩng

computer - LÎnh in ra mưt x¿u kÏ tú cho biƯt lo­i mŸy tÏnh

demo - LÎnh cho phĨp xem cŸc chõìng trÖnh m¹u (minh ho­ kh¨

n¯ng cða Matlab )

exit, quit - ThoŸt khÞi MATLAB

Ctr-c - D÷ng chõìng trÖnh khi nÜ bÙ rìi v¡o tÖnh tr­ng l»p khâng

kƯt thîc

help - LÎnh cho xem phĂn trì giîp mưt sđ cŸc lÎnh Ơõìc sø dòng

trong Matlab

input - Nhºp dù liÎu t÷ b¡n phÏm

load - T¨i cŸc biƯn Ơ¬ Ơõìc lõu trong 1 file Ơõa v¡o vïng l¡m viÎc

pause - Ng÷ng t­m thĩi chõìng trÖnh

save - Lõu giù cŸc biƯn v¡o file cÜ tƠn l¡ matlab.mat

1.3 BiƯn v¡ thao tŸc cða cŸc biƯn

1.3.1 BiƯn rong Matab

Trang 5

TƠn cŸc biƯn trong Matlab cÜ thÌ d¡i 19 kû tú bao gêm cŸc chù cŸi A-Z hay a-z cïng cŸc chù sđ cñng nhõ 1 v¡i cŸc kû tú Ơ»c biÎt khŸc nhõng luân ph¨i bºt ƠĂu b±ng chù cŸi TƠn cða cŸc h¡m Ơ¬ Ơõìc cñng cÜ thÌ Ơõìc sø dòng l¡m tƠn cða biƯn vỉi ƠiỊu kiÎn h¡m s khâng Ơõìc sø dòng trong suđt quŸ trÖnh tên t­i cða biƯn cho ƠƯn khi cÜ lÎnh clear xoŸ cŸc biƯn trong bư nhỉ hay clear + tƠn cða biƯn

clear - XoŸ cøa sô Ơang sø dòng, xoŸ vïng nhỉ d¡nh cho cŸc

biƯn Trong trõĩng hìp n¡y tÊt c¨ cŸc biƯnƠõìc ƠÙnh nghØa trõỉc Ợ ƠỊu bÙ xoŸ

clear name - Ch× xoŸ biƯn cÜ tƠn l¡ name

clear name1, name2, - Ch× xoŸ biƯn cÜ tƠn Ơõìc liÎt kƠ sau lÎnh clear ( name1,

name2 )

clear value - XoŸ biƯn theo giŸ trÙ cho trõỉc

pack LÎnh Ơõìc thúc hiÎn nh±m mòc Ớch sºp xƯp l­i cŸc biƯn

cñng nhõ vïng chöa biƯn cða bư nhỉ Khi bư nhỉ cða mŸy tÏnh ƠĂy lÎnh pack cho phĨp t­o ra thƠm vïng bư nhỉ cho biƯn m¡ khâng ph¨i xoŸ Ơi cŸc biƯn Ơ¬ tên t­i Câng viÎc Ơõìc thúc hiƠn nhõ sau:

1 TÊt c¨ cŸc biƯn trong bư nhỉ Ơõìc lõỉi l­i trƠn ƠØa dõỉi file pack.tmp

2 Vïng bư nhỉ cì sí s Ơõìc gi¨i phÜng

3 CŸc biƯn s Ơõìc n­p (load) v¡o bư nhỉ t÷ file pack.tmp

4 File pack.tmp bÙ huý bÞ

pack filename Sºp xƯp l­i bư nhỉ vỉi file trung gian cÜ tƠn l¡: filename

BÖnh thõĩng Matlab ph¿n biÎt khŸc nhau cŸc biƯn t­o bíi chù cŸi thõĩng v¡ chù cŸi hoa CŸc lÎnh cða Matlab nÜi chung thõĩng sø dòng chù cŸi thõĩng ViÎc ph¿n biÎt Ợ cÜ thÌ Ơõìc bÞ qua nƯu chîng ta thúc hiÎn lÎnh

>> casensen

KiÌm tra sú tên t­i cða cŸc biƯn trong bư nhỉ thâng qua bư lÎnh

who HiÌn thÙ danh sŸch cŸc biƯn Ơ¬ Ơõìc ƠÙnh nghØa

whos HiÌn thÙ cŸc biƯn Ơ¬ Ơõìc ƠÙnh nghØa cïng kÏch thõỉc cða

Trang 6

chîng v¡ tháng bŸo chîng cÜ ph¨i l¡ sâ phöc kháng

who global HiÌn thÙ cŸc biÆn còc bæ

exist( namestr ) HiÌn thÙ cŸc biÆn phò thuæc v¡o cŸch cŸc biÆn Åõìc ÅÙnh

nghØa trong chuåi namestr H¡m sÁ tr¨ l­i giŸ trÙ sau:

NÆu namestr l¡ tÅn cða 1 biÆn NÆu namestr l¡ tÅn cða 1 file.m NÆu namestr l¡ tÅn cða 1 MEX file NÆu namestr l¡ tÅn cða h¡m dÙch bêi SIMULINK NÆu namestr l¡ tÅn cða h¡m Åõìc ÅÙnh nghØa trõèc bèi Matlab

1.3.2 Šæ èn cða biÆn

Šæ lèn hay chiËu d¡i cða biÆn vector cñng nhõ ma trºn cÜ thÌ Åõìc xŸc ÅÙnh tháng qua 1 sâ h¡m cÜ s³n cða Matlab

size ( A ) Cho ra 1 vector chöa kÏch thõèc ma trºn A PhÀn tø ÅÀu

tiÅn cða vector l¡ sâ h¡ng cða ma trºn, phÀn tø thö 2 l¡ sâ cæt cða ma trºn

[ m n ] = size( A ) Tr¨ giŸ trÙ Åæ lèn cða ma trºn A v¡o vector xŸc ÅÙnh bêi 2

biÆn m v¡ n

size (A, p) Šõa ra giŸ trÙ sâ h¡ng cða ma trºn A nÆu p <1 v¡ sâ cæt

cða A nÆu p >= 2

size(x) Šõa ra vector má t¨ Åælèn cða vector x NÆu x l¡ vector

h¡ng m phÀn tø thÖ giŸ trÙ ÅÀu cða vector l¡ m v¡ giŸ trÙ thö 2 l¡ 1 Tõéng hìp x l¡ vector n cæt thÖ giŸ trÙ thö nhÃt sÁ l¡ 1 v¡ thö 2 l¡ n

lengh(x) Tr¨ giŸ trÙ chiËu d¡i cða vector x

lengh(x) Tr¨ giŸ trÙ chiËu d¡i cða ma trºn A GiŸ trÙ thu Åõìc sÁ l¡

m nÆu m>n v¡ ngõìc l­i sÁ l¡ n nÉu n>m

1.3.3 Mætsâ biÆn Åõ c ÅÙnh nghØa rõèc

ans BiÆn cho trõèc Åõìc gŸn cho phÉp tÏnh cuâi cïng cða

Trang 7

câng viÎc tÏnh toŸn khâng biƯn gŸn

esp Tr¨ ra Ơư chÏnh xŸc cða mŸy xŸc ƠÙnh bíi kho¨ng t÷ 1 ƠƯn

1 biƯn dÊu phÂy Ơưng tiƯp Ợ BiƯn esp Ơõìc sø dòng nhõ l¡ sai sđ trong 1 v¡i cŸc phĨp toŸn Ngõĩi sø dòng cÜ thÌ gŸn giŸ trÙ mỉi cho esp nhõng giŸ trÙ Ợ s khâng bÙ xoŸ Ơi bíi h¡m clear

realmax Šõa ra giŸ trÙ cða sđ lỉn nhÊt m¡ mŸy tÏnh (chõìng trÖnh)

cÜ thÌ tÏnh toŸn Ơõìc

realmin Šõa ra giŸ trÙ cða sđ nhÞ nhÊt m¡ mŸy tÏnh (chõìng trÖnh)

cÜ thÌ tÏnh toŸn Ơõìc

1.3.4 Sđ phöc

a) CŸ phĨp oŸn Ơđivỉisđ phöc:

PhĨp toŸn KƯt qu¨

c1+ c2 (a1 + a2) + i(b1 + b2)

c1- c2 (a1 - a2) + i(b1 - b2)

c1 c2 (a1 a2 - b1 b2) + i(a1 a2 + b1 b2) c1

c2

(a1 a2 - b1 b2) + i (a1 a2 - b1 b2) a21+b22a21+b22

(Šư lỉn hay trÙ tuyÎt Ơđi cða c1)

b) Mưtsđ h¡m Ơ» biÎtcða sđ phöc

real(x) H¡m cho giŸ trÙ phĂn thúc cða sđ phöc x NƯu x=a+ib thÖ

real(x)=a

imag(x) H¡m tr¨ l­i giŸ trÙ phĂn ¨o cða sđ phöc x NƯu x=a+ib thÖ

imag(x)=b

Trang 8

conj(x) TÏnh sđ liƠn hìp cða sđ phöc NƯu x=a+ib thÖ conj(x)=a-ib

abs(x) TÏnh Ơư lỉn, giŸ trÙ tuyÎt Ơđi cða sđ phöc

angle(x) TÏnh gÜc cÜ giŸ trÙ l¡ atan2(imag(x), real(x)), giŸ trÙ gÜc

n±m trong kho¨ng -π ƠƯn π

c) To­ Ơư biÌu diÍn sÜ p öc

Chîng ta cÜ thÌ biÌu diÍn sđ phöc a+ib trƠn hÎ tròc to­ Ơư Šđi vỉi hÎ tròc to­

Ơư ƠỊ cŸc phĂn thúc Ơõìc biÌu diÍn trƠn tròc x: x=a, phĂn ¨o Ơõìc biÌu diÍn trƠn tròc y: y=b Šđi vỉi hÎ to­ Ơưi cúc sđ phöc Ơõìc biÌu diÍn bíi r, θ

Trong Ợ:

r = √ a2

1+ b2

2

θ = tan-1 b

a Ngõìc l­i :

a = rcos θ

b = rsin θ

HÖnh v biÌu diÍn to­ Ơư sđ phöc Trong hÎ to­ Ơư cúc: Ơư lỉn (magnitude), v¡ pha (phase) cða sđ phöc s Ơõìc tÏnh toŸn nhõ sau:

>> r = abs(x);

>> theta = angle(x);

BiÌu diÍn sđ phöc theo Ơư lỉn v¡ pha nhõ sau:

>> y = r*exp(i*theta);

Trong hÎ to­ Ơư ƠỊ cŸc, phĂn thúc (real) v¡ phĂn ¨o (imaginary) s Ơõìc tÏnh toŸn nhõ sau:

>> a = real(x);

>> b = imag(x);

BiÌu diÍn sđ phöc: y = a + ib;

Trang 9

1.4 Sì lõìc vỊ Ơê ho­ trong MatLab

MATLAB sø dòng lÎnh X-Y Plots Ờ v Ơê thÙ, biÌu Ơê cho cŸc thâng tin mưt cŸc dÍ d¡ng Trong phĂn n¡y, v Ơê thÙ tông quŸt theo dù liÎu Ơõìc lõu trong hai vector x,y Trong trõĩng hìp cŸc biÌu Ơê hay Ơê thÙ mong muđn Ơõìc biÌu diÍn dõỉi d­ng m¹u 3D thÖ Ơìn gi¨n vỉi Matlab chîng ta ch× cĂn Ơôi sang dïng lÎnh X-Y-Z Pots

Ờ vÂ

1.4.1 VÂ rong cøa sô Ơ ho­ cða Mat ab

plot(x,y) VÂ Ơê thÙ theo to­ Ơư x-y

pot3(x,y,z) VÂ Ơê thÙ theo to­ Ơư x-y-z

title Šõa cŸc title v¡ trong hÖnh vÂ

xlabel Šõa cŸc nh¬n theo chiỊu x cða Ơê thÙ

ylabel Šõa cŸc nh¬n theo chiỊu y cða Ơê thÙ

zlabel Šõa cŸc nh¬n theo chiỊu z cða Ơê thÙ

grid VÂ cŸc Ơõĩng giÜng grid line trƠn Ơê thÙ

plot(y) VÂ Ơê thÙ theo y bÞ qua ch× sđ theo y

NƯu y l¡ sđ ¨o thÖ Ơê thÙ Ơõìc v s l¡ phĂn thúc v¡ phĂn ¨o cða

y

>> plot( real ( y ), image ( y ) )

plot(x,y,S)

plot(x,y,z,S)

plot ( x, y, s ) v theo x,y plot ( X, Y, Z, S ) v theo x, y, z vỉi

s l¡ cŸc ch× sđ s liÎt kƠ í chõìng sau

VÏ dò:

>> plot ( x, y, 'b+' )

VÂ Ơê thÙ theo x v¡ y vÜi mĂu cða Ơõĩng l¡ mĂu xanh dõìng v¡

kû tú t­o nƠn Ơõĩng l¡ dÊu +

Trang 10

Vẽdũ hệnh helx:

Hệnh 1.3 Hệnh Helix

>> t = 0:pi/50:10*pi;

>> plot3(sin(t),cos(t),t);

>> Title(' Vẽ du ve plot3() trong Matlab ')

Matlab rÃt mưnh trong viẻc xứ lỷ Åó hoư Ta sÁ Åậ cºp vÃn Åậ nĂy rò hỗn ờ chừỗng sau

1.4.2 In Ãn rÅn mĂn hệnh Åó hoư

Việc in các ảnh trên mμn đồ hoạ có thể đ−ợc thực hiện thông qua các menu lệnh may các lệnh của Matlab

>> print

- In mμn hình của cửa sổ đồ hoạ hiện thời ra máy in

>> print filename

- In mμn hình đồ hoạ ra file

>> print esp filename

- copy mμn đồ hoạ theo khuôn dạng eps File thu đ−ợc có thể đ−a vμo các trang văn bản

-1

0

1 -1

0 1

0 10 20 30 40

Vi du ve plot3() trong Matlab

Trang 11

1.4.3 Mætsâ vÏdò má ¨ Åã ho­

HÖnh 1.4 H¡m sin2x, cos(x)^2 v¡ cos(x^2) a) VÏ dò má t¨ kh¨ n¯ng vÁ h¡m Åã ho­ trong kháng gian 2D Gi¨ sø vèi h¡m sin2x, cos(x)^2 v¡ (cosx)^2 trong kho¨ng 0 < x < 10 ViÎc thao tŸc dÍ d¡ng trÅn tºp cŸc lÎnh sau

>> hold on

>> x = lÏnspace(0,10);

>> y1 = sin(2*x);

>> y2 = sin(x.^2);

>> y3 = (sin(x)).^2;

>> plot ( x,y1 ); plot ( x,y2 ); plot( x,y3 );

H¡m plot ( x,y ) sÁ cho ra trÅn m¡n hÖnh Åã ho­ h¡m y theo vector x

b) H¡m má t¨ Åõéng cong tham biÆn trong kháng gian 2D v¡ 3D

Šõéng cong tham biÆn theo t vèi t trong kh¨ng t÷ [ 0 2*pi ] cho kÆt qu¨ HÖnh vÁ 1.5

-1

-0.5

0 0.5

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

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN