Tải bản đầy đủ

matlab giải tích 2 nhóm 6 ĐẠI HỌC BACK KHOA

TRƯỜNG ĐẠI HỌC BÁCH KHOA TP.HỒ CHÍ MINH
KHOA KHOA HỌC ỨNG DỤNG
BỘ MÔN TOÁN ỨNG DỤNG
  

Báo cáo Bài Tập Lớn
Môn Giải Tích 2

GVHD: N.N.Quỳnh Như
Thực hiện: nhóm 6_sáng thứ 5

Năm học 2014 – 2015


Báo cáo Bài tập lớn Giải tích 2

DANH SÁCH NHÓM
STT
1
2
3

4
5
6

Họ & Tên
Lê Hồng Hải (nhóm trưởng)
Đoàn Thị Hồng Gấm
Uông Quang Nhật
Trần Ngọc Sáng
Nguyễn Bình Trọng
Cao Chánh Vũ

MSSV
51200947
60900661
61002286
61102890
21103843
91004038

ĐỀ BÀI:
1. Tìm GTLN, GTNN của hàm f ( x, y) dạng đa thức trên tam giác OAB với O(0,0),
A(2,1), B(3,2). Vẽ phần mặt cong với hình chiếu là OAB, trên đó chỉ ra GTLN,
GTNN.
2. Tính tích phân

 f ( x, y, z)dxdydz , trong đó Ω là miền giới hạn bởi z ≥ x

2

+ y2 ,



x + z ≤ 1. Không yêu cầu lấy cận bằng matlab. Vẽ vật thể.



3. Tính tích phân P( x, y )dx  Q( x, y )dy , trong đó (C) là đường đi nối từ điểm
C



(0,0) đến điểm (1,1) theo các đường đi sau:
a. Đoạn thẳng.
b. Parabol x = y2.

Nhóm 6 _ sáng thứ 5

2


Báo cáo Bài tập lớn Giải tích 2

BÀI 1
CƠ SỞ LÝ THUYẾT:
Để tìm GTLN, GTNN của hàm nhiều biến f ( x, y) trên D:
1. Tìm trong D:
Giải hệ

f x'  0
f y'  0

P1(x1,y1), P2(x2,y2), ...

Loại các điểm không là điểm trong của D.
Tính f  x1 , y1  , f  x2 , y2  , ... tại các điểm trong D.
2. Tìm trên biên:
Trong bài này, biên D là những đoạn thẳng OA, OB, AB, với O(0,0), A(2,1),
B(3,2).
Xét trên OA:
Phương trình OA: 2y  x
Thay vào f ( x, y) , ta có hàm một biến f  y  trên (0,1)
Tìm điểm dừng thuộc (0,1): f  y   0
Loại các điểm không thuộc (0,1).
Tính giá trị f  y  tại các điểm còn lại.
'

y1 , y2 , ...

Xét trên OB
Phương trình OB:

3
yx
2

Thay vào f ( x, y) , ta có hàm một biến f  y  trên (0,2)
Tương tự như xét OA.
Xét trên AB
Phương trình AB: y  1  x
Thay vào f ( x, y) , ta có hàm một biến f  y  trên (1,2)
Tương tự như xét OA.
3. So sánh các giá trị tìm được ở bước 1, bước 2 và các giá trị của f tại các đỉnh
của tam giác ABC . Kết luận
CODE MATLAB:
syms x y
f=input('f(x,y) = ');
a=[0 2 3];
b=[0 1 2];
d=3;
f1=subs(f,x,2*y);
f1=diff(f1,y);
t=solve(f1,y);
for i=1:length(t)
k=t(i);

% nhập hàm f(x,y) từ bàn phím

% xét trên OA

Nhóm 6 _ sáng thứ 5

3


Báo cáo Bài tập lớn Giải tích 2
if isreal(k)
k=double(k);
if k>0 && k<1
d=d+1;
a(d)=2*k;
b(d)=k;
end
end
end
f1=subs(f,x,3*y/2);
f1=diff(f1,y);
t=solve(f1,y);
for i=1:length(t)
k=t(i);
if isreal(k)
k=double(k);
if k>0 && k<2
d=d+1;
a(d)=3*k/2;
b(d)=k;
end
end
end

% xét trên OB

f1=subs(f,x,1+y);
f1=diff(f1,y);
t=solve(f1,y);
for i=1:length(t)
k=t(i);
if isreal(k)
k=double(k);
if k>1 && k<2
d=d+1;
a(d)=1+k;
b(d)=k;
end
end
end

% xét trên AB

% xét trong tam giác
[m n]=solve([char(diff(f,'x')) '+0*x=0'],[char(diff(f,'y')) '+0*y=0'],'x','y');
for i=1:length(m)
u=double(m(i));
v=double(n(i));
if (u<2*v && u3*v/2)
d=d+1;
a(d)=u;
b(d)=v;
end
end

Nhóm 6 _ sáng thứ 5

4


