Professional Documents
Culture Documents
Huong Dan Hoc Matlab
Huong Dan Hoc Matlab
Huong Dan Hoc Matlab
com
Ebook Team
Matlab ton tp
ci t
1. MATLAB for WIN
Yu cu h thng
H thng IBM hoc tng thch 100% vi b vi x l 486 Intel cng vi b ng x l ton
hc 487 ( ngoi tr 486 DX c b x l bn trong ), Pentium hoc Pentium Pro
Processor.
Microsoft Window 95 hoc Window NT.
a) CD ROM
- B iu phi ho 8 bit v card mn hnh ( 256 mu ng thi )
- Khong trng a ci t v chy cc tu chn. S yu cu a cng thay i tu
theo kch c cc partition v cc tp tr gip help c ci t trc tip theo tu chn. Qu
trnh ci t s thng bo cho bn bit t m v dung lng a yu cu. V d:
Partition vi mt lin cung mt 0 cn 25 MB cho ring MATLAB v 50 MB cho c
MATLAB v HELP.
Partition vi lin cung 64 KB cn 115 MB cho ring MATLAB v 250 MB cho c
MATLAB v HELP.
b ) B nh.
Microsoft WIndow 95: 8 MB ti thiu v 16 MB khuyn ngh.
Microsoft WIN NT 3.51 hoc 4.0: 12 MB ti thiu v 16 MB khuyn ngh.
Cc khuyn ngh
B nh ph vo (B nh b sung: additional Memory).
V mch tng tc ho b tr cho Microsoft Window.
My in tr gip cho Microsoft Window.
V mch m thanh tr gip cho Microsoft Window.
Microsoft Word 7.0 hoc hn ( nu bn c nh s dng MATLAB NoteBook ).
Trnh bin dch Watcom C, Borland, Microsoft (xy dng file MEX).
Netscape Navigator 2.0 hoc version cao hn hoc Microsoft Internet Explorer 3.0
chy MATLAB Help Desk.
Qu trnh ci t
1. t a vo CD. Trn WIN 95 chng trnh SETUP bt u chy t ng nu nh
MATLAB cha c ci t trc. Cn khng, nhn p vo biu tng setup.exe bt u
qu trnh ci t.
2. Chp nhn hay b i nhng khuyn co v cp ng k phn mm trn mn hnh.
Nu chp nhn bn mi c th bt u qu trnh ci t.
3. Trn Custumer Information, nhp vo tn bn, a ch ca bn. Tn khng c qu
30 k t. Nhn nt NEXT.
4. Nhn vo cc hp trng thnh phn du v nu nh bn mun tu chn v
nhn tip nu bn c nh khng mun tu chn ( c th thm vo sau ny nu mun
Updatesofts.com
Ebook Team
Chng1
Updatesofts.com
Ebook Team
bn hiu c chng. Trc tin, mt cch n gin nht l chng ta quan nim nh l mt
my tnh c bn, tip theo l nh my tnh k thut v nh my tnh c th lp trnh c,
cui cng l nh my tnh hin i nht. Bng cch quan nim ny bn s d dng hiu
c nhng cch m MATLAB gii quyt nhng vn thng thng v xem MATLAB gii
quyt nhng vn v s phc mm do nh th no.
Tu thuc vo kin thc ca bn, bn c th tm thy nhng phn trong cun sch hng dn ny hng th hay bun t...
Khi bn chy chng trnh MATLAB, n s to mt hoc nhiu ca s trn mn hnh ca
bn, v ca s lnh (command) l ca s chnh bn giao tip vi MATLAB, ca s ny
xut hin nh hnh di y.
Cc k t EDU>> l du nhc ca MATLAB trong student MATLAB. Trong cc
version khc ca MATLAB, du nhc n gin ch l >>. Khi ca s lnh xut hin, l
ca s hot ng, con tr xut hin bn phi du nhc nh hnh di. Con tr v du
nhc ny ca MATLAB bo rng MATLAB ang i thc hin lnh.
Hnh 1.1
Trong MATLAB chng ta c th gii quyt vn ny theo nhiu cch. Trc tin ging nh
my tnh trn, chng ta c th tnh:
>> 4 + 6 + 2
ans=
12
>> 4*25 + 6*52 + 2*99
ans=
610
Ch rng MATLAB khng ch n nhng khong trng, cho tt c cc phn, v
php nhn c mc u tin cao hn php cng. V mt ch khc l MATLAB gi kt
qu ans (vit tt ca answer) cho c hai php tnh.
Nh ni trn, vn trn c th gii quyt bng cch cha cc thng tin vo
bin ca MATLAB:
>> erasers = 4
erasers=
4
Updatesofts.com
Ebook Team
>> pads = 6
pads=
6
>> tape = 2;
>> iterms = erases + pads + tape
iterms=
12
>> cost = erases*25 + pads*52 + tape*99
cost=
610
y chng ta to 3 bin MATLAB: erases, pads, tape cha s lng mi loi vt.
Sau khi vo cc gi tr cho cc bin ny, MATLAB hin th kt qu ra mn hnh, tr trng
hp bin tape. Du hai chm ng sau cu lnh >> tape = 2; thng bo cho MATLAB
nhn gi tr gn nhng khng hin th ra mn hnh. Cui cng khc vi gi kt qu ans,
chng ta yu cu MATLAB gi kt qu tng s cc vt l iterms, v tng s tin l cost. Ti
mi bc MATLAB u a ra cc thng tin. V c lu gi cc bin nn chng ta c th yu
cu MATLAB tnh gi tr trung bnh cho mi vt:
>> everage_cost = cost/iterms
everage_cost=
50.8333
Bi v everage cost c hai t, m MATLAB yu cu bin ch c mt t, nn chng ta dng
du gch di ni hai t ny thnh mt t.
Ngoi cc php tnh trn, MATLAB cn c mt s php tnh c bn khc nh bng di
y:
Php tnh
Php cng, a + b
Php tr, a - b
Php nhn, a.b
Php chia, ab
Php lu tha, ab
Biu tng
+
*
/ hoc \
^
V d
5+3
7-4
18*24
56/8 = 8\ 56
5^2
Trong cc php ton trn c mc u tin khc nhau, khi tnh t tri sang phi ca
mt dng gm nhiu lnh th php ton lu tha c mc u tin cao nht, tip theo l
php nhn v php chia c mc u tin bng nhau cui cng l php cng v php tr
cng c mc u tin bng nhau.
1.2 Khng gian lm vic ca MATLAB
Cng nh bn lm vic vi ca s Lnh, MATLAB nh cc lnh bn g vo cng nh
cc gi tr bn gn cho n hoc n c to ln. Nhng lnh v bin ny c gi l lu gi
trong khng gian lm vic ca MATLAB, v c th c gi li khi bn mun. V d, kim
tra gi tr ca bin tape, tt c nhng g bn phi lm l yu cu MATLAB cho bit bng
cch nh vo tn bin ti du nhc:
>> tape
Updatesofts.com
Ebook Team
tape=
2
Nu bn khng nh tn bin, bn c th yu cu MATLAB cho danh sch cc bin bng
cch dnh lnh who t du nhc lnh:
>> who
Your variables are:
ans
cost
iterms
average_cost erasers
pads
tape
Gi tr
Tn bin mc nh dng tr v kt qu
S nh nht, nh vy dng cng vi 1 cs nh nht ln hn 1
S ca php ton s thc
ch s v cng nh kt qu ca 1/0
Dng ch s khng xc nh nh kt qu ca 0/0
i=j=
S cc i s a vo hm c s dng
S cc i s hm a ra
S nh nht c th c ca s thc
S ln nht c th c ca s thc
Updatesofts.com
Ebook Team
% S cc ty.
Updatesofts.com
Ebook Team
4
Bin erases c gn gi tr l 4, cn tt c k hiu phn trm v vn bn ng sau n u
b l i. c im ny gip cho chng ta d theo di cng vic chng ta ang lm.
Nhiu lnh c th t trn cng mt hng, chng cch nhau bi du phy hoc du chm
phy, nh:
>> erases = 4, pads = 6; tape = 2
erases=
4
tape=
2
du phy yu cu MATLAB hin th kt qu trn mn hnh; cn du chm phy l khng
hin th kt qu trn mn hnh.
>> average_cost = cost/ ...
iterms
average_cost=
50.83333
Nh v d trn, ta c th dng du ba chm (...) ch cu lnh c tip tc hng di,
php tnh thc hin c khi du ba chm ngn cch gia ton t v bin, ngha l tn bin
khng b ngn cch gia hai hng:
>> average_cost = cost/ it...
erms
??? age_cost = cost/iterms
Missing operator, coma, or semicolon.
ging nh vy, trng thi ca li gii thch khng th tip tc:
>> % Comments cannot be continued ...
>> either
??? Undefined function or variable either.
Bn c th dng chng trnh bng cch nhn ng thi Ctrl v C.
1.5 S phc
Mt trong nhng c im mnh m nht ca MATLAB l lm vic vi s phc. S phc
trong MATLAB c nh ngha theo nhiu cch, v d nh sau:
>> c1 = 1 - 2i
% Chn thm k t i vo phn o.
c1=
1.0000 - 2.0000i
>> c1 = 1 - 2j
% j y tng t nh i trn.
c1=
1.0000 - 2.0000i
>> c2 = 3*(2-sqrt(-1)*3)
c2=
Updatesofts.com
Ebook Team
6.0000 - 9.0000i
>> c3 = sqrt(-2)
c3=
0 + 1.4142i
>> c4 = 6 + sin(.5)*i
c4=
6.0000 + 0.4794i
>> c5 = 6 + sin(.5)*j
c5=
6.0000 + 0.4794i
Trong hai v d cui, MATLAB mc nh gi tr ca i = j = dng cho phn o. Nhn vi i
hoc j c yu cu trong trng hp ny, sin(.5)i v sin(.5)j khng c ngha i vi
MATLAB. Cui cng vi cc k t i v j, nh trong hai v d u trn ch lm vic vi s
c nh, khng lm vic c vi biu thc.
Mt s ngn ng yu cu s iu khin c bit cho s phc khi n xut hin, trong
MATLAB th khng cu nh vy. Tt c cc php tnh ton hc u thao tc c nh i
vi s thc thng thng:
>> c6 = (c1 + c2)/c3
c6=
-7.7782 - 4.9497i
>> check_it_out = i^2
check_it_out=
-1.0000 + 0.0000i
% T cc d liu trn
% Bnh phng ca i phi l -1
% Gi li c1
% Tnh argument ca s phc
% Tnh gc ca s phc theo radian
Updatesofts.com
Ebook Team
-1.1071
>> deg_c1 = angle_c1*180/ pi
-63.4349
>> real_c1 = real(c1)
real_c1=
1
>> imag_c1 = imag(c1)
imag_c1=
-2
-------------------oOo------------------
Chng2
CC C tnh K THUT
Updatesofts.com
abs(x)
acos(x)
acosh(x)
angle(x)
asin(x)
asinh(x)
atan(x)
atan2(x, y)
atanh(x)
ceil(x)
conj(x)
cos(x)
cosh(x)
exp(x)
fix(x)
floor(x)
gdc(x, y)
imag(x)
lcm(x, y)
log(x)
log10(x)
real(x)
rem(x, y)
round(x)
sign(x)
10
sin(x)
sinh(x)
sqrt(x)
tan(x)
tanh(x)
>> 4*atan(1)
ans=
3.1416
>> help atant2
Ebook Team
% Mt cch tnh xp x gi tr ca pi
% Yu cu gip i vi hm atan2
Updatesofts.com
Ebook Team
11
>> 180/pi*atan2(-2, 3)
ans=
-33.69
>> 180/pi*atan2(2, 3)
ans=
33.69
>> 180/pi*atan2(-2, -3)
ans=
-146.31
Mt s v d khc:
>> y = sqrt(3^2 + 4^2) % Tnh cnh huyn ca tam gic pitago 3-4-5
y=
5
>> y = rem(23,4)
% 23/4 c phn d l 3
y=
3
>> x = 2.6,y1 = fix(x),y2 = floor(x),y3 = ceil(x),y4 = round(x)
x=
2.6000
y1=
2
y2=
2
y3=
3
y4=
3
>> gcd(18,81) % 9 l c s chung ln nht ca 18 v 81
ans=
9
>> lcm(18,81) % 162 l bi s chung ln nht ca 18 v 81
ans=
162
V d: c lng
lng chiu cao ca ngi nh
Vn : Gi thit bit khong cch t ngi quan st n ngi nh l D, gc t ngi quan
st n ngi nh l ; chiu cao ca ngi quan st l h. Hi ngi nh cao bao nhiu?
Gii php: Ta biu din kch thc nh hnh 2.1:
(khng thy)
Hnh 2.1
Ngi nh c chiu cao l H + h, H l chiu di ca mt cnh ca tam gic, chiu di ny
c th tnh c bng cng thc quan h gia gc v cnh ca tam gic:
tan() =
Updatesofts.com
Ebook Team
12
Updatesofts.com
Ebook Team
13
Gii php:
Updatesofts.com
Ebook Team
14
=
acid l lng acid ban u trong dung dch, water l lng nc ban u trong dung
dch, lost l lng phn trm nc thm vo. S acid cn li trong dung dch sau ln
nhng th nht l:
acid_left =
Ngha l, khi nhng ln th hai nng dung dch s l:
con =
=
=
Tip tc qu trnh ny, sau n ln nhng, nng acid l:
con =
Nu nng acid cn li l mc ti thiu chp nhn c, s ln nhng cc i s l mt
s nguyn bng hoc nh hn n:
n=
Trong MATLAB gii php s l:
>> initial_con = 90
initial_con=
90
>> min_con = 50
min_con=
50
>> lost = 0.01;
>> n = floor(log( initial_con/min_con)/log(1+lost))
n=
59
Nh vy c th nhng 59 ln trc khi nng acid gim xung di 50%. Ch hm
Updatesofts.com
chng 3
Ebook Team
15
NHNG C IM CA CA S LNH
theta
Cc bin ny c dng trong v d c lng chiu cao ngi nh. xem chi tit hn v
cc bin ta dng lnh whos:
>> whos
Name
Size
Bytes Class
D
1x1
8 double array
buiding_height 1x1
8 double array
h
1x1
8 double array
theta
1x1
8 double array
Grand total is 4 elements using 32 bytes
Mi bin c lit k vi kch c ca n, s bytes s dng, v cc lp ca chng (class),
trong v d c bit ny, cc bin u l s n, c chnh xc hai s sau du phy. Lnh
whos c bit c ch khi nghin cu n phn mng v cc kiu d liu khc.
Ngoi cc hm ny, trong mc Show Workspace trong bng chn file to ra ca s
GUI gi l Workspace Browser,
Browser n cha cc thng tin tng t nh lnh whos. Thm na
n to cho bn kh nng xo, lm sch cc bin m bn chn. Ca s ny cng c th to
bng cch nhn nt Workspace Browser,
Browser trn thanh cng c ca ca s lnh.
Nh trnh by trn, lnh clear c th xo bin t khng gian lm vic ca
MATLAB.
V d:
>> clear h D
% Xo cc bin h v D
>> who
Your variables are:
buiding_height
theta
Updatesofts.com
Ebook Team
16
Updatesofts.com
Ebook Team
17
hin ti. Ging nh vy, trong mc Load Workspace trong bng chn file m hp hi thoi
gi li tt c cc bin m ta ghi li t khng gian lm vic trc, n khng lm mt
cc bin ny trong khng gian lm vic hin ti. Khi ta gi li cc bin, m cc bin ny
trng tn vi cc bin trong khng gian lm vic ca MATLAB, n s thay i gi tr ca cc
bin theo gi tr ca cc bin gi ra t file.
Nu bng chn file khng thun tin hoc khng p ng c nhng yu cu ca
bn, MATLAB cung cp hai lnh save v load, n thc hin mt cch mm do hn, trong
trng hp c bit, lnh save cho php bn ghi mt hoc nhiu hn mt bin tuy theo s
la chon ca bn.
V d:
>> save
Cha tt c cc bin trong MATLAB theo kiu nh phn trong file MATLAB.mat
>> save data
cha tt c cc bin trong MATLAB theo kiu nh phn trong fle data.mat.
>> save data erasers pads tape -ascii
Ghi cc bin erasers, pads, tape trong dng m ASCII 8 s trong file data. File dng m
ASCII c th sa i bng bt c chng trnh son tho vn bn no, ch rng file ASCII
khng c phn m rng .mat.
>> save data erasers pads tape -ascii -double
Ghi cc bin erasers, pads, tape dng ASCII 16 s trong file data.
Lnh load cng dng vi c php tng t.
3.3 Khun dng hin th s
Khi MATLAB hin th kt qu dng s, n tun theo mt s quy nh sau:
Mc nh, nu kt qu l s nguyn th MATLAB hin th n l mt s nguyn, khi kt qu l
mt s thc th MATLAB hin th s xp x vi bn ch s sau du phy, cn cc s dng
khoa hc th MATLAB hin th cng ging nh trong cc my tnh khoa hc.
Bn c th khng dng dng mc nh, m to mt khun dng ring t mc
Preferences,
Preferences trong bng chn file,
file c th mc nh hoc nh dng xp x ti du nhc.
Chng ta dng bin average_cost ( trong v d trc) lm v d, dng s ny l:
Lnh ca MATLAB
format short
format long
format short e
format long e
format short g
Average_cost
50.833
50.83333333333334
5.0833e+01
5.083333333333334e+01
50.833
format long g
50.83333333333333
format hex
40496aaaaaaaaaab
Ch thch
5 s
16 s
5 s vi s m
16 s vi s m
chnh xc hn format short
hoc format short e
chnh xc hn format long
hoc format long e
h c s 16
Updatesofts.com
format bank
format +
format rat
Ebook Team
50.83
+
305/ 6
18
hai s h 10
dng, m hoc bng khng
dng phn s
Chng 4
Script M_files
Updatesofts.com
Ebook Team
19
gip bn son tho script file khi tnh ton cho nhiu trng hp, lnh input cho
php bn to cu nhc vo d liu c an ton. V d example1.m vi nhng phn c sa:
function example1
% example1.m V d c lng chiu cao ngi nh
h=2
theta = 60
Updatesofts.com
Ebook Team
20
Updatesofts.com
Ebook Team
21
2
theta = 60
theta=
60
D = input( Vo khong cch gia ngi v ngi nh: )
Vo khong cch gia ngi v ngi nh: 60
building_height = h + D*tan(theta*pi/180)
building_height=
64.8319
echo off
Nh bn thy trong trng hp ny, lnh echo lm cho kt qu kh c hn, nhng ngc li lnh n c th rt c ch khi g ri nhiu script file ng dng.
------------------oOo-------------------
Chng 5
QUN L Tp
Thm th mc dir1 vo bt u ca ng dn
Hin th th mc hin thi
Gn th mc lm vic hin thi cho bin p
Thay i th mc a ra bng ng dn
Xo M_file test.m
Danh sch tt c cc file trong th mc hin thi
Tr li file trong th mc hin thi trong cu trc
bin d
M test.m son tho, ging nh Open trong
bng chon file
Kim tra s tn ti ca file cow.m trong ng
dn
Kim tra s tn ti ca th mc d trong ng dn
Tch file nh\ trong Windows95 v NT, : trn
Macintosh
To tn file vi ng dn y
Danh sch hm M_file, gi ra t b nh
Ging nh dir
MATLAB ch khi ng script M_file, thc
hin trc khi startup.m
Updatesofts.com
MATLABroot
path
pathdef.m
pathsep
pwd
rmpath dir1
startup.m
tempdir
tempname
type test
what
which test
Ebook Team
22
Updatesofts.com
Ebook Team
23
Updatesofts.com
Ebook Team
24
Updatesofts.com
Ebook Team
chng 6
25
0
0
0.1 0.2
0.31 0.59
0.3
0.81
0.4
0.95
0.5
1.0
0.6
0.95
0.7
0.81
0.8
0.59
0.9
0.31
Updatesofts.com
>> x(2)
ans=
0.3142
>> y(5)
ans=
0.9511
Ebook Team
26
0.6283
0.9425
1.2566
0.5878
0.3090
0.0000
0.9425
1.5708
0.6283
Updatesofts.com
Ebook Team
27
Vi mng c s lng phn t t th ta c th nhp vo trc tip, nhng vi mng c s lng ln cc phn t th ta dng mt trong hai cch sau:
+) To mt mng bt u l phn t 0, sau bng phn t trc cng vi 0.1, phn t cui l
1, tt c cc phn t ca mng c nhn vi :
>> x= (0:0.1:1)*pi
x=
Columns 1 through 7
0 0.3142 0.6283 0.9425 1.2566 1.5708
Columns 8 through 11
2.1991 2.5133 2.8274 3.1416
1.8850
linspace(gi
tr phn t u, gi tr phn t cui, s cc phn t)
linspace
>> x = linspace(0,pi,11)
x=
Columns 1 through 7
0 0.3142 0.6283 0.9425 1.2566 1.5708
Columns 8 through 11
2.1991 2.5133 2.8274 3.1416
1.8850
v d:
>> logspace(0,2,11)
ans=
Columns 1 through 7
1.0000 1.5849 2.5119 3.9811 6.3096 10.0000
Columns 8 though 11
25.1189 39.8107 63.0957 100.0000
15.8489
Updatesofts.com
Ebook Team
28
1 2 3 4 5
b=
1 3 5 7 9
>> c = [a b]
1 2 3 4 5 1 3 5 7 9
v d trn ta to hai mng thnh phn l a v b sau to mng c bng cch ghp hai
mng a v b.
Ta cng c th to mng nh sau:
>> d=[a(1:2:5) 1 0 1]
d=
1 3 5 1 0 1
a l mng gm cc phn t [1 3 5], mng d l mng gm cc phn t ca a v ghp thm
cc phn t [1 0 1]
Tm li ta c bng cu trc cc mng c bn:
x=[ 2 2*pi sqrt(2) 2-3j ]
x= first : last
x= first : increment : last
x= linspace(fist, last, n)
x= logspace(first, last, n)
Updatesofts.com
Ebook Team
29
Updatesofts.com
Ebook Team
30
3.0000 - 3.0000i
4.0000 - 4.0000i
5.0000 - 5.0000i
trn ta ch xt n mng c mt hng hay mt ct by gi ta xt trng hp c
nhiu hng v nhiu ct, n cn c gi l ma trn. V d sau y l ma trn g c
hai hng v bn ct:
>> g = [1 2 3 4;5 6 7 8]
g=
1 2 3 4
5 6 7 8
Trong v d ny ta dng du cch vo cc phn t trong hng v du chm phy (
; ) to hai hng; ngoi ra ta cng c th to ma trn nh sau:
>> g = [1 2 3 4
5678
9 10 11 12]
g=
1
2
3
5
6
7
9 10 11
4
8
12
Ch :
Khi nhp vo ma trn th gia cc hng s phn t phi bng nhau nu khng
chng trnh s b bo li nh v d sau:
>> h = [1 2 3;4 5 6 7]
Numbers of elements in each row must be the same
+) Php ton gia mng vi s n.
Trong v d trc chng ta to mng x bng cch nhn cc phn t ca mt mng
vi . Cc php ton n gin khc gia mng vi s n l php cng, php tr, php nhn,
v php chia ca mng cho s bng cch thc hin php ton i vi tng phn t ca
mng.
V d:
>> g = [1 2 3 4; 5 6 7 8; 9 10 11 12];
>> -2
% Tr cc phn t ca mng g i 2
ans=
-1 0 1
2
3 4 5
6
7 8 9 10
>> 2*g - 1
% Nhn tt c cc phn t ca mng g vi 2 sau tr i 1
ans=
1
3
5 7
9 11 13 15
17 19 21 23
Updatesofts.com
Ebook Team
31
Updatesofts.com
3.0000
3.3333
Ebook Team
3.6667
32
4.0000
% Cc phn t ca g c lu tha v s m l 2.
ans=
1
4
9
16
25
36
49
64
81
100
121
144
>> g.^-1
% Cc phn t ca g c lu tha vi s m l -1.
ans=
1
0.5
0.33333
0.25
0.2 0.16667
0.14286
0.125
0.11111
0.1
0.090909 0.083333
>> 2.^g
% Cc phn t ca g l s m ca 2.
ans=
2
4
8
16
25
36
49
64
729
1000 1331 1728
Updatesofts.com
>> g.^(h - 1)
ans=
1
5
81
1
6
100
Ebook Team
33
0
0
0
0
0 0 0
Updatesofts.com
Ebook Team
34
0
0
0
0
1
0
Updatesofts.com
1 2 3
>> C = [ A B(:,[1 3])]
trn A.
C=
1 2 3
4 5 6
7 8 9
>> C = [1 3]
C=
1 3
>> B = A(C,C)
B=
1 3
7 9
>> B= A(:)
B=
1
4
7
2
5
8
3
6
9
>> B = B.'
chm.
B=
1 4 7
>> B = A;
>> B(:,2) = []
B=
1 3
4 6
7 9
7
4
1
Ebook Team
35
9
6
3
% To ma trn ct B t ma trn A.
Updatesofts.com
Ebook Team
36
1 2 3
1 4 7
7 8 9
>> B = A(:,[2 2 2 2])
B=
2 2 2 2
4 4 4 4
8 8 8 8
To ma trn B bng cch to bn ct ging ct th hai ca ma trn A, s hng vn gi
nguyn bng s hng ca ma trn A.
>> A(2,2) = []
??? Indexed empty matrix assignment is not allowed.
y MATLAB khng cho php xo i mt phn t ca ma trn m phi xo i mt ct
hoc mt hng.
>> B = A(4,:)
??? Index exeeds matrix dimension.
V d trn ma trn A khng c bn hng, nn MATLAB thng bo nh trn.
>> B(1:2,:) = A
??? In an assignment A(matrix, :) = B, the number of columns in A and B must be the
same.
MATLAB ch ra rng bn khng th gn mt ma trn vo trong mt ma trn khc m khc
nhau v kch c.
>> B = [1 4 7];
>> B(3:4,:) = A(2:3,:)
B=
1 4 7
0 0 0
1 4 7
7 8 9
Nhng ta c th gn hai hng ca ma trn A cho hai hng ca ma trn B, khi ma trn A v
ma trn B c cng s ct. Ma trn B ch c mt hng nn khi thm hng th ba v hng th
t th hng th hai ca ma trn B c mc nh cho thm cc phn t 0 vo.
>> G(1:6) = A(:,2:3)
G=
2 4 8 3 7
Updatesofts.com
Ebook Team
37
Updatesofts.com
Ebook Team
38
Updatesofts.com
Ebook Team
39
Updatesofts.com
Ebook Team
40
ans=
0
>> isequal(A,B)
ans=
0
>> isequal(A,A)
ans=
1
>> isequal(C,C)
ans=
0
Hm iseq
isequal
ual tr li gi tr logic l ng (1) khi hai mng c cng kch c, cc phn t ging
nhau. Ngoi ra n tr li gi tr l sai (0).
Thm vo , hm ismember ch ra cc phn t ging nhau gia hai mng:
>> ismember(A,B)
ans=
0
1
0
1
0
1
0
1
0
>> ismember(A,B)
ans=
1
1
1
1
1
1
1
1
1
% Kt qu tr v l vector ct.
>> x = 0:2:20
% mng vi 11 phn t.
x=
0 2 4 6 8 10 12 14 16 18 20
>> ismember(x,A)
ans=
0 1 1 1 1 0 0 0 0 0 0
y l mng c cng kch c vi x, vi 1 ti cc phn t chung.
Updatesofts.com
Ebook Team
41
>> ismember(x,A)
ans=
0
1
0
1
0
1
0
1
0
y l mng c s phn t bng s phn t ca A, vi 1 ti cc phn t chung. V vy
Updatesofts.com
Ebook Team
42
-5
-3
-1
1
3
5
7
9
Nhng hm ny c tng kt li trong bng di y:
So snh mng
isequal(A, B)
ismember(A, B)
intersect(A, B)
setdiff(A, B)
setxor(A, B)
union(A, B)
ng nu A v B ging nhau.
ng khi phn t ca A cng l phn t ca B.
Cc phn t chung gia A v B.
Cc phn t c trong A m khng c trong B.
Cc phn t khng thuc phn chung gia A v
B.
Tt c cc phn t c trong A v B.
Updatesofts.com
Ebook Team
43
4
Vi hai thng s a ra, hm size tr li s hng trong bin th nht, v s ct trong bin
th hai.
>> r = size(A,1)
r=
2
>> c = size(A,2)
Gi hai thng s, hm size ch tr v s ct hoc s hng.
>> length(A)
ans=
4
Tr v gi tr s hng hoc s ct, gi tr no ln hn c tr v.
>> B = pi:0.01:2*pi;
>> size(B)
ans=
1 315
Cho bit rng B l vector hng, v
>> length(B)
ans=
315
tr li di ca vector.
>> size([ ])
ch ra rng ma trn rng khng c kch c.
Nhng khi nim ny c tng kt trong bng di y:
Kch c ca mng
whos
s = size(A)
[ r, c ] = size(A)
r = size(A, 1)
c = size(A, 2)
n = length(A)
Updatesofts.com
Ebook Team
44
>> b = [2 2; 2 2]
b=
2
2
2
2
>> c = [0 3; 3 0]
c=
0
3
3
0
>> d = cat(3,a,b,c)
d(:,:,1)=
1
0
0
1
d(:,:,2)=
2
2
2
2
d(:,:,3)=
0
3
3
0
>> size(d)
ans=
2
2
3
To cc mng hai chiu a, b, c, sau ghp chng lai vi nhau thnh mng ba chiu
bng cch s dng hm cat. Nh vy mng d l mng c hai hng, hai ct, v ba trang.
Mng a to trang th nht, b l trang th hai, v c l trang th ba. Thng s trang din t
chiu th ba ca mng, cung cp mt cch hnh dung v mng ba chiu nh mng hai
chiu, cc trang xp th t t mt cho n cui nh trong mt quyn sch. i vi cc
mng c s chiu cao hn, khng c tn chung, v n cng rt kh tng tng!
Thao tc vi mng nhiu chiu cng ging nh cc th tc a ra trn i vi mng
mt chiu v hai chiu. Ngoi ra MATLAB cn cung cp mt s hm thao tc trc tip i
vi mng nhiu chiu:
Cc hm vi mng nhiu chiu
s = size(A)
Cho n_s chiu ca A, tr v vector hng s vi n phn
t, phn t th i l kch c chiu th i ca mng A
ndims(A)
S chiu ca A, tng t nh hm length(size(A))
permute(A, order)
n_s chiu, tng ng vi ton t chuyn v chm.
ipermute(A, order)
Ngc vi hm permute(A, order)
shiftdim(A, n)
Thay i s chiu ca mng A bng s nguyn n.
squeeze(A)
Tr li s chiu duy nht ca mng, tng ng vi tr
li s chiu ln hn ba.
V d: S suy gim do phn r dng mng
Vn : Phn t polonium c chu k phn r l 140 ngy, c ngha l do s phn r m
khi lng ca poloniun ch cn li 1/ 2 so vi khi lng ban u sau 140 ngy. Gi s ban
u ta c 10 grams polonium, n s cn li bao nhiu sau mi tun trong vng mi tun?
Gii php: Ta s dng phng php gii trong chng 2, khi lng cn li sau sau mt
khong thi gian l:
khi lng cn li = khi lng ban u . (0.5)thi gian/ chu k
gii bi ton ny, gi php ca MATLAB l:
Updatesofts.com
Ebook Team
45
8.1225
7.8458
Dng ton t mng lm cho n tnh cc gi tr mt cch n gin hn khi nhn nhiu
gi tr ca mt bin. Ch rng nhn chm (.^) c s dng v chng ta mun lu tha 0.5
ln i vi mi phn t ca mng. Nhng d liu ny c th d dng v chng trong
MATLAB nh hnh di:
>> plot(time/7,amount_left)
>> xlabel(Week number), ylabel(Amount of Polonium left)
Hnh 6.1
V d: Tm kim gii php s dng vectors
cho 7,
Updatesofts.com
Ebook Team
46
Gii php: Khng c mt gii php phn tch no cho vn ny c, v vy chng ta phi
gii bng phng php tm kim. Nu bn bt u vi tt c cc s l bi s ca 7 v nh
hn 1000, cn cc s khc th khng xt n, bn s xy dng c mt gii php. Trong
MATLAB gii php c a ra trong script file l:
function pow
% pow.m script file to solve problem of the week
n=7:7:1000
% all multiples of 7 less than 1000
number=length(n)
% number of potential solutions
n(rem(n,2)~=1)=[];
% throw out non solutions by
number=length(n)
n(rem(n,3)~=1)=[];
%setting them equal to an empty array,
number=length(n)
n(rem(n,4)~=1)=[];
% the function rem computes remainders
number=length(n)
n(rem(n,5)~=1)=[];
number=length(n)
n(rem(n,6)~=1)=[];
Chy script file ny ta c gii php nh di y:
>> pow
number =
142
number =
71
number =
24
number =
12
number =
2
n=
301
721
V d: Tnh ton nng acid dng cc php ton vi mng
Updatesofts.com
Ebook Team
n=
Trong MATLAB, gii php vit trong script M_file l:
function example6_2
% script M_file example6_2
initial_con=90;
min_con=50;
lost=1:10 % consider 1% to 10% in increments of 1%
n=floor(log(initial_con/min_con)./log(1+lost/100))
stem(lost,n)
xlabel('Percent Lost with Each Dip')
ylabel('Number of Dips')
title('Acid-Water Bath Dipping Example')
Chy chng trnh trn ta c kt qu nh sau:
lost =
1 2 3 4 5 6 7
n=
59 29 19 14 12 10
10
Hnh 6.2
Ch y yu cu phng php chia chm v log(1 + lost/ 100) l mt vector
47
Updatesofts.com
Ebook Team
48
--------------------oOo------------------
chng 7
cc php tnh vi mng
7.1 To phng
phng trnh tuyn tnh.
V c bn, MATLAB c vit i vi nhng ma trn v thc hin php ton s hc
tuyn tnh n gin m xut hin trong nhiu ng dng. Mt vn chung nht ca s hc
tuyn tnh l vic gii phng trnh. V d to phng trnh:
. =
A.x = b
Biu tng php nhn ton hc (.) c nh ngha trong php ton trn, khc vi k
hiu ta dng i vi mng trc kia. Trong MATLAB php nhn ma trn ny c nh
ngha bng du sao (*). Tip theo nh ngha du bng, ma trn to ra t ma trn A v
vector x bng vi vector b. Gii php tn ti cho s cn bng cp trn l nhng vn
c bn ca s hc tuyn tnh. Thm na, khi li gii khng tn ti, c rt nhiu cch gn
ng tm kim gii php, nh php loi tr Gaussian, s tm tha s LU, hoc tnh trc
tip A-1 .b. Di y chng ta s cp n mt s cch gii quyt nh trn:
Trc tin nhp vo ma trn A v b:
>> A = [1 2 3; 4 5 6; 7 8 0]
A=
1
2
3
4
5
6
7
8
0
>> b = [366; 804; 315]
b=
366
804
351
Nu bn c kin thc v s hc tuyn tnh, n rt d bn kim tra xem nh thc ca ma
trn trn c khc khng hay khng:
>> det(A)
ans=
27
Updatesofts.com
Ebook Team
49
Nu n ng, MATLAB c th gii phng trnh theo hai cch, mt cch hay c dng
hn, mt cch t s dng, nhng trc tip hn, phng php ny l chuyn thnh dng x=A1
.b.
>> x = inv(A)*b
x=
25.0000
22.0000
99.0000
y inv(A) l hm ca MAYLAB dng tnh A-1; v ton t nhn ( * ), khng c du
chm pha trc, y l php nhn ma trn. Phng php c dng nhiu hn l dng
ton t chia ma trn tri:
>> x = A\b
x=
25.0000
22.0000
99.0000
Phng trnh ny s dng phng php tm tha s LU gn ng v a ra cu tr li
nh l php chia tri A cho b. Ton t chia tri ( \ ) khng c du chm pha trc l mt
php ton ca ma trn, n khng phi l cc php ton gia cc phn t ca mng. Phng
php th hai ny c s dng nhiu hn do nhiu nguyn nhn, mt trong nhng nguyn
n gin nht l phng php ny dng t php ton hn v tc nhanh hn. Thm vo
, nhn chung phng php ny chnh xc hn cho nhng bi ton ln. Trong trng hp
khc, nu MATLAB khng tm thy phng php gii hoc khng tm thy phng php
chinh xc, n s hin thng bo li.
Nu bn nghin cu s hc tuyn tnh, bn bit rng khi s phng trnh v s bin
khc nhau, th khng th c mt phng php duy nht gii. Trong MATLAB khi gp
nhng h phng trnh c s phng trnh ln hn s bin n dng ton t chia tri hoc
chia phi, t ng gim thp nht nhng phn t tha A.x - b. Cch ny gi l phng php
vung nh nht. V d:
>> A = [1 2 3; 4 5 6; 7 8 0; 2 5 8] % Bn phng trnh, ba bin.
A=
1
2
3
4
5
6
7
8
0
2
5
8
>> b = [366 804 351 514]
b=
366
804
351
514
>> x = A\b
% Phng php vung nh nht.
x=
247.9818
-173.1091
114.9273
Updatesofts.com
Ebook Team
50
Updatesofts.com
cdf2rdf(A)
chol(A)
cholinc(A, droptol)
cond(A)
condest(A)
det(A)
expm(A)
expm1(A)
expm2(A)
funm(A, fun)
hess(A)
inv(A)
logm(A)
lu(A)
luinc(A, droptol)
norm(A)
norm(A,1)
norm(A, 2)
norm(A, inf)
norm(A, p)
norm(A, fro)
normest(A)
null(A)
orth(A)
poly(A)
polyvalm(A)
qr(A)
qrdelet(Q, R, j)
qrinsert(Q, R, j, x)
rank(A)
rcond(A)
sqrtm(A)
subspace(A, B)
svd(A)
svds(A, K)
trace(A)
Ebook Team
51
Updatesofts.com
Ebook Team
52
y b l ma trn rng. MATLAB tr li ma trn rng khi php ton khng c kt qu.
Trong v d trn khng c phn t no ca a ln hn 10. Ma trn rng khng c kch c,
nhng tn bin ca chng vn tn ti trong khng gian lm vic.
>> zeros(3)
% Ma trn khng 3 hng, 3 ct (3x3).
ans=
0
0
0
0
0
0
0
0
0
>> ones(2,4)
% Ma trn mt 2 hng, 4 ct (2x4).
ans=
1
1
1
1
1
1
1
1
>> zeros(3) + pi
ans=
3.1416
3.1416
3.1416
3.1416
3.1416
3.1416
3.1416
3.1416
3.1416
V d trn v to ma trn 3x3 vi cc phn t u l .
>> rand(3,1)
ans=
0.2190
0.0470
0.6789
ma trn 3x1 gm cc phn t l s cung cp bi hm random gia 0 v 1.
>> randn(2)
ans=
1.1650
0.6268
0.0751
0.3516
Updatesofts.com
Ebook Team
53
Ma trn rng
To ma trn rng
Ma trn ng nht
Ma trn kim tra nh vi phn t
Ma trn Hadamard
Ma trn Hankel
Ma trn Hilbert
Chuyn thnh ma trn Hilbert
Ma trn vung, gi tr cc phn t bng t 1 n gi tr s
phn t
Ma trn 1
Ma trn tam gic Pascal
Ma trn vi cc phn t ngu nhin t 0 n 1.
Ma trn ngu nhin thng thng vi gi tr trung bnh bng
0
Ma trn kim tra i xng trc chnh
Ma trn Toeplitz
Ma trn Vandermond
Ma trn kim tra Wilkinson
Ma trn khng
V d
Hnh 7.1
Updatesofts.com
Ebook Team
54
E = 10o;
R1 = 2; L = 10j; C = ; R2 = 10.
y vi l in p gia nt th i v t. Hi in p ti mi nt l bao nhiu?
Gii php: y l vn v phn tch pha. Phng php gii bi ny l gii phng trnh
trn, v chuyn cc kt qu v dng thi gian. Trong MATLAB gii php s l:
function circuit
% circuit.m script file to solve circuit proplem
A(1,1)=1/2;
% poke in nonzero values as needed
A(1,2)=-1/2;
A(2,1)=-1/2;
A(2,2)=1/2 + 0.2j + 1/10j;
A(2,3)= -1/10j;
A(3,2)=-1/10j;
A(3,3)=1/10 + 1/10j;
y=[-1 0 0]';
% right hand side vector
v=A\y
% complex solution
vmag=abs(v)
% solution magnitudes
vphase=angle(v)*180/pi
% solution phase in degrees
theta=linspace(0,2*pi);
% plot results in time
v1=vmag(1)*cos(theta-vphase(1));
v2=vmag(2)*cos(theta-vphase(2));
v3=vmag(3)*cos(theta-vphase(3));
thd=theta*180/pi;
plot(thd,v1,thd,v2,thd,v3)
Sau khi chy chng trnh trn, kt qu s l:
v=
-4.0000 + 6.0000i
-2.0000 + 6.0000i
2.0000 + 4.0000i
vmag =
7.2111
6.3246
4.4721
vphase =
123.6901
108.4349
63.4349
Updatesofts.com
Ebook Team
55
Hnh 7.2
---------------------oOo---------------------
chng 8
cc php tnh LOGIC V QUAN H
Thm vo nhng ton t truyn thng, MATLAB cung cp ton t logic v quan h.
Bn c th quen thuc vi nhng php ton ny, nu bn lm quen vi cc ngn ng lp
trnh khc. Mc ch ca nhng ton t v hm ny l tr li cu hi True_False
(ng_sai).
i vi cc s th trong ton t logic v quan h quy nh cc s khc khng l True cn
s khng l False. Kt qu ca php ton logic v quan h a ra l 1 cho True, 0 cho False.
8.1 Ton t quan h
Ton t quan h MATLAB bao gm tt c cc php so snh:
Updatesofts.com
Ebook Team
Ton t quan h
<
<=
>
>=
==
~=
56
ngha
nh hn
nh hn hoc bng
ln hn
ln hn hoc bng
bng
khng bng
Ton t quan h MATLAB c th dng so snh hai mng c cng kch c hoc so
snh mt mng vi mt s n. Trong trng hp th hai, s n so snh vi tt c cc
phn t ca mng, kt qu tr v ging nh kch c ca mng. V d:
>> A = 1:9, B = 9 - A
A=
1
2
3
4
5
6
7
8
9
B=
8
7
6
5
4
3
2
1
0
>> tf = A>4
tf=
0 0 0 0 1 1 1 1 1
tm kim cc phn t ca A m ln hn 4. Kt qu bng 0 khi A 4, bng 1 khi A>4.
>> tf = (A==B)
tf=
0 0 0 0
0.3333
0.6667
1.0000
Updatesofts.com
Ebook Team
57
ngha
AND
OR
NOT
Tr li mt ti nhng v tr m phn t ca A ln hn 2 v nh hn 6.
8.3 Cc hm logic v hm quan h
Thm vo nhng ton t logic v ton t quan h cp n trn, MATLAB cung cp
cc hm logic v quan h khc di y:
Cc hm logic v hm quan h khc
xor(x,y)
Ton t hoc. Tr li gi tr 1 khi x hoc y khc khng (True), gi tr 0
Updatesofts.com
any(x).
all(x)
Ebook Team
58
khi c x
v cng bng khng (False) hoc cng khc khng (True)
Tr li 1 nu bt c phn t no trong vector x khc khng. Tr li 1 cho
mi ct
trong ma trn x m c cc phn t khc khng.
Tr li 1 nu tt c cc phn t ca vector x khc khng. Tr li 1 cho
mi ct
trong ma trn x m tt c cc phn t khc khng.
chng 9
Updatesofts.com
Ebook Team
59
Updatesofts.com
Ebook Team
60
Updatesofts.com
Ebook Team
61
Updatesofts.com
Ebook Team
62
Tr li mt xu gm cc k t trng hay du
cch
Tr li cc vt trng t mt xu
c lng xu nh l mt lnh ca MATLAB
c lng xu v bt li
Hm evaluate a ra bng xu
Tm kim mt xu trong mt xu khc
True nu a vo l mt xu
True ti nhng v tr k t Alphabet tn ti
True ti nhng v tr l k t trng
Xu ca li cui cng MATLAB a ra
Xu vi nhng ch ci thng
Ni cc xu thnh hng
True nu cc xu ging nhau
Tm kim kh nng ging nhau ca xu
True nu n k t u ging nhau
Thay th mt xu bng mt xu khc
Tm kim du hiu cho xu
Ni cc xu thnh ct
Chuyn thnh ch in
Updatesofts.com
>> find(b=='p')
9
13
22
>> findstr(b, 'cow')
ans=
[]
>> findstr(b,'pick')
ans=
13
30
30
Ebook Team
63
38
40
41
% Tm kim t cow
Updatesofts.com
Ebook Team
How
y vn l mng t bo. thay i du nhy ca t bo, ta s dng ngoc nhn:
>> s = c{4}
ans=
cell array of strings?
>> size(s)
ans=
1
22
truy nhp vo nhiu hn mt t bo, ta dng hm deal:
>> [a, b, c, d] = deal(C{:})
a=
How
b=
about
c=
this for a
d=
cell array of trings?
y C{:} ch truy nhp n tt c cc t bo, n ging nh:
>> [a, b, c, d] = deal(C{1}, C{2}, C{3}, C{4})
a=
How
b=
about
c=
this for a
d=
cell array of strings?
Hm char c th dng chuyn t mng t bo sang mng xu:
>> s = char(C)
How
about
this for a
cell array of strings?
>> size(s)
% Kt qu l cc xu vi cc khong trng.
ans=
4
22
>> ss = char(C(1:2))
ss=
How
about
>> size(ss)
64
Updatesofts.com
Ebook Team
65
ans=
2
5
chuyn ngc li mng t bo, ta dng hm cellstr:
>> cellstr(s)
ans=
'How'
'about'
'this for a'
'cell array of strings?'
Hu ht cc hm xu trong MATLAB lm vic vi c mng xu hoc mng t bo.
V mng t bo s c trnh by r hn Chng 19.
chng 10
thi gian
21
16
33
39.934708
Updatesofts.com
Ebook Team
66
Updatesofts.com
Ebook Team
67
Updatesofts.com
Ebook Team
68
>> [d w] = weekday('21-Dec-1994')
d=
4
w=
Wed
Ngy cui thng c th tm bng hm eomday. Trong bt buc phi a vo nm, thng.
>> eomday(1996, 2)
ans=
29
% 1996 l nm
Updatesofts.com
Ebook Team
Hnh 10.1
69
Updatesofts.com
Ebook Team
70
Hnh 10.2
Ch s khc nhau v hm thi gian gia elapsed_time i vi lnh plot, lnh plot th hai
nhanh hn v MATLAB to hnh dng ca s v dch cc hm cn thit vo trong nh.
Hm cputime tr v tng s thi gian ca CPU (Central Processing Unit), tnh theo
giy, trong thi gian MATLAB dng t khi n c khi ng ln.
Hm etime tnh khong thi gian gia hai vector thi gian. Cc vector phi l vector
hng gm 6 phn t, ging nh kt qu tr v trong lnh clock v datevec. Ti thi gian hin
ti etime khng chuyn gia thng v nm.
Tt c cc hm c th s dng tnh ton thi gian.
>> t0 = cputime; pause(5); cputime - t0
ans =
5
>> t1 = clock; pause(2); etime(clock,t1)
ans =
2.0400
Bn hy xem help v MATLAB CD tm hiu thm v nhng hm ny.
10.5 V th vi hm ngy v thi gian
i khi n rt c ch v th trong dng xu ngy v thi gian cho mt hoc hn
mt cc nhn. Hm datetick t ng vi cng vic ny. Nu th c v, dng s ngy
cho mt hoc hn mt trc, th hm datetick s vit cc nhn cho im nh du. V d sau
v hnh 10.3:
>> t = (1900:10:1990)';
Updatesofts.com
Ebook Team
71
Hnh 10.3
Updatesofts.com
Ebook Team
72
Hnh 10.4
V d: Tm th su ngy 13
By gi chng ta c gii thiu cc lnh v thi gian, hy dng chng to mt s
hm c ch. Nu bn l ngi cn thn, bn mun bit bao gi th su ngy 13 xy ra. Hm
M_file s cho bn nhng thng tin ny.
function m=friday(start)
% FRIDAY Date of the next Friday the 13th
% FRIDAY display the next occurrence of Friday the
% 13th
% FRIDAY(START) start the search at the date
% specified by START
% M=FRIDAY return the date number of the next Friday
% the 13th
if nargin==0
start=now;
% use the current date if none
end
% was supplied
[yr,mo,da]=datevec(start);
da=da+6-weekday(start); % Start with the Friday in
% this week
start=datenum(yr,mo,da,0,0,0);
while 1
[yr,mo,da]=datevec(start);
if (weekday(start)==6)&(da==13)
Updatesofts.com
Ebook Team
break;
end
start=datenum(start+7); % skip to the next Friday
end
if nargout==0
disp(['Friday,'datestr(start,1)]) % Display the
% the result
else
m=start;
% or return the resulting date
end
% number
Sau khi chy chng trnh ta c kt qu:
>> friday
Friday,13-Aug-1999
Nu bn mun c cnh bo cho ton b nm, xem hm fridays:
function F=fridays(ynum)
% FRIDAY List the Friday the 13ths in the year ynum.
% M=FRIDAY return the date numbers found.
%
if nargin==0
[ynum dummy]=datevec(now); % use the current date if
end
% non was supplied
MM=[];
trynum=datenum(ynum,1,13,0,0,0);
% check January 13 first
trynum=friday(trynum); % find the first one
[tyr dummy]=datevec(trynum);
while tyr==ynum % May be there are more this year
MM=[MM;trynum];
trynum=friday(trynum+7); % skip to the next week
[tyr dummy]=datevec(trynum);
end
if nargout==0
disp('Fridays'); % Display the results
disp(datestr(MM,1)) % Display the result
else
F=MM;
% or return the vector of
end
% date number
-------------------oOo-------------------
73
Updatesofts.com
chng 11
Ebook Team
74
VNG LP IU KHIN
% Khi cc lnh
Cc cu lnh gia hai trng thi for v end c thc hin mt ln cho tt c cc ct
ca mng (array). Ti mi ln lp li, x c gn cho phn t ct tip theo nh trong sut n
ln ca vng lp, x = array(:, n).
V d:
>> for n = 1:10
x(n) = sin(n*pi/10);
end
>> x
x=
Columns 1 through 7
0.3090
0.5878
0.8090
0.9511
1.0000
0.9511
0.8090
Columns 8 through 10
0.5878
0.3090
0.0000
Ni mt cch khc, trng thi th nht yu cu: Cho n bng t 1 n 10, tnh gi tr ca
tt c cc trng thi cho n trng thi k tip trng thi end. u tin trong vng lp for
n=1, tip theo n=2, v c nh vy cho n trng hp n=10. Sau trng hp n=10, vng lp
for kt thc, v tt c cc lnh sau trng thi end ca vng lp c thc hin.
Vng lp for khng th b kt thc bng cch gn li bin iu khin n trong vng lp:
>> for n = 1:10
Updatesofts.com
Ebook Team
75
x(n) = sin(n*pi/10);
n = 10;
end
>> x
x=
Columns 1 through 7
0.3090 0.5878 0.8090
Columns 8 through 10
0.5878 0.3090 0.0000
0.9511
1.0000
0.9511
0.8090
Trng thi 1:10 l mt trng thi to ln mng MATLAB tiu chun. Bt c kiu mng no
ca MATLAB u c chp nhn trong vng lp for:
>> data = [3 9 45 6; 7 16 -1 5]
data =
3 9 45 6
7 16 -1 5
>> for n = data
x = n(1)-n(2)
end
x=
-4
x=
-7
x=
46
x=
1
Bnh thng vng lp for c th lng vo nhau:
>> for n = 1:5
for m = 5:-1:1
A(n,m) = n^2+m^2;
end
disp(n)
end
1
2
3
4
5
>> A
A=
2 5 10 17 26
5 8 13 20 29
10 13 18 25 34
17 20 25 32 41
26 29 34 41 50
Updatesofts.com
Ebook Team
76
Khng nn dng vng lp for khi m tng ng vi vic ta dng mng tnh ton. Nh
trong v d trc ta cng c th dng mng tnh ton:
>> n = 1: 10;
>> x = sin(n*pi/10)
x=
Columns 1 through 7
0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090
Columns 8 through 10
0.5878 0.3090 0.0000
Trong hai trng hp nh trn, trng hp th hai ta dng mng tnh ton cng c
kt qu nh vy, nhng n nhanh hn v cc tho tc cng t hn.
tng tc tnh ton, mng cn phi c khi to trc khi thc hin vng lp for
(hoc vng lp while). Trong v d trc c mi ln lnh trong vng lp for c tnh, kch c
ca bin x li tng ln 1. iu ny lm cho MATLAB mt thi gian cp nht thm b nh
cho x trong mi vng. rt ngn bc ny, v d v vng lp for trc vit li nh sau:
>> x = zeros(1,10); % Khi to b nh cho x
>> for n = 1: 10
x = sin(n*pi/10);
end
By gi ch cn thay i gi tr ca cc phn t ca x.
11.2 Vng lp while
Vng lp while thc hin lp li mt nhm lnh mt s ln c nh, nhng khng bit
trc c s ln lp li.
C php ca vng lp while nh sau:
while biu thc iu kin
khi cc lnh..
end
khi cc lnh.. gia hai trng thi while v end c thc hin lp i lp li khi tt c cc
biu thc iu kin l ng. Thng thng gi tr ca iu kin a ra kt qu l mt s,
nhng nu cc kt qu a ra l mt mng th vn hp l. Trong trng hp mng, tt c cc
phn t trong mng kt qu a ra phi l True (ng). C th tham kho v d di y:
>> num = 0; ESP = 1;
>> while (1+ESP) > 1
ESP = ESP/ 2;
num = num + 1;
end
>> num
num=
53
>> ESP = 2*ESP
ESP=
2.2204e-16
Updatesofts.com
Ebook Team
77
khi cc lnh...
Khi cc lnh gia hai trng thi if v end c thc hin khi tt biu thc iu kin l
ng. Trong trng hp iu kin bao gm cc iu kin con, th tt c cc iu kin con
c tnh v tr v mt trng thi logic ca iu kin. V d:
>> apple = 10
% s to
>> cost = apple*25
cost=
250
>> if apple > 5
cost = (1-20/100)*cost;
% b i 20%
end
>> cost
cost
200
if--else
else--end l:
Trong trng hp c hai iu kin thay i, cu trc if
if
Updatesofts.com
Ebook Team
78
Updatesofts.com
Ebook Team
79
Updatesofts.com
Ebook Team
Principle
243.37
245.17
246.99
248.82
250.67
252.53
254.40
256.28
258.19
260.10
262.03
263.97
265.93
80
Updatesofts.com
14.00
15.00
6423.66
6153.77
Ebook Team
49.63
47.64
81
267.90
269.89
Updatesofts.com
Ebook Team
82
Hnh 11.1
--------------------oOo-------------------
chng 12
HM M_FILE
Updatesofts.com
Ebook Team
83
Updatesofts.com
Ebook Team
84
Updatesofts.com
Ebook Team
85
t = etime(clock, TICTOC);
end
Trong hm tic th bin TICTOC c khai bo l bin ton cc v gi tr ca bin ny c
c thng qua vic gi hm clock. Sau trong hm toc, bin TICTOC cng c khai
bo l bin ton cc lm cho toc c kh nng truy cp n bin TICTOC trong hm tic, s
dng gi tr ca bin ny toc s tnh c khong thi gian tri qua k t khi hm tic c
thi hnh. Mt iu quan trng cn nh l bin TICTOC ch tn ti trong khng gian lm vic
ca tic v toc nhng khng tn ti trong mi trng MATLAB.
*) Vic thi hnh hm M_file s kt thc khi gp dng cui cng ca file hoc gp dng
lnh return. Lnh return gip ta kt thc mt hm m khng cn phi thi hnh ht cc lnh
ca hm .
*) Hm error ca MATLAB s hin th mt chui ln ca s lnh v dng thc hin hm,
tr iu khin v cho ca s lnh v bn phm. Hm ny rt hu dng cnh bo vic s
dng hm khng ng mc ch. V d nh cu lnh sau:
if length(val) > 1
error(VAL phi l gi tr s!)
end
y nu val khng phi l s th hm error s hin ln chui cnh bo v tr iu khin
cho ca s lnh v bn phm.
*) Mt M_file c th cha nhiu hm. Hm chnh trng M_file ny phi c t tn trng
vi tn ca M_file nh cp n trn. Cc hm khc c khai bo thng qua cu lnh
function c vit sau hm u tin. Cc hm con ch c s dng bi hm chnh, c
ngha l ngoi hm chnh ra th khng c hm no khc c th gi c chng. Tnh nng
ny cung cp mt gii php hu hiu gii quyt tng phn ca hm chnh mt cch ring
r lm gim bt cc kh khn khi ta lp trnh mt hm ln.
Ni tm li, hm M_file cung cp cho ta mt phng php n gin m rng kh nng
ca MATLAB. Trong thc t rt nhiu hm ca MATLAB l cc hm M_file.
V d: Hm tr dn theo thi hn
Vn : Gi s c mt khon cho vay A dollar, vi li sut hng thng l R% v phi tr
trong vng M thng. Hy vit mt hm M_file th hin:
- Lch chi tr nu nh ban u cha bit cc s liu a ra.
- S tin chi tr hng thng nu bit mt s liu ra.
- S tin chi tr hng thng v mt ma trn s cha lch thanh ton nu bit trc hai i s
ra.
Gii php: Trong chng 2, s tin phi chi tr hng thng P cho khon cho vay A dollar
vi t gi li xut l R, tr trong M thng::
P = A.
Ti ln chi tr u tin, tin li phi tr l Ip1= R.A. Gi s s tin phi tr l P th tin gc
phi tr l Pr1= P - Ip1 v s tin cn li sau ln chi tr th nht l B1=A - Pr1 . Trong tt c
cc ln chi tr sau tin li phi tr l Ipm= R.Bm-1 v s tin cn li l Bm= Bm-1 - Prm. S
dng cc thng tin ny th chng trnh MATLAB s nh sau:
function [P,S]=loan(a,r,m)
%LOAN Loan Payment and Amortization Table.
% (H1 help line)
%P=LOAN(A,R,M) computes the monthly payment on a loan
Updatesofts.com
%amount of a, having an annual intereat rate of R,
% to be paid off in equal amounts over M months.
%
%[P,S]=LOAN(A,R,M) also returns
% an amortization table S,
%which is an M-by-4 matrix
% where S(:,1)=Payment Number,
%S(:,2)=Remaining Balance, S(:,3)=Interest Paid, and
%S(:,4)=Principle Paid.
%
%If no output arguments are provided
% the table is displayed.
%Start with some error checking
if nargin<3
error('Three input argument are required.')
end
if fix(m)~=m
error('Number of Months Must be Integer.')
end
% Now calculate
rm=(r/100)/12;
% Monthly interest rate
p=a*(rm*(1+rm)^m/((1+rm)^m-1)); % payment required
if nargout==1
% done if only payment is required.
P=p;
% copy out into output variable
return
end
B=zeros(m,1);
% storage for balance remaining per month
Ip=B;
% storage for interest paid per month
Pr=B;
% storage for principal paid per month
for i=1:m
% creat table data
if i==1
% compute interest when balance is orginnal amout
Ip(i)=rm*a;
else
% balance is B(i-1)
Ip(i)=rm*B(i-1);
end
Pr(i)=p-Ip(i); %principal paid this month
if i==1
% compute balance remainig after payment
B(i)=a-Pr(i);
else
B(i)=B(i-1)-Pr(i);
end
end
B(abs(B)<0.001)=0; % set near zero balance to zero
s=[(1:m)' B Ip Pr];
if nargout==0
% display table
disp(['Amount = ' num2str(a)])
disp(['Interest rate = ' num2str(r)])
disp(['Number of month = ' int2str(m)])
Ebook Team
86
Updatesofts.com
Ebook Team
87
en
0
Nu
1
Vng
3
Lc
4
Lam
5
Trm
6
Tm
7
Xm
8
Trng
9
Nu A, B, C l cc gi tr ca cc mu trn gii mu th gi tr ca cc in tr l:
R = (10.A + B).10C
S dng cc thng tin ny, hy to mt M_file tr v gi tr ca in tr ng vi bt k
mt in tr chun no.
Updatesofts.com
Ebook Team
88
abc={a,b,c};
% tring cell aray thr input
for i=1:3
%do each color band in turn
band=lower(abc(i));
%get (i)th input and make lower case
if strncmp(band,'bla',3) % black (compare min # of)
vals(i)=0;
% chars for unique match)
elseif strncmp(band,'br',2) %brown
vals(i)=1;
elseif strncmp(band,'r',1) %red
vals(i)=2;
elseif strncmp(band,'o',1) %orange
vals(i)=3;
elseif strncmp(band,'y',1) %yellow
vals(i)=4;
elseif strncmp(band,'gre',3) %green
vals(i)=5;
elseif strncmp(band,'blu',3) %blue
vals(i)=6;
elseif strncmp(band,'v',1) %violet
vals(i)=7;
elseif strncmp(band,'gra',3) %gray
vals(i)=8;
elseif strncmp(band,'w',1) %white
vals(i)=9;
else
error(['Unknown Color Band.'])
end
end
if vals(1)==0
error('First Color Band Cannot Be Black.')
end
r=(10*vals(1)+vals(2))*10^vals(3);
S dng hm ny cho mt vi v d:
>> resistor('brown', 'black', 'red')
ans=
1000
------------------------oOo-----------------------
chng 13
Updatesofts.com
Ebook Team
89
tr trong cc mng ct, vic phn tch d liu c th thc hin theo bt c chiu no. l
tr khi c ch nh theo mt cch khc, cc ct ca mt mng d liu th hin cc thng
s o khc nhau, mi hng th hin mt gi tr mu ca cc thng s o . V d gi s
nhit ban ngy (tnh theo C) ca 3 thnh ph tnh trong mt thng (31 ngy c ghi
li v gn cho mt bin l temps trong mt script M_file, khi chy M_file th gi tr ca temps
c a vo mi trng MATLAB, thc hin cng vic ny, bin temps cha:
>> temps
temps=
12
8
15
9
12
5
14
8
12
6
11
9
15
9
8
10
19
7
12
7
14
10
11
8
9
7
8
8
15
8
8
10
10
7
12
7
9
8
12
8
12
8
10
9
13
12
9
10
10
6
14
7
12
5
13
7
15
10
13
11
12
12
18
22
19
23
22
19
15
20
18
18
19
17
23
19
18
20
17
22
19
21
20
17
18
20
22
21
22
18
23
24
22
Updatesofts.com
Ebook Team
90
Hnh 13.1
Lnh plot va dng trn y minh ho thm mt cch s dng. Bin d l mt vector di
31, trong khi bin temps l mt ma trn 31x3. Cho trc nhng d liu ny, lnh plot s trc
mi ct ca bin temps cho vo d.
minh ho mt vi kh nng phn tch d liu ca MATLAB, hy xt cc lnh sau,
da trn d liu v nhit cho:
>> avg_temp = mean(temps)
avg_temp=
11.9677
8.2258
19.8710
V d trn ch ra rng thnh ph th 3 l c nhit trung bnh cao nht, y
MATLAB tnh nhit trung bnh ca mi ct mt cch ring r. Nu tnh trung bnh c
3 thnh ph th:
>> avg_avg = mean(avg_temp)
avg_avg=
13.3548
Khi m cc gi tr u vo trong mt hm phn tch d liu l mt vector hng hay ct th
MATLAB ch n gin l tin hnh cc php ton trn vector v tr v gi tr s.
Bn cng c th dng mng thc hin cng vic ny:
>> avg_temp = mean(temps,1) % Ging nh trn, tnh cho cc ct
Updatesofts.com
Ebook Team
91
avg_temp =
11.9677 8.2258 19.8710
>> avr_tempr = mean(temps,2) % Tnh cho mi hng
avr_tempr =
12.6667
15.3333
12.0000
15.0000
13.3333
13.0000
13.0000
12.6667
14.6667
12.3333
14.3333
12.0000
13.0000
11.6667
13.6667
12.3333
11.3333
13.6667
12.0000
13.6667
13.3333
12.0000
14.3333
13.0000
12.6667
14.0000
13.0000
12.6667
16.0000
16.0000
15.3333
y l gi tr nhit trung bnh c ba thnh ph trong tng ngy.
Xt bi ton tm s chnh lch nhit ca mi thnh ph so vi gi tr trung bnh, c
ngha l avg_temp(i) phi b tr i bi ct th i ca bin temps. Bn khng th ra mt cu
lnh nh sau:
>> temps-avg_temp
??? Error using ==> Matrix dimensions must agree.
Bi v thao tc ny khng phi l cc thao tc nh ngha trn mng (temps l mt
mng 31x3, cn avg_temp l mt mng 1x3). C l cch dng vng lp for l n gin nht:
>> for i = 1:3
tdev(:,i) = temps(:,i)- avg_temp(i);
Updatesofts.com
end
>> tdev
tdev =
0.0323
3.0323
0.0323
2.0323
0.0323
-0.9677
3.0323
-3.9677
7.0323
0.0323
2.0323
-0.9677
-2.9677
-3.9677
3.0323
-3.9677
-1.9677
0.0323
-2.9677
0.0323
0.0323
-1.9677
1.0323
-2.9677
-1.9677
2.0323
0.0323
1.0323
3.0323
1.0323
0.0323
-0.2258
0.7742
-3.2258
-0.2258
-2.2258
0.7742
0.7742
1.7742
-1.2258
-1.2258
1.7742
-0.2258
-1.2258
-0.2258
-0.2258
0.7742
-1.2258
-1.2258
-0.2258
-0.2258
-0.2258
0.7742
3.7742
1.7742
-2.2258
-1.2258
-3.2258
-1.2258
1.7742
2.7742
3.7742
Ebook Team
92
-1.8710
2.1290
-0.8710
3.1290
2.1290
-0.8710
-4.8710
0.1290
-1.8710
-1.8710
-0.8710
-2.8710
3.1290
-0.8710
-1.8710
0.1290
-2.8710
2.1290
-0.8710
1.1290
0.1290
-2.8710
-1.8710
0.1290
2.1290
1.1290
2.1290
-1.8710
3.1290
4.1290
2.1290
Updatesofts.com
Ebook Team
93
15
Updatesofts.com
n=
15
Ebook Team
94
2.2322
Updatesofts.com
Ebook Team
95
Xp xp cp phc lin hp
Tch cho vector
Tch tch lu theo ct
Tch tch lu theo chiu n
Tng tch lu theo ct
Tng tch lu theo chiu n
Tch cho tch lu
Tch cho tch lu theo chiu n
Ton t ri rc Laplacian 5 im
Tnh chnh lch gia cc phn t
Tnh s ra cp m ca cc phn t
Tnh s ra cp m ca cc phn t theo chiu
n
Tch v hng ca hai vector
Gradient vi phn
Biu hnh ct
Phn t ln nht
Phn t ln nht theo chiu n
Gi tr trung bnh ca ct
Gi tr trung bnh theo chiu n
Gi tr ca phn t gia ca ct
Gi tr ca phn t gia theo chiu n
Phn t nh nht
Phn t nh nht theo chiu n
Tch cc phn t trong ct
Tch cc phn t theo chiu n
S ngu nhin phn b u
S ngu nhin phn b bnh thng
Xp xp cc ct theo th t tng dn
Xp xp theo chiu n
Xp xp cc hng theo th t tng dn
lch chun ca ct chun ho theoN-1
lch chun ca ct chun ho theoN
lch chun theo chiu n
Gc gia hai im
Tng cc phn t trong mi ct
Tng cc phn t theo chiu n
Tch cho ca y=f(x)
Tch cho theo chiu n
Updatesofts.com
Ebook Team
96
---------------------oOo-------------------
chng 14
A THC
Updatesofts.com
Ebook Team
97
64
81
96
84
Updatesofts.com
Ebook Team
98
f=
1
6
20
52
81
96
84
Kt qu cng ging nh a thc e trn. Tt nhin polyadd cng c th dng thc hin
php tr.
>> g = polyadd(c,-d)
g=
1
6
20
48
69
72
44
14.4 Chia hai a thc
Trong mt s trng hp ta phi chia a thc ny cho mt a thc khc, trong MATLAB
cng vic ny c thc hin bi hm deconv, s dng cc a thc b v c trn ta c:
>> [q,r] = deconv(c,b)
q=
1
2
3
4
r=
0
0
0
0
Kt qu ny ch ra rng c em chia cho b th c a thc l q v a thc d l r trong trng hp ny a thc d l a thc 0 bi v c l a thc chia ht cho q (nh rng trn y ta
nhn c a thc c bng cch em nhn a thc a vi a thc b)
14.5 o hm
Bi v d dng tnh c vi phn ca mt a thc nn MATLAB a ra hm polyder
tnh vi phn a thc:
>> h = polyder(g)
h=
6
30
80
144
138
72
Updatesofts.com
Ebook Team
99
Hnh 14.1
Updatesofts.com
-5.0000 - 8.6603i
V vy trong trng hp ny, hm residue c th thc hin c vic chuyn i hai chiu
tu thuc vo s lng cc tham s vo v ra truyn cho n.
--------------------oOo------------------
Updatesofts.com
chng 15
Trong cc lnh vc ng dng s, nhim v ca chng ta l phi biu din s liu, thng l cc s o bng cc chc nng phn tch. C hai cch gii quyt vn ny, trong
phng php ni im (interpolation) th d liu c coi l ng v ci chng ta cn l cch
biu din d liu khng nm gia cc gi tr o c, theo phng php th hai gi l phng php mn ho ng cong (curve fitting or regression), bn tm mt ng cong khng
gy khc m ph hp nht vi d liu c, nhng khng cn thit phi i qua mt cch
chnh xc bt k mt in no trn bng s liu. H15.1 minh ho hai phng php trn, ch
o nh du cc im biu din d liu, cc on thng bng nt lin ni cc ng biu
din d liu li vi nhau theo phng php ni im cn ng chm chm l mt ng cong
v theo phng php mn ho d liu.
15.1 Mn ho ng
ng cong
Phng php mn ho ng cong lin quan n vic tr li hai cu hi c bn, l ng cong th no th ph hp vi d liu nht v cu hi th hai l phi s dng loi ng
cong no. Ph hp nht c th hiu theo nhiu cch v do c nhiu ng cong, v
vy chng ta phi bt u t u?. Nu ph hp nht l gim nh n mc ti thiu tng
sai s qun phng ti mi im biu din d liu, so vi gi tr tng ng trn ng cong
th ng cong ph hp nht s l mt ng thng v mt ton m ni phng php ny
c gi l phng php xp x a thc. Nu nh khi nim ny cn kh hiu i vi bn th
xin hy xem li hnh 15.1 khong cch theo chiu dc gia ng cong d liu v cc im
biu din d liu gi l sai s ca im , bnh phng khong cch ny ln v cng tt c
chng li ta c tng bnh phng sai s. ng cong chm chm l ng cong lm cho
bnh phng sai s l nh nht v c gi l ng cong ph hp nht. T qun phng
b nht l cch ni tt ca cm t Tng bnh phng sai s b nht.
Updatesofts.com
Hnh 15.1
Trong MATLAB hm polyfit s gii quyt vn xp x ng cong qun phng b
nht. minh ho cho vic s dng hm ny, chng ta hy bt u bng cc d liu c
trong hnh v.
>> x = [0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1];
>> y =[-.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2];
s dng hm polyfit, chng ta phi truyn cho n d liu trn v bc ca a thc m
chng ta mun ph hp vi d liu, nu chng ta chn bc n l 1 th ng cong xp x gn
nht s l ng thng. Phng php ny c gi l phng php xp x tuyn tnh. Mt
khc nu chng ta chon n=2 th chng ta s tm c mt tam thc bc hai. V d:
>> n = 2;
>> p = polyfit(x,y,n)
p=
-9.8108 20.1293 -0.0317
Kt qu ca polyfit l mt vector biu din h s ca mt a thc bc hai. y a thc
l
y= -9.8108x2+20.1293x-0.0317. so snh mc xp x ca a thc vi cc im d liu
chng ta hy v hai ng:
>> xi = linspace(0,1,100);
Dng ny to ra d liu trc x chun b v a thc
>> z = polyval(p,xi)
Updatesofts.com
Updatesofts.com
>> plot(x,y,'o',xi,z,:,xi,zz) % plot data
>> xlabel('x'),ylabel('y=f(x)')
>> title('2nd and 10th Order Curver Fitting')
Hnh 15.2
Trn hnh 15.2, d liu gc c nh du o, ng cong bc hai c v bng nt
chm chm, cn ng cong bc 10 c v bng nt m. n nt gn sng xut
hin gia cc im d liu bn pha tri v bn pha phi ca ng cong bc 10. Da vo
th ny th r rng rng ci chit l cng nhiu cng tt khng th p dng c y.
15.2 Ni im mt chiu
Nh gii thiu th ni im c nh ngha nh l mt phng php d on gi tr
ca hm gia nhng im cho trc. Ni im l mt cng c hu hiu khi chng ta khng
th nhanh chng tinh c gi tr ca hm ti cc im trung gian. Phng php ny c
s dng rng ri i vi d liu l gi tr ca cc php o thc nghim hoc l kt qu ca
cc chui tnh ton di. C th v d n gin nht ca vic ni im chnh l phng php
v tng im ca MATLAB, tc l v nhng on thng ni nhng im d liu lin tip
to ln mt th.
y l phng php ni im tuyn tnh, n cho rng cc gi tr ca hm nm gia hai
im cho trc s ri vo khong gia hai u ca on thng ni hai im . Hin nhin
l khi s lng cc im d liu tng ln v khong cch gia chng gim i th phng
php ni im tuyn tnh cng tr ln chnh xc.
>> x1 = linspace(0,2*pi,60);
Updatesofts.com
>> x2 = linspace(0,2*pi,6);
>> plot(x1,sin(x1),x2,sin(x2),'-')
>> xlabel('x'),ylabel('sin(x)')
>> title('Linear Interpolation')
Hnh 15.3
C hai th cng v mt hm sine nhng th 60 im th mn hn th 6 im.
Cng ging nh phng php xp x ho ng cong, y chng ta cng phi thc
hin mt s la chn, c rt nhiu cch ni hai im, tu thuc vo gi nh m chng ta
la chn. Hn na chng ta c th ni cc im trong khng gian khng phi l mt
chiu. Ni nh th nu bn c d liu phn nh mt hm ph thuc vo hai bin z=f(x,y),
bn c th ni gi tr nm gia hai im c x v y khc nhau tm ra gi tr trung gian ca
hai im. MATLAB cung cp mt s hm ni l : interp1 ni cc d liu mt chiu,
interp2 ni cc d liu hai chiu, interp3 ni cc d liu ba chiu, interpn ni cc d liu c
s chiu ln hn 3.
Sau y chng ta s xem xt cc d liu mt v hai chiu. minh ho vic ni d liu
mt chiu, hy xt v d sau, kh nng ca thnh gic, v d nh mc m thanh b nht hay
cn gi l ngng nghe ca tai ngi thay i theo tn s, d liu do ngi thng k c
cho nh sau:
>> Hz = [20:10:100 200:100:1000 1500 2000:1000:10000];
>>
% Frequencies in Hertz
>> spl = [76 66 59 54 49 46 43 40 38 22 ...
14 9 6 3.5 2.5 1.4 0.7 0 -1 -3 ...
Updatesofts.com
-8 -7 -2 2 7 9 11 12];
>> % sound pressure level in dB
Ngng nghe c chun ho bng 0dB ti tn s 1000Hz, bi v tn s tri trong mt
di rt rng nn khi v cc im d liu chng ta logarithm ho trc x.
>> semilogx(Hz,spl,'-o')
>> xlabel('Frequency, Hz')
>> ylabel('Relative Sound Presure Level1, dB')
>> title('Threshold of Human Hearing')
Da vo hnh 15.4 ta thy tai ngi nhy cm ht i vi cc m thanh trong khong
3kHz. Da vo cc s liu ny, chng ta hy d on ngng nghe tn s 2,5kHz bng
mt vi cch khc nhau.
>> s = interp1(Hz,spl,2.5e3)
%linear interpolation
s=
-5.5000e+000
>> s = interp1(Hz,spl,2.5e3,'linear') %linear interpolation again
s=
-5.5000e+000
>> s = interp1(Hz,spl,2.5e3,'cubic') % cubic interpolation
s=
-5.8690e+000
>> s = interp1(Hz,spl,2.5e3,'spline') % spline interpolation
s=
-5.8690e+000
>> s = interp1(Hz,spl,2.5e3,'nearest')% nearest-neighbor
s=
-8
Hy n s khc nhau trong cc kt qu, hai gi tr u tin tr v mt cch chnh
xc gi tr c v trn hnh ti tn s 2,5kHz bi v MATLAB ni cc im mt cch
tuyn tnh gia cc im d liu trn th cc ng cong a thc, v d nh a thc bc 3
s xp x ho cc im trn th theo cc cch khc nhau, kt qu l cc ng cong ny
tng i ph hp vi cc d liu m n i qua trn th nhng khc bit kh xa so vi
phng php ni bng ng thng.
Updatesofts.com
Hnh 15.4
V vy bn chn cch no gi quyt mt bi ton cho trc?, trong nhiu trng hp
th ch cn ni mt cch tuyn tnh l , trong thc t th chnh l phng php mc nh
khi cc ng cong cng gn vi cc on thng th cng km chnh xc nhng ngc li
tc tnh ton nhanh, iu ny c bit quan trng khi tp d liu ln. Mt phng php
tiu tn nhiu thi gian, cho ra kt qu p mt nhng khng hiu qu. Trong thc t mt
trong nhng tc dng ch yu ca phng php ni im bng hm bc 3 hoc cao hn l
mn ho d liu, c ngha l cho trc mt tp d liu ta c th dng phng php ny
tnh ra gi tr ca hm nhng thi im nht nh bt k. V d:
>> Hzi = linspace(2e3,5e3);
% look closely near minimum
>> spli = interp1(Hz,spl,Hzi,'cubic');% interpolate near minimum
>> i = find(Hz>=2e3&Hz<=5e3);
>> % find original data indices near minimum
>> semilogx(Hz(i),spl(i),'-o',Hzi,spli) % plot old and new data
>> xlabel('Frequency, Hz')
>> ylabel('Relative Sound Presure Level1, dB')
>> title('Threshold of Human Hearing')
>> grid on
Updatesofts.com
Hnh 15.5
Trn hnh 15.5 ng gch gch s dng phng php ni im tuyn tnh, ng lin
nt l mt hm bc 3, cn nhng im d liu gc c nh du bi ch o. Bng cch
nng cao phn gii trn trc tn s v s dng ng bc 3 th cc s liu v ngng
nghe m chng ta d on c s mn hn.
Cn ch rng dc ca ng bc 3 khng thay i mt cch t ngt khi i qua
im d liu nh l khi s dng phng php ni tuyn tnh. Vi b d liu trn chng ta c
th d on c tn s m ti tai ngi nhy cm nht i vi m thanh.
>> [sp_min,i] = min(spli) % minimum and index of minimum
sp_min =
-8.4245e+000
i=
45
>> Hz_min = Hzi(i) % frequency at minimum
Hz_min =
3.3333e+003
Tai ngi nhy cm nht i vi m thanh c tn s khong 3.3kHz. Trc khi cp
n vic xp x ho hai chiu th chng ta cn nhn r hai hn ch ln ca interp1 l: Th
nht khi yu cu tnh ton ngoi khong ca mt bin c lp. V d nh interp1(Hz, spl,
1e5) th s sinh ra kt qu NaN.
Updatesofts.com
Th hai l cc bin c lp phi n iu, ngha l cc bin c lp phi lun tng hoc
l lun gim. Trong v d trn ca chng ta th trc tn s Hz lun tng.
15.3 Xp x ho hai chiu
Xp x ho hai chiu da trn cng mt nguyn l ca xp x ho mt chiu. Tuy nhin
nh tn ca n ch ra, xp x ho hai chiu l xp x mt hm ph thuc vo hai bin c
lp
z = f(x, y). hiu r khi nim ny, ta hy xt v d sau:
Mt cng ty thm him i dng, cn thm him mt vng bin, c 0.5Km theo hnh
vung th su ca y bin li c o v ghi li mt phn ca d liu thu thp c lu
trong mt chng trnh MATLAB di dng mt M_file c tn l ocean.m nh sau:
function ocean
% ocean depth data
x=0:.5:4; % x-axis (veries across the rows of z)
y=0:.5:6; % y-axis ( varies down the columns of z)
z=[100 99 100 99 100 99 99 99 100
100 99 99 99 100 99 100 99 99
99 99 98 98 100 99 100 100 100
100 98 97 97 99 100 100 100 99
101 100 98 98 100 102 103 100 100
102 103 101 100 102 106 104 101 100
99 102 100 100 103 108 106 101 99
97 99 100 100 102 105 103 101 100
100 102 103 101 102 103 102 100 99
100 102 103 102 101 101 100 99 99
100 100 101 101 100 100 100 99 99
100 100 100 100 100 99 99 99 99
100 100 100 99 99 100 99 100 99];
th ca d liu trn c v bi cc lnh sau:
mesh(x,y,z)
xlabel('X-axis, Km')
ylabel('Y-axis, Km')
zlabel('Ocean depth, m')
title('Ocean depth Measurements')
Updatesofts.com
Hnh 15.6
S dng cc d liu ny th su ca mt im bt k nm trong khu vc kho st c
th tnh c da vo hm interp2. V d:
>> zi = interp2(x,y,z,2.2,3.3)
zi =
1.0392e+002
>> zi = interp2(x,y,z,2.2,3.3,'linear')
zi =
1.0392e+002
>> zi = interp2(x,y,z,2.2,3.3,'cubic')
zi =
1.0419e+002
>> zi = interp2(x,y,z,2.2,3.3,'nearest')
zi =
102
Cng ging nh trong trng hp xp x ho mt chiu, xp x ho hai chiu cng c
nhiu phng php, m phng php n gin nht l phng php ni bng on thng,
hay cn gi l ni tuyn tnh. Mt ln na chng ta c th xp x ho cho th tr ln
mn hn vi phn gii cao hn:
xi=linspace(0,4,30); % finer x-axis
yi=linspace(0,6,40); % finer y-axis
[xxi,yyi]=meshgrid(xi,yi);
% grid of all combinations of xi and yi
zzi=interp2(x,y,z,xxi,yyi,'cubic'); % interpolate
mesh(xxi,yyi,zzi) % smoothed data
hold on
[xx,yy]=meshgrid(x,y); % grid original data
plot3(xx,yy,z+0.1,'ok')
% plot original data up a bit to show nodes
hold off
Updatesofts.com
Hnh 15.7
y hm meshgrid c dng to mng xp x ho bao ph ton b nhng im yu
cu nm trong im kho st. Nh trong hnh 15.7, hm meshgrid thc hin iu bng
cch to ra mt mng hai chiu da trn cc vector xi v yi, s dng mng ny chng ta c
th d on c ch nng nht ca y bin.
>> zmax = max(max(zzi))
zmax=
108.05
>> [i,j] = find(zmax==zzi);
>> xmax = xi(j)
xmax=
2.6207
>> ymax = yi(j)
ymax=
2.9231
-----------------oOo-------------------
chng 16
Cho d vic gii mt bi ton tch phn hoc tnh gi tr ca mt hm l tng i phc
tp, nhng i vi my tnh th ch n gin l vic x l cc s liu. Lnh vc ny ca tin
hc v ton hc c gi l x l s liu. Nh bn c th d on, MATLAB cung cp cc
cng c gii quyt vn ny. Trong chng trnh nychng ta xem xt cch s dng
cc cng c .
Updatesofts.com
16.1 V
V th
Cho n thi im ny th vic v th ca mt hm vn ch n gin da trn vic
tnh gi tr ca hm ti mt s im ri rc, v dng cc im biu din cc hm ti
cc gi tr ri rc . Trong nhiu trng hp th gii php ny l c th chp nhn c.
Tuy nhin c mt s hm th tng i bng phng mt s khong no nhng li tr
ln t bin mt s gi tr nht nh. S dng phng php v truyn thng trong trng
hp ny c th lm mt i tnh chn thc ca th. V vy MATLAB cung cp cho ta mt
hm v th thng minh, gi l fplot. Hm ny tnh ton mt cch cn thn hm s cn v
v m bo mt cch chc chn rng tt c cc im c bit c biu din trn th.
Hm flot nhn vo l tn ca hm cn v di dng mt chui k t, v gi tr cn v di dng
mng gm hai phn t cha gi tr u v gi tr cui.
V d:
>> fplot('humps',[0 2])
>> title('FPLOT of humps')
Tnh cc gi tr ca hm humps nm gia 0 v 2 v th hin th trong hnh 16.1. Trong v
d ny humps l mt hm M_file thit k sn.
Hnh 16.1
function [out1,out2] = humps(x)
%HUMPS A function used by QUADDEMO, ZERODEMO and FPLOTDEMO.
% Y = HUMPS(X) is a function with strong maxima near x = .3
% and x = .9.
Updatesofts.com
%
%
%
%
%
%
%
%
Updatesofts.com
Hnh 16.2
Da trn nhng tnh nng c bn ny, hm fplot c nhng kh nng rt mnh, hy xem
phn tr gip trc tuyn ca MATLAB hiu r hn v cch dng hm ny.
16.2 Cc tr ca mt hm
Ngoi vic s dng phng php v th thu c nhng thng tin trc quan v
hm, chng ta cn cn phi bit thm nhng thng tin v mt s thuc tnh nht nh ca
hm. Trong nhiu trng hp chng ta cn phi bit cc cc tr ca hm , l cc cc
i, cc cc tiu. V mt ton hc th cc tr c tm theo phng php gii tch bng cch
tnh o hm ca hm v tm nhng im m ti o hm bng 0. iu ny rt d
hiu nu bn xem li th ca hm humps ni trn. Nhng im m th ca hm nh
ln cao l nhng im cc i, cn nhng im th lm xung thp nht l nhng im
cc tiu. R rng rng khi hm c nh ngha mt cch n gin th phng php gii tch
c th d dng thc hin c, tuy nhin i vi mt s hm cho d vic tnh o hm l
kh d dng th vic tm nghim ca o hm th li khng phi l n gin.Trong nhng trng hp ny, v trong nhng trng hp kh c th tm ra cch phn tch o hm, th cn
thit phi tm hm v cng v s lng. MATLAB cung cp hai hm thc hin vic ny,
l fmin v fmins , hai hm ny tng ng tm gi tr cc tiu ca cc hm mt chiu v hm
n chiu. Ta ch quan tm n fmin trong phn ny. Hn na fmin c th tm thy trong help
trc tuyn. Bi v max ca f(x) hon ton tng ng vi min ca -f(x) , nn fmin v fmins ,
c hai u c dng tm gi tr ln nht v nh nht.
Updatesofts.com
% find error
x=xmin;
% find error
% eval needs x since fn has x
% as its variable
%evaluate at xmax
Updatesofts.com
40
30
20
10
-1 0
-1
-0 .5
0 .5
1 .5
Hnh 16.4
80
70
60
50
40
30
20
10
0
-1 0
-1
-0 5
.
0 .5
1 .5
Hnh 16.5
Tnh ton cc vng ny bng hm y = humps(x) vi -1<x<2 , s dng trapz cho mi hnh
trn ta c:
>> x = -1:.3:2;
% rough approximation
>> y = humps(x);
>> area = trapz(x,y) % call trapz just like the plot command
area =
21.8453
>> x = -1:.15:2;
% better approximation
>> y = humps(x);
>> area = trapz(x,y)
Updatesofts.com
area =
25.8523
Thng thng th kt qu ca chng l khc nhau, da trn s lng cc min c chia
trong hnh v. Tuy nhin, khng c g m bo rng qu trnh xp x no l tt hn, ngoi
tr s ng n ca php ton, hin nhin khi bn thay i mt cch c lp cc vng hnh
thang, v nh lm cho n nh i th chc chn l kt qu s chnh xc hn nhiu.
Hm quad v quad8 u l cc hm c cch tnh nh nhau. S nh gi ca c hai hm
l rt cn thit t kt qu chnh xc. Hn na xp x ca chng l cao hn so vi
hnh thang n, vi quad8 c kt qu chnh xc hn quad. Cc hm ny c gi ging nh
gi fzero:
>> area = quad('humps',-1,2) % find area between -1 and 2
area =
26.3450
>> area = quad8('humps',-1,2)
area =
26.3450
bit thm chi tit v hm ny , bn hy xem trn h tr gip ca MATLAB.
16.5 Php ly vi phn
So snh vi php ly tch phn, ta thy php ly vi phn kh hn nhiu. Php ly tch
phn cho c mt vng hoc c tnh v m ca hm trong khi php ly vi phn ch ly ti
mt im no y, hay cn gi l c tnh vi m ca hm. Kt qu l php tnh vi phn s
khng n nh khi c tnh ca hnh thay i trong khi php tnh tch phn th t chu nh hng hn.
Bi v php tnh tch phn l kh nn ngi ta c trnh nhng php tnh no m khng
th thc hin c, c bit khi d liu ly tch phn l kt qu ca thc nghim. V d,
chng ta hy xem xt v d lm trn hnh trong chng 15:
>> x = [0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1];
>> y = [-.447 1.978 3.28 6.16 7.08 7.34 ...
7.66 9.56 9.48 9.30 11.2]; % data
>> n = 2; % order of fit
>> p = polyfit(x,y,n) % find polynomial coefficients
p=
-9.8108 20.1293 -0.0317
>> xi = linspace(0,1,100);
>> z = polyval(p,xi); % evaluate polynomial
>> plot(x,y,'o',x,y,xi,z,':')
>> xlabel('x'),ylabel('y=f(x)')
>> title('Second Order Curve Fitting')
Vi phn trong trng hp ny c s dng bng cch s dng hm o hm polyder:
>> pd = polyder(p)
pd =
-19.6217 20.1293
Vi phn ca a thcy=-9.8108x2+20.1293x-0.0317ldx/dy= -19.6217x+20.1293. Bi v o
hm ca mt a thc cng c v v tnh gi tr ging nh l i vi a thc:
Updatesofts.com
>> z = polyval(pd,xi); % evaluate derivative
>> plot(xi,z)
>> xlabel('x'),ylabel('dy/dx')
>> title('Derivative of a Curve Fit Polynomial')
Hnh 16.6
Hnh 16.7
Trong trng hp ny xp x a thc l mt hm bc hai v o hm ca n tr thnh
hm bc nht.
MATLAB cung cp mt hm tnh ton o hm mt cch s b da vo d liu m t
mt s hm, hm ny c tn l diff, n tnh ton chnh lch gia cc phn t trong
mng. Bi v o hm c nh ngha nh sau:
Updatesofts.com
Hnh 16.8
Do hm diff tnh ra s khc nhau gia cc phn t nn kt qu ca v d trn l mt
mng c s phn t t hn mng ban u mt phn t. V vy v c th ca o
hm th phi b i mt phn t ca mng x. So sng hai th cui cng th thy hin nhin
rng o hm tnh bng phng php gn ng khc xa so vi thc t.
16.6 Phng
Phng trnh vi phn
C th bn kh quen vi thc t l rt nhiu h thng vt l u c m t bng phng trnh vi phn. Do vy phn sau y i vi bn c th kh hp dn.
Mt phng trnh vi phn thng m t tc thay i ca mt bin s trong h thng
theo s thay i ca mt bin khc trong h thng hoc theo kch thch bn ngoi. Phng
trnh vi phn thng thng c th c gii nh cc phng php gii tch hoc s dng
cng c ton k hiu ca MATLAB.
Trong nhng trng hp m phng trnh vi phn khng th gii c bng phng php
gii tch th vic s dng phng php s hc tr ln kh hiu qu. minh ho hy xt phng trnh Van Der Pol, phng trnh biu din mt b dao ng.
Updatesofts.com
10
15
20
25
30
Hnh 16.9
Cc hm ODE ca MATLAB u c tr gip trc tuyn, mi hm u c cc i s cng
nh cch s dng ring, nu bn mun nghin cu thm th hy tham kho thm phn tr
gip trc tuyn ca chng.
4
3
2
1
0
-1
-2
-3
-4
-3
-2
-1
Updatesofts.com
Hnh 16.10
chng 17
ho trong h to phng
Hnh 17.1
By gi cng v hm sine v cosine trn cng mt th
>> z = cos(x);
>> plot(x,y,x,z)
Updatesofts.com
Hnh 17.2
V d ny cho thy bn c th v nhiu hn mt th trn cng mt hnh v, bn ch
vic a thm vo plot mt cp i s, plot t ng v th th hai bng mu khc trn mn
hnh. Nhiu ng cong c th cng v mt lc nu nh bn cung cp cc cp i s
cho lnh plot.
Nu nh mt trong cc i s l ma trn v i s cn li l vector, th lnh plot s v tng ng mi ct ca ma trn vi vector :
>> W = [y;z]
% xy dng mt ma trn sine v cosine
>> plot((x,W)
% v cc ct ca W vi x
Updatesofts.com
Hnh 17.3
Nu nh bn thay i trt t cc i s th th s xoay mt gc bng 90 .
>> plot(W,x)
Hnh 17.4
Nu lnh plot c gi m ch c mt i s, v nh plot(Y) th hm plot s a ra mt kt
qu khc, ph thuc vo d liu cha trong Y. Nu gi tr ca Y l mt s phc, Plot(Y) tng ng vi plot ( real(Y ) ) v plot ( imag(Y ) ), trong tt c cc trng hp khc th phn
o ca Y thng c b qua. Mt khc nu Y l phn thc th plot(Y) tng ng vi
plot(1:length(Y),
plot(
1:length(Y), Y).
17.2 Kiu ng,
ng, du v mu
Trong v d trc, MATLAB chn kiu nt v solid v mu blue v green cho th.
Ngoi ra bn c th khai bo kiu mu, nt v ca ring bn bng vic a vo plot mt i
s th 3 sau mi cp d liu ca mng. Cc i s tu chn ny l mt xu k t, c th
cha mt hoc nhiu hn theo bng di y:
K hiu
b
g
r
Mu
xanh da tri
xanh l cy
K hiu
:
-.
xanh xm
--
m
y
tm
vng
O
X
Kiu nt v
nt lin
ng chm
ng
gch
chm
ng
gch
gch
ng o
ng x
K hiu
s
d
v
ngha
vung
diamond
triangle(down)
triangle(up)
<
>
triangle(left)
triangle(right)
Updatesofts.com
k
en
+
ng du +
p
pentagram
w
trng
*
ng hnh *
h
hexagram
Nu bn khng khai bo mu th MATLAB s chn mu mc nh l blue.
blue Kiu ng
mc nh l kiu solid tr khi bn khai bo kiu ng khc. Cn v du, nu khng c du
no c chn th s khng c kiu ca du no c v.
Nu mt mu, du, v kiu ng tt c u cha trong mt xu, th kiu mu chung
cho c du v kiu nt v. khai bo mu khc cho du, bn phi v cng mt d liu vi
cc kiu khai bo chui khc nhau. Di y l mt v d s dng cc kiu ng, mu, v
du v khc nhau:
>> plot(x,y,' b:p',x,z,' c-',x,z,' m+')
17.3 Kiu th
Hnh 17.5a
Updatesofts.com
>> x = linspace(0,2*pi,30);
>> y = sin(x);
>> z = cos(x);
>> plot(x,y,x,z)
Hnh 17.5b
Updatesofts.com
Hnh 17.6
Bn c th thm nhn hoc bt c chui k t no vo bt c v tr no bng cch s
dng lnh text. C php ca lnh ny l : text (x, y,string) trong x, y l to tm bn
tri ca chui vn bn. thm nhn vo hnh sine v tr (2.5, 0.7) nh sau:
>> grid on, box on
>> text(2.5,0.7,'sin(x)')
Nu bn mun thm nhn m khng mun b hnh v khi h trc ang xt, bn c th
thm chui vn bn bng cch di chut n v tr mong mun. Lnh gtext s thc hin vic
ny.
V d (Hnh 17.8):
>> gtext('cos(x)')
Hnh 17.7
Updatesofts.com
Hnh 17.8
17.5 Kin to h trc to
MATLAB cung cp cho bn cng c c th kim sot hon ton hnh dng v thang
chia ca c hai trc ng v ngang vi lnh axis. Do lnh ny c nhiu yu t, nn ch mt
s dng hay dng nht c cp y. bit mt cch y v lnh axis, bn hy
xem h tr gip help ca MATLAB hoc cc tham kho khc. Cc c tnh c bn ca
lnh axis c cho trong bng di y:
Lnh
axis([xmin xmax ymin ymax])
c a ra trong vector hng
M t
Thit lp cc gi tr min,max ca h trc dng cc gi
tr
V=axis
axis auto
axis(auto)
axismanual
axis xy
axis ij
axissquare
Updatesofts.com
axisequal
axis tightequal
axis normal
axis off
axison
ch nht
Thit lp thang chia ging nhau cho c hai h trc
Tng t nh axis equal nhng hp th va i
vi d liu
Tt i ch axis equal, equal, tight v vis3d
Tt b ch nn trc, nhn, li, v hp, du. Thot
khi ch lnh title v bt c lnh label no v
thay bi lnh text v gtext
Ngc li vi axis off nu chng c th.
Hnh 17.9
>> axis on, grid off % turn the axis on, the grid off
Updatesofts.com
Hnh 17.10
>>axis ij
Hnh 17.11
>> axis square equal
Updatesofts.com
Hnh 17.12
>> axis xy normal
Hnh 17.13
17.6
17.6 In hnh
Updatesofts.com
vo , n thm dng cong mi vo h trc hin ti. Tuy nhin nu nh d liu khng ph
hp vi h trc to c, th trc c chia li . Thit lp hold off s b i ca s figure hin
ti v thay vo bng mt th mi. Lnh hold m khng c i s s bt tt chc nng ca
ch thit lp hold trc . Tr li vi v d trc:
>> x = linspace(0,2*pi,30);
>> y = sin(x);
>> z = cos(x);
>> plot(x,y)
Hnh 17.14
Updatesofts.com
Hnh 17.15
Nu bn mun hai hay nhiu th cc ca s figure khc nhau, hy dng lnh
figure trong ca s lnh hoc chn new figure t bng chn file, figure khng c tham s s
to mt figure mi. Bn c th chn kiu figure bng cch dng chut hoc dng lnh
figure(n) trong n l s ca s hot hot ng.
Mt khc mt ca s figure c th cha nhiu hn mt h trc. Lnh subplot(m,n,p)
chia ca s hin ti thnh mt ma trn mxn khong v th, v chn p l ca s hot
ng. Cc th thnh phn c nh s t tri qua phi, t trn xung di, sau n
hng th hai .v.v. . . V d:
>> x = linspace(0,2*pi,30);
>> y = sin(x);
>> z = cos(x);
>> a = 2*sin(x).*cos(x);
>> b = sin(x)./(cos(x)+eps);
>> subplot(2,2,1) % pick the upper left of
% 2 by 2 grid of subplots
>> plot(x,y),axis([0 2*pi -1 1]),title('sin(x)')
>> subplot(2,2,2)
% pick the upper right of the 4 subplots
>> plot(x,z),axis([0 2*pi -1 1]),title('cos(x)')
>> plot(x,z),axis([0 2*pi -1 1]),title('cos(x)')
>> subplot(2,2,3)% pick the lowwer left of the 4 subplots
Updatesofts.com
>> plot(x,a),axis([0 2*pi -1 1]),title('2sin(x)cos(x)')
>> subplot(2,2,4)%pick the lowwer right of the 4 subplots
>> plot(x,b),axis([0 2*pi -20 20]),title('sin(x)/cos(x)')
Hnh 17.6
17.8 Mt s c im khc ca th trong h to phng
loglog tng t nh plot ngoi tr thang chia l logarithm cho c hai trc.
semilogx tng t nh plot ngoi tr thang chia ca trc x l logarithm cn thang chia
Updatesofts.com
Hnh 17.7
Mt cch khc quan st d liu l biu Pareto, trong cc gi tr trong cc
vector c v thnh mt khi ch nht. V d dng vector a ni trn:
>> pareto(a);
>> title('Example Pareto Chart')
Hnh 17.18
i khi bn mun v hai hm khc nhau trn cng mt h trc m li s dng thang chia
khc nhau, plotyy c th lm iu cho bn:
>> x = -2*pi:pi/10:2*pi;
>> y = sin(x);z = 2*cos(x);
>> subplot(2,1,1),plot(x,y,x,z),
>> title('Two Plots on the same scale');
>> subplot(2,1,2),plotyy(x,y,x,z)
>> title('Two plots on difference scale.');
Updatesofts.com
Hnh 17.19
th bar v stair c th sinh ra bi vic dng lnh bar, bar3, barh v stairs. Di y l
v d:
>> x = -2.9:0.2:2.9;
>> y = exp(-x.*x);
>> subplot(2,2,1)
>> bar(x,y)
>> title('Bar chart of bell Curve')
>> subplot(2,2,2)
>> bar3(x,y)
>> title('3-D Bar Chart of a Bell Cuve')
>> subplot(2,2,3)
>> stairs(x,y)
>> title('Stair Chart of a Bell Curve')
>> subplot(2,2,4)
>> barh(x,y)
>> title('Horizontal Bar Chart')
Updatesofts.com
Hnh 17.20
cc
lnh rose(v,n) v rose(v,x) trong x l mt vector. Di y l mt v d:
>> v = randn(100,1)*pi;
>> rose(v)
>> title('Angle Histogram of Random Angle')
Hnh 17.21
----------------------oOo----------------------
Updatesofts.com
chng 18
ho
trong khng gian 3 chiu
Hnh 18.1
Ch rng: hm zlabel tng ng vi hm hai chiu xlabel v ylabel. Tng t nh vy,
lnh axis cng c khun dng: axis ( [xmin xmax ymin ymax zmin zmax ] ) thit lp gii
hn cho c 3 trc. V d :
>> axis('ij') % thay i hng trc t sau ra trc
Updatesofts.com
Hnh 18.2
Hm text cng c khun mu nh sau:: text ( x, y, z, string ) s t v tr xu string
vo to x, y, z.
18.2 th b mt v li
li
MATLAB nh ngha b mt li bng cc im theo hng trc z trn ng k
hnh vung trn mt phng x-y. N to ln mu mt th bng cch ghp cc im gn k
vi cc ng thng. Kt qu l n trng nh mt mng li nh c vi cc mt li l cc
im d liu. th li ny thng c s dng quan st nhng ma trn ln hoc v
nhng hm c hai bin.
Bc u tin l a ra th li ca hm hai bin z = f (x, y ), tng ng vi ma trn
X v Y cha cc hng v cc ct lp i lp li. MATLAB cung cp hm meshgrid cho mc
ch ny. [ X, Y ] = meshgrid(x,
meshgrid y ), to mt ma trn X, m cc hng ca n l bn sao ca
vector x, v ma trn Y c cc ct ca n l bn sao ca vector y. Cp ma trn ny sau
c s dng c lng hm hai bin s dng c tnh ton hc v mng ca
MATLAB.
Sau y l mt v d v cch dng hm meshgrid.
>> x = -7.5:.5:7.5;
>> y = x;
>> [X,Y] = meshgrid(x,y);
X, Y l mt cp ca ma trn tng ng mt li ch nht trong mt phng x-y. Mi hm
z=f(x,y) c th s dng tnh cht ny.
>> R = sqrt(X.^2+Y.^2)+eps;
>> % find the distance from the origin (0,0)
>> Z = sin(R)./R;
% calculate sin(r)/ r
Updatesofts.com
Hnh 18.3
th trn l n sc. Tuy nhin bn c th thay i mu sc vi s tr gip ca
MATLAB rt r dng nu bn c n phn colormaps..
Trong v d ny, hm mesh xp xp gi tr ca cc phn t ca ma trn vo cc
im (X,Y,Z) trong khng gian ba chiu. mesh cng c th v mt ma trn n tng t nh vi mt i s; mesh(Z), s dng cc im (i,j,Z). Nh vy Z c v ngc li vi cc ch
s ca n, trong trng hp ny mesh(Z) ch n gin l chia li khc cc trc x, y theo
cc ch s ca ma trn Z. Bn hy th to v d cho trng hp ny?.
th b mt ca cng mt ma trn Z trng nh th li trc , ngoi tr khong
cch gia hai ng l khc nhau (gi l patchs).
patchs) th loi ny dng hm surf, n c tt c
cc i s nh hm mesh. Hy xem v d di y (Hnh 18.4):
>> surf(X,Y,Z)
Updatesofts.com
Hnh 18.4
lm r thm mt vi ch , chng ta cng quay li hm peaks a ra phn trc. th li trong khng gian 3 chiu ca hm ny c a ra nh sau (hnh 18.5):
>> mesh(peaks)
>> title('Mesh Plot of Peaks function')
Hnh 18.5
th ng vin cho ta thy c nng hoc cao ca hnh. Trong MATLAB th
ng vin trong khng gian hai chiu tng t nh trong khng gian ba chiu nhng hm
gi ca n l contour3.
contour3 th s dng cc lnh s c minh ho trong bng khc mu.
Updatesofts.com
18.3 Thao tc
tc vi th
MATLAB cho php bn khai bo gc t quan st c th trong khng gian
ba chiu. Hm view(azimuth, elevation ) thit lp gc xem bng vic khai bo azimuth v
Elevation m t v tr ngi quan st, xem nh l gc o bng trn h trc
elevation. Elevation
x-y. Azimut
Azimut m t gc trong h trc ni ngi quan st ng.
Azimuth c o bng t phn m trc y. Pha m trc y c th quay theo chiu kim
ng h mt gc -37.5 t pha bn. Elevation l gc m ti mt bn thy c mt
phng x-y. S dng hm view cho php bn c th quan st hnh v t cc gc khc
nhau. V d nu elevation thit lp l m, th view s nhn hnh t pha di ln. Nu azimuth
thit lp dng, th hnh s quay ngc chiu kim ng h t im nhn mc nh.Thm ch
bn c th nhn trc tip t trn bng cch thit lp view(0,90 ). Thc ra th y l im nhn
mc nh 2 chiu, trong x tng t tri qua phi, v y tng t trn xung di, khun dng
view(2) hon ton ging nh mc
nh ca view(0, 90 ), v view(3) thit lp mc nh trong khng gian 3 chiu.
Lnh view c mt dng khc m rt tin ch khi s dng l view([X,Y,Z ]) cho php bn
quan st trn mt vector cha h trc to decac trong khng gian 3 chiu. Khong cch
t v tr bn quan st n gc to khng b nh hng. V d, view([0 10 0 ]), view([0 -1
0 ]) v view(0, 0 ) cho cc kt qu nh nhau. Cc thng s azimuth v elevation m bn
ang quan st c th ly li c bng cch dng [az, e] = view. Vd:
>> view([-7 -9 7])
>> [az,el] = view
az =
-37.8750
el =
31.5475
Mt cng c hu dng khc l quan st th khng gian 3 chiu bi hm rotate3d. Cc
thng s Azimtuh v elevation c th c tc ng bi chut, rotate3d on cho php chut
can thip, rotate3d off khng cho php.
Lnh hidden du cc nt khut. Khi bn v th, th mt s phn ca n b che khut
bi cc phn khc, khi nu dng lnh ny th cc nt khut s b du i, bn ch c th
nhn phn no trong tm nhn ca bn. Nu bn chuyn n hidden off, bn c th thy
phn khut qua mng li. Di y l v d:
>> mesh(peaks(20)+7)
>> hold on
>> pcolor(peaks(20))
>> hold off
>> title('Mesh with hiden on')
Updatesofts.com
Hnh 18.8
By gi hy b ch du cc nt khut i ta s thy s khc nhau:
>> hidden off
>> title('Mesh with Hidden Off ')
Hnh 18.9
Updatesofts.com
Hnh 18.10
Hm clabel tng thm cao cho th ng vin. C ba mu clabel(cs), clabel(cs, V )
v clabel( cs, manual). clabel(cs), trong cs l cu trc ng vin c tr v t lnh
contour, cs=contour(z), ly nhn tt c cc th ng vin vi cao ca n. V tr
ca nhn c ly ngu nhin. clabel (c, manual) nh v nhn ng vin v tr kch
chut tng t nh lnh ginput ni trn. Nhn phm Return kt thc vic to nhn
ny.
Hm contourf s v mt th ng vin kn, khng gian gia ng vin c lp y
bng mu.
Hai mu trng thi ca lnh mesh dng vi th li l: meshc v th li v thm ng vin bn di, meshz v th li v th c dng nh mn che.
Hm waterfall c xem nh mesh ngoi tr mt iu l hm mesh ch xut hin hng x.
C hai mu trng thi ca lnh surf, l surfc v mt th surf
surf v thm ng bao
bn di, surflvex v mt th surf nhng thm vo s chiu sng b mt t ngun
sng. Cu trc tng qut l surfl( X,Y, Z, S, K ) trong X, Y,v Z tng t nh surf, S l
mt vector tu chn trong h to decac (S=[Sx Sy Sz]) hoc trong to cu
(S=[az,el]) ch ra hng ca ngun sng. Nu khng khai bo, gi tr mc nh ca S l
45 theo chiu kim ng h t v tr ngi quan st, S l mt vector tu chn ch ra
Updatesofts.com
Hnh 18.11
fill3, phin bn 3 chiu ca fill, v mt a gic u trong khng gian ba chiu. Khun
dng tng qut ca n l fill3(x, y, z, c), trong chiu ng ca a gic c ch bi ba
18.5 Bng mu
Mu v biu mu c cp n trong mt s v d phn trc. Trong phn ny
chng ta s ni r v chng. MATLAB nh ngha mt biu mu nh l mt ma trn c 3
ct. Mi hng ca ma trn nh ngha mt mu ring bit s dng cc s trong di 0 v 1.
Nhng s ny ch ra cc gi tr RGB, nhy ca cc mu thnh phn , xanh l cy, v
Updatesofts.com
0
1
1
0
cy
0
1
1
0
-5
-5
1
-49
xanh bin
Xanh l cy
0
1
0
1
0
1
0
1
-5
0
-62
1
Xanh da tri
0
0
1
1
1
-5
-40
mu
1
0
xanh da tri
0
tm
lam xm
xm trung bnh
0
ng
-83
en
trng
xanh
vng
ti
ngc
M t bng mu
Gi tr mu bo ho (HSV)
en--vng-trng
xm cn bng tuyn tnh
xm c pha nh vi mu xanh
sc thi ca mu ng
mu hng nht nh
trng hon ton
xen k , trng, xanh da tri, v en
s thay i mu bo ho
c mu sc lng knh
mu xanh tm
mu ca nt v
Bng ca xanh l cy v vng
Bng ca v vng
Bng ca xanh l cy v xanh da tri
Bng ca magenta v yellow
Updatesofts.com
>> [X,Y,Z]=peaks(30);
>> surf(X,Y,Z,atan2(X,Y))
>> colormap(hsv),shading flat
>> axis([-3 3 -3 3 -6.5 8.1]),axis off
>> title('using a color Argument to surf')
Hnh 18.12
18.7 S dng mu thm thng tin
Mu c th c dng thm thng tin vo th 3 chiu nu n c s dng to
thnh chiu th t. Cc hm nh mesh v surf bin i mu dc theo trc z, tr khi mt
i s mu c a ra nh surf(X,Y,Z) hon ton tng ng vi surf(X,Y,Z,t ) trong
thnh phn th t c dng nh mt ch s trong biu mu. iu ny khin cho th
y mu nhng li khng thng tin khi m trc z tn ti.
Di y l mt s cch s dng i s mu thm thng tin hoc nhn mnh thng
tin tn ti trong th
>> x=-7.5: .5:7.5; y=x
% create a data set
>> [X,Y]=meshgrid(x,y);
%create plaid data
>> R=sqrt(X.^2+Y.^2) +eps
% create radial data
>> Z=sin(R)./R;
% create a sombrero
>> subplot(2,2,1),surf(X,Y,Z),
>> title('Color Varies with the Z_axis')
>> subplot(2,2,2),surf(X,Y,Z,R),
>> title('Color Varies With the Radius')
>> subplot(2,2,3),surf(X,Y,Z,del2(Z)),
>> title('Color Varies with Curvature')
>> [dZdx,dZdy]=gradient(Z);
%compute the slope
Updatesofts.com
>> dZ=sqrt(dZdx.^2+dZdy.^2)
%compute the slope's manitude
>> subplot(2,2,4),surf(X,Y,Z,dZ)
>> title('Color Varies With the slope Magnitude')
Hnh 18.13
18.8 Hin th bng mu.
Bn c th hin th bng mu theo mt s cch sau. Mt trong nhng cch l xem tt
c cc phn t trong trong mt ma trn bng mu mt cch trc tip:
>> hot(8)
ans =
0.3333
0
0
0.6667
0
0
1.0000
0
0
1.0000
0.3333
0
1.0000
0.6667
0
1.0000
1.0000
0
1.0000
1.0000
0.5000
1.0000
1.0000
1.0000
Updatesofts.com
>> pcolor([1:n+1;1 :n+1]')
>> title('using pcolor to display a colormap')
Hnh 18.4
Hm colorbar thm mt thanh mu ng hoc thanh mu ngang (cn chnh mu ) vo
ca s hnh v ca bn, a ra biu mu cho trc hin ti. colorbar( h) nh v thanh mu
ngang di hnh v hin ti ca bn. colorbar( v) nh v thanh mu ng v bn phi hnh
v ca bn. colorbar khng c i s th l thm mt thanh mu ngang, nu thanh mu
ny khng tn ti hoc l cp nht nu n tn ti.
>> [X,Y,Z] = peaks;
>> mesh(X,Y,Z );
>> colormap(hsv)
>> axis([-3 3 -3 3 -6 8])
>> colorbar
Hnh 18.5
18.9 Thit lp v thay i bng mu.
Updatesofts.com
Updatesofts.com
Chng19
Hnh 18.6
Mng t bo v cu trc
Updatesofts.com
[]
[]
Updatesofts.com
>> class(x)
ans=
double
>> y = B[2,2]
y=
>> class(y)
ans=
cell
>> B{1,1} (1,2) % truy nhp vo phn t th hai ca
% vector trong t bo
ans=
2
truy nhp di cc phn t trong mng t bo, s dng hm deal
>> [a,b] = deal(B{2,:1})
a=
2.0000+
3.0000i
b=
5
Hm deal cn mt danh sch cc bin phn bit nhau bi du phy. Biu thc B{2, :} c
th s dng mi ni v du phy dng phn tch danh sch cc bin. Do , B{2, :} tng ng vi B(2,1) v B(2,2).
Updatesofts.com
Updatesofts.com
Updatesofts.com
Updatesofts.com
1x2 struct array with fields
name
cost
test
19.9 S nghch o v hm kim tra
islogical.
---------------------oOo----------------------
Chng 20
Cc chng trc, bn bit c MATLAB mnh ra sao trn phng din lp trnh,
tnh ton. Mc d kh nng tnh ton ca n rt mnh, tuy nhin n vn cn c nhng hn
ch. Nh mt my tnh, MATLAB c s s dng cc con s. N nhn cc s (123/4) hoc
cc bin (x =[ 1 2 3 ]).
Hp cng c ton hc l mt tp hp cc cng c ( hm ) MATLAB s dng
nhm gii cc bi ton. C cc cng c t hp, n gin ho, tch phn, vi phn v gii
cc php ton i s v php ton vi phn. Cc cng c khc s dng trong i s hc
tuyn tnh chuyn i chnh xc dng nghch o, nh thc v cc khun mu tiu
chun.
Cc cng c trong Symbolic
Symbolic Math Tollbox c to nn t chng trnh phn mm
mnh c tn l Maple@ pht trin khi u t trng i hc Waterloo Ontario, Canada v
by gi l phn mm ca hng Waterloo Maple Software. Khi bn yu cu MATLAB thc
hin mt php ton, n s s dng cc hm ca Symbolic Math Tollbox lm vic ny
v tr li kt qu ca s lnh.
20.1 Biu thc v cc i tng
tng c trng
trng
MATLAB c s s dng mt s cc kiu i tng khc nhau lu tr gi tr. Bin
s hc dng lu tr gi tr s hc, v d nh x=2, mng k t lu tr chui vn bn, v
nh : t = A text string . Hp cng c ton hc c trng dng nhng i tng ton hc
thay th cc bin v cc ton t, v d: x = sym ( x ). Cc i tng ton hc c s
dng bi MATLAB trong nhiu trng hp tng t nh cc bin s hc v chui c s
dng. Biu thc ton hc l nhng biu thc c cha i tng ton hc thay th cho cc
s, hm, ton t.v cc bin. Cc bin khng yu cu phi nh ngha trc. Thut ton l
cng c thc hnh gii quyt nhng bi ton trn c s bit c nhng quy lut v s
Updatesofts.com
Lp
double
double
double
double
double
double
double
double
double
double
Updatesofts.com
sym ( 1/3, f )
sym ( 1/3, r )
sym ( 1/3, e )
sym ( 1/3, d )
1.555555555555 *2^(-2)
1/3
1/3-eps/12
.333333333333333333314829616256
sym
sym
sym
sym
% to mt bin c trng x
% i ca cos(x ) vi bin s l x
Updatesofts.com
char
>> M = sym('[a,b;c,d ]')
M=
[a,b;c,d]
>> size(M)
ans =
1
3
>> class(M)
ans =
sym
>> syms a b c d
>> M = [a,b;c,d]
M=
[a, b]
[c, d]
>> size(M)
ans =
2
2
>> class(M)
ans =
sym
Updatesofts.com
>> a = 1; b = 2 ; syms c d % nh ngha mt bin c nh t a
>> M = [a,b;c,d]
M=
[1, 2]
[c, d]
>> size(M)
ans=
sym
% M l mt ma trn c trng t a n d
sym
>> g = sym(pi)
g=
pi
>> class(g)
ans=
sym
>> h = sym(sin(pi/4))
h=
sqrt(1/2)
>> class(h)
ans=
sym
20.4 Bin c trng
trng
Khi lm vic vi biu thc c trng c nhiu hn mt bin c trng, chnh xc hn
mt bin l bin c lp. Nu MATLAB khng ch ra u l bin c lp th n s nhn bin
no gn x nht theo th t ch ci.
Bin c lp i khi cn c gi l bin t do. Bn c th yu cu MATLAB ch ra
bin no trong biu thc c trng. bit c ta s dng hm findsym:
>> syms a s t u omega i j
Updatesofts.com
>> findsym(a*t+s/(u+3),1)
ans =
u
>> findsym(sin(a+omega),1)
ans =
omega
>> findsym(3*i + 4*j)
ans =
''
% u l gn x nht
% omega gn x nht
% i v j tng t nh sqrt(-1)
Updatesofts.com
-b + x
Hai biu thc u tin cho ta kt qu nh mong mun
g = x2 - x + 7
>> sym('x')
% nh ngha mt bin s c trng
>> f = (2*x^2 + 3*x - 5)
% nh ngha biu thc c trng f v g
f=
(2*x^2 + 3*x - 5 )
>> x^2 - x + 7
g=
x^2 - x + 7
>> f +
ans =
3*x^2 + 2*x + 2
>> f - g
% tm biu thc ca f-g
ans =
x^2 + 4*x - 12
>> f*g
% tm mt biu thc ca f*g
ans =
(2*x^2 + 3*x -5 ) *( x^2 - x + 7)
>> f/g
% tm mt biu thc ca f/g
ans =
(2*x^2 + 3*x - 5 )/(x^2 - x + 7)
>> f ^(3*x)
% tm nt biu thc cho f3x
Updatesofts.com
ans =
(2*x^2 + 3*x - 5)*3*x
Thc s l mt php ton trn bt c biu thc no cha t nht mt bin s c trng s cho kt qu ca mt biu thc c trng, bn hy t hp cc biu thc c nh to
nhng biu thc mi. V d:
>> a = 1; b = 3/2 ; x = sym('x');
% to mt s v nhng bin s c trng
>> f = sin(a - x)
% to mt s biu thc
ans=
-sin(x-1)
>> g = sin(b*x^2)
ans=
sin(3/2*x^2)
>> b*f/(g - 5)+ x
% kt hp chng
ans =
-3/2*sin(x - 1)/(sin(3/2*x^2)- 5 )+ x )
Tt c cc php ton ny u thc hin tt vi cc i s l mng.
20.8 Cc php ton nng cao
MATLAB c th biu din nhiu php ton nng cao hn biu thc c trng. Hm
g = sin ( x )
h = x/ ( 1 + u 2 )
k = cos ( x+v )
>> syms x u v
% nh ngha 3 bin c trng
>> f = 1/(1+x^2)
% to 4 biu thc
>> g = sin(x)
>> h = x/(1 + u^2)
>> k = cos(x + v)
>> compose(f,g)
% tm biu thc ca f( g ( x ))
ans =
sym(1/(1 + x^2))
Updatesofts.com
Updatesofts.com
Updatesofts.com
>> double(h)
ans=
>> class(ans)
ans=
% to mt mng c trng
Updatesofts.com
>> x = sym('x');
>> p = int(log(x)/exp(x^2)) % ly tch phn
Warning:Explicit integral could not be found.
In C:\MATLAB\toolbox\symbolic\@sym\int.m at line 58
p = int(....
>> pretty(p)
ans =
output from pretty
Hm tch phn, cng nh hm vi phn u c nhiu hn mt c php. int(f) s tm
mt php tnh tch phn theo cc bin c lp mc nh, cn int(f, s ) tm php ly tch phn
theo bin c trng s. Khun mu int( f, a, b ) v int (f, s, a, b ), trong a, b l cc bin s,
tm ra biu thc c trng cho php ly tch phn theo cn t a n b. Tng t cho hm
int(f, m, n ) v
int ( f, s, m, n ).
>> syms x s m n % nh ngha mt s bin
>> f = sin(s + 2*x)
% to mt hm tng trng
f=
sin(s+2*x)
>> int(f)
% php ly tch phn theo bin x
ans=
-1/2*cos(s+2*x)
>> int(f,s)
% php ly tch phn theo i s s
ans=
-cos(s + 2*x)
>> int(f,pi/2,pi)
% ly tch phn theo bin x vi cn t pi/2 n pi
ans=
-cos(s)
>> int(f,s,pi/2,pi)
% ly tch phn theo s, cn t pi/2 n pi
ans=
2*cos(x)^2 - 1 - 2*sin(x)*cos(x)
>> g = simple(int(f,m,n)) % ly tch phn theo x, cn t m n n
g=
-1/2*cos(s + 2*n) + 1/2*cos(s + 2*m)
Trong v d ny, hm simple c s dng n gin ho kt qu ca php ly tch phn.
Chng ta s nghin cu thm v hm simple sau ny.
Cng nh hm diff, hm ly tch phn int trn mi phn t ca mng c trng:
>> syms a b c d x s
% nh ngha mt s bin c trng
>> f = [a*x,b*x^2;c*x^3,d*s]
% xy dng mt mng c trng
f=
[a*x,
b*x^2 ]
[c*x^3,
d*s ]
>> int(f)
% ly tch phn mng cc phn t theo i s x
ans =
[1/2*a*x^2,
1/3*b*x^3]
Updatesofts.com
[1/4*c*x^4,
d*s*x]
% tm gi tr ca t khi v(t)=0
Updatesofts.com
2.0505
% v cao qu c chua
Updatesofts.com
-4.8768*t^2+20.*t+30
50
40
30
20
10
-10
-20
-30
0
41 3
--- x +
750
293 4
---- x 7500
1207 5
----- x
37500
Updatesofts.com
ans =
(x - 1)*(x - 2)*(x - 3)*(x + 1)
>> expand(f)
ans =
x^4 - 5*x^3 + 5*x^2 + 5*x - 6
nhiu kiu khc nhau nh: tch phn v lu tha phn s; lut s m v hm log; v Bessel,
hnh hc v hm gamma. Mt vi v d s minh ho iu ny:
>> syms x y a
>> simplify(sin(x)^2 + 3*x + cos(x)^2 - 5)
ans =
-4 + 3*x
>> simplify(log(2*x/y))
ans =
log(2) + log(x/y)
>> simplify((-a^2 + 1)/(1 - a))
ans =
a+1
20.15 Tm tt v mt s c im khc
Biu thc c trng s phc trong c php MATLAB c th c trnh by theo mt hnh
mu m ta c th d ng c bng vic s dng hm pretty.
C th c nhiu kiu tng t nhau ca biu thc c trng, mt s chng th d dng
s dng hn mt s khc trong nhng tnh hung khc nhau. MATLAB a ra mt s
cng c thay i khun dng trong biu thc. l :
Cng c
collect
factor
expand
simplify
simple
M t
Gom tt c cc mc ging nhau
Biu din di dng mt a thc
M rng tt c cc mc
n gin ho cc biu thc
Tm biu thc tng ng c chui k t ngn nht
>> s = sym('s');
>> Y =(10*s^2 + 40*s + 30 )/(s^2 + 6*s + 8)
Y=
(10*s^2 + 40*s + 30)/(s^2 + 6*s + 8)
>> diff(int(Y))
ans =
10 - 15/(s + 4) - 5/(s + 2)
>> pretty(ans)
15
5
Updatesofts.com
-1 + x x + 1
Updatesofts.com
Updatesofts.com
Updatesofts.com
[ c, a, b]
>> G = [cos(t),sin(t);-sin(t),cos(t)]
G=
[ cos(t), sin(t)]
[ -sin(t), cos(t)]
Kch thc ca ma trn c trng c th tm c bng hm chun size v length. V d:
>> syms a b c d e f
>> S = [a,b,c;d,e,f]
S=
[ a, b, c]
[ d, e, f]
>> h = size(S)
h=
2 3
>> [m,n] = size(S)
m=
2
n=
3
>> length(S)
ans =
3
Phn t ca mng c trng cng c truy nhp tng t nh mng s
>> syms ab cd ef gh
>> G = [ab,cd,ef,gh]
G=
[ ab, cd, ef, gh]
>> G(1,2)
ans =
cd
20.23 Php ton i s tuyn tnh
Php nghch o v nh thc ca ma trn c tnh bi hm: inv v det
>> H = sym(hilb(3))
H=
[1, 1/2, 1/3]
[1/2, 1/3, 1/4]
[1/3, 1/4, 1/5]
>> det(H)
ans =
1/2160
>> J = inv(H)
J=
[ 9, -36, 30]
[-36, 192, -180]
Updatesofts.com
>> syms a s t w
>> f = exp(-a*t)*cos(w*t)
f=
exp(-a*t)*cos(w*t)
>> L = laplace(f,t,s)
L=
(s + a)/((s + a)^2 + w^2)
>> pretty(L)
s+a
------------2 2
s + a) + w
20.26 Bin i Fourier
Hm bin i Fourier v Fourier ngc nh sau:
F() =
f(t)=
MATLAB dng w thay cho trong biu thc c trng
>> syms t w
>> f=t*exp(-t^2)
f=
t*exp(-t^2)
>> f=fourier(f,t,w)
% bin i fourier s dng tham s t v w
f=
-1/2*i*pi^(1/2)*w*exp(-1/4*w^2)
>> ifourier(f,w,t)
% timbin i fourier ngc
ans =
1/2*4^(1/2)*t*exp(-t^2)
>> simplify(ans)
ans =
t*exp(-t^2)
Updatesofts.com
--------------------------oOo-------------------------
chng 21
MATLAB : A, B, C, D
MATLAB : A, B, C, D
=
C mt s tng quan t nhin 1-1 gia ch s mng t bo v ch s ma trn hm
truyn.
21.2 i tng
tng LTI
Updatesofts.com
MATLAB cung cp mt cch tm lc mng d liu tng quan thnh cc i tng tuyn tnh, bt bin theo thi gian, hoc cc i tng LTI. iu ny gip cho vic
qun l chng c d dng. V d:
>> my_sys= zpk( z, p, k )
Zero/ pole / gain from input 1 to output:
1
s
Zero / pole / gain from input 2 to output:
3 ( s+1 )
-------------(s+10) (s+2)
xy dng mt i tng LTI zero-pole-gain c tn l my_sys c cha h thng 2 u vo v
mt u ra. Cng nh vy:
>> H = tf( num, den )
Transfer function from input 1 to output...
10
#1: .........
s+10
-1
#2: .....
s
Transfer function from input 2 to output ...
s+10
#1:..............
s^2+6 s+10
3s+1
#2: ............
s^2 + 3 s + 3
to mt hm truyn i tng LTI t mng t bo num v den nhp vo trc . Cng nh
vy h thng hin ti hin th mt ch d hiu.
Cui cng, i tng LTI khng gian trng thi c hnh thnh nh sau:
>> a = [ 0 1 ; -2 -4 ] ; b = [ 0 1 ]; c = [ 1 1 ] ; d =0;
% inh ngha ma trn khng gian trng thi
>> system2=ss( a, b, c, d)
a=
x1
x2
x1
0
1.00000
x
-2.00000 -4.00000
b=
x1
x2
u1
0
1.00000
Updatesofts.com
c=
y1
x1
1.00000
x2
1.00000
d=
u1
0
y1
H thng lin tc theo thi gian
Trong trng hp ny, h thng s xc nh cc thnh phn bin gn vi mi phn t v
xc nhn h thng l lin tc theo thi gian.
xy dng mt h thng gin on theo thi gian, s dng hm zpk, tf, v hm ss,
bn nht thit phi khai bo chu k ly mu km theo vi h thng c xem nh l mt i
s u vo cui cng.V d:
>> dt_sys = tf ( [ 1 0.2 ], [ 1 -1 ], 0.01 )
hm truyn
z+0.
...........
z-1
thi gian ly mu : 0.01
H thng ri rc theo thi gian ny c chu k ly mu l : 0.01
21.3 Khi phc d liu
Gi s i tng LTI c to dng, th d liu trong c th tch ra bng cch
s dng hm tfdata, zpkdata, v ssdata. V d :
>> [nz, dz ]= tfdata (dt_sys )
% tch ra nh l mng t bo
nz =
[1x2 double ]
dz =
[1x2 double ]
>> [ n z, dz ] = tfdata (dt_sys, 'v' ) % chch ra nh l vector
z=
[ -0.2 ]
p=
[1]
k=
1
>> [z, p, k ] =zpkdata ( dt_sys, 'v' )
% chch ra nh l vector
z=
-0.2
p=
1
k=
1
>> [ a, b, c, d ] = ssdata(dt_sys) % chch ra ma trn khng gian trng
%thi s
Updatesofts.com
a=
1
b=
1
c=
1.2
d=
1
Nu nh mt i tng LTI c xy dng th n c th c tch ra theo bt c mt
mu no.
21.4 S nghch o i tng
tng LTI
Bn cnh vic tch cc i tng LTI thnh nhiu kiu khc nhau, chng cn c th
c chuyn i thnh cc dng khc nhau bng cch s dng cc hm t to. V d :
>> t = tf ( 100, [1 6 100])
% xy dng mt hm truyn.
Hm truyn :
100
.................
s^2 + 6 s + 100
>> sst = ss(t )
a=
x1
x2
x1
-6.00000
-6.25000
x2
16.00000
0
b=
u1
x1
2.00000
x2
0
c=
x1
x2
y1
0
3.12500
d=
u1
y1
0
H thng lin tc theo thi gian.
>> zpkt = zpkt(t)
Zero / pole / gain:
100
.................
(s^2+ 6 s + 100 )
21.5 Thut ton i tng
tng LTI
S dng i tng LTI cng cho php bn thit lp thut ton s khi. V d, hm
truyn lp ca mt h thng hi tip l G( s ) . Th hm truyn lp gn nht ca l : T(s ) =
G(s ) ( 1 + G(s) ). Trong MATLAB, iu ny bt u:
>> g = tf( 100, [1 6 0])
% hm truyn lp
Hm truyn:
100
............
Updatesofts.com
s^2 + 6 s
>> t = g/(1+g)
hm truyn:
100 s^2 + 600 s
...............................
s^4 + 12 s^3 + 136 s^2 + 600 s
>> t = minreal(t)
% thit lp hm hu pole-zero
Hm truyn:
100
...................
s^2 + 6 s + 100
Updatesofts.com
Hnh 21.1
th Bode n gin ca h thng closed-loop l:
>> bode(t)
p ng xung ca h thng
>> step(t)
Hnh 21.2
Updatesofts.com
Hnh 21.3
Ngoi cc phng php nu trn, hp cng c h thng iu khin cn a ra thm cho
bn lnh tr gip ltiview. Hm ny cho php bn la chn cc i tng LTI t ca s lnh
v quan st cc p ng khc nhau trn mn hnh.
21.7 Danh sch cc hm ca hp cng c h thng iu khin
S hnh thnh cc kiu LTI
ss
zpk
tf
dss
filt
set
ltiprops
Phn tch d liu
ssdata
zpkdata
tfdata
dssdata
get
Updatesofts.com
c tnh ca cc loi
class
size
isempty
isct
isdt
isproper
issiso
isa
S nghch o
ss
zpk
tf
c2d
d2d
Cc php ton
+ v *
\
/
.
[...]
inv
ng hc
pole, eig
tzero
pzma
dcgai
norm
covar
damp
esort
dsort
pade
p ng thi gian
step
Updatesofts.com
impulse
inittial
lsim
Ltiview
gensig
stepfun
p ng
ng tn s
bode
sigma
nyquist
nichols
ltiview
evalfr
margin
Lin kt h thng
append
parallel
series
feeback
star
connect
Dng c thit k c in
rlocus
acker
place
estime
p ng xung
p ng h thng khng gian trng thi vi
trng thi khi to
p ng u vo tu
p ng phn tch GUI
Pht sinh tn hiu u vo cho lsim
Pht sinh u vo n v -bc
th Bode ca p ng tn s
th gi tr tn s duy nht
th Nyquist
Biu Nichols
p ng phn tch GUI
p ng tn s ti mt tn s nht
nh
Gii hn pha v tng ch
Qu tch nghim
S thay th cc SISO
S thay th cc MIMO
Khun dng b nh gi
Updatesofts.com
Gii quyt php ton ma trn
lyap
dlyap
care
dare
S biu din
crtldemo
jetdemo
diskdemo
milldemo
kalmdemo
-----------------------oOo----------------------
Chng 22
Hp dng c x l tn hiu
Updatesofts.com
Hnh 22.1
>> x = fft(x);
>> X = fft(x);
>> Ts = t(2)- t(1);
>> Ts = t(2)- t(1)
Ts =
0.0196
>> Ws = 2*pi/Ts;
>> Wn = Ws/2
Wn =
160.5354
>> W = linspace(0,Wn,length(t)/2);
>> Xp = abs(X(1:length(t)/2));
>> plot(w,Xp)
th c v hnh 22.2
Updatesofts.com
Hnh 22.2
>> i = find(w<=20);
>> plot(w(i),Xp(i))
>> grid
>> xlabel('tan so, rad/s')
>> titile('Pho bien do cua tin hieu nhieu')
Pho bien do cua tin hieu nhieu
1400
1200
1000
800
600
400
200
0
0
10
tan so, rad/s
Hnh 22.3
15
20
Updatesofts.com
chng 23
tr gip
- mc ch chung ca cu lnh
- cc ton t v cc k hiu c bit
- xy dng ngn ng lp trnh.
- cc hm ton hc s ng
Updatesofts.com
MATLAB : specfun
MATLAB : matfun
MATLAB : datafun
MATLAB : polyfun
MATLAB : funfun
MATLAB : sparfun
MATLAB : graph2d
MATLAB : graph3d
MATLAB : specgraph
MATLAB : graphics
MATLAB : uitools
MATLAB : strfun
MATLAB : iofun
MATLAB : timefun
MATLAB : datattypes
MATLAB : MacOS
MATLAB : demos
MATLAB : specmat
MATLAB : local
MATLAB : cntol
MATLAB : signal
MATLAB : symbolic
- cc hm ton hc c bit
- hm ma trn - i s hc tuyn tnh
- hm bin i fourier v phn tch d liu
- cc a thc v php ni suy
- phng n gii cc ODE v cc hm ca hm
- ma trn sparfun
- ho 2 chiu
- ho 3 chiu
- th ph
- thao tc ho
- cc cng c giao tip ngi s dng v ho
- xu k t
- tp vo / ra
- ngy thng v thi gian
- cu trc v kiu d liu
- cc hm trong Macintosh
- v d v minh ho
- ma trn c bit
- tham chiu
- hp cng c h thng iu khin
- hp cng c x l tn hiu
- hp cng c ton hc
Updatesofts.com
See also : REAL, IMAG, I, J
Hnh 23.1
Nhn kp vo bt c topic no hin th trong ca s help,
help s hin th mt ca s mi
cha cc topic con hoc cc hm gn vi n.
Nhn kp vo bt c biu tng no trong s hin th thng tin tr gip v mc .
Updatesofts.com
cc Mion
M- File ca Student Edition
HELP Topic
Th mc MATLAB
Mc ch chung ca cu lnh
Thng tin chung
help
helpwin
helpdesk
demo
whatsnew
Readme
Qun l ng
ng dn
path
addpath
rmpath
editpath
Qun l cc hm v lnh
what
type
edit
lookfor
which
pcode
inmem
mex
Cu lnh iu
iu khin
echo
file-M
more
cc trang ca s lnh
diary
Nhn/to ng dn
Thm th mc theo ng dn
Ri th mc t t ng dn
Sa i ng dn
Danh sch cc file c trng ca MATLAB trong th mc
Danh sch file-M
Son tho filr-M
Tm kim tt c cc file-M theo t kho
Xc nh cc hm v file
To file-P
Danh sch cc hm trong b nh
Bin dch hm MEX
Ly li lnh t
Kim sot u ra
Lu gi vn bn
Updatesofts.com
format
dng cho u ra
Thit
lp
nh
Thay i th mc
Hin th th mc
Danh sch th
Xo file
Ly li bin mi
Thc hin
cu
trnh
xt
Loi my tnh
Danh
sch
To
im
Di
chuyn
Tip tc thc
Hin th cc hm gi ngn xp
c bit
Cc ton t v cc k tt
Danh
sch
Thc
hin
file- MEX g
Updatesofts.com
Cc ton t
plus (+)
uplus (+)
minus ( - )
uminus (-)
mtimes(. *)
times (*)
mpower (^)
power (. ^ )
mldivide (\ )
mrdivide /)
ldivide (.\ )
mdivide (./ )
kron
Ton t
t quan h
eq (== )
ne ( ~= )
lt (< )
gt (>)
le (<= )
ge (>= )
Ton t logic
and ( & )
or ( | )
not ( ~ )
xor
any
all
Cng
Cng unary
Tr
Tr unary
Nhn ma trn
Nhn mng
Lu tha ma trn
Lu tha mng
Chia tri ma trn
Chia phi ma trn
Chia tri mng
Chia phi ma trn
Sn phm c cng
Bng
Khng bng
Nh thua
Ln hn
Nh thua hoc bng
Ln hn hoc bng
Logic v
Logic hoc
Logic ph nh
Logic hoc ph nh
True nu mi phn t ca vector khc khng
True nu tt c cc phn t khc khng
Cc ton t Bitwise
bitand
bitcmp
bitor
bitmax
bitset
bitget
bitshift
Bitwise and
Bit hon thnh
Bitwise OR
Maximum floating point integer
Thit lp bt
Nhn bt
Dch bit
Thit lp cc k t
union
unique
intersect
setdiff
setxor
ismember
Thit lp lin kt
Ch s duy nht
Thit lp s giao nhau
To s khc nhau
Thit lp hoc ph nh
True nu thit lp cc thnh vin
Updatesofts.com
Cc k t c bit
colon
()
[]
{}
.
.
..
...
,
;
%
!
=
transpose(.)
ctranspose( )
horzcat [, ]
vertcat[; ]
subsasgn
bsref
subsindex
Du hai chm
Du ngoc n
Du ngoc vung
Du ngoc nhn
Chm thp phn
Truy nhp cu trc trng
Th mc m
S tip tc
Du phy
Du chm phy
Ch thch
Lin quan cu lnh ca h iu hnh
Gn
Nhy
Chuyn v
Chuyn v s pc lin hp
Gp chui theo chiu ngang
Gp chui theo chiu ng
Gn subscripted
Tham chiu subscripted
Ch s subscripted
Cu Trc ngn ng lp trnh
Cu lnh iu khin
if
elseif
else
end
for
while
break
return
pause
Thi hnh v nh gi
gi
eval
feval
evalin
builtin
assignin
run
Updatesofts.com
Script, hm, v cc bin
script
function
global
mfilename
lists
exist
hay khng
isglobal
Thao tc vi cc i s
nargchk
nargin
nargout
varagin
varaout
inputname
Hin th thng bo
error
warning
lasterr
errortrap
disp
fprintf
sprintf
u vo tng
tng h
input
keyboard
pause
uimenu
uicontrol
Hin th thng bo li v hm hu
Hin th thng bo cnh bo
Thng bo li trc
B qua li trong qu trnh kim tra
Hin th mt mng
Hin th thng bo nh dng
Ghi d liu nh dng vo mt xu
Nhc ngi s dng nhp vo
Gi bn phm t M-file
i ngi s dng nhp d liu vo
To giao din bng chn-ngi s dng
To giao din ngi iu khin
Ma trn c bn v Thao tc vi ma trn
Ma trn c bn
zeros
ones
eye
repmat
rand
randn
linspace
logspace
meshgrid
Mng s khng
Mng s 1
Nhn dng ma trn
Ti to v mng
S ngu nhin xp xp ng u
S ngu nhin xp xp thng thng
Vector khng gian tuyn tnh
Vector khng gian logarthm
Mng X-Y cho th 3 chiu
Updatesofts.com
:
Thao tc vi ma trn
reshape
diag
tril
triu
fliplr
flippud
flipdim
rot90
find
end
sub2ind
ind2sub
Hng v cc bin c bit
ans
eps
realmax
realmin
pi
i, j
inf
NaN
isNaN
isinf
isfinite
flops
Cc bin c bit
ans
eps
Kch c ma trn
di vector
S chiu
Hin th ma trn hoc vn bn
True nu l ma trn trng
True nu ma trn l ng nht
True cho mng s
True cho mng logic
Chuuyn i gi tr s thnh logic
Thay i kch c
Ma trn ng cho v ng cho ca ma trn
Trch pha di ra ma trn tam gic
Trch pha trn ra ma trn tam gic
Ma trn flip theo hng tri /phi
Ma trn flip theo hng trn/ di
Ma trn flip dc theo chiu khai bo
Quay i mt gc 90
Tm ch s phn t khc khng
Ch s cui
Ch s tuyn tnh t multiple subscripts
Multiple subscripts t ch s tuyn tnh
Tr li kt qu khi biu thc khng c gn
Vit di dng du phy ng
S du phy ng dng ln nht
S du phy ng dng nh nht
3.1415926535897...
n v o
V cng
Khng phi l mt s
True nu NaN
True nu s phn t l khng v cng
True nu s phn t l v cng
m s ch s sau du phy ng
Updatesofts.com
pi
i, j
inf
NaN
clock
date
flops
nargin
narout
Cc loi ma trn c bit
comban
diag
eye
gallery
hadamar
hankel
hilb
invhilb
linspace
logspace
magic
meshdom
ones
rand
toeplitz
vander
zeros
Cc hm lng
lng gic
sin
cos
tan
asin
acos
atan
atan2
sinh
cosh
tanh
asinh
acosh
atanh
Bu bn
ng cho
Nhn dng
B mt
Hadamard
Hankel
Hilbert
Hilbert o
Vector
Vector
Vung Magic
Thc hin cho mesh plots
Hng
Cc phn t ngu nhin
Toeplitz
Vandermonde
Khng
Updatesofts.com
Cc hm ton hc
abs
angle
sqrt
real
imag
conj
round
fix
floor
ceil
sign
rem
exp
log
log10
Cc hm c bit
airy
besselj
bessely
besselh
besseli
besselk
beta
betainc
betaln
erf
erfc
ellipk
ellipj
gamma
gammaln
inverf
rat
Hm l thuyt s hc
factor
isprime
primes
gcd
lcm
rat
rats
perms
nchoosek
Updatesofts.com
Trang ho
plot
loglog
semilogx
semilogy
polar
mesh
contour
meshdom
bar
errorbar
title
xlabel
ylabel
grid
text
gtext
ginput
iu khin ca s ho
axis
zoom
hold
shg
clg
subplot
Updatesofts.com
diffuse
surfnorm
Bng mu
hsv
hot
gray
pink
white
bone
.
..
iu chnh trc
axis
zoom
grid
box
hold
axes
Ch thch ho
title
xlabel
ylabel
zlabel
colorbar
text
gtext
Tiu ho
Nhn trc x
Nhn trc y
Nhn trc z
Hin th thanh mu
Ch thch vn bn
Di vn bn n v tr chut
chui k t
To mt chui k t
Chuyn chui sang m s k t
To mng chui t bo t mng k t
Xu rng
Di chuyn cc xu rng
Thc hin xu vi biu thc MATLAB
True
True
True
True
nu l chui k t ( xu )
nu l mng chui t bo
nu l ch hoa trong bng ch ci
nu l k t rng
Kt ni xu
Kt ni dc xu
So snh chui
Updatesofts.com
strncmp
findstr
strjust
strrep
strtok
upper
lower
Chui v vn bn
abs
num2str
int2str
settr
sprintf
hex2num
M v
v ng file
fopen
fclose
File nh phn i/o
fread
fwrite
File i/o nh dng
fscanf
fprintf
fgetl
fgets
input
V tr file
ferror
feof
fseek
ftell
frewind
Cc hm xut nhp file
file
load
save
dlmread
dlmwrite
Xut nhp file o
imread
M file
ng file
c d liu nh phn t file
Vit d liu nh phn ln file
c d liu nh dng t file
Ghi d liu nh dng ln file
c dng lnh t file, thay bng dng mi
c dng lnh t file, gi nguyn dng mi
Hin th ngi dng nhp vo
Kim ra trng thi file
Kim tra xem kt thc file hay cha
Thit lp b ch th v ch file
Nhn t b ch th v tr file
Rewind file
Updatesofts.com
imwrite
imfinfo
Xut nhp file audio
auwrite
auread
wavwrite
wavread
Ca s lnh I / O
clc
home
disp
input
pause
Xo ca s lnh
a con tr v u vn bn
Hin th mng
Thng bo cho ngi s dng nhp vo
i t ngi s dng tr li
thi gian v ngy
Gi v ngy hin ti
now
date
clock
Cc hm c bn
datenum
datestr
datevec
Hm ngy thng
calendar
weekday
eomday
datetick
Hm m
cputime
tic, toc
etime
pause
S ngy ni tip
Chui thay th ngy
Thnh phn ngy thng
Lch
Ngy trong tun
Kt thc thng
Du tick nh dng cho ngy thng
Thi gian cpu tnh theo n v giy
B m ngng hot ng
Thi gian thit lp
Dng trong mt giy
kiu d liu v cu trc
Kiu d liu
double
sparse
char
Updatesofts.com
cell
struct
uint8
inline
Hm ca mng nhiu chiu
cat
ndims
ndgrid
permute
ipermute
shiftdim
Hm
Hm ca mng t bo
cell
celldisp
cellplot
num2cell
deal
cell2struct
struct2cell
iscell
Hm cu trc
struct
fieldsnames
getfield
setields
isfield
istruct
To mng t bo
Xy dng hoc chuyn i thnh mng cu trc
Chuyn i thnh s nguyn khng du 8 bit
Xy dng i tng INLINE
Mng kt ni
S chiu
To thnh mng cho cc hm N-D v php ni suy
Php ni suy s chiu ca mng
Nghch o php ni suy s chiu ca mng
Chuyn dch s chiu
To mng t bo
Hin th ni dung ca mng t bo
Hin th thut ho mng t bo
Chuyn i mng s thnh mng t bo
Phn pht u vo n u ra
Chuyn i mng t bo thnh mng cu trc
Chuyn i mng cu trc thnh mng t bo
True nu l mng t bo
To hoc chuyn i thnh mng cu trc
Nhn tn trng cu trc
Nhn li ni dung ca trng cu trc
Thit lp ni dung trng cu trc
True nu trng trong mng cu trc
True nu l mng t bo
chuyn i d liu ng
Hm t DDE
ddeadv
ddeexec
ddeinit
ddereq
ddeterm
ddeunadv
MATLAB/matrn
intro
inverter
matmanip
Updatesofts.com
Ca s lnh
clc
home
format
disp
fprintf
echo
General
hlep
demo
who
what
size
lengh
clear
computer
^C
quit
exit
Xo ca s lnh
a con tr v u dng
Thit lp dng hin th kt qu
Hin th ma trn hoc vn bn
In s c nh dng
Cho php gi li cu lnh
Phng tin tr gip
Chy cc chng trnh mu
Danh sch cc bin trong b nh
Danh sch cc M-file trn a
S chiu ca hng v ct
di vector
Xo khng gian lm vic
Loi my tnh
Hu bin a phng
Lt thc chng trnh
Tng t nh quit
i th mc hin ti
Xo file
Ghi mc
Th mc ca file trn a
Np cc bin t file
Lu cc bin nn file
Lit k hm hoc file
Hin th cc M-file trn a
Vit vo file
Nn b nh qua save
Updatesofts.com
a thc
poly
roots
roots1
polyval
polyvalm
conv
deconv
residue
polyfit
a thc c trng
Nghim a thc- phng php ma trn bu bn
Nghim a thc- phng php Laguerre
c lng a thc
c lng a thc ma trn
Php nhn
Php chia
Khai trin a thc
S diu chnh chnh lch a thc
Cc hm ma trn v i s tuyn tnh
Gi tr duy nht
svd
svds
poly
polyeig
condeig
qz
schur
Hm ma trn
expm
logm
sqrtm
funm
Ma trn theo hm m
Ma trn logarithm
Ma ttrn bc hai
nh gi chung hm ma trn
Updatesofts.com
Tm tha s tiu chun
qrdelete
qrinsert
rsf2csf
balance
Xo b th mc t s tm th mcQR
Gi vo th mc trong s tm tha s QR
Mu ng cho thc ti mu ng cho phc tp
Cn bng tng chnh xc
Bin i fourier v phn tch d liu
Php ton c bn
max
min
mean
median
std
sum
prod
hist
trapz
cumsum
cumprod
cumtrapz
Sai phn c hn
diff
gradient
del2
Sai phn v o hm xp x
Gradient xp x
Laplacien ri rc
Bin i fourier ri rc
Bin i fourier ri rc 2 chiu
Bin i fourier ri rc n chiu
Bin i fourier ri rc ngc
Bin i fourier ri rc hai chiu
Bin i fourier ri rc n chiu
a thc v php ni suy
Updatesofts.com
Php ni suy
interpl
interplq
interpft
interp2
interp3
interpn
griddata
Ti thiu hm mt bin
Ti thiu hm vi bin
Tm hm mt bin khng
Numaric Integration
quad
quad8
dblquad
i
i tng
tng hm inline
inline
argnames
formula
char
Updatesofts.com
mc lc
Matlab ton tp ..................................................................................................................1
ci t................................................................................................................................1
1. MATLAB for WIN ........................................................................................................1
a) CD ROM.1
b ) B nh1
chng 1: GII THIU chung..............................................................................................2
1.1 Cc php ton n gin............................................................................................3
gin
1.2 Khng gian lm vic ca MATLAB ..........................................................................4
1.3 Bin .........................................................................................................................5
1.4 Cu gii thch (comment) v s chm cu................................................................6
cu
1.5 S phc ...................................................................................................................7
chng 2: CC C tnh K THUT...................................................................................9
2.1 Cc hm ton hc thng thng
thng...............................................................................9
ng
chng 3: NHNG C IM CA CA S LNH ..........................................................15
3.1 Qun l khng gian lm vic ca MATLAB..............................................................15
MATLAB
3.2 Ghi v phc hi d liu ...........................................................................................16
3.3 Khun dng hin th s ...........................................................................................17
chng 4: Script M_files .................................................................................................18
chng 5: QUN L Tp..................................................................................................21
5.1 MATLAB khi khi ng ...........................................................................................24
chng 6: cc php ton vi MNg .................................................................................25
6.1 Mng n................................................................................................................25
n
6.2 a ch ca mng ....................................................................................................25
6.3 Cu trc ca mng .................................................................................................26
6.4 Vector hng v vector ct .......................................................................................28
6.5 Mng c cc phn t l 0 hoc 1............................................................................33
1.
6.6 Thao tc i vi mng ............................................................................................34
6.7 Tm kim mng con ................................................................................................38
6.8 So snh mng ........................................................................................................39
6.9 Kch c ca mng ...................................................................................................42
6.10 Mng nhiu chiu .................................................................................................43
chng 7 cc php tnh vi mng....................................................................................48
7.1 To phng trnh tuyn tnh. ...................................................................................48
7.2 Cc hm ma trn . ..................................................................................................50
7.3 Ma trn c bit ......................................................................................................51
chng 8 cc php tnh LOGIC V QUAN H.................................................................55
8.1 Ton t quan h......................................................................................................55
h
8.2 Ton t Logic..........................................................................................................57
Logic
8.3 Cc hm logic v hm quan h ..............................................................................57
chng 9 VN Bn..........................................................................................................58
9.1 Xu k t..................................................................................................................59
t
9.2 Chuyn i xu.......................................................................................................61
xu
9.3 Cc hm v xu......................................................................................................62
xu
9.4 Ma trn t bo ca xu ...........................................................................................63
chng 10 thi gian .........................................................................................................65
10.1 Ngy v gi hin ti ..............................................................................................65
10.2 S chuyn i gia cc kiu ................................................................................65
10.3 Cc hm v ngy.................................................................................................67
ngy
Updatesofts.com
17.6 In hnh................................................................................................................130
hnh
17.7
17.7 Thao tc vi th............................................................................................131
th
17.8 Mt s c im khc ca th trong h to phng ..................................133
chng 18 hotrong khng gian 3 chiu ..................................................................137
18.1 th ng thng. ...........................................................................................137
18.2 th b mt v li ...........................................................................................138
18.3
18.3 Thao tc vi th ..............................................................................................141
18.4 Cc c im khc ca th trong khng gian 3 chiu.....................................143
chiu
18.5 Bng mu ..........................................................................................................144
18.6 S dng bng mu ............................................................................................145
18.7 S dng mu thm thng tin.........................................................................146
tin
18.8 Hin th bng mu...............................................................................................147
mu.
18.9 Thit lp v thay i bng mu..........................................................................148
mu.
Updatesofts.com
Updatesofts.com
Cc php ton.............................................................................................................184
ng hc.....................................................................................................................184
p ng thi gian ........................................................................................................184
p ng tn s............................................................................................................185
Lin kt h thng.........................................................................................................185
Dng c thit k c in..............................................................................................185
Cng c thit k LQG..................................................................................................185
Gii quyt php ton ma trn ......................................................................................186
S biu din ................................................................................................................186
chng 22 Hp dng c x l tn hiu ............................................................................186
22.1 Phn tch tn hiu ...............................................................................................186
chng 23 tr gip.........................................................................................................189
23.1 Ca s lnh tr gip...........................................................................................189
gip
23.1.1 Lnh help ........................................................................................................189
23.1.2 Lnh lookfor ...................................................................................................190
23.1.3 Lnh whatsnew v info.....................................................................................191
23.2 Ca s tr gip ..................................................................................................191
cc M- File ca Student Edition......................................................................................192
HELP Topic ....................................................................................................................192
Mc ch chung ca cu lnh.........................................................................................192
Thng tin chung ..........................................................................................................192
Qun l khng gian lm vic ........................................................................................192
Qun l ng dn.......................................................................................................192
Qun l cc hm v lnh..............................................................................................192
Cu lnh iu khin ....................................................................................................192
Hot ng ca lnh h thng ......................................................................................193
M-file g ri .................................................................................................................193
Cc ton t v cc k t c bit ....................................................................................193
Cc ton t..................................................................................................................194
Ton t quan h ..........................................................................................................194
Ton t logic ...............................................................................................................194
Cc ton t Bitwise .....................................................................................................194
Thit lp cc k t ........................................................................................................194
Cc k t c bit.........................................................................................................195
Cu lnh iu khin ....................................................................................................195
Thi hnh v nh gi....................................................................................................195
Script, hm, v cc bin..............................................................................................196
Thao tc vi cc i s ...............................................................................................196
Hin th thng bo .......................................................................................................196
u vo tng h........................................................................................................196
Ma trn c bn v Thao tc vi ma trn ........................................................................196
Ma trn c bn ............................................................................................................196
Thng tin mng c s..................................................................................................197
Thao tc vi ma trn ...................................................................................................197
Hng v cc bin c bit...........................................................................................197
Cc bin c bit ........................................................................................................197
Cc loi ma trn c bit ............................................................................................198
Cc hm ton hc thng thng ....................................................................................198
Cc hm lng gic ....................................................................................................198
Updatesofts.com
Cc hm ton hc .......................................................................................................199
Cc hm c bit ........................................................................................................199
Hm l thuyt s hc....................................................................................................199
ho............................................................................................................................199
Trang ho...............................................................................................................200
iu khin ca s ho............................................................................................200
ho TRONG KHNG GIAN 3 chiu ..........................................................................200
Lnh ho thng thng ..........................................................................................200
Cn chnh mu ............................................................................................................200
Chiu sng ..................................................................................................................200
Bng mu....................................................................................................................201
iu chnh trc ............................................................................................................201
Ch thch ho .........................................................................................................201
chui k t .......................................................................................................................201
Khi qut chung ..........................................................................................................201
Kim tra chui .............................................................................................................201
Cc php ton vi chui..............................................................................................201
Chui v vn bn ........................................................................................................202
file input/output ...............................................................................................................202
M v ng file............................................................................................................202
File nh phn i/o...........................................................................................................202
File i/o nh dng.........................................................................................................202
V tr file .......................................................................................................................202
Cc hm xut nhp file ...............................................................................................202
Xut nhp file o .........................................................................................................202
Xut nhp file audio ....................................................................................................203
Ca s lnh I / O .........................................................................................................203
thi gian v ngy ............................................................................................................203
Gi v ngy hin ti ....................................................................................................203
Cc hm c bn ..........................................................................................................203
Hm ngy thng..........................................................................................................203
Hm m ....................................................................................................................203
kiu d liu v cu trc...................................................................................................203
Kiu d liu .................................................................................................................203
Hm ca mng nhiu chiu ........................................................................................204
Hm ca mng t bo.................................................................................................204
Hm cu trc...............................................................................................................204
chuyn i d liu ng .................................................................................................204
Hm t DDE ................................................................................................................204
V d v s th hin........................................................................................................204
MATLAB/matrn..........................................................................................................204
Ca s lnh .................................................................................................................205
General .......................................................................................................................205
(Lp trnh )Programming v file-M...............................................................................205
Cc file trn a ...........................................................................................................205
a thc........................................................................................................................206
Cc hm ma trn v i s tuyn tnh ...........................................................................206
Phn tch ma trn ........................................................................................................206
Php ton tuyn tnh ...................................................................................................206
Updatesofts.com
Gi tr duy nht............................................................................................................206
Hm ma trn ...............................................................................................................206
Tm tha s tiu chun................................................................................................207
Bin i fourier v phn tch d liu ...............................................................................207
Php ton c bn ........................................................................................................207
Sai phn c hn ..........................................................................................................207
Filtering and convolution ( np, cun ) ........................................................................207
Bin i fourier ............................................................................................................207
a thc v php ni suy.................................................................................................207
Php ni suy ...............................................................................................................208
hm v gii php ODE ...................................................................................................208
Optimization and Root Finding ....................................................................................208
Numaric Integration.....................................................................................................208
i tng hm inline ...................................................................................................208
ma trn ri rc ................................................................................................................208
Cc ma trn khng lin tc c bn..............................................................................208
Full to Sparse Conversion...........................................................................................208
mc lc...........................................................................................................................209