Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 46 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
46
Dung lượng
1,28 MB
Nội dung
Trường Đại học Bách Khoa Tp HCM GIẢI TÍCH HÀM NHIÊỀU BIÊẾN TS LÊ XUÂN ĐạI KHOA KHOA HỌC ỨNG DỤNG BỘ MÔN TOÁN ỨNG DỤNG TP HCM - 2012 TÍNH TOÁN HÌNH THỨC Để tính giới hạn, đạo hàm, tích phân ta phải khai báo biến hình thức KHAI BÁO BIẾẾN syms a b c x a = sym(‘a’) b = sym(‘b’) c = sym(‘c’) x = sym(‘x’) Khai báo biến phức x = sym(‘x’,’real’); y = sym(‘y’,’real’) syms x y real z = x + i*y KHAI BÁO BIẾẾU THỨC Khai báo biểu thức: f = 2*x + b syms x b f = 2*x + b f = sym(‘2*x + b’) sym(‘(sqrt(2) + 1)/3’) g = syms(‘5’) (khác g = 5) syms x y h = x^2 + y^2 CÁC LỆNH ĐỐẾI VỚI BIẾẾN HÌNH THỨC Lệnh findsym: tìm biến hình thức biểu thức Ví dụ syms a b n t x z s = x^n; g = sin(a*t + b) findsym(f) ans = x n findsym(g) ans = a b t findsym(g,1): tìm biến hình thức mặc định findsym(g,1) ans = t HIỂN THỊ BIẾẾN HÌNH THỨC DẠNG SỐẾ t = 0.1 sym(t,’ f ’) ans = '1.999999999999a'*2^(-4) sym(t, ’r ’) ans = 1/10 sym(t,’ e ’) ans = 1/10+eps/40 sym(t,’ d ’) ans = 10000000000000000555111512312578 digits(7) sym(t,’ d ’) ans = 1000000 ĐẠO HÀM diff(Y) Y: hàm số biến hình thức cần lấy đạo hàm Ví dụ syms x; f = sin(5*x) diff(f) ans = 5*cos(5*x) g = exp(x)*cos(x) diff(g) ans = exp(x)*cos(x) – exp(x)*sin(x) c = sym(‘5’); diff(c) ans = ĐẠO HÀM diff(5) ans = [ ] biến hình thức Lấy đạo hàm cấp diff(g,2) diff(diff(g)) ans = -2exp(x)*sin(x) Đạo hàm nhiều biến Gọi f = f(x,y) Đạo hàm theo x: diff(f,x) Đạo hàm theo y: diff(f,y) ĐẠO HÀM Đạo hàm cấp theo x: diff(f,x,2) Đạo hàm cấp theo y: diff(f,y,2) Nếu x biến mặc định f diff(f,2) tương đương với diff(f,x,2) o Ví dụ syms s t f = sin(s*t) diff(f,t) => ans = cos(s*t)*s diff(f,s) => ans = cos(s*t)*t diff(f,t,2) => ans = -sin(s*t)*s^2 findsym(f,1)=> ans = t Suy biến mặc định t diff(f,2) = diff(f,t,2) ĐẠO HÀM o Đạo hàm ma trận syms a x A = [cos(a*x) sin(a*x); -sin(a*x) cos(a*x)] A= [cos(a*x), sin(a*x)] [-sin(a*x), cos(a*x)] diff(A) ans = [-sin(a*x)*a, cos(a*x)*a] [-cos(a*x)*a, -sin(a*x)*a] ĐỐỒTHỊ D Hàm ezplot3(x,y,z) Ví dụ syms xyzt x = 3*t/(1 + t^3) y = 3*t^2/(1 + t^3) z = sin(t) ezplot3(x,y,z) ezcontour / ezcontourf ezmesh / ezmeshc ezsurf / ezsurfc ĐỐỒTHỊ D - MESHGRID [X; Y ] = meshgrid(x; y) Ý nghĩa Tạo ma trận X với hàng hàng véc tơ x, ma trận Y với cột hàng véc tơ y Ví dụ x = [ 1]; y = [9 10 11 12]; [X; Y ] = meshgrid(x; y): MatLab cho kết X= Y= 101 9 101 10 10 10 101 11 11 11 101 12 12 12 ĐỐỒTHỊ D – MESH(X,Y,Z)-SURF(X,Y,Z) Ví dụ x = linspace(0, 2*pi, 50); y = linspace(0, pi, 50); [X; Y ] = meshgrid(x; y); Z = sin(X).* cos(Y ); mesh(X; Y ; Z) xlabel (‘x’); ylabel (‘y’); zlabel (‘z’); axis([0 2*pi pi -1 1]) ĐỐỒTHỊ D – MESH(X,Y,Z)-SURF(X,Y,Z) ĐỐỒTHỊ D – CONTOUR(Z) Ví dụ x = linspace(0, 2* pi ; 30); y = linspace(0, pi, 30); [X; Y ] = meshgrid(x; y); Z = sin(X).*cos(Y + pi/2); c = contour (X; Y ; Z; [ -1:.1:-0.1 0.1 :.1:1]); clabel (c; [ -1 : 0.2 : 1]); xlabel (‘x’); ylabel (‘y’); title(‘Contour of z = sin(x).*cos(y + pi=2)’); ĐỐỒTHỊ D – CONTOUR(Z) c=contourf(X,Y,Z,[-1:0.1:-0.1 0.1:0.1:1],’-k'); sphere(n) – hình cầỒu xác định (n + 1)* điểm [x; y; z] = sphere(25); surf (x- 3; y- 2; z); %translated hold on surf (x *2; y* 2; z*2); %scaled Ellipsoid [x; y; z] = ellipsoid(2, 0, 2, 2, 1, 1); surf (x; y; z); axis([0 -2 4]); hold on contour(x,y,z); Cylinder ([0 1]); Cylinder ([1 1]) Vẽ vật thể giới hạn y=x^2, y=1, z=0,z=x^2+y^2 Tạo miền D giới hạn a[...]... exp(2)+exp(2)*(x-2)+1/2*exp(2)*(x2)^2+1/6*exp(2)*(x-2)^3 taylor(exp(1/x^2),6,inf) ans = 1+1/x^2+1/2/x^4 CÁC HÀM ĐƠN GIẢN BIỂU THỨC collect(f) - f = f(x) collect(f,y) - f = f(x,y,…) • • • Đơn giản hàm f bằng các nhóm các biến x có cùng số mũ Trường hợp f có nhiều biến collect(f,y) sẽ chỉ định gom nhóm theo biến y collect(f) gom nhóm theo biến mặc định được chỉ ra trong findsym(f) CÁC HÀM ĐƠN GIẢN BIỂU THỨC syms x t f = x^3...TÍCH PHÂN int(f,x) hoặc int(f) : Tìm nguyên hàm của hàm f = f(x) int(f,a,b) : Tính tích phân của f từ a -> b Ví dụ syms xnabt f = x ^ n int(f) ( hoặc inf(f,x)) ans = x^(n+1)/(n+1) TÍCH PHÂN g = cos(a*t + b) int(g) ans = sin(a*t + b)/a h = sin(2*x) int(h,0,pi/2) ans = 1 u = exp(-x^2) int(u,0,inf) ans = 1/2*pi^(1/2) TÍCH PHÂN Tích phân bội: π sinx... TRONG ĐẠI SỐẾ Có thể dùng các hàm rút gọn và lấy đạo hàm, tích phân trên ma trận Ví dụ syms a b s K = [a+b, a-b;b-a, a+b] G = [cos(s) sin(s);-sin(s) cos(s)] L = K^2 collect(L) factor(L) diff(L,a) int(K,a) J = K/G simplify(J*G) simplify(G*(G.’)) PHƯƠNG TRÌNH VI PHÂN Hàm: dsolve Ví dụ Giải: dsolve(‘Dy=1+y^2’,’y(0)=1’) y = tan(t + 1/4*pi) Giải: dy = 1 + y 2 , y (0)... collect(f,t) => ans = 2*x*t + t CÁC HÀM ĐƠN GIẢN BIỂU THỨC expand(f) : phân tích biểu thức f Ví dụ syms xyab f = a*(x + y) expand(f) => ans = a*x + a*y g = (x -1)*(x -2)*(x – 3) expand(g) => ans = x^3 – 6*x^2 + 11*x – 6 h = exp(a + b) expand(h) => ans = exp(a)*exp(b) cos(3*x) => ans = 4*cos(x)^3 – 3*cos(x) CÁC HÀM ĐƠN GIẢN BIỂU THỨC factor(f) : phân tích đa thức f thành nhân tử chung... PHƯƠNG TRÌNH VI PHÂN Giải: d 3u 3 =u dx u (0) = 1; u '(0) = −1; u ''(0) = π dsolve(‘D3u=u’,’u(0)=1’,’Du(0)=-1’,’D2u(0)=pi’),’x’) df dt = 3 f (t ) + 4 g (t ) , f (0) = 0 Giải: dg = −4 f (t ) + 3 g (t ) , g (0) = 1 dt [f g] = dsolve(‘Df = 3*f + 4*g’,’Dg = -4*f + 3*g’, ’f(0) = 0’,’g(0) = 1’) f = exp(3*t)*sin(4*t); g = exp(3*t)*cost(4*t) ĐỐỒTHỊ 2 D Hàm ezplot(f) Ví dụ ... số của f gán cho N và D Ví dụ syms s H = -(1/6)/(s + 3) -(1/2)/(s + 1) + (2/3)/s simplify(H) pretty(ans) [N D] = numden(H) N = s + 2 D = (s+3)*(s+1)*s CÁC HÀM ĐƠN GIẢN BIỂU THỨC [poly2sym(a,x): tạo một đa thức theo biến x với các hệ số được lấy lần lượt từ mảng a Ví dụ syms x; a = [1 4 -7 -10] p = poly2sym(a,x) p = x^3 + 4*x^2 – 7*x - 10 x = sym2poly(p): trích các hệ số của... factor(h) ans = (x^2 + 1)*(x^4 – x^2 + 1) CÁC HÀM ĐƠN GIẢN BIỂU THỨC simplify(f): đơn giản biểu thức f Ví dụ f = x*(x*(x – 6) + 11) - 6 simplify(f) => ans = x^3 – 6*x^2 + 11*x – 6 g = (1 – x^2)/(1 – x) simplify(g) => ans = x + 1 syms x y positive simplify(log(x*y)) => log(x) + log(y) h = cos(x)^2 + sin(x)^2 simplify(h) => ans = 1 CÁC HÀM ĐƠN GIẢN BIỂU THỨC simple(f): rút gọn biểu... ans = log(x) + log(y) simple(h) => ans = log(x*y) CÁC HÀM ĐƠN GIẢN BIỂU THỨC subs(expr,old,new): thay thế old bằng new trong biểu thức expr syms xy f = sin(x) subs(f,x,pi/3) => ans = 0.8660 subs(f,x,sym(pi)/3) => ans = 1/2*3^1/2 S = x^y subs(S,{x y},{3 2}) subs(S,{x y},{3 x+1}) subs(S,y,1:5) => ans = [ x, x^2, x^3, x^4, x^5] CÁC HÀM ĐƠN GIẢN BIỂU THỨC [N D] = numden(f): trích tử... exp(3*t)*sin(4*t); g = exp(3*t)*cost(4*t) ĐỐỒTHỊ 2 D Hàm ezplot(f) Ví dụ syms txy f = sin(2*x) g = t + 3*sin(t) h = 2*x/(x^2 -1) ezplot(f); ezplot(g); ezplot(h) ezplot(x*exp(-x), [-1 4]) ĐỐỒTHỊ 3 D Hàm ezplot3(x,y,z) Ví dụ syms xyzt x = 3*t/(1 + t^3) y = 3*t^2/(1 + t^3) z = sin(t) ezplot3(x,y,z) ezcontour / ezcontourf ezmesh / ezmeshc ezsurf / ezsurfc ĐỐỒTHỊ 3 D - MESHGRID [X;