Thứ Năm, 20 tháng 2, 2014

Tài liệu CHƯƠNG 1: MATLAB CƠ BẢN §1. CÁC TOÁN TỬ CƠ BẢN CỦA MATLAB  doc


5
 log10(x) logaritcơsố10
 abs(x)moduncủa sốphứcx
 angle(x) argumentcủasốphứca
 conj(x) sốphứcliênhợpcủax
 imag(x) phầnảocủax
 real(x) phầnthựccủax
 sign(x)
dấucủax
 cos(x)
 sin(x)
 tan(x)
 acos(x)
 asin(x)
 atan(x)
 cosh(x)
 coth(x)
 sinh(x)
 tanh(x)
 acosh(x)
 acoth(x)
 asinh(x)
 atanh(x)
b.Cáchàmtoánhọctựtạo:MATLABchophéptatạohàmtoánhọcvà
lưunóvàomộtfileđểdùngnhưlàhàmcósẵn củaMATLAB.Vídụtacầntạo
hàm:
1
2
1
f(x)
18x
=
+
 
vàhàm:

22
112
12
2
2
212
112
f(x ,x )
x4x5
f(x)
f(x,x)
2x 2x 3x 2.5
⎡⎤
+−
⎡⎤
==
⎢⎥
⎢⎥
−−−
⎣⎦
⎣⎦


Muốnthếtatạorafile
f1.mnhưsau:

functiony=f1(x)
y=1./(1+8*x.^2);

vàfilef2.m:

6
functiony=f2(x)
y(1)=x(1)*x(1)+4*x(2)*x(2)‐5;
y(2) = 2*x(1)*x(1)-2*x(1)-3*x(2) -2.5;

Khinhậplệnh
f1(2)tacógiátrịcủahàmf1tạix=2.Khinhậplệnhf2([24])ta
cógiátrịcủahàmf2tạix
1=2vàx2=4.Lệnhfeval(‘f1’,2)vàfeval(‘f2’,[24])
cũngchokếtquảtươngtự.
Cáchthứhaiđểbiểudiễnmộthàmtoánhọcmộtbiếntrêndònglệnhlà
tạoramộtđốitượnginlinetừmộtbi ểuthứcchuỗi.
Vídụtacóthểnhậptừ
dònglệnhhàmnhưsau:

f1=inline(’1./(1+8*x.^2)’,’x’);
f1([01]),feval(f1,[01])

Tacũngcóthểviết:

f1=ʹ1./(1+8*x.^2)ʹ;
x=[01];
eval(f1)


Nếuhàmlàđathứctachỉcầnnhậpmatrậncáchệsốtừsốmũcaonhất.
VídụvớiđathứcP
4(x)=x
4
+4x
3
+2x+1taviết:


P=[14021]

Đểnhânhaiđathứctadùnglệnh
conv;đểchia2đathứctadùnglệnh
deconv.Muốntínhtrịsốcủađathứctadùnglệnhpolyvalvàlệnhpolyvalm
dùngkhiđathứclàmatrận.

c.Cáclệnhxửlíhàm:Lệnhfplotvẽđồthịhàmtoánhọcgiữacácgiátrị
đãcho.Vídụ:

fplot(‘f1’,[‐55])
 gridon


Chomộthàmtoánhọcmộtbiến,tacóthểdùnglệnh
fminbndcủaMATLAB
đểtìmcựctiểuđịaphươngcủahàmtrongkhoảngđãcho.Vídụ:


7
f=inline(ʹ1./((x‐0.3).^2+0.01)+1./((x‐0.9).^2+0.04)‐6ʹ);
 x=fminbnd(f,0.3,1)

Lệnh
fminsearch tương tự hàm fminbnd dùngđểtìm cực tiểuđịa
phươngcủahàmnhiềubiến.Tacóhàm3biếnlưutrongfile
three_var.mnhư
sau:

functionb=three_var(v)
 x=v(1);
y=v(2);
z=v(3);
b=x.^2+2.5*sin(y)‐z^2*x^2*y^2;


Bâygiờtìmcựctiểuđốivớihàmnàybắtđầutừx=‐0.6,y=‐1.2vàz=0.135
bằngcáclệnh:


v=[‐0.6‐1.20.135];
a=fminsearch(ʹthree_varʹ,v)

Lệnh
fzero dùngđểtìmđiểm zero của hàmmột biến. Ví dụđểtìm giá trị
khôngcủahàmlâncậngiátrị‐0.2taviết:

f=inline(ʹ1./((x‐0.3).^2+0.01)+1./((x‐0.9).^2+0.04)‐6ʹ);
a=fzero(f,‐0.2)

 Zerofoundintheinterval:[‐0.10949,‐0.264].
a=
‐0.1316


6.Cácphéptoántrênmatrậnvàvectơ:
a.Kháiniệmchung:Giảsửtatạoracácmatrậnavàbbằngcáclệnh:


a=[123;456];

b=[3‐21];

Tacóthểsửađổichúng:


8
 A=[a;789]
B=[b;[10‐1]]ʹ

Toántử‘dùngđểchuyểnvịmộtmatrậnthựcvàchuyểnvịliênhợpmộtma
trậnphức.Nếuchỉmuốnchuyểnvịmatrậnphức,tadùngthêmtoántử“.”
nghĩa
làphảiviết“.’”.Vídụ:

C=[1+2*i2‐4*i;3+i2‐2*j];
X=Cʹ
Y=C.’

 b.Chỉsố
:Phầntửởhàngicộtjcủamatrậnm×ncókíhiệulàA(i,j).
Tuynhiêntacũngcóthểthamchiếutớiphầntửcủamảngnhờmộtchỉsố,ví
dụA(k)
vớik=i+(j‐1)m.Cáchnàythườngdùngđểthamchiếuvectơhàng
haycột.Trongtrườnghợpmatrậnđầyđủthìnóđượcxemlàmatrậnmộtcột
dàitạotừcáccột
củamatrậnban đầu.NhưvậyviếtA(5)cónghĩa làtham
chiếuphầntửA(2,2).
Đểxácđịnhkíchthướccủamộtmatrậntadùnglệnh
length(trảvềkích
thướclớnnhất)hay
size(sốhàngvàcột).Vídụ:


c=[1234;5678];

length(c)
 [m,n]=size(c)


c.Toántử“:”:Toántử“:”làmộttoántửquantrọngcủaMATLAB.Nó
xuấthiệnởnhiềudạngkhácnhau.Vídụ:


1:10

tạomộtvectơhàngchứa10sốnguyêntừ1đến10.Lệnh:


100:‐7:50

tạomộtdãysốtừ100đến51,giảm7mỗilần.Lệnh:

 0:pi/4:pi


9
tạomộtdãysốtừ0đếnpi,cáchđềunhaupi/4
Cácbiểuthứcchỉsốthamchiếutớimộtphầncủamatrận.ViếtA(1:k,j)
là thamchiếuđến k phần tử đầu tiên
của cộtj.Ngoàiratoán tử “:” tham
chiếutớitấtcảcácphầntửcủamộthànghaymộtcột.Vídụ: 


B=A(:,[132])

tạoramatrậnBtừmatrậnAbằngcáchđổithứtựcáccộttừ[123]thành
[132]
 d.Tạomatrậnbằnghàmcósẵn:MATLABcungcấpmộtsốhàmđểtạo
cácmatrậncơbản:

zeros tạoramatrậnmàcácphầntửđềulàzeros

z=zeros(2,4)

 ones tạoramatrậnmàcácphầntửđềulà1

x=ones(2,3)
y=5*ones(2,2)

rand tạoramatrậnmàcácphầntửngẫunhiênphânbốđều


d=rand(4,4)

randntạoramatrậnmàcácphầntửngẫunhiênphânbốtrựcgiao

 e=randn(3,3)

