Tải bản đầy đủ (.pdf) (17 trang)

Giao trinh bai tap noi truc vong dan hoi flexitech

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.26 MB, 17 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA KHOA HỌC ỨNG DỤNG


MATLAB
GIẢI TÍCH 2
Đề tài 7
Nhóm: L42 (XD11XD07)

Giáo viên hướng dẫn: Cô Nguyễn Kiều Dung
Họ và tên

Mã số sinh viên

1. Nguyễn Tấn Cường (Nhóm trưởng)

81100470

2. Nguyễn Hữu Quang

81102718

3. Võ Thế Nguyên

81102322

4. Phạm Phù Sa

81102870

5. Phan Văn Tự



81104149

6. Ngô Đức Vũ

81104299

7. Lê Văn Bình

81100290

8. Nguyễn Văn Nể

81102177


CHI TIẾT PHÂN CÔNG CÔNG VIỆC
Câu 1: Phan Văn Tự.
Câu 2: Lê Văn Bình.
Câu 3: Nguyễn Tấn Cường + Võ Thế Nguyên.
Câu 4: Nguyễn Hữu Quang.
Câu 5: Nguyễn Văn Nể.
Câu 6: Phạm Phù Sa.
Câu 7: Ngô Đức Vũ.


Câu 1: Tính gần đúng giá trị hàm nhiều biến
Đề bài:
Nhập hàm ( , ). Nhập điểm
với ∆ , ∆ đủ nhỏ theo công thức:

( , )≈ ( ,

( ,

). Tính gần đúng giá trị (

+∆ ,

+∆ )

) +

( ,

)∆ +

( ,

)∆

) +

( ,

)∆ +

( ,

)∆ . Dựa vào công thức,


Cơ sở lý thuyết – giải thuật:
Giá trị gần đúng của
ta cần tìm:
+

,

( , )≈ ( ,

: lấy số nguyên gần nhất của , . Dùng hàm round(x), round(y).

+ ∆ = −

, ∆ = −

Câu 2: Tìm đạo hàm của hàm ẩn.
Đề bài:
Nhập hàm ( , ), tìm ( ), ′ ) biết = ( ) là hàm ẩn xác định từ phương trình
( , ) = 0. Vẽ đồ thị minh họa ý nghĩa hình học của đạo hàm ( ) tại ( , ) nhập từ bàn
phím.
Cơ sở lý thuyết:
Hàm ( , ) = 0 xác định một hàm ẩn = ( ) sao cho ( , ( )) = 0 với mọi thuộc
/
( ) = =−
miền xác định của . Ta có
=−
, ( ) = ( ( ))′.
/
Giải thuật:
Đạo hàm riêng theo của hàm : diff(f, x)

Đạo hàm của hàm ẩn: D(F). Chú ý là D(F) trả về 1 biểu thức trong đó có chứa D(x), D(y). Ở đây
D(x) = 1.


Câu 3: cực trị có điều kiện.
Đề bài: Nhập hàm ( , ). Tìm cực trị của hàm với điều kiện | | + | | = 1. Vẽ hình minh họa
trên đó chỉ ra các cực trị nếu có.
Cơ sở lý thuyết:
Định nghĩa cực trị có điều kiện:
( ,

) với điều kiện ( , ) = 0 nếu

∈ (

, )∩

Hàm ( , ) đạt cực đại chặt tại
∃ (

, ):∀

,



: ( )< (

)


và thỏa điều kiện ràng buộc ( , ) = 0.
Định nghĩa tương tự với cực đại chặt, cực đại không chặt và cực tiểu không chặt có điều kiện.
Điểm
0.

( ,

) được gọi là điểm kì dị của đường cong ( , ) = 0 nếu

( ) = 0,

( )=

Điều kiện cần của cực trị có điều kiện:
Điểm

( ,

) thỏa các điều kiện:

1.
( , ) không là điểm kì dị của đường cong ( , ) = 0.
2. ( , ), ( , )và đạo hàm riêng cấp 1 của nó liên tục trong lân cận của điểm
( , ).
3. Hàm ( , ) với điều kiện ( , ) = 0 đạt cực trị tại
( , ). Khi đó tồn tại sao cho:
( )+ ′ ( )=0
( )+ ′ ( )=0
(
Số


)=0

được gọi là nhân tử Lagrange.

Hàm

= ( , )+

( , ) được gọi là hàm Lagrange.

Điều kiện đủ của cực trị có điều kiện:
Giả sử ( , ), ( , ) khả vi liên tục đến cấp 2 trong lân cận của
Trong lân cận của

( ,

các thỏa các điều kiện trong định lý điều kiện cần.

(

) > 0: Cực tiểu có điều kiện.

(

) < 0: Cực đại có điều kiện.

(

) không xác định dấu – không tồn tại cực trị.


Giải thuật:
Với |x| + |y| = 1, ta có được 4 đoạn thẳng
=



− 1,

=

+

− 1,

= − −

− 1,

= − +

Tìmcựctrịcóđiềukiệntrênmỗiđoạntheocơsởlýthuyết.
Ở đỉnh của hình: tìm các lân cận của biên trên mỗi đoạn.

−1

)


Câu 4: Tích phân kép.

+

Đề bài: Tính diện tích miền phẳng giới hạn bởi:

=2 ,

+

=6 ,

≥ √3 , ≥ 0.

Vẽ hình miền phẳng đã cho.
Xác định cận lấy tích phân.
Cơ sở lý thuyết:


=∬ 1

Diện tích miền D được tính bằng công thức:
Cách tính tích phân kép:
1. Giả sử miền D xác định bởi:

2. Thì



=∬

( , )


≤ ≤
( )≤ ≤
( )
∫ ( ) ( , )

=∫

( )

(tương tự khi đổi thứ tự lấy tích phân)
Dùng tọa độ cực:
Đặt:

=
=

( )
( )

Miền D được xác định trong tọa độ cực:


Thì tích phân được tính như sau: = ∬



( , )




( ∈ [0, 2 ])
≤ ≤
=∫



Giải thuật:
Vẽ hình miền D, ta thấy có biên là cung tròn =>> dùng tọa độ cực.

(

( ),

( ))




Câu 5: Tích phân bội 3.
Đề bài: Nhập hàm ( , , ). Tính tích phân bội 3: = ∭ ( , , )
với E là vật thể giới

hạn bởi: = + , = 2 + + , + = 1. Vẽ hình vật thể E và hình chiếu của E
xuống
, từ đó xác định lấy tích phân.
Cơ sở lý thuyết
Tích phân bội 3 với tọa độ trụ:
=
=


( )
( )
=
=

Tích phân tính bằng: ∭



Ở đây, Ω nằm trong miền

( , , )

=∭



(

≥ 0, 0 ≤ ≤ 2 , −∞ <

Giải thuật:
Vẽ hình vật thể E, từ đó xác định cận tính tích phân.
Đổi về tọa độ trụ để tính tích phân trên Ω.

( ),
< +∞

( ), )



Câu 6: Tích phân đường.
Đề bài:
Cho:

( , ) =
( , )

+ 1, ( , ) = 1 − . Tìm hàm
( , )

+

vừa tìm, tính = ∫

Với

= cosh( ) − , từ

0,

(0) = 1 và biểu thức

là tích phân toàn phần của hàm ( , ) nào đó.



đến


thỏa

( , )

+

( , )

. Với L là đường cong

(ln 2, 1). Vẽ đường lấy tích phân L và A, B.

Giải thuật:
+ Giải tìm

: do tích phân toàn phần không phụ thuộc đường đi, dựa vào tính chất

( , )

( , )

=
Ta có dược một phương trình vi phân tuyến tính cấp 1: ’ = ( )
Phương trình này có nghiệm: ( ) =
Ở bài này,
Hàm

= , dùng matlab giải ra

∫ ( )


.

= ′. Suy ra ( )= 1.

=

+ Tính tích phân: = ∫

( ,

)

+∫

(

,

)


Câu 7: Tích phân mặt
Đề bài:


Tính tích phân: ∬ (2 + )

+ (2 + )


+ + = 3 nằm trong hình trụ
+
pháp véctơ với mặt cong vẽ tại ( , ,

+ (2 + )

= 2 , phía dưới hướng theo trục
).

với S là mặt phẳng
. Vẽ mặt cong ,

Cơ sở lý thuyết + giải thuật:
1.Mặt định hướng
Nếu trên mặt S ta qui ước một phía là dương, phía còn lại là âm thì mặt S được gọi là mặt
định hướng.
Cách xác định pháp vector của mặt định hướng
Khi đứng lên phía dương của mặt định hướng thì pháp véctơ đi từ chân lên đầu.
Ở bài này, góc tạo bởi véctơ pháp tuyến có cos γ < 0. Dùng hàm if để kiểm tra.
2.Tích phân mặt loại 2
( , , ), ( , , ), ( , , ) xác định trên mặt định hướng .
Pháp véctơ đơn vị của mặt S là: ⃗ = (cos , cos , cosγ), có độ dài là 1 đơn vị.


Tích phân mặt loại một: = ∬ (Pcos + Qcos
loại hai của P, Q, R trên mặt định hướng S, ký hiệu:

+ cosγ)dSđược gọi là tích phân mặt




=

+

+



Cách tính tích phân mặt loại 2:
Vì tích phân mặt loại hai là tích phân mặt loại một nên ta có thể sử dụng cách tính tích
phân mặt loại một.
Chuyển về tích phân mặt loại 1 bằngcách:
Pháp véctơ đơn vị của mặt S là: ⃗ = (cos , cos , cosγ)


Tích phân mặt loại một: = ∬ (Pcos

+ Qcos

+ cosγ)dS

Hay tích phân 1 loại 1 có dạng


∬ ( , , )



=∬


( , , ( , )) ( ) + ( ) + 1

với D là hình chiếu của S lên Oxy.


Code câu 1 + Ví dụ
reset():
f:= input("Nhap vao ham f(x, y):", f):
[a, b]:= input("Nhap vao gia tri cua x, y:"):
print(Unquoted, NoNL, "Ham f nhap vao la: f="): print(Typeset, f):
c:= a - round(a): d:= b - round(b):
f0:= subs(f, x= round(a), y= round(b)):
fxy:= f0 + c*subs(diff(f, x), x= round(a), y= round(b))+
d*subs(diff(f, y), x= round(a), y= round(b)):
print(Unquoted, "Tai x= ".a, "y= ".b, "f(x, y)~ ". float(fxy)):
print(Unquoted, "So voi gia tri thuc, f= ". subs(f, x= a, y= b)):

Ham f nhap vao la: f= x2 + y3
Tai x= 1.02, y= 1.97, f(x, y)~ 2.946666667
So voi gia tri thuc, f= 2.947163552


Code câu 2:
Tìm đạo hàm:
reset():
f:= input("Nhap vao ham f(x, y)", f):
yx:= -diff(f, x)/diff(f, y):
yxx:= subs(D(yx), D(y)= yx, D(x) = 1):
print(Unquoted, NoNL, "Ham F(x, y)= "): print(Typeset, f):

print(Unquoted, NoNL, "y'(x)= "):
print(Typeset, yx):
print(Unquoted, NoNL, "y''(x)= "):
print(Typeset, yxx):
Ham F(x, y)= x2 + y2 - 4
y'(x)= - x
y
2

y''(x)=

x - 1
- 
y3 y

Vẽ hình:
M:= input("Nhap toa do cua M"):
hsg:= subs (yx,[x= M[1], y= M[2]]):
plot(f= 0, y - M[2]= hsg*(x- M[1]),
(plot::Point2d(M, Title= "M (".M[1].",".M[2].")",
TitlePosition = [M[1] + 0.15, M[2] + 0.15],
TitleAlignment = Left))):
print(Unquoted, "Y nghia hinh hoc cua y'(x) tai M".
" la he so goc cua tiep tuyen tai M")
y

5
4
3


M (1,3^(1/2))

2
1

-5

-4

-3

-2

-1

1
-1

2

3

4

5

x

-2
-3

-4
-5

Y nghia hinh hoc cua y'(x) tai M la he so goc cua tiep tuyen tai M


Code câu 3 + Ví Dụ
Minh họa điều kiện của cực trị:
plot(abs(x) + abs(y) = 1, x= -2..2)
y

2

1

-2.0

-1.5

-1.0

