ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA KỸ THUẬT HÓA HỌC BÁO CÁO BÀI TẬP LỚN MATLAB GIẢI TÍCH 2 Giáo viên hướng dẫn Nguyễn Thị Xuân Anh Lớp L20 Nhóm Chủ đề 4 Nhập từ bàn p[.]
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA KỸ THUẬT HÓA HỌC _ _ BÁO CÁO BÀI TẬP LỚN MATLAB GIẢI TÍCH Giáo viên hướng dẫn: Nguyễn Thị Xuân Anh Lớp: L20 Nhóm: Chủ đề 4: Nhập từ bàn phím hàm đa thức bậc 2: z = f(x, y) m Viết đoạn code tìm cực trị hàm f(x, y) với điều kiện x2 + y2 = m2 Vẽ mặt z = f(x, y), x2 + y2 = m2 giao tuyến mặt điểm cực trị vừa tìm Tháng năm 2017 DANH SÁCH THÀNH VIÊN STT Họ tên MSSV Nguyễn Thị Anh Thư 1613473 Lưu Kiều Oanh 1612492 Nguyễn Thị Thanh Phương 1612704 Trần Thị Hồng Ngọc 1612262 Đặng Diệu My 1612068 Nguyễn Thị Ngân Hà 1610860 Nguyễn Hoàng Yến 1614240 Võ Thị Mỹ Hiếu 1611062 Phan Thị Thu Hiền 1611083 10 Đậu Thu Phương 1612682 MỤC LỤC Lời nói đầu Yêu cầu Phần sở lý thuyết .4 I Định nghĩa cực trị có điều kiện .4 II Điều kiện có cực trị Phần báo cáo I Đoạn code II Các ví dụ 11 Tài liệu tham khảo LỜI NÓI ĐẦU Trong xã hội ngày A YÊU CẦU: Chủ đề 4: Nhập từ bàn phím hàm đa thức bậc 2: z = f(x, y) m Viết đoạn code tìm cực trị hàm f(x, y) với điều kiện x2 + y2 = m2 Vẽ hai mặt z = f(x, y), x2 + y2 = m2 giao tuyến hai mặt điểm cực trị vừa tìm B CƠ SỞ LÝ THUYẾT: I Định nghĩa cực trị có điều kiện: Hàm hai biến f(x,y) đạt cực đại có điều kiện điểm (x0,y0) với điều kiện φ(x,y) = 0, f(x,y)¿ f(x0,y0), với (x,y) thỏa φ(x,y) = 0, nằm lân cận (x0,y0) Giá trị f(x0,y0) gọi giá trị cực đại có điều kiện Nếu f(x,y)¿ f(x0,y0), với (x,y) thỏa φ(x,y) = 0, nằm lân cận (x0,y0) f đạt cực tiểu có điều kiện (x0,y0) giá trị f(x0,y0) gọi giá trị cực tiểu có điều kiện Hàm f(x,y) lúc gọi hàm mục tiêu, điều kiện φ(x,y) = gọi điều kiện ràng buộc II Điều kiện có cực trị: Giả sử cần tìm cực trị hàm z=f(x,y) thỏa điều kiện ϕ(x,y)=0 Điều có nghĩa tìm cực trị hàm f điểm (x,y) nằm đường cong ϕ(x,y)=0 Trên hình (3.4), cho thấy số đường đẳng trị f(x,y)=k Như vậy: Để tìm cực đại (cực tiểu) hàm f(x,y) thỏa điều kiện ϕ(x,y)=0 tìm giá trị lớn (nhỏ nhất) k cho đường đẳng trị f(x,y)=k cắt đường cong ϕ(x,y)=0 Điều xảy đường đẳng trị f(x,y)=k đường cong ϕ(x,y)=0 tiếp tuyến, ngược lại giá trị k tăng lên (hoặc giảm xuống) Điều có nghĩa đường vng góc với đường đẳng trị f(x,y)=k đường cong ϕ(x,y)=0 điểm cực trị (x0,y0) phải phương với Do đó, f(x0,y0)= . ϕ(x0,y0), ℝ f’x(x0,y0)+ ϕ’x(x0,y0)=0 f’y(x0,y0)+ ϕ’y(x0,y0)=0 Nếu hàm số z=f(x,y) có cực trị có điều kiện điểm (x0, y0) với điều kiện φ(x,y)=0 và φ(x0, y0)≠ tồn số λ thỏa mãn hệ: fx’(xo, yo) + λφx’(xo, yo) = fy’(xo, yo) + λφy’(xo, yo) = φ(xo, yo) = Cho hàm số z=f(x,y) có cực trị có điều kiện với điều kiện φ(x,y)=0 điiểm P(xo, yo) Lập hàm Lagrange L(x,y,λ)=f(x,y) + λ.φ(x,y) Khi đó: Nếu d2L(xo,yo,λo) > P(xo,yo) điểm cực tiểu có điều kiện Nếu d2L(xo,yo,λo) < P(xo,yo) điểm cực đại có điều kiện Nếu d2L(xo,yo,λo) khơng xác định dấu P(xo,yo) khơng điểm cực trị B PHẦN BÁO CÁO: I Đoạn code: syms x y z; disp('Ham bac hai co dang a*x^2+b*y^2+c*x*y+d*x+e*y+f va dieu kien x^2+y^2=m^2'); a=input('Nhap a='); b=input('Nhap b='); c=input('Nhap c='); d=input('Nhap d='); e=input('Nhap e='); f=input('Nhap f='); m=input('Nhap m='); %Tim cuc tri co dieu kien g=a*x^2+b*y^2+c*x*y+d*x+e*y+f; ham=g+z*(x^2+y^2-m^2); u=diff(ham,x); v=diff(ham,y); nghiem=solve(u==0,v==0,x^2+y^2==m^2); for i=1:length(nghiem.x); k(i)=nghiem.z(i); n(i)=nghiem.x(i); p(i)=nghiem.y(i); A = 2*a+2*k(i); C = 2*b+2*k(i); D = 2*a+2*k(i)-c*n(i)/p(i)+(2*b+2*k(i))*n(i)^2/p(i)^2; hold on if p(i)~= && n(i) ~= 0; if D > ; disp('Ham dat cuc tieu tai') x=n(i) y=p(i) disp('Gia tri cuc tieu') fct=subs(subs(g,x),y) plot3(x,y,fct,'+r') %Danh dau diem cuc tieu elseif D < ; disp('Ham dat cuc dai tai') x=n(i) y=p(i) disp('Gia tri cuc dai') fcd=subs(subs(g,x),y) plot3(x,y,fcd,'+r') %Danh dau diem cuc dai else disp('Ham khong co cuc tri'); end; end; if n(i) == && p(i)~=0; if A > ; disp('Ham dat cuc tieu tai') x=n(i) y=p(i) disp('Gia tri cuc tieu') fct=subs(subs(g,x),y) plot3(x,y,fct,'+r') elseif A < ; disp('Ham dat cuc dai tai') x=n(i) y=p(i) disp('Gia tri cuc dai') fcd=subs(subs(g,x),y) plot3(x,y,fcd,'+r') else disp('Ham khong co cuc tri'); end end if p(i)== && n(i)~=0; if C > ; disp('Ham dat cuc tieu tai') x=n(i) y=p(i) disp('Gia tri cuc tieu') fct=subs(subs(g,x),y) plot3(x,y,fct,'+r') elseif C < ; disp('Ham dat cuc dai tai') x=n(i) y=p(i) disp('Gia tri cuc dai') fcd=subs(subs(g,x),y) plot3(x,y,fcd,'+r') else disp('Ham khong co cuc tri'); end end end rotate3d on hold on grid on xlabel('Truc Ox') ylabel('Truc Oy') zlabel('Truc Oz') %Ve mat x^2+y^2=m^2 x=linspace(-m,m,100); z=linspace(-m*50,m*50,100); [X Z]=meshgrid(x,z); Y1=-sqrt(m^2-X.^2); Y2=sqrt(m^2-X.^2); surf(X,Y1,Z ,'Facecolor','b','Edgecolor','non','Facealpha',.3) surf(X,Y2,Z ,'Facecolor','b','Edgecolor','non','Facealpha',.3) %Ve mat a*x^2+b*y^2+c*x*y+d*x+e*y+f y=linspace(-m-.5,m+.5,100); x=linspace(-m-.5,m+.5,100); [X Y]=meshgrid(x,y); Z=X.^2*a+Y.^2*b+X.*Y.*c+X.*d+Y.*e+f; surf(X,Y,Z,'Facecolor','y','Edgecolor','non','Facealpha ',.5) %Ve giao tuyen phi=linspace(0,2*pi,100); X=m*cos(phi); Y=m*sin(phi); Z=X.^2*a+Y.^2*b+X.*Y.*c+X.*d+Y.*e+f; plot3(X,Y,Z,'c') II Các ví dụ: Ví dụ 1: