Escolar Documentos
Profissional Documentos
Cultura Documentos
org
Chng 1
C s Matlab
Vi phn mm ho cc mnh
Kiu double kiu ny l kiu thng dng nht ca cc bin trong MATLAB
Kiu Sparse.
Trang 1
Kiu cell.
Kiu Structure.
Trong MATLAB kiu d liu double l kiu mc nh s dng trong cc php tnh s
hc. Cc bn c th tham kho cc kiu d liu khc trong a CD Help MATLAB 6.0
b. ng dng
MATLAB to iu kin thun li cho:
Cc kho hc v ton hc
Cc k s, cc nh nghin cu khoa hc
Mng nron
Logic m
Simulink
1.1.3 H thng MATLAB
H thng giao din ca MATLAB c chia thnh 5 phn
Mi trng pht trin.
y l ni t cc thanh cng c, cc phng tin gip chng ta s dng cc lnh v cc
file, ta c th lit k mt s nh sau.
+ Desktop
+ Command Window
+ Command History
+ Browsers for viewinghelp
Th vin, cc hm ton hc
Bao gm cc cu trc nh tnh tng, sin cosin atan, atan2 etc.., cc php tnh
n gin n cc php tnh phc tp nh tnh ma trn nghich o, tr ring, chuyn
i furier ,laplace , symbolic library
Ngn ng MATLAB
l cc ngn ng cao v ma trn v mng, vi cc dng lnh, cc hm, cu
trc d liu vo , c th lp trnh hng i tng.
ho trong MATLAB
Trang 2
Hnh v 1.1
Trang 3
a. Ca s Command window :
L ca s giao tip chnh ca Matlab bi y l ni nhp gi tr cc bin,
hin th gi tr,tnh ton gi tr ca biu thc, thc thi cc hm c sn trong
th vin (dng lnh), hoc cc hm(dng function) do ngi dng lp trnh ra
trong M-files.
Cc lnh c c nhp sau du nhc >> , v nu c sai st trong qu
trnh g(nhp) lnh th hy nhn phm Enter cho n khi nhn c du nhc
>>. Thc thi lnh bng nhn phm Enter.
G cc lnh sau:
>> A= pi/2 ;
>> B= sin(A)
B=
1
Hoc chng trnh son tho trong M-file di y:
% Chuong trinh trong M-file
x= 0:pi/6:2*pi;
y=sin(x);
plot(x,y);
% chuong trinh c lu vi tn file l
ve_sin.m
thc thi chng trnh trn trong ca s Command window bng dng lnh
sau
>> ve_sin
Chng ta thy r hn trong mc S dng lnh trc tip phn sau.
b. Ca s command History
Cc dng m bn nhp vo trong ca s Command window ( cc dng ny c th l
dng nhp bin ,hoc c th l dng lnh thc hin hm no ) c gi li trong ca s
Command History ,v ca s ny cho php ta s dng li nhng lnh bng cch kch
Trang 4
hnh 1.2
Kch i
chut ln
lnh hoc
bin s
dng li
Hnh 1.2
c. Ca s Workspace:
L ca s th hin tn cc bin bn s dng cng vi kch thc vng nh(s bytes),
kiu d liu(lp) ,cc bin c gii phng sau mi ln tt chng trnh.(xem hnh 1.3)
Kch i
chut ln
bin
xem d
Yu
liu(hoc
thay i
gi tr)
Hnh 1.3
Ngoi ra n cho php thay i gi tri , cng nh kch thc ca bin bng cch kch i
chut ln cc bin. Hoc kch vo nt bn tri ngay cnh nt save
V d khi chn bin(gi th l bin b) ri kch p(hoc kch chut vo nt cnh nt save)
ta c ca s sau gi l Array Editor: xem hnh 1.4
Trang 5
Hnh 1.4
V d
Nhp bin >>b=[1 2 3 ];
>>x=pi;
Tt c cc bin u c lu trong Workspace trong th hin c kch thc (Size), s
Bytes v kiu d liu(class) (8 bytes cho mi phn t d liu kiu double c th l 24
bytes dnh cho b v 8 bytes dnh cho a)
d. Ca s M-file
L mt ca s dng son tho chng trnh ng dng, thc thi chng trnh vit
trong M-file bng cch g tn ca file cha chng trnh trong ca s
Commandwindow.
Khi mt chng trnh vit trong M-file, th tu theo ng dng c th, tu theo ngi
lp trnh m chng trnh c th vit di dng sau
+Dng Script file :Tc l chng trnh gm tp hp cc cu lnh vit di dng lit k
,khng c bin d liu vo v bin ly gi tr ra
+Dng hm function c bin d liu vo v bin ra.
e. ng dn th mc: Ni lu gi cc file chng trnh
Trang 6
Kt thc nhp ma trn thng c du chm phy hoc khng tu theo bn mun
th hin kt qu ca n hay khng.
a. Nhp cc bin, matrn, cc lnh lit k trc tip
Thng thng Matlab s dng 4 v tr sau du phy cho cc s thp phn c du phy
chm ng, v s dng bin ans cho kt qu ca php tnh. Ta c th ng k bin th
hin kt qu ny ca ring mnh . Xt tp cc lnh sau:
V d trng hp khng s dng bin lu kt qu, bin ans t ng c gn
>> 8+9
ans =
17
Nhp bin r = 8/10 trong ca s CommandWindow nh sau:
>> r = 8/10
r=0.8000
Bn c th s dng cc bin ny cho cc php tnh tip theo v d nh:
>> s=10*r
s=
8
V d nhp trc tip cc s liu nh sau
>> a=[1 2;3 4]
a =
1
2
3
4
Matlab c hng trm hm c nh ngha sn v d nh hm tnh sin .. .
>> x=pi;
%nhp bin x
>> sin(x) % nhp lnh sin(x), n enter thc hin lnh tnh sin(x)
ans =
1.2246e-016
Trang 7
Trong MATLAB cng s dng cc php ton thng thng c lit k trong bngsau
K t
Lnh Matlab
ngha
+
*
/
Cng a + b
Tr a - b
Nhn ab
Chia phi
a
a/b=
b
Chia tri
a
b\a =
b
M a^b
a+b
a-b
a*b
a/b
b/a
a^2
Trang 8
% lu vo file GPTB2.m
V d gii phng trnh bc hai tm nghim x1 v x2 vit trong M-file dng Scriptfile:
Thc thi chng trnh trn trong ca s CommandWindow bng lnh
>>GPTB2
x2=(-bsqrt(delta))/(2*a);
Trang 9
Lu rng khi vit chng trnh trong M-file, bn mun ghi ch thch ta dng k
t % t trc dng ch thch nh sau
%----------dng ch thch -------------V d 2
%Vit trong M-file(dng Script file)
x=0:0.1:10 ; %To vector x
y=cos(x);
plot(x,y); % V th hm cosin
%lu vo file c tn l dai1.m
Thc thi hm trn ca s commandwindow bng lnh
>> dai1
Vit chng trnh trong M-file c dng l ch yu ,c bit i vi nhng chng trnh
di , phc tp th bn nn vit trong M-file.
1.4 Dng nhc gn gi tr bin
i vi bn hc lp trnh Pascal, bn mun nhp gi tr khi thc thi chng
trnh bn dng cp lnh:
Trang 10
CommandWindow
a=input(nhap he so a=);
b=input(nhap he so b=);
c=input(nhap he so c-=);
Delta=b^2-4*a*c;
x1=(-b+ sqrt(Delta))/(2*a)
x2=(-b+ sqrt(Delta))/(2*a)
Thn chng trnh khng bt u bng t kho Begin v khng kt thc bng t
kho End nh Ngn ng lp trnh Pascal.
Ta nn lu vo file c tn trng vi tn hm
V d: Cho s khi ca h thng iu khin t ng nh hnh di y
u
(-
num 2
den 2
num1
den1
Trang 11
fplot(Tn_hm,[Xmin ,Xmax]
,tol,N,LineSpec);hoc
fplot( @Tn_hm,[Xmin ,Xmax]
,tol,N,LineSpec);
Lu :i vi cc hm ton hc c sn(khng phi nh ngha) v d nh sin, cos ,... th
c th thc hin nh sau:
+ fplot(sin(x),2*pi*[-1 1] ) %v y=sin(x) vi x=[-2*pi 2*pi];
+ fplot([sin(x),tan(x),cos(x)], 2*pi*[-1 1] );
Trang 12
%lu vo file c tn l
myfun.m
[Xmin
1.8 Lu v ly d liu
Vi Matlab khi thot khi chng trnh(tt),cc bin d liu(trongWorkspace) s b
mt,do vy khi thc hin li chng trnh bn phi khai bo li cc bin cn thit trn,
Trang 13
Lu d liu c th l :
Lu d liu:
>>save('C:\matlabR12\work\ten_file') %lu ton b bin trong Workspace
>>save('C:\matlabR12\work\ten_file', 'x','y')% ch lu bin x v y
Ch : C:\matlabR12\work\ten_file l ng dn ti file, thng thng khi ci t chng
trnh th mc nh l ci vo C (nu bn ci vo D, khi s dng lnh save, bn ch cn
thay i thnh :D:\matlabR12\work\ten_file)
V d:
>>save('C:\matlabR12\work\ten_file','x','y','-ASCII').
Lu hai bin x v y vo file
>>load ('C:\matlabR12\work\ten_file', '-ASCII ').
khi thc hin lnh ny th trong Workspace s xut hin bin c tn l tn ca file , kch
p chut ln bin ny s xut hin d liu ca ton b bin c lu gi, vic truy nhp
n bin lu gi thng qua vic truy nhp kiu Matrn
V d Command window
>>a=2;
>>b=3;
>>c=4;
>>save('C:\matlabR12\work\ save')%lu 3 bin trong file tn save
>> load('C:\matlabR12\work\ save')%khi phc d liu
hoc
>> save('C:\matlabR12\work\ save', 'a','b')%lu hai bin a v b
trong file %tn save
Tng t:
>>a=3;
>>b=4;
>>save('C:\matlabR12\work\save','a','b','-ASCII')
>>load('C:\matlabR12\work\save','-ASCII') %khi phc d liu
Trong workspace s c bin save nh sau:
Kch p vo save s xut hin d liu ca hai bin a v b
Trang 16
1 1 1
1 1 0
>>X=5;
0 0 0
>>X >=[1 2 3 ; 4 5 6; 7 8
9]
ans
1
1
0
1
1
0
1
0
0
ngha
&
V vd A&B
Hoc vd A|B
o vd ~A
Cc k hiu & , | ,~ l cc ton t logic v hoc o. Chng thc hin trn tng phn t
ca ca cc mng so snh( ton t logic cho php thc hin trn nhiu mng vi yu cu
l cc mng phi c cng kch thc), kt qu tr v l mt ma trn c cng kch thc
vi cc ma trn so snh trn. Cc ton t logic thng dng lin kt cc biu thc quan
h.
Bng chn l:
u vo
And
Or
Xor
Not
A
B
A&B
A|B
xor(A,B)
~A
0
0
0
0
0
1
0
1
0
1
1
1
1
0
0
1
1
0
1
1
1
1
0
0
Mc u tin cao nht i vi ton t logic o( not ,~) , hai ton t and v | c cng mc
u tin , trong mt biu thc ton hc th chng c thc hin theo th t t tri sang
phi.
Ta c th s dng cc ton t and , or ,not & , | , ~ nh bng sau:
A&B
A|B
~A
and(A,B)
or(A,B)
not(A)
Trang 17
Cc php tnh s hc s c thc hin trc khi thc hin cc biu thc logic.
Trang 18
function s= sign(x)
if x>0
s=1;
% so duong
elseif x<0
s=-1;
% so am
else
s=0;
% so =0
end;
Nguyn tc lm vic ca lnh if nh sau :Khi biu thc expression ng th cu lnh ngay
sau lnh if c thc hin nu sai cu lnh s c b qua n lnh elseif
for i=1:100;
y(i)=sin(i);
end;
x=1:100;
y=sin(x);
end;
1.10.4 Lnh ngt break , error, return
Trang 20
Lnh break :Tc dng iu khin chng trnh nhy ra khi vng lp for hay while
gn n nht.
V d:Nhp mt s dng nu m th nhp li
while 1
n= input(nhap n=);
while(n<0)
%Vong lap while2
break;
%Thoat khoi vong lap while2
end
if n>0
break;
%Thoat khoi vongwhile chinh
end
end
1.10.5 Lnh error v lnh return
- Lnh error: Dng thng bo li , hin th cho ngi lp trnh bit l li g ?
V d: error(error message); hin th thng ip li khi thc hin cu lnh ny.
a=input(Nhap a=);
b=input(Nhap b=);
% Thuc hien a: b
if b==0
error(divide by zeros);
end;
Khi thc thi chng trnh trn ( nhp b=0) th xut hin dng ch
Nh sau:
??? Error using ==> soan1
divide by zeros
Ch rng soan1 l tn file lu chng trnh trn
- Lnh return: Thng c s dng trong cc hm ca MATLAB. Lnh return s cho
php quay tr v thc thi nhng lnh nm trong tc dng ca lnh return.
1.10.6 Bin ton cc
Bin ton cc c dng trong phm vi ton b cc chng trnh, nu cc chng trnh
khai bo bin ton cc .
Cu trc:
global x y z % khai bo ba bin ton cc x y z
Trang 21
V d n gin sau:
function[ u,v]=Main(x,y)
global a b;
Tinhham(x,y,z);
u=a;v=b;
%Chng trnh con tnh hm
function Tinhham(x,y,z)
global a b;
a=x^2 +y^2+ z^2;
b=x^3 +y^3+
z^3;
Thc thi chng trnh:
>> x=2,y=3,z=4;
>> [u,v]=Main(x,y,z);
1.10.6 nh dng d liu ra
Cc php tnh trong MATLAB c thc hin vi chnh xc cao, ta c th nh dng
cho cc s xut ra mn hnh tu tng yu cu c th:
V d s a= 4/3 vi
format short e
a= 1.3333e+00
format long
a=1.3333333333333
format lang e
a=1.3333333333333e+000
Ngoi cch ny ra ta nh dng d liu bng thanh tool cng c trn mn hnh
V d: G cc lnh sau trong ca s CommandWindow
>>format long
>>a=4/3
a=
1.3333333333333
Trang 22
Tn hm
ngha
Sin
Cos
Tan
Asin
Acos
Atan
Angle
Fix
Floor
Hm sin
Hm cos
Hm tan
Hm acsin
Hm accos
Hm tnh arctg
Ly gc pha
Lm trn hng 0
Exp
Ceil
Hm e m
Lm trn hng -
Log
log10
sqrt(x)
Logarit c s e
Logarit c s 10
Cn bc hai
Lm trn hng -
K t
v d:
>> 0/0
ans=
NaN
K t
pi
K t
eps
th hin l s =3.14159..
5.0000 + 6.0000i
>> 5+6j
ans =
5.0000 + 6.0000i
Ch khi lm vi s phc cn phn bit : y= 7/2*i v x= 7/2i cho hai kt qu khc nhau
>> y= 7/2*i
y =
3.5*i
>> x=7/2i
x=
-3.5i
V d cc php tnh v s phc:
>> s=3+7i
>>w=5-9i
>>w+s
>>w-s
>>w*s
>>w/s
Lnh clear <danh sch bin> Xo danh sch bin c lit k ra.
Lnh whos
Trang 24
cx+dy=n
Bi tp 2: Sinh vin v cc hm sau
a. V c tnh iode vi quan h dng in v in p trn iode nh sau
i=I0*(exp(40*v)-1)(A); I0=1.E-6; vector v=[-10:0.005:0.8] .
Sinh vin thc hin theo hai cch vit trc tip trong CommadWindow v vit hm trong
M-file.
b. V cc hm c bn sin(x) ,cos(x) ,tan(x)... dng lnh fplot .
c. V hm y= sin(x)/x , y=x, y=sin(x) trn cng mt th .
Bi tp3 : Lu tt c cc bin bn dng trong qu trnh thc hnh vo file ring ca
mnh, ln sau ly ra dng li.
Bi 4:Lp chng trnh dng hm function gii phng trnh bc hai
Bi 5:Lp hm tnh hm truyn kn cc s h thng iu khin trong sch l thuyt
iu khin t ng
Bi 5:Lp hm function [Q, R]=divide (a,b) tm thng v s chia hai s a v b
Trang 25
Chng 2
Trang 1
V d
+ pi= sym('pi') kt qu cho li gi tr s pi (u vo l mt chui)
+ Lnh pi = sym('pi') v delta = sym('1/10')
Kt qu delta= 1/10 ;
Cu trc sau cho php chuyn i s symbolic sang cc dng s thc v cc dng s khc
tu thuc vo flag l ' r ' , ' d ' ,' e ' hoc ' f '
Trang 2
V d To s symbolic a= 5
>> a= sym('5')
a=
5
Thng thng hiu qu ca vic s dng lnh sym l chuyn i mt ma trn t s
sang dng phom symbolic .Lnh
A = hilb(3)
To ma trn Hilbert
A=
1.0000 0.5000 0.3333
0.5000 0.3333 0.2500
0.3333 0.2500 0.2000
p dng sym cho A
A = sym(A)
Bn c th t c matrn symbolic Hilbert c kch thc 3-by-3
A=
[ 1, 1/2, 1/3]
[ 1/2, 1/3, 1/4]
[ 1/3, 1/4, 1/5]
Ta thy rng khi p dng lnh symbolic cho s hoc ma trn th kt qu thu li s chnh
xc hn
2.2.3 Php Tnh vi cc bin v s symbolic
Cc php tnh c bn v ma trn u c dng i vi cc s v bin symbolic.
V d v php cng hai Ma trn symbolic(hoc vi mt ma trn khng phi l symbolic)
>> syms a b c;
>> a=[a b c ; b c a];
>> d=[1 2 3 ;4 5 6];
Trang 3
>> a+d
ans =
[ a+1, b+2, c+3]
[ b+4, c+5, a+6]
>> A=sym([1 2 3 ; 4 5 6]);
>> B=sym([2 3 4 ;5 6 7]);
>> A+B
ans =
[ 3, 5, 7]
[ 9, 11, 13]
Tng t cho php nhn v php chia ( * / \ ./ .\)
2.3 To hm symbolic
Thng thng c hai cch to hm Symbolic
To trong M-file
To trc tip cc hm .
2.3.1 To hm t cc biu thc symbolic
Hm to ra cha cc bin phi l bin symbolic
V d to hm f= 3*x^2 + 2*x + 1 ta lm nh sau
>> syms x % khai bo x l bin symbolic
>> f= 3* x^2 + 2*x +1 % f l hm symbolic
v d:
syms x y z
r = sqrt(x^2 + y^2 + z^2)
t = atan(y/x)
f = sin(x*y)/(x*y)
To biu thc symbolic r v t v f .
Ch Ch khi to mt hm symbolic th Bn mi c php s dng lnh limit ,diff, int,
subs, v cc hm ton hc symbolic khc
2.3.2 To Hm Symbolic t M-file
To mt hm bng cu trc function , trong u vo l cc bin cn thit lp hm ,
u ra l bin cha hm nh vy cch to hm ging vi to hm thng thng ,V th
Trang 4
Trang 5
>> subs(f,'x',6)
ans =
720
V d to hm 1/ x!
>> f=1/sym('x!');
>> subs(f,'x',n)
>> subs(f,'x','n')
ans =
1/(n)!
2.4 To bin thc v bin phc
To bin phc v d z= x+ i* y th ta phi khai bo x v y l cc bin symbolic thc tc l:
syms x y real
z = x + i*y
I.
Gii thch
To bin symbolic x v y ,cc bin ny c c s cng thm cc tnh cht ton hc ca
mt bin thc .C th n c ngha rng biu thc
f = x^2 + y^2
f >=0. Cho nn, z l mt bin phc
conj(x)= x;conj(z)=x-i*y;expand(z*conj(z))=x^2+y^2
xo x khi l mt bin thc ,bn phi dng lnh nh sau
syms x unreal
hoc
x = sym('x','unreal')
Lnh sau
clear x
khng lm cho x khi l mt s thc
2.5 Lnh findsym
Tm cc bin trong biu thc symbolic hoc matrn
Syntax
r = findsym(S)
r = findsym(S,n)
M t
findsym(S) Tr v tt c cc bin symbolic trong S c cch nhau bi du phy(trong in
alphabetical order).Nu S khng cha bt k mt bin no findsym tr v mt chui rng
findsym(S,n) tr v n bin alphabetically gn x nht
V d
syms a x y z t
findsym(sin(pi*t)) returns pi, t.
Trang 6
findsym(x+i*y-j*z) returns x, y, z.
findsym(a+y,1) returns y.
2.6 Tnh ton
Cng c ton dc symbolic cung cp cc hm thc hin cc ton t c bn ca php
ton
o hm , gii hn , tch phn, tng v m rng chui Taylor.
2.5.1 Lnh symsum
Symbolic summation.
Syntax
r = symsum(s)
r = symsum(s,v)
r = symsum(s,a,b)
r = symsum(s,v,a,b)
M t
*symsum(s) l tng ca biu thc symbolic s theo bin symbolic ca n l k c xc
nh bi lnh findsym t 0 n k-1
*symsum(s,v) l tng ca biu thc symbolic theo bin symbolic v c xc nh t 0
n v-1
*symsum(s,a,b) and symsum(s,v,a,b) nh ngha tng ca biu thc symbolic theo bin v
t v=a n v=b
V d
Cc lnh sau:
syms k n x
symsum(k^2)
tr v kt qu
1/3*k^3-1/2*k^2+1/6*k
symsum(k) tr v
1/2*k^2-1/2*k
symsum(sin(k*pi)/k,0,n) tr v
-1/2*sin(k*(n+1))/k+1/2*sin(k)/k/(cos(k)-1)*cos(k*(n+1))1/2*sin(k)/k/(cos(k)-1)
symsum(k^2,0,10) tr v kt qu sau
385
V d:
>> syms x k;
>> symsum(x^k/sym('k!'), k, 0,inf)%inf la +vo cung
ans =
Trang 7
exp(x)
>> symsum(x^k/sym('k!'), k, 0,5)
ans =
1+x+1/2*x^2+1/6*x^3+1/24*x^4+1/120*x^5
Ch : Cc v d trc s dng sym to biu thc symbolic .k!
2.5.2 Tnh o hm
By gi chng ta to cc bin v hm
syms a x
f = sin(a*x)
sau
diff(f)
Lnh ny s tnh o hm ca f vi bin symbolic ca n (trong trng hp ny l x),
nh c nh ngha bi lnh findsym
ans =
cos(a*x)*a
tnh o hm vi bin a ta lm nh sau
diff(f,a)
N tr v df/da.
ans =
cos(a*x)*x
tnh o hm bc hao vi bin x v a ta lm nh sau
diff(f,2)
hoc
diff(f,x,2)
Tr v
ans =
-sin(a*x)*a^2
v
diff(f,a,2)
N tr v
ans =
-sin(a*x)*x^2
nh ngha a,b,x,n,t v theta trong Matlab workspace, s dng lnh sym. Bng sau cho
thy tc dng ca lnh diff
f
diff(f)
Trang 8
X^n
x^n*n/x
Sin(a*t+b)
cos(a*t+b)*a
Exp(i*theta)
i*exp(i*theta)
Example:
syms a x
A = [cos(a*x),sin(a*x);-sin(a*x),cos(a*x)]
N tr li
A=
[ cos(a*x), sin(a*x)]
[ -sin(a*x), cos(a*x)]
Lnh
diff(A)
Tr v
ans =
[ -sin(a*x)*a, cos(a*x)*a]
[ -cos(a*x)*a, -sin(a*x)*a]
2.5.3 sym2poly
Bin i a thc symbolic sang vec t h s a thc ca
Cu trc
c = sym2poly(s)
M t
sym2poly tr v mt vector hng, vc t ny cha h s ca a thc symbolic. Cc h s
ny c xp theo th t tng ng vi s m ca bin c lp ca a thc
V D
Cc lnh sau y:
syms x u v;
sym2poly(x^3 - 2*x - 5)
Tr v
1 0 -2 -5
trong khi
sym2poly(u^4 - 3 + 5*u^2) Tr v
1 0 5 0 -3
v sym2poly(sin(pi/6)*v + exp(1)*v^2) tr v
Trang 9
2.7183 0.5000
0
2.5.4 Tnh gii hn Limit
Cng c ton hc symbolic cho php bn tnh gii hn ca hm theo cch thng thng
.Cc lnh sau
syms h n x
limit( (cos(x+h) - cos(x))/h,h,0 )
Tr v kt qu
ans =
-sin(x)
v
limit( (1 + x/n)^n,n,inf ) % n tin ti v cng
N tr v kt qu
ans =
exp(x)
Th hin hai trong tt c gii hn quan trong nht trong ton hc,o hm (trong trng
hp ny l cos(x)) v hm e m x
gii hntn ti khi cho bin tin ti hai pha ( l, kt qu l ging nhau bt k tin bn
phi hay bn tri ).Nu kt qu khc nhau hai pha th o hm khng tn ti
Cho nn o hm sau kt qul khng xc nh v Cng c ton hc symbolic tr v gi
tr l NaN
Lnh
limit(1/x,x,0)
hoc
limit(1/x)
returns
ans =NaN
Lnh
limit(1/x,x,0,'left')
Tr v
ans =
-inf
Trong khi lnh.
limit(1/x,x,0,'right')
Tr v:
ans =
inf
Quan st thy rng trng hp mc nh, limit(f) ging vi limit(f,x,0).
Trang 10
La chn cho lnh limit trong bng trn, chng ta gi s rng f l mt hm symbolic vi
i tng x
II.
2.5.5 Tnh Tch phn
Nu f l mt biu thc symbolic th tch phn ca hm f l
int(f)
Tm mt biu thc symbolic F tho mn diff(F)=f, th F l gi tr tr v ca int(f)
Tng t hm int(f,v)
int(f,v) S dng i tng symbolic v nh l bin ca tch phn,
V d To cc bin symbolic sau
syms a b theta x y n x1 u
F
Int(f)
x^n
x^(n+1)/(n+1)
y^(-1)
Log(y)
n^x
1/log(n)*n^x
Sin(a*theta+b)
-cos(a*theta+b)/a
Exp(-x1^2)
1/2*pi^(1/2)*erf(x1)
1/(1+u^2)
Atan(u)
M t
Eq l biu thc n hoc mt phng trnh.u vo gii(tm nghim) c th l biu
thc hoc chui symbolic.Nu eq lmt biu thc symbolic (x^2-2*x+1) hoc mt chui,
chui ny khng cha mt phng trnh, nh ('x^2-2*x+1'), th solve(eq) l gii phng
trnh eq=0 Vi bin mc nh ca n c xc nh bi hm findsym.solve(eq,var) tng
ng vi vic gii phng trnh eq (hoc eq=0 trong hai trng hp trn) i vi bin
var(gii phung trnh vi bin l var)
V d : >> solve(' x^2 + 2*x +1 ' , 'x' ) tc l gii phng trnh x^2+2*x+1=0 vi bin
l x
>> solve(' y*x^2 + x *y+1 ' ,'y')
H phng trnh. u vo l cc biu thc symbolic hoc cc chui xc nh phng
trnh.
solve(eq1,eq2,...,eqn) gii h cc phng trnh to bi eq1,eq2,...,eqn trong n bin c
xc nh bng cch p dng lnh findsym cho ton h (in the n variables determined by
applying findsym to the system)
Ba loi khc nhau ca u ra c th.
+ i vi mt phng trnh v mt u ra, kt qu (sau khi gii ) c tr v vi nhiu
kt qu cho phng trnh tuyn tnh (with multiple solutions for a nonlinear equation)
+ i vi h thng phng trnh c s u ra cn bng, kt qu c cha trong
alphabetically v c k hiu nh l u ra.(cha trong alphabetically tc l cha theo
th t ch ci)
+ i vi h thng phong trnh c s u ra l n,kt qu tr v l mt cu trc
V d
solve('a*x^2 + b*x + c') tr v
[ 1/2/a*(-b+(b^2-4*a*c)^(1/2)),
1/2/a*(-b-(b^2-4*a*c)^(1/2))]
solve('a*x^2 + b*x + c','b') tr v
-(a*x^2+c)/x
>> n=solve('x + y = 1','x - 11*y = 5')
n=
x: [1x1 sym]
y: [1x1 sym]
>> n.y
ans =.
-1/3
>> n.x
ans =
Trang 12
4/3
>> [x, y]=solve('x + y = 1','x - 11*y = 5')
kt qu:
x= 4/3
y=-1/3
>>A = solve('a*u^2 + v^2', 'u - v = 1', 'a^2 - 5*a + 6')
Tr v dng cu trc
A=
a: [1x4 sym]
u: [1x4 sym]
v: [1x4 sym]
A.a =
[ 2, 2, 3, 3]
A.u =
[ 1/3+1/3*i*2^(1/2), 1/3-1/3*i*2^(1/2),
1/4+1/4*i*3^(1/2), 1/4-1/4*i*3^(1/2)]
A.v =
[ -2/3+1/3*i*2^(1/2), -2/3-1/3*i*2^(1/2),
-3/4+1/4*i*3^(1/2), -3/4-1/4*i*3^(1/2)]
2.7 Bin i laplace
2.7.1 Bin i thun Laplace
Cu trc
laplace(F)
laplace(F,t)
M t
L = laplace(F) l bin i laplace ca F vi bin c lp mc nh l t. kt qu mc nh
tr li l hm ca s. Bin i laplace c p dng cho mt hm ca bin t v tr li mt
hm ca bin s
Nu F = F(s), laplace tr li mt hm ca t
Bng cch nh ngha
t l bin kiu symbolic trong F c xc nh bi hm findsym.
L = laplace(F,t) to ra L,mt hmca t thay mc nh l hm ca s.
L = laplace(F,w,z) to ra L,mt hm ca z trong F,mt hm ca w thay th bin mc
nh l s v t tng ng
2.7.2 Bin i ngc laplace
Mc ch: Bin i ngc laplace
Trang 13
Cu trc
F = ilaplace(L)
F = ilaplace(L,y)
F = ilaplace(L,y,x)
M t
F=ilaplace(L) l php bin i ngc Laplace ca i tng v hng symbolic Lvi bin
c lp l s. tr li mc nh l mt hm ca t.Bin i ngc laplace c p dng cho
mt hm ca s v tr v mt hm ca t .Nu L = L(t), ilaplace tr v mt hm ca x.
Bng cch nh ngha
c l mt s thc c chn cho nn tt c all singularities of L(s) are to the left of the
line s = c, i.
F = ilaplace(L,y) to ra F l mt hm ca y thay v mc nh t.
y l mt i tng symbolic v hng.
F = ilaplace(L,y,x) F l mt hm ca x v L l mt hm of y thay v mc nh l s v t.
2.8 Vn tch phn vi hng s thc
Mt trong nhng tinh t lin quan ti o hm cc hm symbolic l
du ca cc bin(coi l hng s) khi bn bnh phng bin . y ta hiu rng khi bn
coi mt bin no trong biu thc l bin(v d bin ly tch phn) th cc bin cn li
c coi l hng s v Matlab s khng hiu c l n dng hay m(coi ch l k t ).
V d, biu thc
L dng, th c hnh chung cong tin ti 0 khi x tin ti inf vi mi s thc k.
Mt v d v ng cong c cho thy di y vi
Trang 14
Trang 15
Cc bn ch rng lnh ezplot trn dng v trong khng gian 2D ( khng gian 2 chiu
) , cn v trong khng gian 3D khng c g kh khn ta dng lnh ezplot3 ,cc bn t
tham kho thm sch .
Cu hi n tp
1. Nhng tin ch khi s dng th vin ton hc symbolic l g ?.
2. lnh findsym c tc dng g ?.
3. Th t u tin cc bin khi s dng bin mc nh ? .
4. C my cch to hm symbolic? Em hy so snh cc cch .
5. Du ca cc bin symbolic nh th no ?
6. V th hm symbolic, bng hm v thng thng plot c c khng ?
Bi tp
1. To hm symbolic sau
Y= x2 + x + y+ z + 1;
Bn hy nu th t u tin cc bin .
2. To hm symbolic sau dng cc cch to hm khc nhau ri tch o hm , tch
phn ca n Y= 1/( 5+ 4* cos(x) )
3. V th hm trn, theo hai cch thng thng v s dng symbolic
Trang 16
Chng 3
1 2
4 5
7 8
3
6
9
y l mt ma trn c s hng m = 3 v s ct n= 3
nhp matrn trn trong Matlab ta nhp trc tip nh sau
T dng nhc lnh trong ca s command Window >> ta nhp
>> A=[ 1,2,3 ; 4 5 ,6;7 8 9]; hoc >>A=[ 1 2 3
456
7 8 9];
Cc hng c cch nhau bng mt du chm phy (;) nh trn,cc phn t trong mt
hng c cch nhau bng du cch(thanh space) hoc du phy(,) . Kt thc dng lnh
c hoc khng c du ;
Nu khng c du chm phy cui dng th Matlab s in ra kt qu matrn va nhp
Nh v d trn:
>> A=[ 1,2,3 ; 4 5 ,6;7 8 9] nhn Enter s cho kt qu l
A=
123
456
Trong trng hp s phn t trn mt hng qu di ta c th xung dng bng du ba
chm ...
V d
>> b=[1,2,3,4,...
5 6 7 8 9] % y matrn 9 hng v mt ct
Trang 1
Lu rng trong mt s trng hp matrn hoc mng d liu di th vic khng thm
du chm phy sau cu lnh nhp, Matlab s in ra s liu di trong ca s command
Window, gy kh nhn cho ngi dng
b. Nhp Matrn t M-file
Ta c th nhp mt matrn bng ca s son tho M-file, m ca s ny bng cch vo
File- New- M-file. Mt ca s son tho s c hin ra cho php bn son tho di
dng text, do l ca s son tho dng text cho nn bn c th son tho t file word sau
copy vo ca s M-file. nhp matrn ta son tho tng t nh trong ca s
command window sau lu vo file nh sau:
V d:
A=[1 2 3 ; 4 5 6 ; 7, 8,9];% khng c du chm phy s in ra kt qu
Cng tng t nh trn nu s phn t trn mt hng qu nhiu th ta c th xung dng
A=[1 2 3 4 ...
5 6 7 8 9 10];
Sau khi kt thc son tho ta lu vo tn_file .
thc thi cc lnh nhp trong M-file ta dng lnh sau trong command window nh
sau: >> ten_file ;
c. Nhp matrn t cc hm c sn
Matlab c mt th vin cc hm cho php to ma trn.Sau y l mt s hm
Trang 2
0 0 0
3.2 Ma trn s phc
S phc trong matlab c vit nh sau:
V d s phc 3+4*i dng i ch s o
>> a=3+ 4*i
a=
3+ 4*i
Nu mun ii ch s o
Ta nh ngha ii= sqrt(-1)
Sau bn vit:
>> a=3+ 4*ii
a=
3+ 4*i
>>A=[ 1+2*i , 3+4*i ; 5+6*i, 4+5*i ]
A=[ 1+2*i 3+ 4*i
5+6*i 4+5*i ]
3.3 To vec t
Khi ta cn kho st c tnh ca th no trong mt khong xc nh, khong xc
nh ny c biu din di dng vect
V d kho st c tnh th trong khong x=1 n 100
>> x= 1:100; % x ly gi tr t 1 n100, bc tng ca x l 1
>>t=0: 0.1 : 10;% bc nhy l ca t l 0.1
Cng thc chung to vec t l X=Xmin : bc_tng: Xmax
3.4 Truy nhp cc phn t ca ma trn
truy nhp cc phn t ca ma trn ta lm nh sau:
Gi s ma trn
A=
1 2
4 5
7 8
3
6
9
Trang 3
1
4
7
>>A(1,:) % gi ton b s ct tng ng hng 1
ans=
2 3
>> A(1:2,1) % gi hng 1 n hng 2 tng ng vi ct th nht
ans=
1
4
>>A(1:2,:) % gi hng 1 n hng 2 tng ng vi tt c cc ct
ans=
123
456
3.5 Php tnh ma trn v mng
a. Php tnh ma trn
Php tnh cng , php tnh tr :iu kin hai ma trn A v B phi c cng kch thc
hoc mt trong hai l s v hng
v d:
>>a=[1 2 3 ;4 5 6; 7 8 9];
>>b=[2 3 4; 5 6 7; 8 9 10];
>>a+b;
ans=
5 7
9 11 13
15 17 19
Nhn hai ma trn
A*B lu rng s ct ca ma trn A phi bng s ct ca ma trn B, ngoi tr mt trong
hai l s v hng
Chia tri ma trn (\)
X=A\B tng ng vi vic gii h phng trnh tuyn tnh A*X=B, gn tng ng
vi X=inv(A)*B
Chia phi ma trn(/)
X=B/A tng ng vi vic gii phng trnh tuyn tnh
X*A=B gn tng ng vi X= B*inv(A)
b. Php tnh dy
Trang 4
Trang 5
Trang 6
Trang 7
Trang 8
3
ans=
4
>> X= A\B
ans=
1.0887
-0.2527
1.5349
Khi th li nh sau
>> A* ans
ans= 5.1882
4.2957
13.0000
20.8925
Kt qu khng bng B
H phng trnh trn v nghim ,tuy nhin Matlab vn cho nghim ,nghim ny khng
phi nghim ng m l nghim xp x gii theo tiu chun bnh phng ti thiu( ta
khng cp ti)
3.8 H iu kin yu
Chng ta ni rng mt vn c coi l iu kin yu nu mt s thay i nh trong d
liu s dn n thay i ln trong kt qu. iu ny l rt nguy him i vi cc k s
lm vic vi cc thit b , sai s cc thit b , sai s do lm trn (iu ny chc chn xy
ra) Nu d liu ny l u vo i vi vn trn th kt qu thu c s khng khip
Vn chng ta bn ti l iu kin yu ca h phng trnh tuyn tnh
Ma trn yu in hnh l ma trn Hibert c dng nh sau:
A=[ 1 1/2 1/3.....1/n;1/2 1/3 ...1/(n+1)
1/3 1/4 1/5....
1/(n+2)
1/n ..
1/(2n)]
V d sau y: Gii h phng trnh tuyn tnh c ma trn h s sau
A=[1 1; 1 1.01] B=[2 ; 2.01];
>> X= A\B
X=
1.0000
1.0000
Mt sai s nh c th hin trong long format
>> format long; X= A\B
X=
Trang 9
1.000000000002
0.999999999998
Nu ta thay i mt phn t ca A v d A(1, 2)=1.005
>> A(1,2)=1.005 ; X= A\B
X=
-0.0000000099991
1.9999999999991
Thay i A(1,2) =1.005 so vi gi tr c l 1 tc l tng 0.5% tng ng vi gi tr x(1)
gim 101%, v tng x(2) tng 100%
Cch gii h phng trnh iu kin yu A*X=B
Nu A l ma trn Hillbert s dng hm tnh nghch o invhilb(n) trong n l kch
thc ca ma trn
V d >>A= [ 1/1 1/2 ; 1/2 1/3];
>> B=[1 ;1/2]
>>X= invhilb(2)* b
Nu A khng phi l ma trn hilbert th s dng hm symbolic
V d A= [ 1 1.01; 0.5 1.02];
A=sym( [1 1.01 ; 0.5 1.02] );
B=[ 1.1; 1.2];
X= A\b
3 .9 Lnh cond Tnh iu kin ca ma trn
Cu trc:
>> cond(A) % A l ma trn
kt qu tr li dng nh sau: a* 10k ; 0 < a < 9
k l s digits khng tin cy trong kt qu gii h phng trnh tuyn tnh v trong vic
nghch o ma trn. Nu k xp x 1 th l ma trn c well -condition
V d >>A=[1/2 1/3 1/4 ; 1/3 1/4 1/5; 1/4 1/5 1/6];
>> cond(A)
ans=
1.3533e+003
Ta thy rng k= 3 tc l c 3 s khng ng tin cy
Tng kt
nh ngha :Hng ma trn
Ar l mt ma trn r hng r ct c xy dng t A , khng nht thit theo th t trong ma
trn A v det(Ar)#0 .Nu bt k ma trn Ar+1 no c xy dng t r+1 hng v r+1 ct
ca A, det(Ar+1)=0 th chng ta ni rng Matrn A c hng bng r
Mt h thng m phng trnh tuyn tnh trong n bin (cha bit)
a11*x1 + a12*x2+ . . . +a1n*xn=b1
Trang 10
Cu hi n tp
1. Cc cch nhp mt ma trn ?
2. iu kin c nghim ca h phng trnh i s tuyn tnh , cch tnh
3. Lp chng trnh m u vo l hai ma trn A v b, u ra l kt qu thng bo h
c nghim hay khng.
4. H phng trnh iu kin yu l gi?, nhng nh hng ca n.
Bi tp
Thc hin cc php ton sau
1.Nhp hai ma trn a=[ 1 2 3; 4 5 6], b=[5 6 7 ;8 9 10] .
-Tnh Addab= a+b .
-Tnh Subsab= a-b;
-Tnh Multab= a*b
Trang 11
-Tnh Mulba=b*a;
-Tnh Divab= a/b; v b/a
2. Cho mch in sau
R1
e1
R2
R3
e2
Trang 12
Chng 4
ho Trong Matlab
4 .1 im v ng trong ho matlab
Dng hm Plot v im -ng thng trong mt phng
v cc ng trong mt phng,cc hm s ph thuc vo bin v d nh y=f(x) th
trong matlab cung cp cho ta hm plot(x,y) v ,trong khng gian ba chiu th dng
hm plot3(x,y,z) .
trc ht ta ni qua v cch dng hm plot v cc v d minh ho c th hiu r hn v
vn ny:
4.1.1 Lnh plot
Syntax
plot(Y)
plot(X1,Y1,...)
plot(X1,Y1,LineSpec,...)
plot(...,'PropertyName',PropertyValue,...)
h = plot(...)
M t:
Hm plot c nhiu cch dng nh bn thy trn
plot(y): Hm ny biu din cc ct ca y theo cc ch s tng ng ca chng nu y l
ma trn cc s thc, nu y l s phc th plot(y) tng ng vi plot(real(y),image(y)).
Ta c th ly v d sau:
A=[1 2 3
45 6
78 9]
plot(A) s c kt qu nh sau(giao im k hiu l du o trn )
Trang 1
Line style
Line width
Color
Marker type
Marker size
Line Style
ng lin(default)
--
ng nt t
dotted line
-.
dash-dot line
2. Marker Specifiers
Specifier
Marker Type
plus sign
Circle
Asterisk
Point
Cross
Square
Diamond
>
Trang 3
<
3. Color Specifiers
Specifier
Color
Red
Green
Blue
Cyan
Magenta
Yellow
Black
White
Cc lnh plot chp nhn mt thng s Linespec ,thng s ny nh ngha ba phn t ,cc
phn t ny xc nh ng
Trang 4
Trang 5
Trang 6
Trang 7
Examples
Create a simple polar plot using a dashed, red line:
t = 0:.01:2*pi;
polar(t,sin(2*t).*cos(2*t),'--r')
this is a figure for plotting Polar(phi, r);
Khi chuyn t h to cc sang h to cart ta lm nh sau [x,y]=pol2cart(phi,
r) sau dng lnh Plot(x,y)
t = 0:.01:2*pi;
h=sin(2*t).*cos(2*t);
[x,y]=pol2cart(t,h); axis(equal)
plot(x,y);grid on;
notice : command Axis(equal) set unit which is divided in X and Y axis
i vi h to cu Trong Matlab khng c hm v .tuy nhin ta c th chuyn
i t h to cu thnh h to Cart trong khng gian
[x,y,z]=sph2cart(theta,phi,r) sau dng hm v trong khng gian l plot3(x,y,z)
Trang 8
4.5 th ct
bar, barh
Cu trc
bar(Y)
bar(x,Y)
bar(...,width)
bar(...,'style')
bar(...,LineSpec)
II.
M t
V biu cc gi tr trong vc tor hoc trong Matrn nh l thanh ngang hoc thanh
thng ng
bar(Y) v mt th ct cho mi phn t trong Y. Nu Y l mt ma trn ,bar nhm cc
thanh c to ra bi mi phn t trong mi hng.
T l trc x t 1 to length(Y) khi Y l mt vector, v 1 n size(Y,1), chnh l s hng
, khi Y l mt ma trn .
bar(x,Y) v mt th ct cho mi phn t trong Y ti cc v tr xc nh trong x, x
l vector tng nh ngha cc khong cho cc ct thng ng. Nu Y l mt ma trn, bar
gp cc ct tng ng trong cng mt hng trong Y ti v tr tng ng vi mt phn t
trong x.
bar(...,width) hm ny ging cc hm trn nhng c thm c tnh t rng ca
ct.Gi tr mc nh ca width l 0.8,. Nu width is 1, cc ct trong mt nhm chm vo
bar(...,'style') Xc nh kiu ca ct
'style' l 'group' hoc 'stack'. 'group' l ch mc nh
Trang 9
Tng t th ct trong khng gian lnh vn gi nguyn nhng thay v bar ta thay
lnh bar3(x,y,z)
4.6 th bnh (Pie)
Cu trc:
pie( x ) :Hm ny v th bnh vi cc 'khoanh' c xc nh bi phn trm cc gi tr
trong vector x v d x=[ 1 2 3 4] phn thnh 4 khoanh trn ton b vng trn ,mi
khoanh tng ng phn trm cc
phn t trong x
>>x=[ 1 2 3 4];
>>pie(x)
cho th nh sau:
nh cao nht ng vi phn t u
tin ca vc tor ,cc phn t tip
theo c b tr theo chiu ngc
chiu kim ng h .
Nu tng cc phn t trong vec tor x
<1 th trn th bnh biu din
phn trm chnh l cc phn t .
V d
>> x=[ 0.1 0.2 0.3 ] % tng ng vi 10% 20% 30%
>>pie(x);
Trang 10
Trang 11
chng 4
Ma trn - cc php ton v ma trn.
an1
4.1.1 Cc qui nh nh ngha mt ma trn:
-
36
42
39
48
57
31
41
51
Trang 2
VD >> c
c=
30
36
42
39
48
57
31
41
51
36
42
39
48
57
31
41
51
Trang 3
c=
[
a, sinx]
a,
a]
0.1000
0.2000
0.3000
0.4000
0.5000
0.6000
0.5000
0.4000
0.3000
0.2000
0.1000
>> B = A(1,1)
Trang 4
B=
1
>> A(3,3) = A(2,2) + B
A=
1
>> B = A(2,:)
B=
>>C = A(:,2)
C=
2
5
8
4.2.3 Gi 1 ma trn con t mt ma trn ln.
VD
>> A = [1:3; 4:6; 7:9]
A=
1
>> B = A ( 2:3,1:2 )
B=
Trang 5
5
7
>> d = zeros(3)
d=
>> d = ones(3)
d=
Trang 6
Php ton
Cng thc
Matlab
Cng, tr
A+B, A-B
A+B, A-B
Nhn mng
A.B = C
A.*B
B\A
B.\A
A/B
A./B
Lu tha mng
AB
A.^B
>> b=[1 2 2; 1 1 1]
b=
1
Trang 7
>> c=a.*b
c=
1
>> d=a./b
d=
1.0000
0.5000
1.0000
2.0000
1.0000
1.0000
1.0000
2.0000
1.0000
0.5000
1.0000
1.0000
>> e=a.\b
e=
>> f=a.^b
f=
1
>>A=[a b; b c]
A=
[ a, b]
[ b, c]
>> B=A
B=
[ a, b]
[ b, c]
>> C=A.*B
C=
[ a^2, b^2]
[ b^2, c^2]
>> B = A
B=
Trang 9
10
10
14
10
14
18
>> B = A
B=
>> C = A + B
C=
C ij = A ik .B kj
k =1
>> B = [1 0 2; 2 1 1; 1 1 1]
Trang 10
B=
1
>> C = A * B
C=
a,
b,
c]
[ 2*a, 2*b^2,
[
a,
0,
c]
b]
>> f=d*e
f=
[ 2*a^2+2*b*a+c*a,
2*b*a+2*b^3,
[ a^2+2*b*a+c*a,
b*a+2*b^3,
a^2,
0,
2*c*a+2*c*b]
c*a+2*c*b]
b*a]
A
1
= A*
B
B
Ly ma trn nghch o thc hin bng hm inv.
C=
>> A = [1 2 1; 1 0 1]
A=
1
>> B = [1 0 2; 2 1 1; 1 1 1]
B=
1
>> C = inv(B)
C=
0
1.0000
-1.000
-0.5000
-0.5000
1.5000
0.500
-0.5000
0.5000
>> D = A*C
D=
- 0.5000
-0.5000
2.5000
0.5000
0.5000
-0.5000
Trang 12
>> B = A*2
B=
4.5.4 Php quay ma trn: Quay ma trn B i 1 gc 90 theo ngc chiu kim ng h.
>> a=[1 2 3;4 5 6;7 8 9]
a=
1
>> b=rot90(a)
b=
Trang 13
Chng 5
% in ra so lieu
sl=[i x(i) f(i)]
i=i+1; end
Nhp x , y,xa
i= length(x)
j=length(y)
n=i; f=0
i~=j ?
Gn i=1
i<=n
?
Gn j=1;
1
j<=n
?
i=i + 1
i~=j ?
f= f + g*
Thut ton
ton
g=g* (Xa-x(j))/(x(i)-
(j)
j=j+
1
Trang 2
ni suy cho bi
mt chiu lagrange
interp1(ni suy theo spline)
yi = interp1(x,Y,xi,method,'extrap')
yi = interp1(x,Y,xi,method,extrapval)
M t
yi = interp1(x,Y,xi) tr v vector yi cha cc phn t tng ng vi cc phn t ca xi v
gi tr tr v c xc nh bng cch s ni suy(interpolation) trong vectors x and Y.
The vector x xc nh cc im ti d liu Y c cho trc (the points at which the
data Y is given). Nu Y l mt ma trn, th vic ni suy c thc hin cho mi ct ca Y
v Yi c kch thc l yi is length(xi)-by-size(Y,2).
(the interpolation is performed for each column of Y and yi is length(xi)-by-size(Y,2))
yi = interp1(Y,xi) gi s rng x = 1:N, N =length(y) l chiu di ca Y nu Y l
vector, hoc size(Y,1) nu Y l matrn .
yi = interp1(x,Y,xi,method) interpolates using alternative methods:
'nearest'
Nearest neighbor interpolation
'linear'
'spline'
'pchip'
'cubic'
(Same as 'pchip')
'v5cubic'
For the 'nearest', 'linear', and 'v5cubic' methods, interp1(x,Y,xi,method) tr v NaN cho
tt c cc phn t ca xi m nm ngoi khong xc nh ca x. i vi tt c cc phng
php, interp1 cp n vic xc nh d liu(ni suy cho c cc im nm ngoi vng
ca x) nm ngoi phm vi biu din
yi = interp1(x,Y,xi,method,'extrap') uses the specified method to perform extrapolation
for out of range values.
yi = interp1(x,Y,xi,method,extrapval) returns the scalar extrapval for out of range values.
NaN and 0 are often used for extrapval.
Lnh interp1 ni suy gia cc im. N tm gi tr ti cc im gia cc im xc
nh, ca hm mt chiu(of a one-dimensional function f(x)) hm ny c xc nh di
d liu cho trc ( underlies the data. ) Hm ny uc biu din da trn quan h cc cp
vc tor x,Y,xi,Yi
Trang 3
Interpolation is the same operation as table lookup. Described in table lookup terms, the
table is [x,Y] and interp1 looks up the elements of xi in x, and, based upon their locations,
returns values yi interpolated within the elements of Y.
Examples
Example 1. Generate a coarse sine curve and interpolate over a finer abscissa.
x = 0:10;
y = sin(x);
xi = 0:.25:10;
yi = interp1(x,y,xi);
plot(x,y,'o',xi,yi)
Example 2. Here are two vectors representing the census years from 1900 to 1990 and the
corresponding United States population in millions of people.
t = 1900:10:1990;
p = [75.995 91.972 105.711 123.203 131.669...
150.697 179.323 203.212 226.505 249.633];
The expression interp1(t,p,1975) interpolates within the census data to estimate the
population in 1975. The result is
ans =
214.8585
Trang 4
f(i-1,j)
f(i,jyi
fe
fk
f(i-1,jyi-1
f(i,jMc ch ca
bi ton l: Xc
xi-1
xi
nh gi tr
f(x,y) ca mt v tr bt k
trong mt mt phng xc nh (bit cc to v gi tr cc im xung quanh x(i), x(i1)... )
Mun xc nh gi tr ti mt im c v tr xi-1<x<xi v yi-1<y<yi ta dng phng php
ni suy hai chiu, thc cht ca phng php ny l thc hin hai ln bi ton ni suy mt
chiu
Bi 1: Ni suy theo phng y tm ra fe v fk
Bi 2: Ni suy theo phng x t fe n fk tm g(x,y)
fe=
yj y
y yj 1
yj y
y yj 1
f (i 1, j 1) +
f (i 1, j ); f f =
f (i, j 1) +
f (i, j )
yj yj 1
yj yj 1
yj yj 1
yj yj 1
xi x
x xi 1
fe +
ff
xi xi 1
xi xi 1
Chng trnh c th c vit nh sau:
Quy c
u vo l f=[f(1) f(2) f(3) f(4)] tng ng vi [f(i-1,j-1) f(i-1,j) f(i,j-1) f(i,j)] ; x=[
x(i-1) x(i)]
function g= C5(x,y,f,xa,ya)
% trong do x=[x(i-1) x(i)] y=[y(i-1) y(i)]
% xa ya la to ca im cn tm
g(x,y)=
Trang 5
Trang 6
Suy ra n>=(ln(b-a)/tol)/0.6931;
Trong b v a tng ng l cc khong phn ly nghim mi
Thut ton gii nh sau:
%-----------------------------------------------------------------function x= C5(a,b,t)
% n la so lan lap
% a la can duoi b la can tren
i=1;
if( f(a)*f(b)>0 )
disp('nhap lai a va b ');
end
while(abs(a-b)>t)
c=(a+b)/2;
if( f(c)==0)
disp('nghiem la x=');
x=c;
break;
end
if(f(c)*f(a)<0)
b=c;
end
if(f(c)*f(b)<0)
a=c;
end
end
x=c;
Phng php Newton
Cng thc tnh nghim ca phng php Newton l
Xn=Xn-1 -f(Xn-1)/f(Xn-1)'
f=f(x) l hm cn tnh nghim, chng ta s tnh cc gi tr ca Xn n khi t c sai s
cn thit ( tc l abs(Xn- Xn-1)< tol) th Xn chnh l nghim gn ng ca phng trnh
trn.
%-----------------------------------------------------------------------------%Thut ton gii nghim gn ng theo phng php Newton
function[x]=f(t,xb)
N=input('nhap buoc lap N=');
tol=1.e-5;
Trang 7
x=xb;
i=1;
while(i<=N)
[f,fd]=T1(t,x);
x=x-(f./fd);
sol=[i xb x f./fd ]
if(abs(xb-x)<=tol)
break;
end
xb=x;
i=i+1;
end
disp('nghiem cuoi cung la')
x
//------------------------------------------------------------------//
function[f,fd]=T(t,x)
f= t^3+t+1;
fd=diff(f,t);
f=subs(f,t,x);
fd=subs(fd,t,x);
//-----------------------Gi chng trnh t ca s Command Window----//
>>syms t;
>> xb=4;
>>[x]=f(t,xb)
%-----------------------------------------------------------5.3 Tch phn s
a.Phng php hnh thang
h
I= ( f 0 + 2 f1 + 2 f 2 + .......... + f N )
2
ba
h=
N
f 0 = f (a), f = f (a + ih)
V d tnh tch phn: I= int(f,a,b); f=2*x2* cos(x)
%--------------------------------------------------------------function I= C5(a,b,n)
% a va b la hai can
% n la so buoc tinh
Trang 8
h=(b-a)/n;
I=0;
for i=0:n
x=a+h*i;
c=2;
if((i==0)|(i==n))
c=1;
end
I=I+c*(2*x^2*cos(x));
end
I=I*h/2;
%------------------------------Thuc hien trong command window--------->> I=C5(0,1,20)
I=
0.4784
Dng Matlab tnh tch phn hnh thang: trapz(x,y)
Eg1:
>> x=[0:0.05 1]';
>> y=2*x.^2.*cos(x);
>> trapz(x,y)
ans =
0.5403
>> t=[0:15:90]';
>> x=t*pi/180;
>> y=[sin(x) cos(x)];
>> trapz(x,y)
ans =
0.9943 0.9943
s dng cng thc trn th x l vctor ct c cng chiu di vi vector y, hoc y
lmt mng m cc phn t c chiu di ging x
Tnh theo phng php thng thng chun:
>> syms x
>> int(2*x^2*cos(x),0,1)
ans =
-2*sin(1)+4*cos(1)
Trang 9
>> eval(ans)
ans =
0.4783
Kt lun rng : phng php hnh thang gii theo trapz th chnh xc km hn:
b. Phng php Simpson 1/3
h
I= ( f 0 + 4 f 1 + 2 f 2 + 4 f 3 + .....................2 f N 2 + 4 f N 1 + f N )
3
H=(b-a)/N;
f 0 = f (a), f1 = f (a + i * h)
%----------------------- Chuong trinh viet theo simpson-------function I= C5(a,b,n)
% a va b la hai can
% n la so buoc tinh
h=(b-a)/n;
I=0;
for i=0:n
x=a+h*i;
c=4;
if((i==0)|(i==n))
c=1;
end
if(fix(i/2)*2==i)
c=2;
end
I=I+c*(2*x^2*cos(x));
end
I=I*h/3;
Cch gii Dng matlab( for simpson)
5.4 Dng Laplace gii bi ton trong L thuyt Mch
Trong L thuyt mch c rt nhiu cc i lng o hm ,cc i lng c th c
bin i qua Laplace v thay th bi ton l thuyt mch v bi ton gii bng Laplace.
% Cac vi du
v d1
syms t s;
I1= sym('I1(t)');
k=laplace(I1,t,s); % Chuyen doi I1(t) sang Laplace
Trang 10
syms t s;
I1=sym('I1(t)');
laplace(i,t,s)
dI1=sym('diff(I1(t),t)')
l=laplace(dI1,t,s) % chuyen dao ham I1(t) sang Laplace
Trang 11
Trang 12
x: [1x1 sym]
y: [1x1 sym]
>> n.x % truy nhp cu trc bin x
ans =
4/3
>> n.y % Truy nhp cu trc bin y
ans =
-1/3
Thng
s cui
y=dsolve('Dy=x*y','Dy(0)=1','x');
k hiu 'D' nh ngha phng trnh vi phn tng ng vi bin c lp v d thng
thng s dng dy/dt . ''D'' c theo sau bi mt s ,th s nh ngha bc vi phn v
d D2y ngha l d2y/dt2 v d sau:
y = dsolve('D2y+y=1','y(0) = 0')
kt qu: y = 1+C1*sin(t)-cos(t)
Cn D3y tc l d3y/dt3
ch rng bin symbolic khng c cha trong D v d nh khng th ghi nh sau :
syms y; dsolve('Dy') (sai)
iu kin u xc nh bi biu thc 'y(a)=b' hoc 'Dy(a)=b'
y l mt trong nhng binph thuc v a v b l s khng i nu s iu kin u
nh hn s bin ph thuc th Kt qu s c cho trong mng C1,C2
C ba kiu u ra .i vi mt phng trnh vi phn th c mt u ra , i vi h c
nhiu phng trnh vi phn th c s u ra tng ng (u ra c th l mt structer)
Examples:
dsolve('Dx = -a*x') returns
ans = exp(-a*t)*C1
x = dsolve('Dx = -a*x','x(0) = 1','s') returns
Trang 13
x = exp(-a*s)
y = dsolve('(Dy)^2 + y^2 = 1','y(0) = 0') returns
y=
[ sin(t)]
[ -sin(t)]
S = dsolve('Df = f + g','Dg = -f + g','f(0) = 1','g(0) = 2')
returns a structure S with fields
S.f = exp(t)*cos(t)+2*exp(t)*sin(t)
S.g = -exp(t)*sin(t)+2*exp(t)*cos(t)
Y = dsolve('Dy = y^2*(1-y)')
Warning: Explicit solution could not be found; implicit solution returned.
Y=
t+1/y-log(y)+log(-1+y)+C1=0
dsolve('Df = f + sin(t)', 'f(pi/2) = 0')
dsolve('D2y = -a^2*y', 'y(0) = 1, Dy(pi/a) = 0')
S = dsolve('Dx = y', 'Dy = -x', 'x(0)=0', 'y(0)=1')
S = dsolve('Du=v, Dv=w, Dw=-u','u(0)=0, v(0)=0, w(0)=1')
w = dsolve('D3w = -w','w(0)=1, Dw(0)=0, D2w(0)=0')
y = dsolve('D2y = sin(y)'); pretty(y)
S dng ode23 v ode45 dng gii phng trnh vi phn thng
Cu trc
[T,Y] = ODE23(ODEFUN,TSPAN,Y0) vi TSPAN = [T0 TFINAL] t hp h phng
trnh vi phn y' = f(t,y) t thi gian T0 n TFINAL vi gi tr ban u Y0( with initial
conditions Y0). Hm ODEFUN(T,Y) chc chn tr v mt vc tor ct tng ng vi
f(t,y). Mi hng trong mng kt qu Y tng ng thi im(t) tr v trong column vector
T
ly kt qu ti cc thi im T0,T1,...,TFINAL(tt c l tng u hoc gim u) s
dng TSPAN = [T0 T1 ... TFINAL].
[T,Y] = ODE23(ODEFUN,TSPAN,Y0,OPTIONS) solves as above with default
integration properties replaced by values in OPTIONS, an argument created with the
ODESET function. See ODESET for details.
Thng thng s dng options l mt s v hng ni v sai s lin quan ('RelTol')
Nu khng c thng s trn th mc nh sai s lin quan l =1-e3 v sai s tuyt i mc
nh vi tt c cc phn t l 1e-6
Example
[t,y]=ode23(@vdp1,[0 20],[2 0]);
Trang 14
plot(t,y(:,1));
solves the system y' = vdp1(t,y), using the default relative error
tolerance 1e-3 and the default absolute tolerance of 1e-6 for each
component, and plots the first component of the solution.
% giai phuong trinh vi phan bac hai sau
% L*d2q/dt2 + R * dq/dt + q/c = Eo* cos(w*t)
% nguyen tac giai
global R L C Eo omega
L=100;
R=100;
C=0.25;
Eo=10;
omega=1;
%t0=0;
%ta=3;
%x0=[1 1]'
tol=1e-3;
[t,x]=ode23(@Mach1,[0 3],[1 1],tol);
kq=[t x(:,1) x(:,2)]
plot(t,x(:,1));
%-------------- Ham Mach1-------------------------------function f= Mach1(t,x)
global R L C omega Eo
f=[(Eo/L)*cos(omega*t)-x(1)/(C*L)-R*x(2)/L x(2)]';
%-------------------ket qua thuc hien trong command window-----kq =
0 1.0000 1.0000
0.0800 0.9216 1.0833
0.3585 0.5926 1.4308
0.5589 0.2895 1.7484
0.7093 0.0171 2.0319
0.8596 -0.3011 2.3615
1.0069 -0.6642 2.7362
1.1900 -1.1987 3.2858
1.4006 -1.9498 4.0557
1.6323 -2.9833 5.1132
1.8804 -4.3902 6.5518
Trang 15
Trang 16
Chng 5
ho trong matlab
Trang 1
Look
in:
Ni
cha
Trang 2
chn lu cho th va to
-
Sau khi chn ngun cha (nu cn thit), t tn mi cho th, kch vo Save
lu.
Export:
Lu li tp tin th hin hnh thnh mt
dng tp tin khc sau ny c th chuyn
sang chng trnh ng dng khc.
To mt th mi hoc m tp tin
th c ln mn hnh.
Trang 3
Sau khi chn song, kch vo Save ghi li tp tin theo dng khc.
Property Editor:
Hin khung thoi Graphics Property ngi s dng thay i cc khung thuc tnh
mc nh cho ph hp vi tc v.
Preferences:
H
i
n
khung danh mc font cng thuc tnh
ngi s dng thay i font mc nh thnh
font qun thuc.
Trang 4
Command
Windows
Font:
Copy Options : Hin khung thng tin ngi s dng tu chn nhng thnh
phn i tng mun sao
chp.
Limits: nh du chn
p dng hoc khng p
dng ch va khp vi cc trc v gia tr theo thanh o trn trc.
Size and Position: C hai tham s tu chn, s dng theo mc nh hoc chnh
theo tu chn.
Center In th gia trang
Fill
In th trn c trang
MaxAspect In th theo t l
ti a
Print Setup:
Nu c nhiu loi thit b in( v ), th nn
khai bo li trc khi chuyn bn th sang
my in hoc my v.
Cc bc thc hin v mt th:
Trang 5
Kch Ok in.
Copy ( Ctrl + c): Sao chp i tng chn trong th hin hnh a vo Cliboard
sau dn vo th khc. i tng sau khi sao chp vn hin din ti v tr c. Cc
bc thc hin nh sau:
Paste ( Ctrl + v): Dn i tng c Cut hoc Copy vo Cliboard sang th khc.
Cc bc thc hin nh sau:
Trang 6
Select All( Ctrl + a): Chn tt c cc i tng trong th hin hnh x l theo nhu
cu.
Copy Figure: Sao chp c th sang Cliboard ri sau dn sang trang mn hnh
th hoc sang chng trnh khc. Cc bc thc hin nh sau:
Copy Option:
Hin khung thoi Preferences
Preferences).
5.2.3 Tools ( Ctrl + t): Cha cc lnh cng c h tr vic thc hin, x l cc thuc tnh
minh ho trong th ngi quan st d hiu
hn.
Show Toolbar:
Cho hin hoc giu cc biu tng cng c Standard trn mn hnh
Enable Plot Editing: nh du chn hoc b chn i tng.
Axes Properties:
Gn thuc tnh
Trang 7
Sau khi v th , kch chn Tool / Axes Properties. Mn hnh xut hin khung
thoi Axes Properties.
Trong khung thoi Axes Properties c th: t tiu cho th ( Title), gn nhn
cho trc x v trc y
( Label), gii hn ln
cc trc
( Limits), t l xch cc
trc.. . cho th.
Kch Tool / Line Properties. Mn hnh hin khung thoi line properties.
Chn dy mng ca ng th
Line Width; kch c du nh d liu
trn th Marker Size; Kiu dng
th Line Style; mu sc Color
Trang 8
Text Properties: Thay i cc thuc tnh cho cc k t trong th. Cc bc thc hin
nh sau:
Kch biu tng Enable Plot Editing, chn chui k t mun thay i thuc tnh.
Kch
menu
Tool
Text
Kch Ok.
Kch
menu
Tool
Unloock
Position.
Sau khi thc hin xong, kch li menu Tool. Ln ny lnh Unlock i thnh
Lock Position. Kch Lock Position kho li.
Trang 9
Show Legend: Cho hin hoc giu bng phn loi s liu ca th trn mn hnh
Add: Hin bn thanh cng c h tr cho vic thm cc thuc tnh vo th:
M th mun thm ng k.
Kch Tool /Add /Line hoc kch biu tng Add Line
cng c.
Kch chn im u
tin, ko mouse n
v tr th hai. Kch
li mouse nh
v.
gn thuc tnh
cho ng k, kch
biu tng Enable
Trang 10
Trn thanh
Khai bo tham s cho tng loi thuc tnh ( ging nh trong Line
Properties).
Kch Apply v OK.
c.
Kch chn v tr thm mi tn, ko mouse ly di cho mi
tn.
C th di chuyn mi tn n v tr bt k bng cch kch mouse vo
mi tn ri ko n v tr nh v.
Text: Thm cc k t vo th. Cc bc thc hin nh sau:
M th cn thm k t.
Kch Tool / Add / Text hoc kch biu tng
c.
Kch chn v tr cn thm k t, nhp k t t bn phm.
Kch vo
c.
Zoom out: Thu nh th theo yu cu.
Kch vo Zoom out hoc kch vo biu tng
cng c.
Trang 11
Trn thanh
Trang 12
th tuyn tnh:
th tuyn tnh l loi th 2-D dng cc
lnh v Plot:
th dng nh du:
Trang 13
th dng nh du l loi th ch dng cc im nh vng trn, hnh thoi . Thay v dng cc on thng ni li vi
nhau.VD 4:
>> a = [8 8.5 5 8 6.5 7 7.8 8.5 7 7.5 5 9 7.5 9.2];
>>plot ( a,*);
>>grid on
5.3.3
Cng mt bn th ta c th v nhiu th vi cc d liu khc nhau v loi ng minh ho. Theo mc nh Matlab s
t ng gn loi mu sc cho tng d liu phn bit. Cng thc tng qut khi v nhiu th trn cng mt h to :
title ( Tn tiu th )
xlabel ( Tn trc x)
ylabel ( Tn trc y)
Mu
K hiu
Kiu
vng
Chm im
ti
Vng trn
xanh
Du x
Trang 14
Du cng
xanh l cy
Du sao
xanh thm
Nt lin
trng
-.
Gch chm
en
--
Gch gch
b
w
k
Khi ta dng lnh: plot(tn bin, tn hm,k hiu mu k hiu kiu ng)
VD 6: v hm Cos(x), cos (2x)
>> x=linspace(0,10,50);
>> y=cos(x);y1 = cos(2*x);
% v y bng du x mu en, y1 bng du * mu xanh thm
>> plot(x,y,xk,x,y1,*b);
% Tn th
>> title(' Do thi ham cosx & ham cos2x')
>> xlabel(' Truc Hoanh')
>> ylabel(' Truc Tung')
>> grid on
Trang 15
})
5.3.5
th hnh thanh:
Loi th ny thng dng minh ho cc s liu theo dng thanh, c th theo
trc x hoc trc y. VD8 : V biu khi lng nhp hng trong 12 thng.
>> x = [230 255 270 210 170 240 265 280 240 300 320 345];
>> bar (x)
>> xlabel(Thang)
>> ylabel(Doanh thu)
>>set(gca,'Xticklabel',
'Th1','Th2','Th3','Th4','Th5','Th6','Th7','Th8','Th9','Th10','Th11','Th12'
})
350
300
Doanh thu
250
200
150
100
50
5.3.6
Th1
Th2
Th 3
Th4
Th5
Th 6
Th 7 Th 8
Thang
Th 9 Th 1 0 Th 1 1 Th 1 2
th to cc:
Thng c p dng trong
90
10
60
120
8
6
9:
30
150
4
>> th = [0:.1:10];
>> r1 = th;
2
180
>> r2 = 5*cos(th)+ 5;
210
330
240
300
270
>> set(h1,'Markersize',15)
Trang 16
>> hold on
>> h2 = polar(th,r2,'k');% mu en, lin.
5.3.7
th hnh Pie:
L loi th t l bch
30%
d liu.VD 10:
>> x = [30 22 15 8 25];
>> explot = [0 1 0 0 0];
8%
>> pie(x,explot)
>> colormap jet
15%
22%
5.3.8
% to trc to
5
>> subplot(2,1,2);plot(b)
% to trc to
3
1
1.5
2.5
3.5
2.5
3.5
5
4.5
4
3.5
3
Trang 17
2. 5
1
1.5
5.3.9
Lnh staris:
v th bc thang.
VD 12:
0 .8
0 .6
0 .4
0 .2
0
-0 . 2
-0 . 4
>>stairs (x,sin(x))
-0 . 6
-0 . 8
-1
10
>>a = linspace(1,5,50);
>>b = linspace(1,10,100);
>>[ x,y] = meshgrid(a,b);
>> z = sin(x)+cos(y);
1
5.3.2
Lnh v : plot3(x,y,z) :
0.5
-0.5
-1
6
10
>>[x,y]=meshgrid(a,b);
8
6
4
0
>>z=sin(x)+cos(y);
>> plot3(x,y,z)
Trang 18
2
0
>> b=linspace(0,6,100);
>> [x,y]=meshgrid(a,b);
>> z=sin(x).*cos(y);
>> mesh(z)
Trang 19
Chng 6
M hnh ho, M phng h thng ng s dng Simulink
Mc lc chng :
1. Khi nim v simulink
2. Phng php xy dng m hnh
3. ng dng simulink m phng cc bi ton k thut
6.1 Khi nim v simulink
What Is Simulink?
Simulink l mt phn mm gi gn c s dng xy dng m hnh v m phng ,
tnh ton phn tch h thng ng .Simulink cho php m t h thng tuyn tnh, h phi
tuyn , cc m hnh trong thi gian lin tc hoc gin on(ly mu ) hay kt hp c hai.
i vi m hnh , Simulink cung cp mt giao din ho (GUI) cho vic xy dng m
hnh nh l cc khi (block diagrams), ngi s dng ch cn kch chut v drag( chn
khi ri gi nguyn chut tri ri r chut n v tr t cc khi). Vi giao din giao tip
nh vy, bn c th v M hnh nh l m hnh bn v trn ''giy''
Th vin simulink bao gm cc khi th vin sinks, sources(to tn hiu), linear. . .
.V bn cng c th t to ra mt khi block ring ca mnh (vit trong S-function)
Xy dng m hnh 't trn xung 'hoc 't di ln trn ' xem k cc khi trong th
vin cc khi source hoc sink linear . . . bn kch p chut vo cc khi . Sau khi
nh ngha m hnh bn c th m phng m hnh , s dng scope xem biu din
m hnh ,v d nh mt khi pht hnh sin , u ra ca khi c mc vi mt
scope th hin kt qu ca khi
6.2 Th vin simulink v mi trng lm vic (ni xy dng m hnh)
Bt u vo vng lm vic ca simulink trong ca s command window ta g lnh
>>simulink nh sau:
Trang 1
Cc khi
th vin Ca
Simulink
Bn c th kch
p chut vo tng
khi xem cc
khi con ca n(hoc bn nhp n chut vo danh mc tng ng vi khi t simulink)
Hm
con
ca
khi
Trang 2
To mi trng lm vic
T ca s Library Browser (xem hnh trn) ta kch chut vo file danh sch cc mc New
, Open , Preferences xut hin .
to mi trng lm vic (vng v m hnh) ta chn mc New ri chn Model
Ctr+N mt ca s lm vic xut hin
Ca s lm vic nh sau
Trang 3
Gi s ta mun xy dng m hnh phn tch sng sin trn ca s lm vic nh sau:(xem
hnh v di y)
Cc bc:
Sau khi to mi trng lm vic mi (cc bc gii thiu trn) tip n
Dng chut
Ko sang
vng ca s
Tm khi hm sin trong khi th
Trang 5
Sau khi hon tt t li cc thng s , n cng vic quan trong nht l kt qu m phng
:
1. Trn thanh cng c nhp chut vo mc Simulation
V chn Start
Trang 6
Trang 7
Chng 6
ng dng tnh ton trong matlab
y1 = anxn + an-1xn-1+...+a0
y 2 = bnxn + bn-1xn-1+...+b0
Bc1: Lp 2 ma trn hng tn y1, y2 c cc phn t l cc h s t an n a0 v
bn n b0 gim dn theo bc ca phng trnh ( Nu h s no khng c ghi 0 )
Bc 2: dng lnh conv nhn 2 a thc.
>>y3= conv(y1,y2)
VD: y1 = 2x2 + 3x+1
y2 = 3x2 + 4x
>> y1 = [2 3 1]
Trang 1
>> y2 = [3 4 0]
>> y3 = conv(y1,y2)
>> y3 = 6 17 15 4 0
Ch : hm conv ch thc hin nhn 2 a thc. Mun nhn nhiu a thc vi nhau ta phi
thc hin nhiu ln hm conv.
y = anxn + an-1xn-1+...+a0
Bc1: Lp 1 ma trn hng c cc phn t l cc h s t an n a0 gim dn theo
bc ca phng trnh ( Nu h s no khng c ghi 0 )
Bc 2: Dng lnh Roots gii ma trn va to c.
VD gii phng trnh sau: y = x5 -2x4 + 5x2 -1
>> y = [ 1
-2
-1]
y=
1
-2
-1
>> kq=roots(y)
kq =
1.5862 + 1.1870i
1.5862 - 1.1870i
-1.1606
-0.4744
0.4627
6.3.2 Bit nghim tm li phng trnh: ( lnh poly )
Ly kt qu ca v d trn
>>A = [1 1 2;1 3 4;2 1 1];
>>poly(A)
ans =
1 -5 8 14
6.3.3 Chuyn t phng trnh h s sang phng trnh c cha c tham s: ( poly2sym)
>> poly2sym([1 0 -2 -5])
Trang 2
ans =
x^3-2*x-5
>> y = [1 2 3 0 1]
y=
>> poly2sym(y)
ans = x^4+2*x^3+3*x^2+1
6.3.4
2 x + 3 y + z = 7
3x + 6 y 4 z = 19
x + y + z = 2
2
3
1
3
6
1
1
x
7
4 y = 19
1
z
2
Nh vy vic gii h PT tuyn tnh thc cht l thc hin php ton v ma trn.
>> A=[2 3 1;3 6 -4;1 1 1]
A=
2
-4
>> B=[7;19;2]
B=
7
19
2
>> C=inv(A)
C=
-2.5000
0.5000
4.5000
Trang 3
>> kq=C*B
kq =
1.0000
2.0000
-1.0000
VD2:
>>A=[1+i 2i;3+i 1]
A=
1.0000 + 1.0000i
0 + 2.0000i
Trang 4
C=
[ -b2/(-a1*b2+b1*a2), a2/(-a1*b2+b1*a2)]
[ b1/(-a1*b2+b1*a2), -a1/(-a1*b2+b1*a2)]
>> KQ=C*B
KQ =
[ -b2/(-a1*b2+b1*a2)*c1+a2/(-a1*b2+b1*a2)*c2]
[ b1/(-a1*b2+b1*a2)*c1-a1/(-a1*b2+b1*a2)*c2]
6.3.5
V d:
sin(x)+y^2+log(z)=7
3*x+2^y+z^3=4
x+y+z=2
>>[x,y,z]=solve('sin(x)+y^2+log(z)=7','3*x+2^y+z^3=4','x+y+z=2')
x=
-2.3495756224572032187410536400368
y=
2.6835269194785219427270239079010
z=
1.666048702978681276014029732135
V d:
x^2 + x*y + y = 3
x^2 - 4*x + 3 = 0
>>[x,y] = solve('x^2 + x*y + y = 3','x^2 - 4*x + 3 = 0')
x=
[ 1]
[ 3]
y=
[
1]
[ -3/2]
6.3.6 Gii h phng trnh tham s:
>>[a,u] = solve('a*u^2 + v^2= 0','u - v = 1','a,u')
a=
-v^2/(v^2+2*v+1)
u=
v+1
Trang 5
-(u^2-2*u+1)/u^2
v=
u-1
1/2*t^2+C1*t+1
Trang 6
1.5
0.5
-0.5
-1
-1.5
0
10
12
Tnh o hm (diff):
diff(S): o hm biu thc symbolic S vi bin ca o hm t do.
diff(S,v) hay diff(S,sym(v)): o hm biu thc symbolic S vi bin ly
o hm l bin symbolic v.
diff(S,n) : o hm cp n biu thc S, n l s nguyn dng.
V d:
>>syms x t
>> y = sin(x^2);
>>z = diff(y);
z = 2*cos(x^2)*x
pretty(z)% hin th dng quen thuc
2.cos2x.x
>>y = diff(t^6,6) % o hm bc 6 ca hm t6.
Trang 7
Y = 720
V d:
>>syms u v
>>y = u^2*v - u*v^3;
>> y2u = diff(y,u,2) %dao ham cap 2 theo u
>> y3u = diff(y,v,3) %dao ham cap 3 theo v
y2u =
2*v
y3u = -6*u
Vid:
>>syms x t z alpha
>>int(-2*x/(1+x^2)^2)
ans = 1/(1+x^2)
>>int(x/(1+z^2),z)
ans = x*atan(z)
>>int(x*log(1+x),0,1)
ans = 1/4
>>int(-2*x/(1+x^2)^2)
ans = 1/(1+x^2)
>> int([exp(t),exp(alpha*t)])
ans = [ exp(t), 1/alpha*exp(alpha*t)]
Vd: Tnh tch phn I =
e ( sx ) dx
2
>>Syms x s real
Trang 8
>>f = exp(-(s*x)^2);
>>I = int(f,x,-inf,inf)% inf l v cng ln
I=
Signum(s)/s*pi^(1/2)
Hm signum chnh l hm sign (hm du), ngha l sign(s) cho ta:
sign(s) = 1 khi s>0; sign(s) = 0 khi s =0; sign(s) = -1 khi s<0;
V d:
>>syms x a t h
>>limit(sin(x)/x)
ans = 1
>>limit(1/x,x,0,right)
ans = inf
>>limit(1/x,x,0,left)
ans = -inf
>>limit((sin(x+h)-sin(x))/h,h,0)
ans = cos(x)
>>v = [(1+a/x)^x,exp(-x)];
>>limit(v,x,inf,left)
ans = [exp(a),0]
Trang 9
ans = -1/2*sin(k*(n+1))/k+1/2*sin(k)/k/(cos(k)-1)*cos(k*(n+1))1/2*sin(k)/k/(cos(k)-1)
>>symsum(k^2,0,10)
ans = 385
>>symsum(x^k/sym(k!), k, 0,inf)
ans = exp(x)
Vi d: Cho tng ca 2 dy
S1 = 1 +
1
1
+ 2 + .
2
2
3
S2 = 1 + x + x2 +..
>>syms x k
>>s1 = symsum(1/k^2,1,inf) %inf l v cng.
s1 = 1/6*pi^2
>>s2 = symsum(x^k,k,0,inf)
Tm hm ngc (finverse):
finverse(f): Tm hm ngc ca f. f l hm symbolic vi mt bin x
finverse(f,u): Tm hm ngc ca f. f l hm symbolic vi mt bin
u.
V d:
>>syms u v x
>>finverse(1/tan(x))
ans = atan(1/x)
>>finverse(exp(u-2*v),u)
ans = 2*v+log(u)
Trang 10
s2 =
-1/(x-1)
exp(2*sin(2))+exp(2*sin(2))*(2*cos(2)+sin(2))*(x-2)+exp(2*sin(2))*(sin(2)+cos(2)+2*cos(2)^2+2*cos(2)*sin(2)+1/2*sin(2)^2)*(x-2)^2+exp(2*sin(2))*(1/3*cos(2)-1/2*sin(2)-cos(2)*sin(2)+2*cos(2)^2sin(2)^2+4/3*cos(2)^3+2*cos(2)^2*sin(2)+cos(2)*sin(2)^2+1/6*sin(2)^3)*(x-2)^3
By gi ta c th v hm cho v hm khai trin bng chui Taylor quanh im
x0 = 2 v cho nhn xt.
>>syms x
>> f = exp(x*sin(x));
>>t = taylor(f,10,2);
>>xd= 1:0.05:3;
>>yd = subs(f,x,xd);% thay th bin x bng xd
>>ezplot(t,[1,3])% v hm symbolic
>> hold on
>>plot(xd,yd,'r-')
6.4.2
Trang 11
V d:
>>syms x y;
>>R1 = collect((exp(x)+x)*(x+2))
>>R2 = collect((x+y)*(x^2+y^2+1), y)
>>R3 = collect([(x+1)*(y+1),x+y])
Kt qu:
R1 = x^2+(exp(x)+2)*x+2*exp(x)
R2 = y^3+x*y^2+(x^2+1)*y+x*(x^2+1)
R3 = [(y+1)*x+y+1, x+y]
V d:
>>syms x y a b c t
>>expand((x-2)*(x-4))
ans = x^2-6*x+8
>>expand(cos(x+y))
ans = cos(x)*cos(y)-sin(x)*sin(y)
>>expand(exp((a+b)^2))
ans = exp(a^2)*exp(a*b)^2*exp(b^2)
>>expand(log(a*b/sqrt(c)))
ans = log(a)+log(b)-1/2*log(c)
>>expand([sin(2*t), cos(2*t)])
V d:
>>syms x y a b
>>factor(x^3-y^3)
(x-y)*(x^2+x*y+y^2)
>>factor([a^2-b^2, a^3+b^3])
[(a-b)*(a+b), (a+b)*(a^2-a*b+b^2)]
>>factor(sym('12345678901234567890'))
Trang 12
(2)*(3)^2*(5)*(101)*(3803)*(3607)*(27961)*(3541)
V d:
>>syms x y
>>horner(x^3-6*x^2+11*x-6)
ans = -6+(11+(-6+x)*x)*x
>>horner([x^2+x;y^3-2*y])
ans = [ (1+x)*x]
[(-2+y^2)*y]
Ly t s v mu s(numden):
[n.d] = numden(A): ly ra t s ca A l n, mu s ca A l d
V d:
>>syms x y a b
>>A= (4-x)/5;
>>[n,d] = numden(A)
n=
d=
4-x
5
x^2+y^2
d = y*x
V d:
>>syms x y a b c
>>simplify(sin(x)^2 + cos(x)^2)
Trang 13
ans = 1
>>simplify(exp(c*log(sqrt(a+b))))
ans = (a+b)^(1/2*c)
>>S = [(x^2+5*x+6)/(x+2),sqrt(16)];
>>R = simplify(S)
R = [x+3,4]
6.4.3
Bin i :
Bin i fourier:
F = fourier(f): Bin i fourier ca hm v hng f vi bin c lp mc nhin f
v cho ta hm mc nhin qua php bin i nyl w.
F = fourier(f,v): F l hm ca bin v thay th bin mc nhin w.
F = fourier(f,u,v): f l hm ca u v F l hm ca v chng thay th cc bin mc
nhin x v w.
V d:
>>syms x w u
>>f = exp(-x^2)
>>fourier(f)
ans =
pi^(1/2)*exp(-1/4*w^2)
>>g = exp(-abs(w))
>>fourier(g)
ans = 2/(1+t^2)
>>f=
x*exp(-abs(x))
>>fourier(f,u)
ans = -4*i/(1+u^2)^2*u
>>syms x v u real
>>f=
exp(-x^2*abs(v))*sin(v)/v
>>fourier(f,v,u)
ans = -atan((u-1)/x^2)+atan((u+1)/x^2)
Trang 14
V d:
>>syms
a w x t v real
>>f = exp(-w^2/(4*a^2))
>>F = ifourier(f);
>>F = simple(F)
F = a*exp(-x^2*a^2)/pi^(1/2)
>>g=exp(-abs(x))
>>ifourier(g)
ans = 1/(1+t^2)/pi
>>f=2*exp(-abs(w))-1
>>simplify(ifourier(f,t))
ans = (2-pi*Dirac(t)-pi*Dirac(t)*t^2)/(pi+pi*t^2)
>>f=exp(-w^2*abs(v))*sin(v)/v;
>>ifourier(f,v,t)
ans = 1/2*(atan((t+1)/w^2) - atan((-1+t)/w^2))/pi
Bin i laplace:
L = laplace(F): Bin i Laplace ca hm F vi bin mc nhin c lp t. n cho
ta mt hm ca s
L = laplace(F,t): L l mt hm ca t thay th bin mc nhin s.
L = laplace(F,w,z): L l hm ca z v F l hm ca w, n thay th cc bin
symbolic mc nhin s v t tng ng.
V d:
>>syms t v x a
>>f = t^4
>>laplace(f)
ans = 24/s^5
>>g=1/sqrt(s)
>>laplace(g)
ans = 1/s^(1/2)*pi^(1/2)
>>f=exp(-a*t)
>>laplace(f,x)
ans= 1/(x + a)
Trang 15
>>f=1- cos(t*v)
>>laplace(f,x)
ans = 1/x-x/(x^2+v^2)
V d :
>>syms s a t
>>f=1/s^2
>>ilaplace(f)
ans = t
>>g=1/(t-a)^2
>>ilaplace(g)
ans = x*exp(a*x)
>>syms u a x
>>f=1/(u^2-a^2)
>>ilaplace(f,x)
ans =
1/(-a^2)^(1/2)*sin((-a^2)^(1/2)*x)
>>syms s v x
>>f=s^3*v/(s^2+v^2)
>>ilaplace(f,v,x)
ans = s^3*cos(s*x)
6.4.4 p dng ho:
ezplot( v -ng)
<x<2 .
Trang 16
0 < t < 2 .
V d:
>>syms x
>>ezplot(erf(x))
>>grid
ezplot3( v ng trong 3
chiu)
ezplot3(x,y,z): V cc hm x = x(t), y = y(t), v z = z(t) vi min mc
nh lt 0 < t < 2 .
ezplot3(x,y,z,[tmin,tmax]): V cc hm x = x(t), y = y(t), v z = z(t) trong
khong gi tr tmin < t < tmax.
V d:
>>syms t; ezplot3(sin(t), cos(t), t,[0,6*pi])
Trang 17
V d : Cho hm f(x) =
1
vi x [a,b].
5 + 4 cos( x)
V th v cc o hm bc 1, bc 2. min xc nh mc nhin
trong symbolic Matlab l 2 x 2 .
Hy vo ca s son tho v trong ca s ny ta vit chng trnh nh sau:
syms x
f1 = 1/(5+4*cos(x));
f2 = diff(f1);
% dao ham bac 1 cua f1.
f3 = diff(f2);
% dao ham bac 2 cua f1.
subplot(2,2,1)
ezplot(f1)
subplot(2,2,2)
ezplot(f2)
subplot(2,2,3)
ezplot(f3)
Tm cc im x lm cho o hm bc 3 ca hm f(x) =
bng khng v v th.
Hy vo ca s son tho v trong ca s ny ta vit chng trnh nh sau:
syms x
f = 1/(5+4*cos(x));
f3 = diff(f,3);
% dao ham bac 3 cua f.
pretty(f3);
%dua ve dang quyen toan hoc
f3 = simplify(f3);
pretty(f3);
z = solve(f3);
%Giai phuong trinh f3 = 0
format;
%lay 5 chu so so le
zr = double(z);
%chuyen ma tran, bieu thuc symbolic ve dang so
ezplot(f3)
%ve ham f3
hold on;
%luu do thi da ve
Trang 18
1
5 + 4 cos( x)
plot(zr,0*zr,'ro')
% ve diem "o" mau do cho cac diem co gia tri thuc de f3 =
0.
plot([-2*pi,2*pi],[0,0],'g-.')
Trang 19