Báo cáo Bài tập lớn Giải tích 2
max=subs(f,{x,y},{0,0});
max=double(max);
ma=[1];
min=subs(f,{x,y},{0,0});
min=double(min);
mi=[1];

% bắt đầu so sánh các giá trị f

for i=2:d
u=double(a(i));
v=double(b(i));
m=subs(subs(f,x,u),y,v);
m=double(m);
if m==max
ma=[ma i];
end;
if m>max
max=m;
ma=[i];
end
if m==min
mi=[mi i];
end
if mmin=m;
mi=[i];
end;
end
disp(['Max = ' num2str(max)])
disp('Tai cac diem: ')
for i=1:length(ma)
disp(['(' num2str(double(a(ma(i)))) ',' num2str(double(b(ma(i)))) ') '])
end
disp(['Min = ' num2str(min)])
disp('Tai cac diem: ')
for i=1:length(mi)
disp(['(' num2str(double(a(mi(i)))) ',' num2str(double(b(mi(i)))) ') '])
end
[x,y]=meshgrid(0:.01:3);
% bắt đầu vẽ hình
z=[char(f) '+0*x'];z=strrep(z,'^','.^');z=strrep(z,'*','.*');z=eval(z);
for i=1:length(x)
for j=1:length(y)
u=double(x(i,j));
v=double(y(i,j));
if ~(u<=2*v && u<=v+1 && u>=3*v/2)
x(i,j)=NaN;y(i,j)=NaN;

Nhóm 6 _ sáng thứ 5

5


Báo cáo Bài tập lớn Giải tích 2
z(i,j)=NaN;
end
end
end
set(surf(x,y,z),'facecolor','r','edgecolor','non','facealpha',.4)
hold on
xlabel('Truc x');
ylabel('Truc y');
zlabel('Truc z');
for i=1:length(ma)
text(a(ma(i)),b(ma(i)),max, ['MAX (' num2str(double(a(ma(i)))) ','
num2str(double(b(ma(i)))) ',' num2str(max) ')'])
x=[a(ma(i))-0.02 a(ma(i)) a(ma(i))+0.02];
y=[b(ma(i))-0.02 b(ma(i)) b(ma(i))+0.02];
z=[max-0.02 max max+0.02];
plot3(x,y,z,'g','linewidth',2)
end
for i=1:length(mi)
text(a(mi(i)),b(mi(i)),min, ['MIN (' num2str(double(a(mi(i)))) ',' num2str(double(b(mi(i))))
',' num2str(min) ')'])
x=[a(mi(i))-0.01 a(mi(i)) a(mi(i))+0.01];
y=[b(mi(i))-0.01 b(mi(i)) b(mi(i))+0.01];
z=[min-0.02 min min+0.02];
plot3(x,y,z,'g','linewidth',2)
end
rotate3d on

VÍ DỤ MINH HỌA
Cho f  x, y  = xy  x  y
1. Tìm trong D:
Giải hệ

f x'  y  1  0
f y'  x  1  0

P1(-1,1). Loại, do không nằm trong D.

2. Tìm trên biên:
Xét trên OA:
Phương trình OA: 2y  x
2
Thay vào f ( x, y) , ta có hàm một biến f  y   2 y  y trên (0,1)

'
Tìm điểm dừng thuộc (0,1): f  y   4 y  1  0

y

1
4

(nhận)

1
1
f  
8
4

Nhóm 6 _ sáng thứ 5

6


Báo cáo Bài tập lớn Giải tích 2
Xét trên OB
Phương trình OB:

3
yx
2

Thay vào f ( x, y) , ta có hàm một biến f  y  

1
6

Tương tự, tính được f    

3 2 1
y  y trên (0,2)
2
2

1
24

Xét trên AB
Phương trình AB: y  1  x
2
Thay vào f ( x, y) , ta có hàm một biến f  y   y  y  1 trên (1,2)
Phương trình trên vô nghiệm, không có điểm dừng tại AB

Xét các đỉnh: f(O) = 0; f(A) = 1; f(B) = 5
3. So sánh các giá trị tìm được

GTLN = 5 tại (3,2);
1
1 1
GTNN =  tại  , 
8
2 4

Nhóm 6 _ sáng thứ 5

7


Báo cáo Bài tập lớn Giải tích 2

BÀI 2
CƠ SỞ LÝ THUYẾT:
Để tính tích phân bội ba:
1. Phân tích khối Ω:
Tìm hình chiếu của khối Ω xuống mặt phẳng Oxy
Xác định mặt trên và mặt dưới của khối Ω
Trong matlab, ta thực hiện bước này bằng cách vẽ hình.
Ta có:
1 2
5
2
PrOxyΩ = D, với D: ( x  )  y 
2
4
Mặt phía trên:
z=1–x
Mặt phía dưới:
z = x2 + y2
2. Tính tích phân
I

=

 f ( x, y, z)dxdydz


 1 x

f
(
x
,
y
,
z
)
dz

dxdy
=  
2
2

D 
x y
=