-0.5

0.5

1.0

1.5

2.0


x
-1

-2

Tìm cực trị ở các đoạn thẳng:
reset():
f:= input("Nhap vao ham f(x, y)", f):
print(Unquoted, NoNL, "Ham f nhap vao la "): print(Typeset, f):
dk[1]:= x - y -1: dk[2]:= x + y -1: dk[3]:= - x + y -1: dk[4]:= - x - y -1: m:= 0:
for i from 1 to 4 do
L[i]:= f + lamda*dk[i]:
dLx[i]:= diff(L[i], x):
dLxx[i]:= diff(dLx[i], x):
dLy[i]:= diff(L[i], y):
dLxy[i]:= diff(dLx[i], y):
dLlamda[i]:= diff(L[i], lamda): dLyy[i]:= diff(dLy[i], y):
stop[i]:= solve ([dLx[i]= 0, dLy[i]= 0, dLlamda[i]]= 0, [x, y, lamda], Real, IgnoreSpecialCases):
for j from 1 to nops(stop[i]) do
if is(length(type(stop[i]))= 1) then
DD:= stop[i][j]:
if is(subs(abs(x) + abs(y),DD)=1 and subs(abs(x),DD) <1 and subs (abs(y), DD)<1) then
A[i][j]:= subs(dLxx[i], DD): B[i][j]:= subs(dLxy[i], DD): C[i][j]:= subs(dLyy[i], DD):
dphi[i][j]:= dx*diff(dk[i], x) + dy*diff(dk[i], y):
d2l[i][j]:= A[i][j]*dx^2 + 2*B[i][j]*dx*dy + C[i][j]*dy^2:
tem[i][j]:= solve(dphi[i][j]=0, dy): signd2l[i]:= subs(d2l[i][j], dy= tem[i][j][1], dx= 1):
m:= m+ 1: CTpoint[m]:= subs(x, DD), subs(y, DD), subs(f, DD):
if is(signd2l[i] >0) then
print(Unquoted, "Cuc tieu ".DD[1].", ".DD[2]. " ung voi ".DD[3]):

CTtext[m]:= "Cuc tieu":
else if is(signd2l[i] <0) then
print(Unquoted, "Cuc dai ".DD[1].", ".DD[2]. " ung voi ".DD[3]):
CTtext[m]:= "Cuc dai":
else print(Unquoted, "Khong la cuc tri khi x= ".DD[1]." ". DD[1]." ung voi".DD[3]):
CTtext[m]:= "Khong la cuc tri":
end_if: end_if: end_if: end_if: end_for:
delete j:
end_for: delete i:
if m= 0 then print(Unquoted, "Ham nhap vao khong co cuc tri voi dieu kien da cho"): end_if
Ham f nhap vao la x4 - x + y2 + y4
Cuc dai x = 1/2, y = -1/2 ung voi lamda = -1/2
Cuc tieu x = 1/2, y = 1/2 ung voi lamda = 3/2
Cuc dai x = -1/2, y = 1/2 ung voi lamda = -1/2
Cuc tieu x = -1/2, y = -1/2 ung voi lamda = 3/2


Xét cực trị ở 4 đỉnh
dinh[1]:= [1, 0, subs(f, x= 1, y= 0)]:
dinh[2]:= [0, 1, subs(f, x= 0, y= 1)]:
dinh[3]:= [-1, 0, subs(f, x= -1, y= 0)]:
dinh[4]:= [0, -1, subs(f, x= 0, y= -1)]:
for i from 1 to 4 do
c:= 0:
for j from 1 to 100 do
r:= random(10^5..10^6): n:= 1/r():
if dinh[i][1] <> 0 then
a:= subs(f, x= dinh[i][1] - sign(dinh[i][1])*n, y= n)- dinh[i][3]:
b:= subs(f, x= dinh[i][1] - sign(dinh[i][1])*n, y= -n)- dinh[i][3]:
end_if:

