Professional Documents
Culture Documents
Matlab Canban1
Matlab Canban1
Matlab Canban1
+ =
+
=
-4 -3 -2 -1 0 1 2 3 4
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
>> x=-pi:0.01:pi;
>> plot(x,cos(x); grid on
* log( ) log( ( )) tan2( , )* z x i y z abs z a y x i = + = +
>> abs(log(-1))
ans
3.1416
* ( ); tan2( , ) tan( / ) z x i y r abs z theta a y x a y x = + = = =
>> z = 4 + 3i;
>> r = abs(z)
>> theta = atan2(imag(z),real(z))
r =
5
theta =
0.6435
>> z=r*exp(theta*i)
z=
4.0000+3.0000i
MATLAB CAN BAN
4. u tien cac phep toan
>> a=2; b=3; c=4;
>> a*b^c
ans =
162
>> (a*b)^c
ans =
1296
5. Tao , lu va m tap tin (fprintf, save, fscanf, load, fopen, fclose)
x = 0:.1:1; y = [x; exp(x)];
fid = fopen('exp.txt','w');
fprintf(fid,'%6.2f %12.8f\n',y);
fclose(fid);
0.00 1.00000000
0.10 1.10517092
...
1.00 2.71828183
Chng trnh chnh Chng trnh con
clear all; clc
file_dulieu
load dulieu, A
function file_dulieu
A=[1 2 3;4 5 6;7 8 9];
save dulieu A
A =
1 2 3
4 5 6
7 8 9
MATLAB CAN BAN
6. Ham x ly so (fix, floor, ceil, round, sign, sort)
fix: lam tron ve 0
>> a=[1.25,-4.54,6.5,-7.1];
>> fix(a)
ans =
1 -4 6 -7
floor: lam tron ve am vo cung
>> a=[1.25,-4.54,6.5,-7.1];
>> floor(a)
ans =
1 -5 6 -8
ceil: lam tron ve dng vo cung
>> a=[1.25,-4.54,6.5,-7.1];
>> ceil(a)
ans =
2 -4 7 -7
round: lam tron
>> a=[1.25,-4.54,6.5,-7.1];
>> round(a)
ans =
1 -5 7 -7
sign: ham dau vi gia tr n v
>> a=[1.25,-4.54,6.5,-7.1];
>> sign(a)
ans =
1 -1 1 -1
sort: sap xep t nho en ln
>> a=[1.25,-4.54,6.5,-7.1];
>> sort(a)
ans =
-7.1000 -4.5400 1.2500 6.5000
MATLAB CAN BAN
II. MA TRAN VA VECT [;;]
; co ngha la chuyen sang hang ke tiep.
, hay phan cach gia cac phan t.
>> A = [ 1, 2, 3; 4, 5, 6; 7, 8, 10]
A =
1 2 3
4 5 6
7 8 10
>> A(3,3) = 17
A =
1 2 3
4 5 6
7 8 17
>> vec = [10; 0; 1000]
vec =
10
0
1000
>> A
ans =
1 4 7
2 5 8
3 6 17
MATLAB CAN BAN
: co ngha la tat ca.
: t gia tr nay ti gia tr khac.
: t gia tr nay ti gia tr khac bc bao nhieu.
>> t = 1:5
t =
1 2 3 4 5
>> row = A(1,:)
row =
1 2 3
>> col = A(:,1)
col =
1
4
7
>> 1:0.3:2
ans =
1 1.3000 1.6000 1.9000
>> tt = t(:)
tt =
1
2
3
4
5
MATLAB CAN BAN
Ma tran phc.
>> b = [4; 5-15*i; -5;2+i];
>> abs(b)
ans =
4.0000
15.8114
5.0000
2.2361
>> conj(b)
ans =
4.0000
5.0000 +15.0000i
-5.0000
2.0000 - 1.0000i
>> real(b)
ans =
4
5
-5
2
>> imag(b)
ans =
0
-15
0
1
>> angle(b)
ans =
0
-1.2490
3.1416
0.4636
>> atan2(imag(b),real(b))
ans =
0
-1.2490
3.1416
0.4636
MATLAB CAN BAN
Ham tao ma tran ac biet.
>> A=zeros(3)
A =
0 0 0
0 0 0
0 0 0
>> B=zeros(2,3)
B =
0 0 0
0 0 0
>> size(A)
ans =
3 3
>> zeros(size(B))
ans =
0 0 0
0 0 0
>> numel(B)
ans =
6
>> length(B)
ans =
3
>> rand(3,2)
ans =
0.9501 0.4860
0.2311 0.8913
0.6068 0.7621
zeros(n)
zeros(m,n)
zeros([m n])
zeros(size(A))
ones(n)
ones(m,n)
ones([m n])
ones(size(A))
eye(n)
eye(m,n)
eye(size(A))
pascal
magic
numel(A)
length(A)
rand(m,n)
diag(v,k), diag(v)
tril, triu
linspace(a,b), linspace(a,b,n)
logspace(a,b,n)
>> C=ones(3)
C =
1 1 1
1 1 1
1 1 1
>> D=eye(3)
D =
1 0 0
0 1 0
0 0 1
>> eye(3,2)
ans =
1 0
0 1
0 0
>> pascal(3)
ans =
1 1 1
1 2 3
1 3 6
>> magic(3)
ans =
8 1 6
3 5 7
4 9 2
MATLAB CAN BAN
>> diag([2 1 2],1)
ans =
0 2 0 0
0 0 1 0
0 0 0 2
0 0 0 0
>> diag(A)
ans =
1
5
9
>> triu(A)
ans =
1 2 3
0 5 6
0 0 9
>> tril(A)
ans =
1 0 0
4 5 0
7 8 9
>> linspace(1,2,4)
ans =
1.0000 1.3333 1.6667 2.0000
>> logspace(1,2,4)
ans =
10.0000 21.5443 46.4159 100.0000
>> A=[1 2 3;4 5 6;7 8 9]
A =
1 2 3
4 5 6
7 8 9
MATLAB CAN BAN
III. CAC PHEP TOAN TREN MA TRAN VA VECT
Phep tnh Chu thch
+, - Cong hoac tr hai ma tran cung kch thc
A*B Nhan hai ma tran A va B
A/B Chia hai ma tran (chia phai) A va B
A\B Chia trai hai ma tran B va A
A.*B Nhan tng phan t cua hai ma tran A va B
A./B Chia tng phan t cua hai ma tran A va B
A.\B Chia tng phan t cua hai ma tran B va A
.^ Mu cho tng phan t cua mang
MATLAB CAN BAN
>> A=[1 2 3;4 5 6;7 8 9]
A =
1 2 3
4 5 6
7 8 9
>> A(2,3)=10
A =
1 2 3
4 5 10
7 8 9
>> B=A(2,1)
B =
4
>> C=[-4 2 3;1 2 1;2 5 6]
C =
-4 2 3
1 2 1
2 5 6
>> D=[A C]
D =
1 2 3 -4 2 3
4 5 10 1 2 1
7 8 9 2 5 6
>> D(5)
ans =
5
>> D(4,5)
??? Index exceeds matrix dimensions.
>> X=D
X =
1 2 3 -4 2 3
4 5 10 1 2 1
7 8 9 2 5 6
>> X(2,6)
ans =
1
>> X(2,:)
ans =
4 5 10 1 2 1
MATLAB CAN BAN
>> X(:,1)
ans =
1
4
7
>> 1:5
ans =
1 2 3 4 5
>> 30:-4:15
ans =
30 26 22 18
>> X(2:3,:)
ans =
4 5 10 1 2 1
7 8 9 2 5 6
>> X(:,end)
ans =
3
1
6
>> E=X([2 3],[1 3])
E =
4 10
7 9
>> X(2,end)
ans =
1.
>> X(3,:)=[ ]
X =
1 2 3 -4 2 3
4 5 10 1 2 1
>> X(:,5)=[3 4]
X =
1 2 3 -4 3 3
4 5 10 1 4 1
>> X(2,:)
ans =
4 5 10 1 2 1
X =
1 2 3 -4 2 3
4 5 10 1 2 1
7 8 9 2 5 6
MATLAB CAN BAN
>> C(4,:)=[8 4 6]
C =
-4 2 3
1 2 1
2 5 6
8 4 6
>> C(:,4)=[8 4 6 1]
C =
-4 2 3 8
1 2 1 4
2 5 6 6
8 4 6 1
>> C=[C ones(4);zeros(4) eye(4)]
C =
-4 2 3 8 1 1 1 1
1 2 1 4 1 1 1 1
2 5 6 6 1 1 1 1
8 4 6 1 1 1 1 1
0 0 0 0 1 0 0 0
0 0 0 0 0 1 0 0
0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 1
C =
-4 2 3
1 2 1
2 5 6
Ma tran phc.
MATLAB CAN BAN
>> size(C)
ans =
3 3
>> mean(B)
ans =
2.6667
>> sum(B)
ans =
16
>> min(C)
ans =
-4 2 1
>> sort(C)
ans =
-4 2 1
1 2 3
2 5 6
C =
-4 2 3
1 2 1
2 5 6
B =
1 5 6 -5 7 2
Ham x ly ma tran va vect (size, median, max, min, mean, sum, length,)
MATLAB CAN BAN
II. Giai he phng trnh tuyen tnh va phi tuyen bang ham th vien Matlab: solve
1. He ai so tuyen tnh A*x=b
>>clear all
>>clc
>>A=[1 3 6;2 7 8;0 3 9];
>>b=[10;9;8];
>>x=inv(A)*b %(x=A\b)
x =
7.8571
-3.1905
1.9524
8 9 3 0
9 8 7 2
10 6 3
3 2 1
3 2 1
3 2 1
= + +
= + +
= + +
x x x
x x x
x x x
2. He ai so tuyen tnh A*x=b , solve
>>S=solve('x+3*y+6*z=10','2*x+7*y+8*z=9','3*y+9*z=8')
S =
x: [1x1 sym]
y: [1x1 sym]
z: [1x1 sym]
>> eval([S.x S.y S.z])
ans =
7.8571 -3.1905 1.9524
MATLAB CAN BAN
3. He ai so tuyen tnh A*x=b, LU decomposition
>> clear all
>> clc
>> [L,U]=lu(A)
L =
0.5000 -0.1667 1.0000
1.0000 0 0
0 1.0000 0
U =
2.0000 7.0000 8.0000
0 3.0000 9.0000
0 0 3.5000
>> x=U\(L\b)
x =
7.8571
-3.1905
1.9524
>> x=inv(U)*inv(L)*b
x =
7.8571
-3.1905
1.9524
8 9 3 0
9 8 7 2
10 6 3
3 2 1
3 2 1
3 2 1
= + +
= + +
= + +
x x x
x x x
x x x
MATLAB CAN BAN
3. TAO CHNG TRNH CON (FUNCTION)
function [result] = myfunc (x)
x3 = x*x*x;
result = x3 + sin(x) - 2;
> myfunc(1,-2)
ans =
-2.1585
> x3
x3 = Result is undefined
CHNG TRNH CHNH
4. CAU TRUC IEU KIEN -
CAC PHEP TOAN LOGIC (==, >, <, >=, <=, ~=, |, &)
x=input(Value);
if x > 5 x ln hn 5
elseif
x == 5 x bang 5
else x nho hn 5
end
CHNG TRNH CON
if .. end
MATLAB CAN BAN
5. CAU TRUC LAP
6. GIAI HE PHNG TRNH TUYEN TNH AX=B
x = 1:5
for i = 2:4
x.^i
end
i=2;
while i<5
x.^i
i=i+1;
end
for .. end
while .. end
> x = MAT \ vector
x =
993.33
-2006.7
1010
Bai toan tr rieng va vect rieng
AX BX =
[vec,val] = eig (A,B);
MATLAB CAN BAN
7. CAC PHEP TOAN TREN A THC
Tnh gia tr a thc
> pol=[1,2,3,4]
pol =
1 2 3 4
> polyval(pol,-1)
ans =
2
Tm nghiem a thc
> pol=[1,2,3,4]
pol =
1 2 3 4
> roots(pol)
ans =
-1.6506+ 0.0000j
-0.1747+ 1.5469j
-0.1747- 1.5469j
MATLAB CAN BAN
7. CAC PHEP TOAN TREN A THC
Tnh gia tr a thc
> pol=[1,2,3,4]
pol =
1 2 3 4
> polyval(pol,-1)
ans =
2
Tm nghiem a thc
> pol=[1,2,3,4]
pol =
1 2 3 4
> roots(pol)
ans =
-1.6506+ 0.0000j
-0.1747+ 1.5469j
-0.1747- 1.5469j
MATLAB CAN BAN
Nhan va chia a thc
> f1=[1 7 12];
> f2=[1 0 9];
f3=conv(f1,f2)
f3= 1 7 21 63 108
4 3 2
3
7 21 63 108 f s s s s = + + + +
Cho hai a thc:
12 7
2
1
+ + = s s f 9
2
2
+ = s f
2 1 3
* f f f =
Hay tnh
Cho hai a thc:
4 3 2
4
9 37 81 52 f s s s s = + + + +
2
5
4 13 f s s = + +
> f4=[1 9 37 81 52];
> f5=[1 4 13];
[f6 r]=deconv(f4,f5)
f6= 1 5 4
r= 0 0 0 0 0
6 4 5
/ f f f =
Hay tnh
2
6
5 4 f s s = + +
r la phan d cua phep chia
MATLAB CAN BAN
Phng phap bnh phng toi thieu trong x ly so lieu thc nghiem
> x=[1 3 10];
> y=[10 18 37];
> polyfit(x,y,1)
ans =
2.92537 8.01493
2.92537 8.01493 y x = +
> racines=rroots(myfunc,-1,10,100,1e-6)
> racines =
1.0434
Nghiem phng trnh phi tuyen
Phan ra a thc
Phan ra a thc:
3
3 2
2 9 1
( )
4 4
s s
F s
s s s
+ +
=
+ + +
> a=[2 0 9 1];
> b=[1 1 4 4];
> [r,p,k]=residue(a,b)
MATLAB CAN BAN
8. Noi suy
Noi suy d lieu mot chieu : interp1(x,y,xi)
> x= 0 : 10 ;
> y = sin(x);
> xi= 0 : .5 : 10;
> yi= interp1(x,y,xi);
Noi suy d lieu mot chieu a thc bac ba : spline(x,y,xi)
> x= 0 : 10 ;
> y = sin(x);
> xi= 0 : .5 : 10;
> yi= spline(x,y,xi);
0 1 2 3 4 5 6 7 8 9 10
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
0 1 2 3 4 5 6 7 8 9 10
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
MATLAB CAN BAN
Noi suy d lieu hai chieu : interp2(x,y,z,xi,yi)
> [x,y]= messhgrid(-3 : .25 : 3) ;
> z = peaks(x,y);
> [xi, yi]= messhgrid(-3 : .125 : 3) ;
> zi= interp2(x,y,z,xi,yi)
> hold on
> mesh(x,y,z), mesh(xi,yi,zi)
MATLAB CAN BAN
9. Giai phng trnh, he phng trnh vi phan thng
Ham : dsolve(eq1,eq2,,cond1,cond2,,v)
V du Ket qua
dsolve('Dy = a*y') exp(a*t)*C1
dsolve('Df = f + sin(t)') -1/2*cos(t)-1/2*sin(t)+exp(t)*C1
dsolve('(Dy)^2 + y^2 = 1','s') -sin(-s+C1)
dsolve('Dy = a*y', 'y(0) = b') exp(a*t)*b
dsolve('D2y = -a^2*y',
'y(0) = 1', 'Dy(pi/a) = 0')
cos(a*t)
dsolve('Dx = y', 'Dy = -x')
x = cos(t)*C1+sin(t)*C2
y = -sin(t)*C1+cos(t)*C2
MATLAB CAN BAN
Ham : dsolve(eq1,eq2,,cond1,cond2,,v)
V du: giai phng trnh vi phan cap hai
( )
81 16cos 7 y y t + =
( ) ( )
'
0 0, 0 0 y y = =
Vi ieu kien au
>y= dsolve(D2y+81*y=16*cos(7*t),y(0)=0,Dy(0)=0,t) ;
> t = linspace(0,2*pi,400);
>y= subs(y,t) ;
> plot(t,y)
2 2.5 3 3.5 4 4.5 5 5.5 6 6.5
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
MATLAB CAN BAN
Ham : solver(eq1,eq2,,cond1,cond2,,v)
Vi solver tng ng vi ode45, ode32, ode113, ode15s, ode23s, ode23t, ode23tb
Cu phap
[T,Y] = solver(odefun,tspan,y0)
Chu thch
odefun la ham ben ve phai cua phng trnh
tspan la khoang lay tch phan [t0 tf] e co c nghiem tai nhng thi
iem xac nh. tspan = [t0,t1,...,tf].
y0 la vector ieu kien au.
( )
'
, y f t y =
V du: giai phng trnh vi phan thng
( ) ( )
'
1 y t y t + =
( )
0 0 y =
vi
> f=inline(1-y,t,y)
> [t, y]= ode45(f, [0 2],0) ;
> plot(t,y) ;
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
MATLAB CAN BAN
Ham : solver(eq1,eq2,,cond1,cond2,,v)
V du: giai phng trnh vi phan cap hai
( ) ( ) ( ) ( )
2
0
sin y t By t y t A t e + +O =
a phng trnh vi phan cap hai ve he hai phng trnh vi phan cap mot
( )
1 2
2
2 0 2 1
sin
y y
y A t By y e
=
= O