Bài giảng Tin học chuyên ngành - Chương 4: Xử lý các hàm toán học - Hoàng Xuân Dương
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
146
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
Matlab không chỉ tính toán trên các số cụ thể mà còn có
thể thực hiện tính toán trên ký hiệu Î Có thể sử dụng một
chuỗi biểu thức để biểu diễn hàm
Ví dụ:
1
2xn
⇒ '1/(2*x^ n)'
1
⇒ '1/sqrt(2*x)'
2x
cos(x2 ) −sin(2x) ⇒ 'cos(x^2) −sin(2*x)'
a b
c d
⎡
⎤
M =
⇒ sym('[a,b;c,d]')
⎢
⎣
⎥
⎦
73
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
147
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
Hàm
syms
Ý nghĩa
Khai báo biến
Định nghĩa hàm
Đạo hàm
Hàm
symop
Ý nghĩa
Tạo hàm mới
Tổng hàm
symsum
numden
sym
diff
int
Tử+mẫu số hàm
compose Hàm của hàm
finverse Tìm hàm ngược
Tích phân
linsolve Giải hệ phương trình
symadd Cộng hàm
poly2sym Tìm hệ số của hàm
sym2poly Tạo hàm từ hệ số
symsub Trừ hàm
eval
Tính trị hàm
symmul Nhân hàm
numeric
subs
Tính trị hàm
symdiv
Chia hàm
Thay đổi giá trị biến
sympow Lũy thừa hàm
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
148
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
Hàm
ezplot
factor
Ý nghĩa
Vẽ hàm
Phân tích tp bậc 1
Hàm
Ý nghĩa
dsolve
Giải phương trình vi phân
laplace Biến đổi laplace
ilaplace Biến đổi laplace ngược
fourier Biến đổi fourier
simplify Đơn giản hàm
simple
pretty
taylor
collect
horner
Tối giản hàm
ifourier Biến đổi fourier ngược
Biểu diễn trực quan
Khai triển taylor
Khai triển hàm
ztrans
Biến đổi z
iztrans Biến đổi z ngược
bode
freqs
Vẽ biểu đồ bode
Vẽ đáp ứng tần số
expand Khai triển hàm
solve Giải phương trình
nyquist Vẽ biểu đồ Nyquist
74
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
149
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
1. Đạo hàm và vi phân gần đúng:
¾
Đạo hàm của hàm lượng giác:
Ví dụ:
>> f=sym('cos(x)')
% hay f='cos(x)'
f = cos(x)
>> y=diff(f)
y =-sin(x)
>> x=linspace(0,2*pi);
>> plot(x,eval(f),x,eval(y),'r')
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
150
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
1. Đạo hàm và vi phân gần đúng:
¾
Đạo hàm một đa thức:
Ví dụ 1:
>> f = diff(‘x^3+3*x^2+5*x+2’)
f = 3*x^2+6*x+5
>> x=linspace(-1,1);
>> y=polyval([3 6 5],x);
>> plot(x,y)
75
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
151
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
1. Đạo hàm và vi phân gần đúng:
¾
Đạo hàm một đa thức:
Ví dụ 2:
>> D=['sin(x) ';'cos(x) ';'sinc(x)'];
>> x=linspace(-2*pi,2*pi);
>> clf
>> n=input(‘Chọn hình để vẽ: ’);
>> plot(x,eval(D(n,:)))
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
152
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
1. Đạo hàm và vi phân gần đúng:
¾
Đạo hàm hàm mũ:
Ví dụ:
>> diff(‘x^n’,’x’)
% đạo hàm theo x, diff(‘x^n’)
ans = x^n*n/x
>> diff(‘x^n’,’n’)
ans = x^n*log(x)
76
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
153
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
1. Đạo hàm và vi phân gần đúng:
¾
Đạo hàm đa thức hữu tỉ:
Ví dụ:
>> diff(‘x/(1-x^2)’)
ans = 1/(1-x^2)+2*x^2/(1-x^2)^2
Rút gọn biểu thức:
>> simplify(sym(‘1/(1-x^2)+2*x^2/(1-x^2)^2’))
ans = (1+x^2)/(-1+x^2)^2
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
154
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
1. Đạo hàm và vi phân gần đúng:
¾
Đạo hàm mảng:
Ví dụ:
>> syms x
% định nghĩa biến
>> A=[cos(x),sin(x);-sin(x),cos(x)]
A = [ cos(x), sin(x)]
[ -sin(x), cos(x)]
>> diff(A)
ans =
[ -sin(x), cos(x)]
[ -cos(x), -sin(x)]
77
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
155
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
1. Đạo hàm và vi phân gần đúng:
¾
Đạo hàm và vi phân cấp cao:
Ví dụ:
Đạo hàm cấp 2
>> syms x
>> diff(sin(x),2)
ans = -sin(x)
Đạo hàm cấp 3
>> diff(x^3,3)
ans = 6
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
156
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
1. Đạo hàm và vi phân gần đúng:
¾
Đạo hàm và vi phân cấp cao (tt)
Ví dụ:
Đạo hàm cấp 2 theo a
>> syms x a;
>> f='a^2*x^3+x^2'
f = a^2*x^3+x^2
>> diff(f,a,2)
ans = 2*x^3
Gảng vnHng Xuân Dưng
78
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
157
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
2. Tích phân:
¾
Tích phân bất định:
Ví dụ:
>> syms x x1 alpha u t;
>> int(1/(1+x^2))
% tích phân mặc định theo x
ans = atan(x)
>> int(1/(1+x^2),t)
ans = 1/(1+x^2)*t
% tích phân theo t
>> int(sin(alpha*u),alpha)
ans = -1/u*cos(alpha*u)
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
158
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
2. Tích phân:
¾
Tích phân bất định (tt)
>> int(sin(alpha*u),u)
ans = -1/alpha*cos(alpha*u)
Nếu khi tính tích phân hay nguyên hàm của một lượng quá
lớn hay phức tạp, đòi hỏi chiếm bộ nhớ lớn thì nó không
thực hiện và trả về kết quả
>> int('log(x)/exp(x^2)')
ans = int(log(x)/exp(x^2),x)
>> int('sin(x)/x')
ans = sinint(x)
% sinint(x) = int(sin(t)/t,t,0,x)
79
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
159
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
2. Tích phân:
¾
Tích phân mảng
Ví dụ:
>> syms x t;
>> A=[cos(x*t),sin(x*t);-sin(x*t),cos(x*t)];
>> int(A,t)
ans =
[ 1/x*sin(x*t), -cos(x*t)/x]
[ cos(x*t)/x, 1/x*sin(x*t)]
>> int([exp(t),exp(alpha*t)])
ans = [exp(t), exp(alpha*t)/alpha]
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
160
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
2. Tích phân:
¾
Tích phân xác định
Ví dụ:
>> syms x x1 alpha t;
>> int(x1*log(1+x1),0,1)
ans = 1/4
>> int('sin(s+2*x)','s',pi/2,pi)
ans = 2*cos(x)^2-1-2*sin(x)*cos(x)
>> int(sin(x),0,t)
% tích phân từ 0 Æ 1
% s chưa khai báo
% cận không được trùng
% với đối số của hàm
ans = -cos(t)+1
80
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
161
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
2. Tích phân:
¾
Tích phân xác định (tt)
Ví dụ:
Biểu diễn bằng đồ thị
>> t=linspace(0,4*pi);
>> y1=sin(t);
>> y2=1-cos(t);
>> plot(t,y1,t,y2,'r.')
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
162
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
2. Tích phân:
¾
Tích phân xác định (tt)
Tổng quát:
>> int('sin(s+2*x)','m','n')
ans = -1/2*cos(s+2*n)+1/2*cos(s+2*m)
81
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
163
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
3. Ma trận:
¾
Định thức:
Ví dụ:
>> M=sym('[a,b;c,d]')
M = [ a, b]
[ c, d]
>> det(M)
% định thức
ans = a*d-b*c
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
164
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
3. Ma trận:
¾
Định thức (tt)
Giải hệ phương trình
>> A=[1 -2 1;2 1 -4;3 -4 -1];
>> b=[2;-1;0]
>> x=linsolve(A,b)
x = [ 7/2]
[
2]
[ 5/2]
% x = linsolve(A,b) tương đương với x = A\b
82
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
165
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
3. Ma trận:
¾
Tính toán với ma trận:
Ví dụ:
>> G=sym('[cos(t),sin(t);-sin(t),cos(t)]')
G = [ cos(t), sin(t)]
[ -sin(t), cos(t)]
Cộng mỗi phần tử G cho t
>> G + 't'
ans =
[ cos(t)+t, sin(t)+t]
[ -sin(t)+t, cos(t)+t]
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
166
Trừ mỗi phần tử G cho t
>> G - 't'
Nhân mỗi phần tử G cho t
>> G * 't'
Chia mỗi phần tử G cho t
>> G / 't'
Nhân 2 ma trận
>> G * G
ans =
[ cos(t)^2-sin(t)^2, 2*cos(t)*sin(t)]
[ -2*cos(t)*sin(t), cos(t)^2-sin(t)^2]
83
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
167
Rút gọn biểu thức
>> simplify(ans)
ans =
[
2*cos(t)^2-1, 2*cos(t)*sin(t)]
[ -2*cos(t)*sin(t),
2*cos(t)^2-1]
Hay:
>> simple(ans)
ans = [ cos(2*t), sin(2*t)]
[ -sin(2*t), cos(2*t)]
% sau một số bước rút gọn
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
168
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
4. Đa thức:
¾
Tính toán với đa thức:
Ví dụ:
>> f='2*x^2+3*x-5';g='x^2+x+7';
>> f + g
ans = 3*x^2+4*x+2
>> f - g
ans = x^2+2*x-12
>> f * g
% Tính biểu thức f+g
% Tính biểu thức f-g
% Tính biểu thức f*g
ans = (2*x^2+3*x-5)*(x^2+x+7)
84
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
169
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
4. Đa thức:
¾
Tính toán với đa thức (tt)
>> f/g
% Tính biểu thức f/g
ans = (2*x^2+3*x-5)/(x^2+x+7)
>> f^3
% Tính biểu thức f^3
ans = (2*x^2+3*x-5)^3
>> f ^(1/2)
% Tính biểu thức f^1/2
ans = (2*x^2+3*x-5)^(1/2)
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
170
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
4. Đa thức:
¾
Kiểm tra lại các phép toán đa thức:
>> funtool
Gảng vnHng Xuân Dưng
85
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
171
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
172
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
5. Hàm hữu tỉ:
¾
Xác định tử số và mẫu số của biểu thức
Ví dụ:
>> f=sym('a*x^2/(b-x)');
>> [n,d]=numden(f)
n = -a*x^2
d = -b+x
>> f=sym('3/2*x^2+2/3*x-3/5');
>> [n,d]=numden(f)
n = 45*x^2+20*x-18
d = 30
86
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
173
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
5. Hàm hữu tỉ:
¾
Tính tổng của 2 đa thức hữu tỉ:
Ví dụ:
>> f=sym('(x^2+3)/(2*x-1)');g=sym('3*x/(x-1)');
>> [n,d]=numden(f+g)
n = x^3+5*x^2-3
d = (2*x-1)*(x-1)
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
174
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
5. Hàm hữu tỉ:
¾
Ma trận:
Ví dụ:
>> k=sym('[3/2,(2*x+1)/3;4/x^2,(3*x+4)]')
k = [ 3/2, (2*x+1)/3]
[ 4/x^2, (3*x+4)]
>> [n,d]=numden(k)
n = [
[
d = [
3, 2*x+1]
4, 3*x+4]
2, 3]
[ x^2, 1]
87
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
175
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
6. Tìm hàm:
Ví dụ:
>> f=sym('1/(1+x^2)');g=sym('sin(x)');
>> h=sym('1/(1+u^2)');k=sym('sin(v)');
>> compose(f,g)
ans = 1/(1+sin(x)^2)
>> compose(g,f)
ans = sin(1/(x^2+1))
>> compose(h,k,'u','v')
ans = 1/(1+sin(v)^2)
% tính f(g(x))
% tính g(f(x))
% tính h(k(v))
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
176
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
7. Tìm hàm ngược:
Ví dụ:
>> finverse(sym('1/x'))
ans = 1/x
>> finverse(sym('exp(x)'))
ans = log(x)
>> finverse(sym('sin(x)'))
ans = asin(x)
>> finverse(sym('x^2'))i
ans = x^(1/2)
88
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
177
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
8. Chuỗi:
Cú pháp: symsum(f,a,b) Æ tính tổng hàm f từ a đến b
¾
Tổng hữu hạn:
>> symsum(sym('x^2'),0,'x-1')
ans = 1/3*x^3-1/2*x^2+1/6*x
x−1
1
1
1
x2 = x3 − x2 + x
%
∑
3
2
6
0
>> factor(ans)
% đổi lại dạng kết quả
ans = 1/6*x*(2*x-1)*(x-1)
% có thể dùng simple(ans)
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
178
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
8. Chuỗi (tt)
>> symsum(sym('(2*n-1)^2'),1,'n')
ans = 11/3*n+8/3-4*(n+1)^2+4/3*(n+1)^3
>> factor(ans)
ans = 1/3*n*(2*n-1)*(2*n+1)
2
n
n
2n −1)(2n +1
)
(
2n −1
)
=
%
∑
3
1
Không tính được các tổng hội tụ có điều kiện
>> symsum(sym('x^k'),0,'n')
ans = sum(x^k,x = 0 .. n)
n
1
xk =
,
x <1
%
∑
1− x
k=0
89
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
179
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
8. Chuỗi:
¾
Tổng vô hạn:
>> symsum(sym('k'),0,inf)
ans = inf
Khi không có điều kiện hội tụ:
>> symsum(sym('x^k'),0,'inf')
ans = sum(x^k,x = 0 .. inf)
Tính tổng 1/(2*n-1)^2 với n từ 1..vô cùng
>> symsum(sym('1/(2*n-1)^2'),1,inf)
ans = 1/8*pi^2
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
180
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
9. Thay đổi giá trị hàm và biến:
¾
Hàm:
>> phi='(1+sqrt(5))/2'
phi = (1+sqrt(5))/2
>> eval(phi)
ans = 1.6180
Gảng vnHng Xuân Dưng
90
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
181
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
9. Thay đổi giá trị hàm và biến:
¾
Hàm (tt)
>> syms x
>> f=2*x^2+x^3-3*x+5;
>> n=sym2poly(f)
% tìm các hệ số đa thức
n = 1
2
-3
5
% tạo lại đa thức từ hệ số
>> p=poly2sym(n)
p = 2*x^2+x^3-3*x+5
>> p=poly2sym(n,'s')
p = s^3+2*s^2-3*s+5
% mặc định là x
% thay x bằng s
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
182
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
9. Thay đổi giá trị hàm và biến:
¾
Biến:
>> syms f g h x a b c
>> f=a*x^2+b*x+c;
Thay x bằng s
>> subs(f,'s',x)
ans = a*s^2+b*s+c
Thay a bằng alpha
>> subs(f,'alpha',a)
ans = alpha*x^2+b*x+c
91
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
183
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
9. Thay đổi giá trị hàm và biến:
¾
Biến (tt)
>> g=3*x^2+5*x-4;
>> h=subs(g,'x','2')
ans = 18
CHƯƠNG 4: XỬ LÝ CÁC HÀM TOÁN HỌC
184
IV. XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC:
10. Vẽ đồ thị theo biểu thức:
Ví dụ:
>> ezplot('cos(x)')
% vẽ hàm cos và tự điền nhãn vào
>> ezplot('abs(cos(x))',[0 2*pi])
>> ezplot('sin(2*x)*cos(x)',[0 2*pi])
>> ezplot('-16*x^2+64*x+96‘,[0 6])
92
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Tin học chuyên ngành - Chương 4: Xử lý các hàm toán học - Hoàng Xuân Dương", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
bai_giang_tin_hoc_chuyen_nganh_chuong_4_xu_ly_cac_ham_toan_h.pdf