if dinh[i][2] <> 0 then
a:= subs(f, y= dinh[i][2] - sign(dinh[i][2])*n, x= n)- dinh[i][3]:
b:= subs(f, y= dinh[i][2] - sign(dinh[i][2])*n, x= -n)- dinh[i][3]:
end_if:
if a*b > 0 then
c:= c+ 1: end_if:
end_for:
if (a > 0) and (c= 100) then
m:= m+ 1: CTtext[m]:= "Cuc tieu": CTpoint[m]:= dinh[i][1], dinh[i][2], dinh[i][3]:
print(Unquoted, "Cuc tieu x = ".dinh[i][1]." y= ".dinh[i][2]):
else if (a < 0) and (c= 100) then
m:= m+ 1: CTtext[m]:= "Cuc dai": CTpoint[m]:= dinh[i][1], dinh[i][2], dinh[i][3]:
print(Unquoted, "Cuc dai x = ".dinh[i][1]." y= ".dinh[i][2]):
else
print(Unquoted, "Khong la cuc tri khi x = ".dinh[i][1]." y= ".dinh[i][2]):
m:= m+ 1: CTtext[m]:= "Khong la cuc tri": CTpoint[m]:= dinh[i][1], dinh[i][2], dinh[i][3]:
end_if: end_if:
end_for:
if m= 0 then print(Unquoted, "Ham nhap vao khong co cuc tri voi dieu kien da cho"): end_if
Khong la cuc tri khi x = 1 y= 0
Khong la cuc tri khi x = 0 y= 1
Khong la cuc tri khi x = -1 y= 0
Khong la cuc tri khi x = 0 y= -1
Vẽ hình
pointext:= ():
for j from 1 to m do
pointext:= pointext, plot::Point3d([CTpoint[j]], Title= CTtext[j]):
end_for:
graphf:=plot::Function3d(piecewise([(abs(x) + abs(y)) > 1 , f]),
x = -1.1.. 1.1 , y = -1.1.. 1.1, Color= RGB::Green.[0.001]):