2

5
2

0

0

 d 

f (r cos  , r sin  )rdr

CODE MATLAB:
t=-2:0.01:2;
[x,y] = meshgrid(t);
z=x.^2+y.^2;

*Đổi sang tọa độ cực

% vẽ hình để phân tích khối Ω

Nhóm 6 _ sáng thứ 5

8


Báo cáo Bài tập lớn Giải tích 2
z2=1-x+0*y;
for i=1:length(x)
for j=1:length(x)
if x(i,j)^2+y(i,j)^2 > 1-x(i,j)
x(i,j)=NaN;y(i,j)=NaN;
z(i,j)=NaN;
z2(i,j)=NaN;
end
end
end
set(surf(x,y,z),'facecolor','b','edgecolor','non','facealpha',.3)
hold on
set(surf(x,y,z2),'facecolor','r','edgecolor','non','facealpha',.3)
set(pcolor(x,y,z2),'facecolor','g','edgecolor','non','facealpha',.3)
rotate3d on
xlabel('Truc x');
ylabel('Truc y');
zlabel('Truc z');
hold off
syms x y z t r
f=input('f(x,y,z)= ');
% nhập hàm f(x,y,z) từ bàn phím
f1=int(f,z,x^2+y^2,1-x);
% tính tích phân
f2=subs(f1,{x,y},{r*cos(t),r*sin(t)});
I=int(int(f2*r,r,0,sqrt(5)/2),t,0,2*pi);
I=double(I);
disp(['I = ' num2str(I)]);
VÍ DỤ MINH HỌA:
Cho f ( x, y, z) = x

1 2
5
2
PrOxyΩ = D, với D: ( x  )  y 
2
4
Mặt phía trên:
z=1–x
Mặt phía dưới:
z = x2 + y2
I =

 xdxdydz


 1 x

xdz

dxdy
=  
2
2

D 
x  y
=



1
5
( x  )2  y 2 
2
4
2

=

1 x

xz x2  y 2 dxdy
5
2

 d  r cos  (1  r cos   r
0

2

)rdr

0

Nhóm 6 _ sáng thứ 5

9


Báo cáo Bài tập lớn Giải tích 2
2

=

r

3

r

4

 d ( 3 cos   4 cos

2



0

2

=

(
0

5
2

5

r
cos  )
5
0

5 5
25
cos   cos 2  )d
96
64
2

5 5
25
sin 2
sin  
( 
)
=
96
128
2
0
0
= 

25
64

2

= 1, 2272

Nhóm 6 _ sáng thứ 5

10


Báo cáo Bài tập lớn Giải tích 2

BÀI 3
CƠ SỞ LÝ THUYẾT:

 P( x, y)dx  Q( x, y)dy là tích phân đường loại 2
C

Với P( x, y ) và Q(x, y) liên tục trên tập mở
Ở câu a:
(C): y = x
; dy = dx
Hoành độ điểm đầu
x1 = 0
Hoành độ điểm cuối
x2 = 1

Nhóm 6 _ sáng thứ 5

11


Báo cáo Bài tập lớn Giải tích 2
x2

I1 =

  P( x, y( x))  Q( x, y( x)) y '( x)dx

x1
1

=

  P( x, y( x))  Q( x, y( x))dx
0

Ở câu b:
(C): y2 = x ; 2ydy = dx
Tung độ điểm đầu
y1 = 0
Tung độ điểm cuối
y2 = 1
y2

I2 =

  P( x( y), y) x '( y)  Q( x( y), y)dy
y1

1

=

  P( x( y), y)*2 y  Q( x( y), y)dy
0

CODE MATLAB:
syms x y
p=input('P(x,y) = ');
q=input('Q(x,y) = ');

% nhập P(x,y) và Q(x,y) từ bàn phím

s=subs(p+q,y,x);
t=int(s,x,0,1);
t=double(t);
disp(['I1 = ' num2str(t)]);

% tính I1 cho câu a

s=2*y*subs(p,x,y^2)+subs(q,x,y^2);
t=int(s,y,0,1);
t=double(t);
disp(['I2 = ' num2str(t)]);

% tính I2 cho câu b

VÍ DỤ MINH HỌA:
2
Cho P( x, y) = x  3 y
Q(x, y) = 2 y
Ở câu a: (C): y = x
1

I1 =

  P( x, y( x))  Q( x, y( x))dx
0
1

=

x

2

 5 x dx

0

Nhóm 6 _ sáng thứ 5

12


Báo cáo Bài tập lớn Giải tích 2
1

17
 x3
x2 
=  5  =
= 2,8333
3
2
6

0
Ở câu b: (C): y2 = x
1

I2 =

  P( x( y), y)*2 y  Q( x( y), y)dy
0
1

=

 ( y

4

 3 y )*2 y  2 y dy

0

1

10
 y6

 2 y3  y 2  =
=
= 3,3333
3
 3
0

XIN HẾT

Nhóm 6 _ sáng thứ 5

13



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×