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 đủ
pdf 104 trang myanh 28240 Free
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:

  • pdfbai_giang_tin_hoc_chuyen_nganh_chuong_4_xu_ly_cac_ham_toan_h.pdf