dieukien:= piecewise([(abs(x) + abs(y)) < 1 , f]):
plot(dieukien, graphf, pointext , #3D, x= -1.1..1.1, y=-1.1..1.1, z= 0..4 ):


Code câu 4
Vẽ hình miền phẳng:
reset():
a:= x^2 + y^2 - 2*y:
b:= x^2 + y^2 - 6*y:
c:= 3^(1/2)*x:
M:= solve(subs(a, y= c), x):
N:= solve(subs(b, y= c), x):
A:= solve(a, y):
B:= solve(b, y):
f:= piecewise([N[1]<= x and x<= N[2], B[1]]):
g:= piecewise([M[1]<= x and x<= M[2], A[1]],[M[2]<= x and x <= N[2], c]):
plot(plot::Function2d(f, LineWidth= 1.5),
plot::Function2d(g, LineWidth= 1.5),
plot::Line2d([0, 2], [0, 6], LineWidth= 1.5),
a= 0,b =0, c=y, x= 0, x= -4..4, y= -1..7):
print(Unquoted, "Mien D gioi han boi: "):
print(Typeset, a= 0, b= 0, y>= c, x>= 0):
y

7
6
5
4
3
2

1

-5

-4

-3

-2

-1

1

2

x2 + y2 - 2 y = 0, x2 + y2 - 6 y = 0,

4

5

x

-1

Mien D gioi han boi:

3



3 x £ y, 0 £ x

Tính diện tích
Dientich:= int(int(1, y=A[1]..B[1]), x=M[1]..M[2])
+ int(int(1, y=c..B[1]), x= M[2]..N[2])


4p

+2 3
3
Dùng tọa độ cực:
x:= r*cos(t): y:= r*sin(t):
d:= Simplify(a=0): e:=Simplify(b= 0):
print(Unquoted, "Duong tron duoc gioi han boi 2 cung"):
print(Typeset, d[1], e[1]):
print(Unquoted, "Voi t tu ".arctan(c/x)." den PI/2")
Duong tron duoc gioi han boi 2 cung
r = 2 sint, r = 6 sint
Voi t tu PI/3 den PI/2
Diện tích (theo tọa độ cực)
Dientich:= int(int(r, r= d[1][2]..e[1][2]), t= arctan(c/x)..PI/2)

4p

+2 3
3



Code câu 5 + Ví dụ
reset():
a:= x^2 + y^2 =z: b:= x^2 + y^2
f:= input("Nhap vao ham f(z, y,
print(Unquoted, "Tinh tich phan
print(Unquoted, "Vat the E gioi
print(Typeset, a, b, c)
Tinh tich phan cua ham f= x^3 +
Vat the E gioi han boi
x2 + y2 = z, x2 + y2 + 2 = z, x2 + y2 = 1

+ 2 =z: c:= x^2 + y^2 = 1:
z)", f):
cua ham f= ".f):
han boi"):
y^2 - z

Chuyển về tọa độ trụ
x:= r*cos(phi): y:= r*sin(phi):
print(Unquoted, "Vat the E gioi han boi"):
print(Simplify(a), Simplify(b), Simplify(c))
Vat the E gioi han boi
r2 = z, r2 + 2 = z, r2 = 1
C:= plot::Cylindrical([1,
A:= plot::Cylindrical([r,
B:= plot::Cylindrical([r,
F:= plot::Cylindrical([r,
G:= plot::Cylindrical([1,
plot(A, B, C, F, G):


phi,
phi,
phi,
phi,
phi,

z], phi = 0..2*PI, z = 1..3, Color= RGB::Green.[0.001]):
r^2], r = 0..1, phi = 0..2*PI):
2 + r^2], r = 0..1, phi = 0..2*PI):
0], r = 0..1, phi = 0..2*PI):
z], z = 0..1, phi = 0..2*PI, Filled= FALSE):

Tính tích phân
print(Unquoted, "Can cua tich phan"):
0 <=`ϕ` <= 2*PI; 0<=r<=1; Simplify(a)[1]<= z<= Simplify(b)[1]
Can cua tich phan
0 £ j £ 2 p
0 £ r £ 1
r2 £ z £ r2 + 2
print(Unquoted, NoNL, "Gia tri cua tich phan tinh duoc: "):
TichPhan:= int(int(int(f*r, z= Simplify(a)[1]..Simplify(b)[1]),
r=0..Simplify(c)[2]), phi= 0..2*PI)
5p
Gia tri cua tich phan tinh duoc: - 
2


Code câu 6:
Tìm G
reset():

P:= x*exp(-x/y)+ 1: Q:= 1 - x/y: v:= x/y:
H:= g*diff(Q, x) + dg*diff(v, x)*Q - (g*diff(P, y) + dg*diff(v, y)*P):
i:= solve(H, g, IgnoreSpecialCases):
G:= C*E^(int(i[1]/dg, u)): C:= solve(subs(G, u =0)= 1, C):
G:= subs(G, u= v)[1]: print(Unquoted, NoNL, "Ham G la"):
print(Typeset, G):
Ham G la ex y
Tìm tích phân
A:= [0, 3/4]: B:= [ln(2), 1]:
GP:= subs(G*P, y= A[2]): GQ:= subs(G*Q, x=B[1]):
simplity(GP):simplify(GQ):
L:= cosh(x) - 1/4:
integral:= int(GP, x= A[1].. B[1]) + int(GQ, y= A[2]..B[2]):
print(Unquoted, NoNL, "Gia tri cua tich phan tinh duoc: "):
print(Typeset, integral)
ln22
Gia tri cua tich phan tinh duoc:  + 5
2
4
Đồ thị minh họa:
pointA:= plot::Point2d(A, Title= "A", TitlePosition = [A[1] + 0.05, A[2]],
TitleAlignment = Left):
pointB:= plot::Point2d(B, Title= "B", TitlePosition = [B[1] + 0.05, B[2]],
TitleAlignment = Left):
lineL1:= plot::Function2d(L, x= -0.5..1):
lineL2:= plot::Function2d(L, x= A[1]..B[1], LineWidth= 1, Color= RGB::Red):
plot(pointA, pointB, lineL1, lineL2, plot::Point2d(0, 0, PointSize= 0.1))
y
1.2


B

1.0
0.8

A

0.6
0.4
0.2

-0.5 -0.4 -0.3 -0.2 -0.1

0.0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8


0.9

1.0

x


Câu 6 (Tùy chỉnh)
Tìm G
reset():
P:= input("Nhap vao P: "):
Q:= input("Nhap vao Q: "):
v:= input("Nhap vao u: "):
H:= g*diff(Q, x) + dg*diff(v, x)*Q - (g*diff(P, y) + dg*diff(v, y)*P):
i:= solve(H, g, IgnoreSpecialCases):
G:= C*E^(int(i[1]/dg, u)): C:= solve(subs(G, u =0)= 1, C):
G:= subs(G, u= v)[1]: print(Unquoted, NoNL, "Ham G la"):
print(Typeset, G):
Ham G la ex y
Tìm tích phân
A:= input("Nhap vao toa do diem A: "):
B:= input("Nhap vao toa do diem B: "):
GP:= subs(G*P, y= A[2]): GQ:= subs(G*Q, x=B[1]):
simplity(GP):simplify(GQ):
L:= input("Nhap vao duong lay tich phan"):
integral:= int(GP, x= A[1].. B[1]) + int(GQ, y= A[2]..B[2]):
print(Unquoted, NoNL, "Gia tri cua tich phan tinh duoc "):
print(Typeset, integral)
ln22

Gia tri cua tich phan tinh duoc  + 5
2
4
Đồ thị minh họa:
pointA:= plot::Point2d(A, Title= "A", TitlePosition = [A[1] + 0.05, A[2]],
TitleAlignment = Left):
pointB:= plot::Point2d(B, Title= "B", TitlePosition = [B[1] + 0.05, B[2]],
TitleAlignment = Left):
lineL1:= plot::Function2d(L, x= -0.5..1):
lineL2:= plot::Function2d(L, x= A[1]..B[1], LineWidth= 1, Color= RGB::Red):
plot(pointA, pointB, lineL1, lineL2, plot::Point2d(0, 0, PointSize= 0.1))
y
1.2

B

1.0
0.8

A

0.6

0.4
0.2

-0.5 -0.4 -0.3 -0.2 -0.1

0.0


0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1.0

x


Code câu 7 + Ví dụ
Tìm véctơ pháp tuyến
reset():
a:= x^2 + y^2 - 2*x:
mp1:= piecewise([ a<= 0, 3 - (x + y)]):
mp2:= piecewise([ a> 0, 3 - (x + y)]):
s:= 3 - x - y -z:

P:= 2*x + y: Q:= 2*y + z: R:= 2*z + x:
i:= diff(s, x): j:= diff(s, y): k:= diff(s, z):
n:= [i, j, k]/sqrt(i^2 + j^2 + k^2):
if is(n[3] > 0) then
n:= - n
end_if:
print(Unquoted, NoNL, "Phap vecto n la "), print (Typeset, n)
 

 
3
3
3
Phap vecto n la
- , - , - 
3
3
3
Vẽ hình
M:= input("Nhap vao M"):
print(Unquoted, "Toa do M nhap vao la ".M):
pointM:= plot::Point3d(M, Title= "M", TitlePosition= M + [0, 0, 0.3]):
vectoM:= plot::Arrow3d(M, M + n, Color= RGB::Black.[1]):
mattru:= plot::Implicit3d(x^2 + y^2 =2*x,
x= -0.5..2.5, y= -1.5..1.5, z = -1..5,
LineColor= RGB::Red.[0.1], Filled= FALSE):
mats1:= plot::Function3d(mp1, FillColor = RGB::Blue):
mats2:= plot::Function3d(mp2, x= -0.5..2.5, y= -1.5..1.5,
FillColor= RGB::Red.[0.01]):
matS:= plot::Scene3d(mats1, mats2, pointM, vectoM):

plot(pointM, vectoM, mats1, mats2, mattru):
Toa do M nhap vao la [1, 0, 2]

Tính tích phân:
c:= solve (s, z)[1]:
S:= subs((P*n[1] + Q*n[2] + R*n[3]), z = c)
*sqrt(1 + (diff(c, x))^2 + (diff(c, y))^2):
S:= simplify(S):
x:= r*cos(t): y:= r*sin(t):simplify(a=0):
R:= simplify(solve(a= 0, r, IgnoreSpecialCases)):
print(Unquoted, NoNL, "Gia tri cua tich phan la"):
integal:= int(int(S*r,r= R[1]..R[2] ), t= 0..PI)
Gia tri cua tich phan la - 9 p



×