ỨNG DỤNG MAPLE ĐỂ GIẢI PHƯƠNG TRÌNH VI PHÂN
I.ĐẶT VẤN ĐỀ
Chiến lược phát triển giáo dục Đại học - Cao đẳng từ năm 2005 đến 2015 là
từng bước đổi mới nội dung, chương trình, giáo trình và phương pháp dạy học.
Một trong những khâu then chốt của quá trình đổi mới phương pháp dạy học là
rèn luyện kỹ năng tự học, tự thích ứng cho sinh viên.
Hiện nay có rất nhiều phần mềm toán học chuyên dụng như: Maple , Cabri
Geometry, Geometers Sketchpad, Mathcad, Derive, Trong đó Maple là
một trong những phần mềm được sử dụng phổ biến bởi nó đáp ứng cho mọi
tính toán số, hỗ trợ nhiều lĩnh vực của toán học: giải tích toán học, đại số
tuyến tính, giải tích số, đồ thị, đại số sơ cấp, xác xuất thống kê…Maple còn
có thể sử dụng lập trình để giải các bài toán phức tạp, đặc biệt Maple có thể
tính toán trên các kí hiệu toán học, thực hiện tính toán với khối lượng lớn, với
thời gian nhanh và độ chính xác cao.
Maple tương đối dễ học, dễ sử dụng và đáp ứng được những yêu cầu trên.
Đó cũng chính là lý do chúng tôi chọn đề tài “Ứng dụng Maple để tự học
phương trình vi phân”. Qua đề tài này hy vọng sẽ góp được phần nhỏ vào
giải phương trình vi phân nói riêng và toán học nói chung.
II.NỘI DUNG.
Maple là phần mềm do một số các nhà khoa học của Canada thuộc trường
Đại Học Tổng Hợp Waterloo xây dựng và cho ra đời năm 1980 với mục đích
giải quyết công việc liên quan đến tính toán. Từ đó làm thay đổi hẳn cách học
toán: Song song với cách giải “truyền thống”, sinh viên được hướng dẫn giải
bằng sự trợ giúp của Maple. Phương pháp này tạo cho sinh viên cách tiếp cận
mới với toán học, sinh động, sáng tạo và rèn được khả năng tự học, tự kiểm tra,
tự nghiên cứu.
1. Ứng dụng Maple để tự học phương trình vi phân
* Cách giải phương trình vi phân bằng Maple:
Câu lệnh:
> dsolve(ode);
>dsolve({ode,ICs},y(x),options);
Trong đó:
-Ode là phương trình vi phân thường
1
-y(x) là hàm một biến độc lập.
-Options-tùy chọn bao gồm:implicit( dạng ẩn ),explicit(dạng hiện - ngầm
định),useInt(dạng tích phân), series( chuỗi), numberic(dạng số)…
-ICs-Điều kiện ban đầu(để tìm nghiệm riêng) dạng y(a)=b, D(y)(a)=c,
D(D(y))(a)=d…
* Cách giải hệ phương trình vi phân bằng Maple :
Câu lệnh :
>dsolve ({sysODE},funcs)
> dsolve ({sysODE},funcs, ‘explixit’)
Trong đó :
{sysODE} - tập hợp các phương trình vi phân được ngăn cách bởi dấu
phẩy
{funcs} - tập hợp các hàm số cần xác định hoặc tên hàm
‘explixit’- tuỳ chọn để yêu cầu sắp xếp sự xuất hiện tập các nghiệm
trong trường hợp hệ phương trình vi phân phi tuyến tính
2. Ví dụ minh họa.
2.1. Phương trình vi phân cấp 1.
2.1.1Phương trình đẳng cấp cấp 1
a). Là phương trình vi phân có dạng :
'
( , ) ( )
y
y f x y
x
ϕ
= =
(2)
Ví dụ 1 : Giải phương trình vi phân:
'
2 2
2xy
y
x y
=
−
*Bài giải
Ta có
'
2
2 2
2
2
( )
1
y
xy
x
y y x
x y
y
x
= = ≠ ±
−
−
÷
Đặt
. .
y du
u y u x dy u x
x dx
= ⇒ = ⇒ = +
2
Thay vào phương trình ta được:
3 3
2 2 2 2
2 2 2
. .
1 1 1 1
du u du u u u u u u
u x x u
dx u dx u u u
− + +
+ = ⇔ = − = =
− − − −
(*)
2
2
1
0 :(*)
(1 )
u dx
u du
u u x
−
≠ ⇔ =
+
Lấy tích phân 2 vế ta được:
2
2
2
2
2
2
2
2
2
2
2 2
1
0 : (*)
(1 )
1
(1 )
1 2
( )
(1 )
ln ln 1 ln ln
ln ln
1
1
(1 )
( )
u dx
u du
u u x
u dx
du C
u u x
u dx
du C
u u x
u u x C
u
xC
u
u
xC
u
y y
xC
x x
y C x y
−
≠ ⇔ =
+
−
⇔ = +
+
⇔ − = +
+
⇔ − + = +
⇔ =
+
⇔ =
+
⇔ = +
⇔ = +
∫ ∫
∫ ∫
*
0 0u y
= ⇒ =
.
KL: Nghiệm của phương trình là
2 2
( )y C x y
⇔ = +
*Giải phương trình bằng maple:
>
>
3
2.1.2Phương trình vi phân tuyến tính cấp một.
a). Là phương trình vi phân có dạng: y’ + p(x) y = f(x) (3)
trong đó p(x), f(x) là các hàm liên tục.
*Nếu f(x)=0, ta có: y’ + p(x) y = 0 (4)
Phương trình (4) gọi là phương trình tuyến tính thuần nhất.
Ví dụ 2 : Giải phương trình:
'
1
3y y x
x
+ =
(*)
*Bài giải
Phương trình thuần nhất tương ứng :
'
1
0y y
x
+ =
(**)
Nghiệm tổng quát của phương trình thuần nhất (*) có dạng:
1
ln
1
. . .
dx
x
x
C
y C e C e C x
x
−
−
−
∫
= = = =
(***)
Đạo hàm 2 vế ta được :
,
2
.
dC
x C
dx
y
x
−
=
Thay vào (*):
2 2
3
2 2
3
.
3.
. 3.
3. 3.
dC
x C
C
dx
x
x x
dC
x C C x
dx
dC
x dC x dx
dx
C x C
−
⇒ + =
⇔ − + =
⇔ = ⇔ =
⇒ = +
Thay vào (***) ta được nghiệm của phương trình đã cho:
3
2
x C C
y x
x x
+
= = +
*Giải phương trình bằng maple:
4
>
>
>
2.1.3. Phương trình Bernoulli
a). Là phương trình vi phân có dạng :
,
y
+p(x)y=f(x)
y
α
Ví dụ 3 : Giải phương trình:
, 3 2
2y xy x y
− =
(*)
*Bài giải
Ta nhận thấy y = 0 là nghiệm của phương trình(*)
Xét:
0y
≠
Chia hai vế pt(*) cho
2
y
ta được:
,
3
2
2
y x
x
y y
− =
(**)
Đặt:
,
,
2
1 y
z z
y y
−
= ⇒ =
Thay vào (**):
, 3
2z xz x
− + =
, 3
2z xz x
⇔ + = −
(***)
Pt thuần nhất tương ứng:
,
2 0z xz
+ =
Nghiệm tổng quát của pt thuần nhất:
5
2
2xdx
x
z Ce Ce
−
−
∫
= =
Nghiệm của pt không thuần nhất có dạng:
2
2 2
, '
( )
( ) 2 ( )
x
x x
z C x e
z C x e xC x e
−
− −
=
⇒ = −
Thay voà (**) ta được:
2 2 2
2
2
2 2
' 3
' 3
' 3
2
( ) 2 ( ) 2 ( )
( )
( )
1
( ) ( )
2
x x x
x
x
x x
C x e xC x e xC x e x
C x e x
C x x e
C x x e e C
− − −
−
+ − = −
⇔ = −
⇔ = −
⇔ = − + +
Vậy nghiệm của pt (***) là:
2 2
2
1
( (1 ) )
2
x x
z x e C e
−
= − +
2
2
1 1
1
(1 )
2
x
z y
y
x Ce
−
= ⇒ =
− +
*Giải phương trình bằng maple:
>
>
>
1.3 Phương trình vi phân có thể hạ cấp
1.3.1Phương trình chứa biến độc lập và đạo hàm cấp cao.
Dạng :
6
( )
( 1)
1
( 2)
1 2
( )
( )
( ( ) )
n
n
n
y f x
y f x dx C
y f x dx C C
−
−
=
= +
= + +
∫
∫
Ví dụ 1: Giải phương trình:
(4)
y x
=
*Bài giải:
Ta có:
(4)
2
(3)
1
3
(2)
1 2
4 2
'
1 2 3
5 3 2
1 2 3 4
2
6
24 2
120 6 2
y x
x
y C
x
y C x C
x x
y C C x C
x x x
y C C C x C
=
⇒ = +
⇒ = + +
⇒ = + + +
⇒ = + + + +
*Giải phương trình bằng maple:
>
>
1.2.2Phương trình không chứa hàm phải tìm và đạo hàm của nó đến cấp
k-1
Dạng:
( ) ( 1) ( )
( , , , , ) 0
k k n
F x y y y
+
=
Ví dụ 3: Giải phương trình:
,, ,
1
0y y x
x
+ − =
*Bài giải:
7
Đặt:
, , "
z y z y
= ⇒ =
Pt trở thành:
,
1
z z x
x
+ =
Đây là pt vi phân cấp 1 có nghiệm tổng quát là:
2
,
1
3
1 2
3
ln
9
Cx
y z
x
x
y C x C
= = +
⇒ = + +
*Giải phương trình bằng maple:
>
>
1.2.3Phương trình chứa biến độc lập:
Dạng F(
, ( )
, , ,
n
y y y
)
*Ví dụ 4: Giải phương trình:
2y.
,, ,2
0y y
+ =
*Bài giải
Đặt: x =
,
y
. Xem z là hàm của y, ta có:
8
,,
2
. .
2 . . 0
0
0 : (2) 2 . 0 2
x
dz dz dy dz
y z
dx dy dx dy
dz
y z z
dy
z
dz dz
z y z
dy z
= = =
+ =
=
≠ ⇔ + = ⇔ +
,,
. .
x
dz dz dy dz
y z
dx dy dx dy
= = =
Thay vào pt:
2
2 . . 0
dz
y z z
dy
+ =
(2)
0z
=
là một nghiệm của pt (2)
Xét
0 :(2) 2 . 0 2 0
dz dz dy
z y z
dy z y
≠ ⇔ + = ⇔ + =
Lấy tích phân hai vế ta được:
2 2 2 2
3
,
2
1
2ln ln ln ln ln
2
0
3
C
z y C z y C z y C z
y
C dy C
y ydy Cdx y Cx C
dx
y y
+ = ⇔ = ⇔ = ⇔ =
⇔ = ⇔ = ⇔ = ⇔ − − =
*Giải phương trình bằng maple:
>
>
1.2.4.Phương trình tuyến tính thuần nhất với hệ số hằng.
9
Dạng:
( ) ( 1) ( 2)
1 2
. 0
n n n
n
y a y a y a y
− −
+ + + + =
trong đó:a
1
,a
2
…,a
n
là
các hằng số thực
*Ví dụ 5: Xét phương trình:
('') '
5 6 0y y y
− + =
*Bài giải
Phương trình đặc trưng:
2
5 6 0k k
− + =
1 2
2, 3k k
⇔ = =
Nghiệm tổng quát của phương trình đã cho:
2
5 6 0k k
− + =
2 3
1 2
. .
x x
y C e C e
= +
*Giải phương trình bằng maple:
>
>
>
Ví dụ 6: Xét phương trình:
,,, ,, ,
4 4 0y y y y
− − + =
*Bài giải
Phương trình đặc trưng:
3 2
4 4 0k k k
− − + =
1
2
2
k
k
k
=
⇔ =
= −
Nghiệm tổng quát:
2 2
1 2 3
. .
x x x
y C e C e C e
−
= + +
*Giải phương trình bằng maple:
>
10
>
>
2.Giải một số phương trình vi phân thỏa điều kiện ban đầu.
Thí dụ 1: Giải phương trình :
y’’ = x + cosx, biết y(0) = 1 , y’(0) = 3
*Bài giải
Từ (*) ta suy ra :
2
'
1
3
1 2
sinx
2
cos
6
x
y C
x
y x C x C
= + +
= + + +
Cho x =0 , y =1 => C
2
=1. Cho y’(0) = 3, ta có C
1
= 3. Vậy nghiệm
phương trình là :
3
1 2
cos
6
x
y x C x C
= + + +
*Giải phương trình bằng maple:
>
>
Hệ phương trình vi phân:
11
Ví dụ :Giải hệ phương trình:
3 2
2
dx
x y
dt
dy
x y
dt
= −
= −
Bài giải :
3 2
2
dx
x y
dt
dy
x y
dt
= −
= −
Vi phân hai vế hệ phương trình đầu ta có
2
2
2 0
d x dx
x
dt dt
− + =
2
2
3 2 3 2(2 ) 3
d x dx dy dx dx dx
x y x
dt dt dt dt dt dt
= − = − − = − −
Hay
2
2
2 0
d x dx
x
dt dt
− + =
Phương trình đặc trưng :
2
2 1 0
λ λ
− + =
2
2 1 0
λ λ
− + =
Có nghiệm
1
λ
=
bội 2.Do đó
x(t)=
1 2
t t
C e C te
+
1 2
t t
C e C te
+
2
1 2 1 2 2 1 2
1 1
( ) (3 ) (3 3 ) ( )
2 2 2
t t t t t
t
Cdx
y t x C e C te C e C e C te e C C t
dt
= − = + − − − = − +
2
1 2 1 2 2 1 2
1 1
( ) (3 ) (3 3 ) ( )
2 2 2
t t t t t
t
C
dx
y t x C e C te C e C e C te e C C t
dt
= − = + − − − = − +
Vậy nghiệm tổng quát của hệ là:
1 2
2
1 2
( )
( ) ( )
2
t t
t t
x t C e C te
C
y t C e C te
= +
= − +
12
Giải hệ phương trình bằng Maple:
>
>
13
C. Kết luận:
Maple là phần mềm tính toán khá phong phú, hỗ trợ hầu hết các lĩnh vực
của toán học. Do đó ứng dụng Maple vào tự học, tự nghiên cứu có thể kiểm
tra được kiến thức toán học của mình và tạo ra những tư duy mới về toán học.
Bài viết đã giới thiệu một số câu lệnh trên Maple 13.0 để giải phương trình
và hệ phương trình vi phân. Từ đó, người đọc sẽ thấy rằng, việc sử dụng phần
mềm Maple trong việc giải phương trình vi phân chỉ bằng những dòng lệnh
đơn giản tương tự như ngôn ngữ toán học thông thường sẽ từng bước giúp
sinh viên có thể kiểm tra lại các bước giải, góp phần tự học học phần này tốt
hơn. Qua các ví dụ minh hoạ về tính toán trên phần mềm Maple, người
học sẽ nắm được kiến thức toán học một cách sâu sắc hơn.
Đặc biệt, đối với sinh viên ngành Sư phạm toán, việc sử dụng các phần
mềm toán học vào tự học, tự nghiên cứu là cơ sở vững chắc giúp sinh viên
học tập tốt hơn các học phần được học ở trường Đại học cũng như đem lại
thành công trong việc đổi mới phương pháp dạy học hỗ trợ cho công tác
giảng dạy sau này.
D.Tài liệu tham khảo
Cơ sở phương trình vi phân và lý thuyết ổn định. Nguyễn Thế Hoàn - Phạm
Phu -NXB Giáo Dục
14