magic(n)tạoramatrậncấpngồmcácsốnguyêntừ1đếnn
2
vớitổng
cáchàngbằngtổngcáccộtnphảilớnhơnhaybằng3.
pascal(n)tạoramatrậnxácđịnhdươngmàcá cphầntửlấytừtamgiác
Pascal.

pascal(4)

eye(n)tạomatrậnđơnvị


10
eye(3)
eye(m,n)tạomatrậnđơnvịmởrộng

eye(3,4)

 e.Lắpghép
:Tacóthểlắpghép(concatenation)cácmatrậncósẵnthành
mộtmatrậnmới.Vídụ:


a=ones(3,3)
b=5*ones(3,3)
c=[a+2;b]

 f.Xoáhàngvàcột:Tacóthểxoáhàngvàcộttừmatrậnbằngdùngdấu
[].Đểxoácộtthứ2củamatrậnbtaviết:


b(:,2)=[]

Viết
x(1:2:5)=[]nghĩalàtaxoácácphầntửbắtđầutừđếnphầntửthứ5và
cách2rồisắpxếplạimatrận.
 g.Cáclệnhxửlímatrận:
 Cộng:X=A+B

Trừ:X=A‐B

Nhân   :X=A*B
  :X.*Anhâncácphầntửtươngứngvớinhau

Chia:X=A/BlúcđóX*B=A
  :X=A\BlúcđóA*X=B
  :X=A./Bchiacácphầntửtươngứngvớinhau

Luỹthừa :X=A^2
  :X=A.^2

Nghịchđảo :X=inv(A)

Địnhthức  :d=det(A)
7. Tạo số ngẫu nhiên: MATLAB cócác lệnh tạo số ngẫu nhiên là rand và
randntạoracácsốngẫunhiêntheophânbốGauss.

rand(m,n)tạoramatrậncácsốngẫunhiênphânbốđồngnhất.

randn(m,n)tạoramatrậncácsốngẫunhiêntheophânbốchuẩnGauss.

rand(3,3)

11
randn(3,3)

8.Cáclệnhdùnglậptrình:
a.Cácphátbiểuđiềukiệnif,else,elseif:
Cúphápcủaif:
 if<biểuthứcđiềukiện>
<phátbiểu>
 end
Nếu<biểuthứcđiềukiện>chokếtquảđúngthìphầnlệnhtrongthâncủaif
đượcthựchiện.

 Cácphátbiểuelsevàleseifcũngtươngtự.

Vídụ
:Taxétchươngtrình)ct1_4.mđểđoántuổinhưsau:

clc
disp(
‘Xinchao!Hanhanhduoclamquen’);
 x=fix(30*rand);
 disp(
‘Tuoitoitrongkhoang0‐30’ );
 gu=input(
‘Xinnhaptuoicuaban:‘);
ifgu<x
 disp(
‘Bantrehontoi’);
elseifgu>x
 disp(
‘Banlonhontoi’);
else
 disp(
‘Banbangtuoitoi’);
end

b.switch:Cúphápcủaswitchnhưsau:
switch<biểuthức>
casen1:<lệnh1>
casen2:<lệnh2>
...............
casenn:<lệnhn>
otherwise:<lệnhn+1>
end

c.while:vònglặpwhiledùngkhikhôngbiếttrướcsốlầnlặp.Cúpháp
củanónhưsau:

12
 while<biểuthức>
<phátbiểu>
 end
Xétchươngtrìnhinrachuoi“Xinchao”lênmàhìnhvớisốlầnnhậptừ
bànphím
ct1_5.mnhưsau:

clc
disp(ʹxinchaoʹ);
gu=input(ʹNhapsolanin:ʹ);
i=0;
whilei~=gu
disp([ʹXinchaoʹi]);
i=i+1
end

d.for
:vònglặpfordùngkhibiếttrướcsốlầnlặp.Cúphápnhưsau:
for<chỉsố>=<giátrịđầu>:<mứctăng>:<giátrịcuối>
Taxâydựngchươngtrìnhđoánsố
ct1_6.m:

clc
x=fix(100*rand);
n=7;
t=1;
fork=1:7
num=int2str(n);
disp([ʹBancoquyendudoanʹ,num,ʹlanʹ]);
disp(ʹSocandoannamtrongkhoang0‐100ʹ);
gu=input(ʹNhapsomabandoan:ʹ);
ifgu
<x
disp(ʹBandoannhohonʹ);
elseifgu>x
disp(ʹSobandoanlonhonʹ);
else
disp(ʹBandadoandung.Xinchucmungʹ);
t=0;
break;
end

13
n=n‐1;
end
ift>0
disp(ʹBankhongdoanraroiʹ);
numx=int2str(x);
disp([ʹDolaso:ʹ,numx]);
end

e.break:phátbiểubreak đểkếtthúcvònglặpforhaywhilemàkhông
quantâmđếnđiềukiệnkếtthúcvònglặpđãthoảmãnhaychưa.

§2.ĐỒHOẠTRONGMATLAB
1.Cáclệnhvẽ:MATLABcungcấpmộtloạthàmđểvẽbiểu diễncácvectơsố
liệucũngnhưgiảithíchvàincácđườngcongnày.

plotđồhọa2‐Dvớisốliệu2trụcvôhướngvàtuyếntính

plot3 đồhọa3‐Dvớisốliệu2trụcvôhướngvàtuyếntính

polar đồhoạtronghệtoạđộcực

loglogđồhoạvớicáctrụclogarit

semilogxđồhoạvớitrụcxlogaritvàtrụcytuyếntính

semilogyđồhoạvớitrục ylogaritvàtrụcxtuyếntính

plotyyđồhoạvớitrụcycónhãnởbêntráivàbênphải

2.Tạohìnhvẽ:Hàmplotcócácdạngkhácnhauphụthuộcvàocácđốisố
đưavào.Vídụnếuylàmộtvectơth ì
plot(y)tạoramộtđườngthẳngquanhệ
giữacácgiátrịcủayvàchỉsốcủanó.Nếutacó2vectơxvàythì
plot(x,y)
tạorađồthịquanhệgiữaxvày.

t=
[0:pi/100:2*pi]
 y=sin(t);
 plot(t,y)
 gridon
 polar(t,y)

3.Đặctảkiểuđườngvẽ:Tacó thểdùngcáckiểuđườngvẽkhácnhaukhivẽ
hình.Muốnthếtachuyểnkiểuđườngvẽchohàm
plot.Taviếtchươngtrình
ct1_7.mtạorađồthịhàmhìnhsin:


14
 t=[0:pi/100:2*pi];
 y=sin(t);
 plot(t,y,
’.‘)%vẽbằngđườngchấmchấm
 gridon

4.Đặctảmàuvàkíchthướcđườngv ẽ:Đểđặctảmàuvàkíchthướcđường
vẽtadùngcácthamsốsau:

LineWidthđộrộngđườngthẳng,tínhbằngsốđiểm 

MarkerEdgeColor màucủacáccạnhcủakhốiđánhdấu

MarkerFaceColormàucủakhốiđánhdấu

MarkerSizekíchthướccủakhốiđánhdấu
Màuđượcxácđịnhbằngcácthamsố:

Mã Màu Mã Màu
r red m magenta
g green y yellow
b blue k black
c cyan w white

Cácdạngđiểmđánhdấuxácđịnhbằng:

Mã Kiểuđánhdấu Mã Kiểuđánhdấu
+ dấucộng .điểm
o vòngtròn x chữthập
* dấusao s hìnhvuông
d hạtkimcương vđiểmtamgiáchướngxuống
^điểmtamgiáchướnglên < tamgiácsangtrái
> tamgiácsangphải h lụcgiác
p ngũgiác

Cácdạngđườngthẳngxácđịnhbằng:

Mã Kiểuđường Mã Kiểuđường
‐ đườngliền :đườngchấmchấm
‐‐ đườngđứtnét‐.đườngchấmgạch


Không có nhận xét nào:

Đăng nhận xét