XỬ LÝ HÀM TOÁN HỌC TRONG LẬP TRÌNH MATLAB

26 5.4K 42
XỬ LÝ HÀM TOÁN HỌC TRONG LẬP TRÌNH MATLAB

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trình bày các hàm toán học đồng thời hướng dẫn cách sử dụng câu lệnh Trình bày các quy tắc trong sử dụng hàm trình MatlabCác toán tử bài tập và ví dụ trực quan giúp hiểu rõ hơn cách sử dụng matlab đã được giới thiệu rõ ràng và chi tiết

Ho Chi Minh City University of Technology Faculty of Applied Science Department of Biomedical Engineering Các hàm toán học – Lập trình M-file TS. PHẠM THỊ THU HIỀN Sept. 2012 Contents Các phần tử cơ bản Hàm toán học Các dạng file Biểu thức quan hệ và logic Cấu trúc điều khiển 1 Các hàm toán học - Lập trình M-file PHẦN TỬ CƠ BẢN Biến string: Chuỗi ký tự được đặt giữa 2 dấu nháy đơn Chuỗi ký tự là một mảng nhiều ký tự. Ký tự được lưu dưới dạng mã ASCII. >> name= ‘Trường Đại học Bách Khoa Tp.HCM’ Có thể truy xuất đến từng phần tử chuỗi >> fprintf (‘Trường tôi là %s\n’, name); Kết hợp các string tạo string mới >> text1=‘Tôi học tại’; text=[text1 ‘ ’ name]; Nhập string từ bàn phím: >> str= input(‘Nhap vao mot chuoi’,’s’); 3 Các hàm toán học - Lập trình M-file PHẦN TỬ CƠ BẢN Biến string: Các lệnh với biến string: Hàm Ý nghĩa char Tạo mảng ký tự double Đổi chuỗi sang mã ASCII num2str Đổi số sang chuỗi str2num Đổi chuỗi sang số int2str Đổi số nguyên sang chuỗi str2mat Đổi chuỗi sang ma trận mat2str Đổi ma trận sang chuỗi 4 2 Các hàm toán học - Lập trình M-file HÀM TOÁN HỌC 1. Hàm toán học cơ bản Hàm Ý nghĩa round Làm tròn về số nguyên gần nhất fix Làm tròn về 0 log(x) ln(x) pow2(x) Lũy thừa cơ số 2 log10(x) log thập phân nextpow2(N) Tìm p: 2p=N floor Làm tròn nhỏ hơn ceil Làm tròn lớn hơn 5 Các hàm toán học - Lập trình M-file Hàm toán học cơ bản Ví dụ: >> a=[-1.9 -0.2 3.4 5.6 7 2.4 +3.6i]; >> fix(a) -1.0000 0 3.0000 5.0000 7.0000 2.0000 0+3.0000i >> ceil(a) -1.0000 0 4.0000 6.0000 7.0000 3.0000 0+4.0000i >> floor(a) -2.0000 -1.0000 3.0000 5.0000 7.0000 2.0000 0+3.0000i >> round(a) -2.0000 0 3.0000 6.0000 7.0000 2.0000 0+4.0000i 6 3 Các hàm toán học - Lập trình M-file HÀM TOÁN HỌC 2. Hàm lượng giác cơ bản: Hàm Ý nghĩa sin(x) sin của x (x có đơn vị radian) cos(x) cos của x (x có đơn vị radian) tan(x) tan của x (x có đơn vị radian) acos(x) arccos của x [0 ~ π] asin(x) arcsin của x [-π/2 ~ π/2] atan(x) arctan của x [-π/2 ~ π/2] atan2(x) arctan của x [-π ~ π] 7 Các hàm toán học - Lập trình M-file CÁC DẠNG FILE 1. Script file (m file):  Các chương trình, thủ tục bao gồm các dòng lệnh theo một thứ tự nào đó do người sử dụng viết ra được lưu trong các file *.m. Được gọi là script file  Dùng trình soạn thảo edit của Matlab để viết hàm  Lưu dưới dạng ASCII  Có thể chạy giống các lệnh, thủ tục của Matlab 8 4 Các hàm toán học - Lập trình M-file CÁC DẠNG FILE 2. Hàm và tạo hàm trong Matlab:  Giống như script file. Cấu trúc tổng quát của hàm: function [y1,y2,…]=function_name (a,b,c…) % help text in the usage of the function %....... : end  Có thể chỉ là một nhóm dòng lệnh hay nhận vào các đối số và trả về kết quả  Có thể gọi hàm từ các hàm, script khác  Các biến trong hàm là các biến cục bộ 9 Các hàm toán học - Lập trình M-file Qui tắc viết hàm M-files: 1) Bắt đầu bằng từ function, sau đó lần lượt các tham số đầu ra, dấu bằng, tên hàm và các tham số đầu vào 2) Một số dòng sau tên hàm bắt đầu bằng dấu % là các dòng chú thích về cách dùng hàm, nó được bỏ qua khi chạy. Được hiển thị khi lệnh help yêu cầu hàm 3) Matlab có thể chấp nhận nhiều tham số ngõ vào và tham số ngõ ra 4) Nếu hàm trả về nhiều hơn một giá trị, các giá trị được trả về như một vector 5) Nếu hàm nhận nhiều tham số ngõ vào, các tham số sẽ được liệt kê trong dấu ngoặc đơn 6) Kết thúc hàm là phát biểu ‘end’ 10 5 Các hàm toán học - Lập trình M-file CÁC DẠNG FILE 2. Hàm và tạo hàm trong Matlab (tt) Ví dụ 1: Thực hiện hàm luythua.m như sau: function y=luythua(a,b) % Ham tinh a^b y=a^b; Trong command window: >> luythua(2,3) ans = 8 >> c=luythua(4,2) c = 16 11 Các hàm toán học - Lập trình M-file CÁC DẠNG FILE 2. Hàm và tạo hàm trong Matlab (tt) Ví dụ 2: Để giải phương trình bậc 2: ax2+bx+c=0. Thực hiện hàm tính nghiệm như sau, lưu với tên quadroot.m function [x1,x2]=quadroot(a,b,c) % Hàm tính nghiệm của phương trình bậc 2 radical=sqrt(b^2-4*a*c); x1=(-b+radical)/(2*a); x2=(-b-radical)/(2*a); 12 6 Các hàm toán học - Lập trình M-file CÁC DẠNG FILE 2. Hàm và tạo hàm trong Matlab (tt) Chương trình có tên ptbac2.m có nội dung như sau: disp('Chuong trinh giai phuong trinh bac 2: ax^2+bx+c=0'); a=input('Nhap a: '); b=input('Nhap b: '); c=input('Nhap c: '); [x1,x2]=quadroot(a,b,c); % gọi hàm quadroot disp('Nghiem cua phuong trinh: '); fprintf('x1=%f\n',x1); fprintf('x2=%f\n',x2); 13 Các hàm toán học - Lập trình M-file CÁC DẠNG FILE 2. Hàm và tạo hàm trong Matlab (tt) Trong Command window: >> [a,b]=quadroot(1,-3,2) a=2 b=1 >> ptbac2 Chuong trinh giai phuong trinh bac 2: ax^2+bx+c=0 Nhap a: 1 Nhap b: -3 Nhap c: 2 Nghiem cua phuong trinh: x1=2.000000 x2=1.000000 14 7 Các hàm toán học - Lập trình M-file BIỂU THỨC QUAN HỆ VÀ LOGIC 1. Các phép toán quan hệ: Toán tử < Ý nghĩa nhỏ hơn nhỏ hơn hay bằng lớn hơn >= lớn hơn hoặc bằng == bằng ~= không bằng 15 Các hàm toán học - Lập trình M-file BIỂU THỨC QUAN HỆ VÀ LOGIC 1. Các phép toán quan hệ (tt) Ví dụ: >> a=[3 4 3; 4 5 6]; >> b=[1 2 3; 7 8 6]; >> a==b ans = 0 0 1 001 >> a>b ans = 1 1 0 000 >> a>=b ans = 1 1 1 001 16 8 Các hàm toán học - Lập trình M-file BIỂU THỨC QUAN HỆ VÀ LOGIC 2. Các phép toán logic: Toán tử Ký hiệu not ~ and & or | Ví dụ: >> b=[1 1 0; 1 0 1] >> a=[0 1 0; 0 0 1] >> a&b ans = 0 1 0 001 >> a|b ans = 1 1 0 101 >> ~a 17 Các hàm toán học - Lập trình M-file CẤU TRÚC ĐIỀU KHIỂN 1. Lệnh if else elseif: Có các dạng sử dụng if biểu thức logic các phát biểu end hoặc if biểu thức logic các phát biểu 1 else các phát biểu 2 end hoặc if biểu thức logic 1 các phát biểu 1 elseif biểu thức logic 2 các phát biểu 2 end 18 9 Các hàm toán học - Lập trình M-file CẤU TRÚC ĐIỀU KHIỂN 1. Lệnh if else elseif (tt) Ví dụ: if rem(a,2)==0 disp('la mot so chan') b=a/2; end if n>0 disp('la so duong') elseif n==0 disp('la so 0') else disp('la so am') end 19 Các hàm toán học - Lập trình M-file CẤU TRÚC ĐIỀU KHIỂN 2. Lệnh switch case: Chọn nhiều trường hợp switch biểu thức (vô hướng hay chuỗi) case trị_1 Các phát biểu 1 case trị_2 Các phát biểu 2 …… otherwise Các phát biểu khác end 20 10 Các hàm toán học - Lập trình M-file CẤU TRÚC ĐIỀU KHIỂN 2. Lệnh switch case (tt) Ví dụ: switch input_num case -1 disp(‘negative one’); case 0 disp(‘zero’); case 1 disp(‘positive one’); otherwise disp(‘other value’); end 21 Các hàm toán học - Lập trình M-file CẤU TRÚC ĐIỀU KHIỂN c. Lệnh while: while biểu thức logic các phát biểu end Ví dụ: n=1; while prod(1:n) < 1e100 n=n+1; end % prod tính tích các phần % tử cột của vectơ hay % ma trận 22 11 Các hàm toán học - Lập trình M-file CẤU TRÚC ĐIỀU KHIỂN 4. Lệnh for: for index=star:increment:end các biểu thức end Ví dụ: x(1)=1; for i=2:6 x(i)=2*x(i-1); end 23 Các hàm toán học - Lập trình M-file CẤU TRÚC ĐIỀU KHIỂN 5. Gián đoạn bằng continue, break và return  Trong vòng lặp for hay while, gọi continue thì ngay lập tức chu trình chuyển sang bước lặp kế tiếp, mọi lệnh chưa thực hiện của vòng lặp hiện tại sẽ bị bỏ qua  Lệnh break mạnh hơn, ngừng vòng lặp đang tính  Nếu break sử dụng ngoài vòng lặp for và while, nhưng nằm trong script file hoặc function thì sẽ dừng tại vị trí của break  Lệnh return sử dụng để kết thúc sớm hàm trước khi gặp lệnh end 24 12 Các hàm toán học - Lập trình M-file Xử lý một số hàm toán học: ĐA THỨC:  Đa thức được sắp xếp theo lũy thừa giảm  Biểu diễn dưới dạng vector hàng, các phần tử là các hệ số của đa thức Ví dụ: Đa thức 2x3 - 8x + 7 được biểu diễn bằng vector p p=[2 0 -8 7] 25 Hàm Chức năng Các hàm toán học - Lập trình M-file ĐA THỨC: Một số hàm xử lý đa thức: Hàm Chức năng conv Nhân đa thức polyfit Xấp xỉ bằng đa thức poly Lập đa thức từ nghiệm polyvalm Tính ma trận đa thức roots Tìm nghiệm đa thức deconv Chia đa thức polyder Đạo hàm đa thức polyval Tính giá trị đa thức residue Tính thặng dư, khai triển riêng phần phân số 26 13 Các hàm toán học - Lập trình M-file ĐA THỨC: 1. Nghiệm của đa thức: Đa thức bậc n Ví dụ: Giải phương trình bậc 4: x4- 12x3 + 25x + 116 = 0 >> p = [1 -12 0 25 116] >> r = roots(p) r= 11.7473 2.7028 -1.2251 + 1.4672i -1.2251 - 1.4672i >> t = real(r) >> a = imag(r) >> pp = poly(r) pp = 1.0000 -12.0000 -0.0000 25.0000 116.0000 27 Các hàm toán học - Lập trình M-file ĐA THỨC: 2. Cộng đa thức:  Hai đa thức cùng bậc: p = p1 + p2; tương tự cho trừ đa thức p = p1 – p2;  Hai đa thức khác bậc: Thêm các hệ số 0 vào đa thức có bậc thấp hơn để 2 đa thức có cùng bậc 28 14 Các hàm toán học - Lập trình M-file ĐA THỨC: 3. Nhân 2 đa thức: Ví dụ: Cho 2 đa thức: y = x3+2x2+3x+4 và z = x3+4x2+9x+16 >> p1 = [1 2 3 4] p1 = 1 2 3 4 >> p2 = [1 4 9 16] p2 = 1 4 9 16 >> p = conv(p1,p2) p = 1 6 20 50 75 84 64 Nếu nhân nhiều đa thức thì lập lại nhiều lần lệnh conv 29 Các hàm toán học - Lập trình M-file ĐA THỨC: 4. Chia đa thức: Ví dụ: Cho 2 đa thức: y = x3 + 6x2 + 12x + 8 z = x2 + 1 >> y = [1 6 12 8]; >> z = [1 0 1]; >> p = deconv(y,z) p=16 >> [p,r] = deconv(y,z) p=16 r = 0 0 11 2 % y=(x2 + 1)(x + 6) + (11x + 2) 30 15 Các hàm toán học - Lập trình M-file ĐA THỨC: 5. Vẽ đồ thị: Ví dụ: đa thức y(x) = x3 + 4x2 - 7x – 10 Cho các giá trị của x, tính các giá trị của y tương ứng >> >> >> >> >> >> >> x = linspace(-1,3); p = [1 4 -7 -10]; y = polyval(p,x); % xác định y ứng với các giá trị x plot(x,y) xlabel(‘x’) ylabel(‘y = f(x) = x3 + 4x2 - 7x – 10’); title(‘Vẽ đồ thị’); 31 Các hàm toán học - Lập trình M-file 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  '1/ (2* x ^ n) ' 2xn 1  '1/ sqrt (2* x) ' 2x cos( x 2 )  sin(2 x)  'cos( x ^ 2)  sin(2* x) ' 32 16 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Hàm Ý nghĩa Hàm Ý nghĩa syms Khai báo biến symop Tạo hàm mới sym Định nghĩa hàm symsum Tổng hàm linsolve Giải hệ phương trình numden Tử+mẫu số hàm symsub Trừ hàm poly2sym Tìm hệ số của hàm symmul Nhân hàm sym2poly Tạo hàm từ hệ số symdiv Chia hàm compose Hàm của hàm symadd Cộng hàm finverse Tìm hàm ngược sympow Lũy thừa hàm eval Tính trị hàm diff Đạo hàm numeric Tính trị hàm int Tích phân subs Thay đổi giá trị biến 33 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Hàm Ý nghĩa Hàm Ý nghĩa ezplot Vẽ hàm dsolve Giải phương trình vi phân factor Phân tích tp bậc 1 laplace Biến đổi laplace simplify Đơn giản hàm ilaplace Biến đổi laplace ngược simple Tối giản hàm fourier Biến đổi fourier pretty Biểu diễn trực quan ifourier Biến đổi fourier ngược collect Khai triển hàm iztrans Biến đổi z ngược horner bode Vẽ biểu đồ bode expand Khai triển hàm freqs Vẽ đáp ứng tần số taylor Khai triển taylor ztrans Biến đổi z solve Giải phương trình nyquist Vẽ biểu đồ Nyquist 34 17 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Đạ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') 35 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Đạo hàm và vi phân gần đúng:  Đạo hàm một đa thức: Ví dụ: >> 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) 36 18 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Đạ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 37 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Đạ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 38 19 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: 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 ans = atan(x) >> int(1/(1+x^2),t) % tích phân theo t ans = 1/(1+x^2)*t >> int(sin(alpha*u),alpha) ans = -1/u*cos(alpha*u) theo x 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ả 39 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: 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) % tích phân từ 0 → 1 ans = 1/4 >> int('sin(s+2*x)','s',pi/2,pi) % s chưa khai báo ans = 2*cos(x)^2-1-2*sin(x)*cos(x) >> int(sin(x),0,t) % cận không được trùng ans = -cos(t)+1 % với đối số của hàm 40 20 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: 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.') 41 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: 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 42 21 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Đa thức:  Tính toán với đa thức >> 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) 43 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: 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 % >> 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) 44 22 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Định dạng và đơn giản biểu thức: Sắp xếp >> int('sin(s+2*x)','s',pi/2,pi) ans = 2*cos(x)^2-1-2*sin(x)*cos(x) >> pretty(ans) %hien thi bieu thuc theo kieu viet tay 2 2 cos(x) - 1 - 2 sin(x) cos(x) 45 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Định dạng và đơn giản biểu thức: Khai triển hằng đẳng thức >> f=sym('x^2-1') f = x^2-1 >> factor(f) ans = (x-1)*(x+1) >> collect(ans) % lấy lại biểu thức f >> f=sym('(x^2-1)*(x-2)*(x-3)') f = (x^2-1)*(x-2)*(x-3) >> collect(f) ans = x^4-5*x^3+5*x^2+5*x-6 46 23 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Giải hệ phương trình bậc nhất tuyến tính: Ví dụ: >> >> >> >> >> y1=sym('2*x1+2*x2-3*x3+x4-4'); y2=sym('4*x1+3*x2-x3+2*x4-6'); y3=sym('8*x1+5*x2-3*x3+4*x4-12'); y4=sym('3*x1+3*x2-2*x3+2*x4-6'); [x1,x2,x3,x4]=solve(y1,y2,y3,y4') x1 = 1/3 x2 = 1/3 x3 = -1/3 x4 = 5/3 47 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Giải phương trình vi phân: Phương trình vi phân cấp 1 Ví dụ: giải phương trình vi phân y’=dy/dx=ytg(x)+cos(x) >> dsolve('Dy=y*tan(x)+cos(x)','x') ans = (1/4*sin(2*x)+1/2*x+C1)/cos(x) % C1 là đk đầu Ví dụ: giải phương trình y’=dy/dx=1+y^2 với y(0)=1 >> dsolve('Dy=1+y^2','y(0)=1','x') ans = tan(x+1/4*pi) Hay: >> dsolve('Dy-y^2-1=0','y(0)=1','x') 48 24 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Giải phương trình vi phân: Phương trình vi phân cấp 2 Ví dụ: giải y’’=cos(2x)-y với y(0)=1 và y’(0)=0 >> dsolve('D2y=cos(2*x)-y','Dy(0)=0','y(0)=1','x') ans = 4/3*cos(x)-1/3*cos(2*x) Ví dụ: giải y’’-2y’-3y=0 với y(0)=1 và y(1)=1 >> y= dsolve('D2y-2*Dy-3*y=0','y(0)=0','y(1)=1','x') y =1/(exp(3)-exp(-1))*exp(3*x)-1/(exp(3)-exp(-1))*exp(-x) 49 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Các phép biến đổi: Biến đổi Laplace: >> syms t s x a w >> laplace(sin(t)) ans = 1/(s^2+1) >> ilaplace(1/(s^2+1)) % ans = sin(t) >> laplace(12*exp(-3*x)) ans = 12/(s+3) >> laplace(sym(1)) ans = 1/s Biến đổi ngược 50 25 26 [...]... nghĩa hàm symsum Tổng hàm linsolve Giải hệ phương trình numden Tử+mẫu số hàm symsub Trừ hàm poly2sym Tìm hệ số của hàm symmul Nhân hàm sym2poly Tạo hàm từ hệ số symdiv Chia hàm compose Hàm của hàm symadd Cộng hàm finverse Tìm hàm ngược sympow Lũy thừa hàm eval Tính trị hàm diff Đạo hàm numeric Tính trị hàm int Tích phân subs Thay đổi giá trị biến 33 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI... Giải phương trình nyquist Vẽ biểu đồ Nyquist 34 17 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Đạ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') 35 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Đạo hàm và vi... simplify(sym(‘1/(1-x^2)+2*x^2/(1-x^2)^2’)) ans = (1+x^2)/(-1+x^2)^2 37 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Đạ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 38 19 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Tích phân:  Tích phân bất định:... 21 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Đa thức:  Tính toán với đa thức >> 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) 43 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Chuỗi: Cú pháp: symsum(f,a,b) → tính tổng hàm f... int(sin(x),0,t) % cận không được trùng ans = -cos(t)+1 % với đối số của hàm 40 20 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: 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.') 41 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Ma trận:  Định thức: Ví dụ: >> M=sym('[a,b;c,d]')... x^4-5*x^3+5*x^2+5*x-6 46 23 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Giải hệ phương trình bậc nhất tuyến tính: Ví dụ: >> >> >> >> >> y1=sym('2*x1+2*x2-3*x3+x4-4'); y2=sym('4*x1+3*x2-x3+2*x4-6'); y3=sym('8*x1+5*x2-3*x3+4*x4-12'); y4=sym('3*x1+3*x2-2*x3+2*x4-6'); [x1,x2,x3,x4]=solve(y1,y2,y3,y4') x1 = 1/3 x2 = 1/3 x3 = -1/3 x4 = 5/3 47 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG... 1/6*x*(2*x-1)*(x-1) % có thể dùng simple(ans) 44 22 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Định dạng và đơn giản biểu thức: Sắp xếp >> int('sin(s+2*x)','s',pi/2,pi) ans = 2*cos(x)^2-1-2*sin(x)*cos(x) >> pretty(ans) %hien thi bieu thuc theo kieu viet tay 2 2 cos(x) - 1 - 2 sin(x) cos(x) 45 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Định dạng và đơn... Hàm Chức năng Các hàm toán học - Lập trình M-file ĐA THỨC: Một số hàm xử lý đa thức: Hàm Chức năng conv Nhân đa thức polyfit Xấp xỉ bằng đa thức poly Lập đa thức từ nghiệm polyvalm Tính ma trận đa thức roots Tìm nghiệm đa thức deconv Chia đa thức polyder Đạo hàm đa thức polyval Tính giá trị đa thức residue Tính thặng dư, khai triển riêng phần phân số 26 13 Các hàm toán học - Lập trình M-file ĐA THỨC:... 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  '1/ (2* x ^ n) ' 2xn 1  '1/ sqrt (2* x) ' 2x cos( x 2 )  sin(2 x)  'cos( x ^ 2)  sin(2* x) ' 32 16 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI DẠNG CHUỖI BIỂU THỨC: Hàm Ý nghĩa Hàm Ý nghĩa syms Khai báo biến symop Tạo hàm mới... 15 Các hàm toán học - Lập trình M-file ĐA THỨC: 5 Vẽ đồ thị: Ví dụ: đa thức y(x) = x3 + 4x2 - 7x – 10 Cho các giá trị của x, tính các giá trị của y tương ứng >> >> >> >> >> >> >> x = linspace(-1,3); p = [1 4 -7 -10]; y = polyval(p,x); % xác định y ứng với các giá trị x plot(x,y) xlabel(‘x’) ylabel(‘y = f(x) = x3 + 4x2 - 7x – 10’); title(‘Vẽ đồ thị’); 31 Các hàm toán học - Lập trình M-file XỬ LÝ HÀM DƯỚI

Ngày đăng: 13/10/2015, 14:00

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan