Tải bản đầy đủ (.doc) (54 trang)

Phương Pháp Giải Phương Trình Vi Phân Cấp Bốn Tổng Quát Và Phương Pháp Sai Phân

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 (282.51 KB, 54 trang )

Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

Lời nói đầu
Trong lĩnh vực toán ứng dụng thờng gặp rất nhiều bài toán có liên quan
tới phơng trình vi phân thờng. Việc nghiên cứu phơng trình vi phân thờng vì
vậy đóng một vai trò quan trọng trong lý thuyết toán học. Nhiều hiện tợng
khoa học và kỹ thuật dẫn đến các bài toán biên của phơng trình vật lý toán.
Giải các bài toán đó đến đáp số bằng số là một yêu cầu quan trọng của thực
tiễn. Trong một số ít trờng hợp, thật đơn giản việc đó có thể làm đợc nhờ vào
nghiệm tờng minh của bài toán dới dạng các công thức sơ cấp, các tích phân
hoặc các chuỗi hàm. Còn trong đại đa số trờng hợp khác, đặc biệt là đối với
các bài toán có hệ số biến thiên, các bài toán phi tuyến, các bài toán trên miền
bất kỳ thì nghiệm tờng minh của bài toán không có hoặc có nhng rất phức tạp.
Chính vì vậy chúng ta phải nhờ tới các phơng pháp xấp xỉ để tìm nghiệm gần
đúng.
Do nhu cầu của thực tiễn và của sự phát triển lý thuyết toán học, các
nhà toán học đã tìm ra rất nhiều phơng pháp để giải gần đúng các phơng trnhf
vi phân thờng (các phơng pháp giải tích nh phơng pháp chuỗi Taylo, phơng
pháp xấp xỉ liên tiếp Pica, các phơng pháp số nh phơng pháp một bớc, phơng
pháp Ađam, phơng pháp Runghe - Kuta,).
Trong phạm vi đồ án của mình, em xin trình bày một phơng pháp gần
đúng để giải phơng trình vi phân cấp bốn tổng quát và phơng pháp sai phân.
Đây là một trong hai lớp phơng pháp gần đúng quan trọng đợc nghiên cứu
nhiều và phơng pháp sai phân và phơng pháp phần tử hữu hạn. Cả hai phơng
pháp đều tìm cách đa bài toán đã cho về một bài toán đại số, thờng là một hay
nhiều hệ đại số tuyến tính. Trong phơng pháp này miền trong đó ta tìm
nghiệm của phơng trình thờng đợc phru bằng một lới gồm một số hữu hạn
điểm (nút), còn các đạo hàm trong phơng trình đợc thay bằng các sai phân tơng ứng của các giá trị của hàm tại các nút lới.
Đồ án đợc chia thành các chơng nh sau:


Chơng 1: Trình bày những khái niệm cơ bản cảu phơng pháp sai phân
tổng thông qua bài toán biến đổi với phơng trình vi phân cấp hai.
Chơng 2: Dùng phơng pháp sai phân để giải bài toán biên đối với phơng trình vi phân cấp bốn tổng quát một cách chi tiết.

SV: Nguyễn Viết Thanh

1


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

Phần phụ lục ở cuối là chơng trình và ví dụ minh hoạ.
Do hạn chế về thời gian cũng nh khả năng bản thân nên đồ án còn thiếu
xót. Rất mong đợc sự thông cảm và đóng góp ý kiến của thầy cô và các bạn.
Em xin cảm ơn thầy Lê Trọng Vinh đã tận tình hớng dẫn em trong thời
gian làm đồ án vừa qua.
Hà Nội, ngày 19 tháng 5 năm 2004
Sinh viên thực hiện
Nguyễn Viết Thanh

SV: Nguyễn Viết Thanh

2


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội


Chơng 1
Khái niệm mở đầu về phơng pháp sai phân
1.1. Mở đầu.

Trong chơng này để trình bày những khái niệm cơ bản của phơng pháp
sai phân ta sẽ xét bài toán biên đối với phơng trình vi phân cấp hai.
1.2. Khái niệm bài toán biên.

Bài toán biên có phơng trình vi phân cấp lớn hơn hoặc bằng hai và điều
kiện bốung đợc cho tại nhiều hơn một điểm.
Chẳng hạn bài toán biên đối với phơng trình vi phân tuyến tính cấp hai
có dạng:
[p(x)y'(x)k]' - q(x) y(x) = -f(x)

a
y(a) = ; y(b) =
Bài toán trên đợc gọi là bài toán biênloại một.
Nếu điều kiện biên y(a) = ; y(b) = đợc thay thế bởi điều kiện biên:
-p(a)y'(a) + 1y(a) = ; p(b) y'(b) + 2y(b) = thì ta có bài toán biên
loại ba nếu 1 0; 2 0; 1 +2 > 0. Còn nếu 1 = 2 = 0 thì ta có bài toán
biên loại hai.
Trong thực tế tat còn gặp những bài toán mà tại x = a và x = b có điều
kiện biên khác nhau (chẳng hạn tại x = a ta có điều kiện biên loại một còn tại
x = b ta có điều kiện biên loại hai hoặc ba) khi đó ta có bài toán biên hỗn hợp.
Sau đây ta sẽ xem xét các khái niệm về phơng pháp sai phân thông qua
bài toán biên loại một.
1.3. Bài toán vi phân.


Cho hai số a và b với a < b. Tìm hàm y = y(x) xác định tại a < x < b
thoả mãn:
Ly = -(py')' + qy = f(x)
y(a) = , y(b) =

SV: Nguyễn Viết Thanh

(1.1)
(1.2)

3


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

Trong đó p = p(x), q = q(x), f(x) là những hàm số cho trớc đủ trơn thoả
mãn:
0 < c0 p(x) c1, c0, c1 = const, q(x) 0.
còn , là những số cho trớc.
Giả sử bài toán (1.1) - (1.2) có nghiệm duy nhất y đủ trơn để [a, b].
1.4. Lới sai phân.

Ta chia đoạn [a, b] thành N đoạn con bằng nhau, mỗi đoạn con dài h=
(b - a)/N bởi các điểm x i = a + ih, i = 0, 1, , N. Mỗi điểm x i gọi là một nút lới, h gọi là bớc lới.
Tập h = {xi, 1 i n - 1} gọi là tập các nút trong.
Tập h = {x0, xn gọi là tập các nút biên.
Tập h = h h gọi là một lới trên [a, b].


a=x0 x1

xi

xN = b

1.5. Hàm lới.

Đó là những hàm số xác định tại các nút của lới h . Giá trị của hàm lới
tại nút xi viết là i.
Một hàm số y(x) xác định tại mọi x [a, b] sẽ tạo ra hàm lới y có giá
trị tại nút xi là yi = y(xi).
1.6. Đạo hàm lới.

Xét hàm lới . Đạo hàm lới tiến cấp một của . Ký hiệu là x, có giá trị
tại nút xi là:
xi =

i+1 i
h

Đạo hàm lới lùi cấp một của , ký hiệu là x , có giá trị tại nút xi là:

SV: Nguyễn Viết Thanh

4


Đồ án tốt nghiệp


xi =

Trờng ĐHBK Hà Nội

i i 1
h

Sau đây ta sẽ thấy rằng khi h bé thì đạo hàm lới "xấp xỉ" đợc đạo hàm
thờng (xem các công thức (1.5), (1.6), (1.7)).
Do đó có đạo hàm lới cấp hai xx :
xxi =

xi+1 xi i +1 i i i1 i +1 2 i + i 1
=

ữ=
h
h
h
h2



Nếu a là một hàm lới thì:

( a x ) xi =

a i+1 xi+1 a i xi a i +1 i+1 ( a i+1 +a i ) i + a i i1
=
h

h2

1.7. Qui ớc viết vô cùng bé.

Khái niệm "xấp xỉ" liên quan đến khái niệm vô cùng bé. Để viết các vô
cùng bé một cách đơn giản ta sẽ áp dụng qui ớc sau đây:
Giả sử đại lợng (h) là một vô cùng bé khi h 0. Nếu tồn tại số > 0
và hằng số M > 0 không phụ thuộc h sao cho:
(h) Mh
Thì ta viết:
(h)= O(h)
Viết nh trên có nghĩa là: khi h nhỏ thì (h) là một đại lợng nhỏ và khi h
0 thì (h) tiến đến số 0 không chậm hơn Mh.
1.8. Công thức Taylor.

Ta nhắc lại công thức Taylor ở đây vì nó là công thức quan trọng đợc sử
dụng để xấp xỉ bài toán vi phân bởi bài toán sai phân.
Giả sử F(x) là một hàm số xác định và có đạo hàm đến cấp m + 1 trong
một khoảng (, ) chứa x và x + x có thể dơng hay âm. Khi đó theo công
htức Taylor ta có:
F(x+x)=F(x)+xF'(x)+

SV: Nguyễn Viết Thanh

( x )
2!

2

( x ) m F (m) (x) + ( x ) F (m+1) (c)

F (x) + ... +
(1.3)
m!
( m + 1) !
m +1

5


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

Trong đó c là một điểm ở trong khoảng từ x đến x + x.
Có thể viết: c = x + x với 0 < < 1.
Ta giả thiết thêm:
F (m +1) (x) M = const,x [ , ]

( x ) ( ) F (m+1) c
( )
( m + 1) !
m +1

Khi đó

là một vô cùng bé khi x 0. Tức là tồn tại

hằng số K > 0 không phụ thuộc vào x sao cho:

( x ) F ( m+1) (c) K(x)(m+1)

( m + 1) !
(m+1)

Công thức Taylor ở trên có thể viết gọn hơn nh sau:
F(x+x) = F(x)+xF'(x) +

( x )

2

2!

F(x) + ... +

(x)m (m)
F (x) +O x)(m+1) (1.4)
m!

(

)

1.9. Liên hệ giữa đạo hàm và đạo hàm lới.

Giả sử hàm y(x) đủ trơn. Theo công thức Taylor (1.4) ta có:

( )

y ( x i+1 ) = y ( x i + h ) = y ( x i ) + hy' ( x i ) + O h 2
Ta suy ra

y xi =

y ( x i+1 ) y ( x i )
h

= y' ( x i ) + O ( h )

(1.5)

( )

y ( x i1 ) = y ( x i h ) = y ( x i ) hy' ( x i ) + O h 2

y xi =

y ( x i ) y ( x i1 )
h

= y' ( x i ) + O ( h )

(1.6)

Ngoài ra với quy ớc
h
x1+1 / 2 = x i + ,y i +1 / 2 = y ( x i+1 / 2 )
2
Ta còn
SV: Nguyễn Viết Thanh

6



Đồ án tốt nghiệp

y ( x i+1 )

Trờng ĐHBK Hà Nội
2

h
h
1 h

= y x i +1 / 2 + = y ( x i+1 / 2 ) + y' ( x i +1 / 2 ) + y" ( x i +1 / 2 ) + O h 3
2
2
2! 2

2

( )

h
h
1 h

y ( x i ) = y x i+1 / 2 = y ( x i +1 / 2 ) y' ( x i +1 / 2 ) + y" ( x i +1 / 2 ) + O h 3
2
2
2! 2



( )

Ta suy ra

( )

y ( x i+1 ) y ( x i ) = hy' ( x i+1 / 2 ) + O h 3
Do đó
y xi = y xi+1 =

x ( x i+1 ) y ( x i )
h

( )

y' ( x i +1 / 2 ) + O h 3

(1.7)

Đồng thời
y ( x i+1 ) + y ( x i )
2

( )

= y ( x i+1 / 2 ) + O h 2

(1.8)


1.10. Phơng pháp sai phân

Ta tìm cách tính gần đúng giá trị của nghiệm đúng y(x i) tại các nút
x i h . Gọi là các giá trị gần đúng đó là i. Muốn có i ta thay bài toán vi
phân (1.1) - (1.2) bởi bài toán sai phân:
L h ( a x ) + q i i = fi
0 = , N =

(1.9)
(1.10)

trong đó: ai = p(xi - h/2), qi = q(xi), fi = f(xi)
1.11. Giải bài toán sai phân (1.9) - (1.10) bằng phơng pháp truy đuổi

Viết cụ thể bài toán (1.9) - (1.10) ta có:

(

)

a i i1 a i + a i+1 + h 2 q i i + a i+1 i+1 = h 2 fi , i = 1,2,...N 1
o = , N =

(1.11)
(1.12)

Đó là một hệ số tuyến tính dạng ba đờng chéo có thể giải bằng phơng
pháp truy đuổi.
Xét hệ đờng chéo tổng quát


SV: Nguyễn Viết Thanh

7


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

A i y i 1 C i y i + B i y i +1 = Fi , i = 1,2,...N 1

(1.13)

y 0 = m1 y1 + n1 ,y N = m 2 y N 1 + n 2

(1.14)

Trong đó
A i > 0,B i > 0,D i = C i A i B i 0

(1.15)

0 m1 1,0 m 2 1,m1 + m 2 < 2

(1.16)

Nh vậy hệ (1.11) - (1.12) là trờng hợp riêng của hệ (1.13) - (1.14) khi:
A i = a i ,B i = a i +1 ,C i = a i + a i +1 + h 2 q i ,Fi = h 2 fi
m1 = 0,m 2 = 0, n1 = , n 2 =

1.11.1. Phơng pháp truy đuổi từ phải
Ta tìm nghiệm của hệ (1.13) - (1.14) ở dạng
y i = i+a y i+1 + i+1

(1.17)

Khi đã biết các i và i thì (1.17) cho phép tính các yi lùi từ phải sang
trái. Vì lẽ đó phơng pháp mang tên phơng pháp truy đuổi từ phải.
Để tính các i, i ta viết (1.17) trong đó thay i bởi i -1.
y i 1 = i y i + i
Thay y i 1 này vào (1.13), ta đợc:

( C i A i i ) y i = B i y i+1 + A ii + Fi

(1.18)

Do
Ci - Aii 0

(1.18)

Điều kiện này đợc thoả mãn nhờ giả thiết (1.15) - (1.16). Vì ta có:
Theo giả thiết (1.16), ta có 0 m1 1 nên 0 1 1 do đó:
C1 - A11 A1 + B1 - A11 = B1 + (1 - 1) A1 B1 > 0
0 < 2 =

B1
1
C 1 A 11


SV: Nguyễn Viết Thanh

8


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

Một cách tơng tự, giả sử 0 < 1 1, i = 2,k. Ta chứng minh đúng với i
= k + 1. Điều này rõ ràng vì
0 < k +1 =

Bk
Bk
=
1
Ck Akk ( Ck Ak Bk ) + B k + ( 1 k ) Ak

Ta suy ra:
C i A i i A i + B i A i i = B i + ( 1 i ) A i > B i > 0, i
Giả thiết (1.15) - (1.16) cũng là điều kiện đảm bảo cho công thức truy
đuổi ổn định.
Với điều kiện (1.19) thì (1.18) cho:
yi =

Bi
A + Fi
y i +1 + i i
Ci Aii

C i Aii

Đối chiếu với (1.17), ta suy ra
i+1 =

+ Fi
Bi
, i +1 = i
Ci Aii
C i Aii

(1.20)

Tại i = 0, công thức (1.17) viết
y 0 = m1 , i = n1

(1.21)

Sau đó từ (1.20) cho phép tính tất cả các i, i.
Bây giờ công thức (1.17) tại i = N - 1 viết
y N 1 = N y N + N
Kết hợp với công thức thứ hai của (1.14), ta đợc.

( 1 m2 N ) y N = n 2 + m2N

(1.12)

Do giả thiết (1.16) và các 0 < i 1, i = 2,, N (0 1 1) đã đợc chỉ
ra ở trên nên ta luôn có 1 - m2N > 0. Suy ra (1.22) cho:
yN =


n 2 + m2N
1 m2 N

Sau đó (1.17) cho phép tính ra các yi, i = N - 1, N - 2,0.

SV: Nguyễn Viết Thanh

9


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

Vậy thuật toán:
1 = m1 , 1 = n1
i+1 =
yN =

Bi
A + Fi
, i +1 = i i
, i = 2,..N
Ci Aii
C i Aii

n 2 + m2N
1 m2 N


y i = i+1y i+1 + i+1 ,i = N 1, N 2,....m,,2,0
1.11.2. Phơng pháp truy đuổi từ trái
Ta tìm nghiệm ở dạng
y i +1 = i+1 y i + i +1
Ta có thuật toán sau:
N = m 2 , N = n 2
i =

Ai
B + Fi
, i = i i+1
, i = 1,2,..., N 1
C i i +1 B i
C i i+1 B i

y0 =

n1 + m11
1 m11

y i +1 = i+1 + i +1 , i = 0,1,2,..., N 1
1.12. Sự ổn định của bài toán sai phân

Trớc hết để đo độ lớn của hàm lới = ( 0 , 1 ,... N ) R N +1 và hàm lới f
= (f1, f2,,fN-1) R N 1 , ta sử dụng các chuẩn.




= max { i } ,

0 i N

f



= max

1 N N 1

{f}
i

(1.24)

Định nghĩa. Nói bài toán sai phân (1.9) - (1.10) là bài toán ổn định nếu
nó có nghiệm duy nhất với mọi vế phải và điều kiện biên, đồng thời nghiệm
thoả mãn:




= K { f } + + K = const

(1.25)

ý nghĩa của bài toán ổn định là:
SV: Nguyễn Viết Thanh

10



Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

Bài toán sai phân có nghiệm duy nhất, đồng thời nghiệm đó phụ thuộc
liên tục vào vế phải của phơng trình sai phân và điều kiện biên, nghĩa là khi vế
phải của phơng trình sai phân và điều kiện biên thay đổi ít thì nghiệm cũng
thay đổi ít.
Bất đẳng thức (1.25) nói lên ý nghĩa đó, ta gọi đó là bất đẳng thức ổn
định của bài toán (1.9) - (1.10).
1.13. Sự xấp xỉ

Bằng công thức Taylor (1.4) ta có:
y ( x i+1 )
y xi =
a i+1

h2
h3
= y ( x i ) + hy' ( x i ) + y" ( x i ) + y"' ( x i ) + O h 4
2!
3!

( )

y ( x i+1 ) y ( x i )
h


h
h2
= y' ( x i ) + y" ( x i ) + y"' ( x i ) + O h 3
2
6

( )

h
h
h2

= p x i + = p ( x i ) + p ' ( x i ) + p" ( x i ) + O h 3
2
2
8


( )

h
( p ' ( x i ) y' ( x i ) + p ( x i ) y" ( x i ) )
2
1
1
1

+ h 2 p" ( x i ) y' ( x i ) + p ' ( x1 ) y" ( x i ) + p ( x i ) y"' ( x i ) + O h 3
4
6

8


a i+1 y xi = ( ky' ) ( x i ) +

( )

= ( py' ) ( x i ) +

h
1
1
1
( py' ) ( x i ) + h 2 p"y'+ p' y"+ py"' ( x i ) + O h 3
2
4
6
8


( )

Một cách tơng tự:
y xi =

y ( x i ) y ( x i1 )
h

= y' ( x i )


h
h2
y" ( x i ) + y"' ( x i ) + O h 3
2
6

( )

h
h
h

a i = p x i = p ( x i ) y" ( x i ) + p" ( x i ) + O h 3
2
2
8


( )

a i y xi = ( py' ) ( x i )

h
1
1
1
( py' ) ( x i ) + h 2 p"y'+ p ' y"+ py"' ( x i ) + O h 3
2
4
6

8


( )

Ta suy ra:

SV: Nguyễn Viết Thanh

11


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

( ay xi ) xi =

a i+1 y xi +1 a i y xi
= ( py' ) ' ( x i ) + O h 2
h

( )

Do đó:

( )

L h y i Ly i = i O h 2


(1.26)

Vì lẽ đó ta nói toán tử sai phân Lh xấp xỉ toán tử vi phân L tới cấp O(h2)
Hơn nữa, vì 0 - y0 = - = 0 và N - yN = - = 0 nên ta cũng nói:
bài toán sai phân (1.9) - (1.10) xấp xỉ bài toán vi phân (1.1) - (1.2)
1.14. Sự hội tụ

Định nghĩa. Gọi y(x) là nghiệm của bài toán vi phân (1.1) - (1.2) và i
là nghiệm của bài toán sai phân (1.9) - (1.0).
Nói phơng pháp sai phân (1.9) - (1.10) hội tụ nếu:
y



0 khi h 0

Tức là:
i, y ( x i ) 0 khi h 0

Hay:
i, i y ( x i ) khi h 0
Nói phơng pháp sai phân có cấp chính xác O(hm), m > 0 nếu:
Định lý. Phơng pháp sai phân (1.9) - (1.10) là phơng pháp hội tụ vơí cấp
chính xác O(h2).
Chứng minh. Đặt z = - y ta có:

(

L h z = ( az x ) + qz = a ( y ) z


{

)

x

+ q( y)

}

= ( a x ) + q ( ay x ) x + qy = f L h y
Theo (1.26):

( L h y ) i = ( Ly ) ( xi ) +

( )

i = O h 2

Theo (1.2) và (1.10):
SV: Nguyễn Viết Thanh

12


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

z0 = ( y ) 0 = 0 y0 = 0 y ( a ) = = 0

zN = ( y ) N = N yN = N y ( b ) = = 0
Vậy z thoả mãn

( L h z ) i = i , i = O ( h 2 )
z 0 = 0,z N = 0
Do đó, áp dụng bất đẳng thức ổn định (1.25) ta đợc:
z



= y



(

)

K + 0 + 0 = K Mh 2 , K, M = const > 0

Suy ra:
i, i y ( x i ) Mh 2

Định lý đợc chứng minh
1.15. Trờng hợp điều kiện biên loại b

p ( a ) y' ( a ) + 1 y ( a ) =
p ( b ) y' ( b ) + 2 y ( b ) =

1, 2, , - là những hằng số

1 0; 2 0; 1 + 2 > 0
Ta có:
y x1 =

y( a + h) y( a)
h


a1 = p a +


= y' ( a ) +

h
y" ( a ) + O h 2
2

( )

h
h
= p ( a ) + p ' ( a ) + O h2

2
2

( )

h
h


2
2
a i y xi = p p ( a ) + p' ( a ) + O h y' ( a ) + y" ( a ) + O h
2
2




( )

= p ( a ) y' ( a ) +

SV: Nguyễn Viết Thanh

( )

'
h
p ( a ) y' ( a ) ) + O h 2
(
2

( )

(1.27)

13



Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

Nh vậy, ta thấy nếu thay p(a)y'(a) a1 y x1 thì sai số địa phơng tại biên
chỉ đạt cấp O(h) do đó sẽ ảnh hởng đến sai số trên toàn lới. Để đạt đợc sai số
tại biên cấp O(h2), ta sử dụng thêm chính chơng trình (1.1) tại x = a.

( p ( a ) y' ( a ) )

'

= q( a) y( a) f ( a)

Thay đẳng thức này vào (2.17):
p ( a ) y' ( a ) = a1y x1

h
q ( a ) y ( a ) f ( a ) ) + H h2
(
2

( )

Bỏ qua O(h2) và thay hàm cần tìm y bởi , ta nhận đợc đẳng thức xấp xỉ
của điều kiện biên tại x = a, đạt sai số O(h2)
h
h



( a x ) + 1 + q ( a ) 0 = 0 + f ( a )
2
2


hoàn toàn tơng tự với biên x = b, ta có

( a x ) + 2 +


h
h

q ( b ) N = + f ( b )
2
2


Vậy ta có hệ phơng tình sau đối với bài toán biên loại ba.

( a ) q
i = 1, N 1
i i
x xi

h
h



( a x ) 1 + 1 + q ( a ) 0 = + f ( a )
2
2




h
h


( a x ) 1 + 2 + q ( b ) = + f ( b )
2
2



Đây là hệ đại số tuyến tính có ma trận hệ số dạng ba đờng chéo, giải đợc bằng công thức truy đuổi.
Thí dụ: Xét bài toán

( 1 x ) y" xy' = 2, 12 < x < 12
2

1
1
y = y = 0
2
2

SV: Nguyễn Viết Thanh


14


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

Giải ta chọn h =

1 1
1
, nghĩa là chia đoạn , làm 4 đoạn bằng nhau
4
2 2

bởi các điểm chia.
1
1
1
1
x 0 = ,x1 = ,x 2 = 0,x 3 = ,x 4 =
2
4
4
2
Ta có thể viết lại phơng trình đã cho nh sau:

(


)

1 x 2 y' ( x ) ' =

2
1 x2

2
Suy ra p ( x ) = 1 x ,q ( x ) = 0,f ( x ) =

2
1 x2

Nghiệm gần đúng i, i = 1, 2, 3 là nghiệm của hệ phơng trình sau:
i=0
0 = 0,

2
p i i1 ( p i + p i+1 ) i + p i+1 i+1 = h f1 i = 1,2,3

i=4
4 = 0
Tính các hệ số:
p1 =
f1 =

15
14
3
,p 2 = 1,p 3 =

,p 4 =
4
4
2
1

1
1
,f2 = ,f3 =
8
2 15
2 15

Thay số vào ta đợc.

SV: Nguyễn Viết Thanh

15


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

0 = 0


15
1
15



1
+

1 + 2 =
4 0
4
2 15




15
15
1
3 =
1 1 +
2 +
4
4
8



2+ 5 3
15
3
1
3 +

4 =
4 2
4
2
2 5


4 =0

(

)

Đây là hệ đại số tuyến tính dạng ba đờng chéo đợc giải theo phơng pháp
truy đuổi nêu ở trên.
Sau khi giải ra ta đợc kết quả.
1 = -0,19943,

2 = -0,26393,

3 = -0,20295

Ta có thể tìm đợc nghiệm tổng quát của phơng trình đã cho là:
y = ( arcsin x ) + C 1 arcsin x + C 2
2

Dựa vào các điều kiện biên, ta tìm đợc C1 = 0, C2 = -0,274156
Suy ra nghiệm riêng tơng ứng của phơng trình là
y = ( arcsin x ) 0,274156
2


So sánh với các nghiệm gần đúng tại các nút lới, ta có bảng kết qủa sau:
i
xi
Nghiệm gần đúng i Nghiệm đúng y(xi)
0
-0.5
0
0
1
-0.25
-0.19943
-0.21031
2
0
-0.26393
-0.27415
3
0.25
-0.2095
-0.21031
4
0.5
0
0
Sai số đạt: max
{ i y(x i ) } 0.01
i = 0,4

Chơng 2

Phơng pháp sai phân giải gần đúng phơng trình
vi phân cấp bốn

SV: Nguyễn Viết Thanh

16


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

Trong chơng một ta đã xét các khái niệm của phơng pháp sai phân
thông qua bài toán biênđói với phơng trình vi phân cấp hai nhằm hiểu đợc t tởngcủa phơng pháp. Chơng này đi vào nội dung chính của đồ án là dùng phơng pháp sai phân để giải gần đúng phơng trình vi phân cấp bốn tổng quát một
cách chi tiết.

1.1. Bài toán vi phân.
Cho hai số a và b với a < b. Tìm hàm y = y(x) xác định tại a < x < b
thoả mãn:
Ly = [ p(x)y"] "+[ q(x)y' ] ' + g(x)y = f(x)

(2.1)

y(a) = ya, y(b)= yb, y'(a) = y'a, y'(b) = y'b

(2.2)

Trong đó:
p = p(x) liên tục và các đạo hàm p', p" liên tục
q = q(x) liên tục và đạo hàm q' liên tục.

G(x), f(x) là những hàm số liên tục.
Đồng thời:
0 < c0 q(x) c1
0 < c2 p(x) c3

(c0, c1, c2, c3 = const)

g(x) 0
p(x), q(x), g(x), f(x) là những hàm số cho trớc.
ya, yb, y'a, y'b là những hàm số liên tục cho trớc.
Định lý về sự tồn tại và duy nhất nghiệm.
Phơng trình (1.1) có dạng:
y (IV) =

f(x) g(x)
q'(x)
p"(x) +q(x)
2p '(x)

y
y'
y"
y"'(b(x) 0)
p(x) p(x)
p(x)
p(x)
p(x)

= F(x, y, y', y", y"')


(2.3)

Nếu:

SV: Nguyễn Viết Thanh

17


Đồ án tốt nghiệp

F(x,y,y',y",y"'),

Trờng ĐHBK Hà Nội

F
F
F
(x,y,y',y",y'"),
(x,y,y',y",y"'),
(x,y,y', y",y"') và
y
y'
y"

F
(x,y,y',y",y"')
y"'
Liên tục trong một miền D nào đó trong R 5 và nếu (x0,y0,y'0,y"0,y"'0) là
một điểm thuộc D thì trong một lân cận nào đó của điểm x = x 0, tồn tại một

nghiệm duy nhất y = y(x) của phơng trình (2.3) thoả mãn các điều kiện:
y

x=x0

= y 0 ,y'

x=x0

= y' 0 ,y

x=x0

= y 0 ,y

x=x 0

= y 0

Xem [5] phần tài liệu tham khảo.

1.2. Lới sai phân.
Ta chia đoạn [a,b] thành N đoạn con bằng nhau, mỗi đoạn con dài h=(ba)/ N bởi các điểm xi= a +ih(i= 0,1,,N). Mỗi điểm xi gọi là một nút lới, h gọi
là bớc lới.

a = x0

x1

xi


xN = b

Tập h = {xi, 2 i N - 2} gọi là tập các nút trong.
Tập h = {x0, x1, xN-1, xN} gọi là tập các nút biên.
Tập h = h h gọi là một lới trên [a, b]
1.3. Hàm lới.
Đó là những hàm số xác định tại các nút của lới h . Giá trị của hàm lới
tại nút xi viết là i.
Một hàm số y(x) xác định tại mọi x [a, b] sẽ tạo ra hàm lới y có giá
trị tại nút xi là yi = y(xi).
1.4. Đạo hàm lới.
Giả sử hàm y(x) đủ trơn. Theo công thức Taylor, ta có:
SV: Nguyễn Viết Thanh

18


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

y(xi+1) = y(xi + h) = y(xi) + hy'(xi) + O(h2)
Ta suy ra:
y xi =

y(x i +1 ) y(x i )
= y'(x i ) +O(h)
h


(2.4)

y(xi+1) = y(xi - h) = y(xi) - hy'(xi) + O(h2)
y xi =

y(x i ) y(x i1 )
= y'(x i ) +O(h)
h

(2.5)

(2.4) và (2.5) nh ta đã biết gọi là đạo hàm lới tiến và lùi cấp một của y.
h
x i + 1 = x i + ,y i + 1 = y(x i + 1 )
2
2
2
2

Qui ớc:
Ta còn có:
y ( x i+1 )

( )

( )

( )

( )


2

( )

h
h
1 h

= y x i + 1 + ữ = y x i+ 1 + y' x i+ 1 + ữ y x i+ 1 +O(h 3 )
2
2
2
2
2
2
2! 2

2

( )

h
h
1 h

y ( x i ) = y x i + 1 ữ = y x i+ 1 y' x i+ 1 + ữ y x i+ 1 +O(h 3 )
2
2
2

2
2
2
2! 2

Ta suy ra:

( ) + O( h )

y ( x i+1 ) y ( x i ) = hy' x i+ 1

3

2

Do đó:
y xi = y xi+1 =

( )

y(x i+1 ) y(x i )
y' x i+ 1 +O h 2
2
h

( )

(2.6)

Đồng thời:


( )

y(x i+1 ) y(x i )
= y x i+ 1 +O(h 2 )
2
2

(2.7)

y(x i+1 ) y(x i 1 )
= y'(x i )+ O(h 2 )
2h

(2.8)

( ) y ( x ) = y'(x ) +O h ữ ữ= y '(x ) +O ( h )

y x i+ 1

i- 1

2

h

SV: Nguyễn Viết Thanh

2


2

i

2 ữ



2

i

(2.9)

19


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

1.5. Phơng pháp sai phân
Giả sử bài toán vi phân (2.1)- (2.2) thoả mãn định lý về sự tồn tại và
duy nhất nghiệm, ta tìm cách tính gần đúng giá trị của nghiệm đúng (y(x i) tại
các nút xi Q h
Gọi các giá trị gần đúng đó là i. Muốn có i ta thay bài toán vi phân
(2.1) - (2.2) bởi bài toán sai phân tơng ứng.
Đặt (x) = (p(x)y")'
Từ (2.9) ta suy ra:
i+ 1 i- 1

2

( )

'(x i ) = O h 2

2

h

'(xi) = (p(x)y")"i
Theo (2.6) ta có:

( )

y i y i1
y' x i- 1 = O h 2
2
h

(

( )

)

i+ 1 = p i+ 1 yi+ 1 ' = ( py ) i+ 1 2 =
2

2


2

h

+O(h 2 ) (theo 2.6)

( )

(

)

i1- 1 = p i- 1 y i- 1 ' = ( py ) i- 1 2 =
=

( py) i+1 ( py) i

p i+1 yi+1 p i y i
+O h 2
h

=

2

(2.10)

2


2

(2.11)

( py) i+1 ( py) i1

p i y i p i1 y i1
+O h 2
h

( )

h

+O(h 2 ) (theo 2.6)
(2.12)

Ta có:
y i +1

h2
h3
= y(x i +1 ) = y ( x i + h ) = y ( x i ) + hy' ( x i ) + y ( x i ) + y ( x i ) + O h 4
2
6

y i 1 = y(x i1 ) = y ( x i h ) = y ( x i ) hy' ( x i ) +
SV: Nguyễn Viết Thanh

( )


h2
h3
y ( x i ) y ( x i ) + O h 4
2
6

( )
20


§å ¸n tèt nghiÖp

Trêng §HBK Hµ Néi

Céng vÕ víi vÕ hai ®¼ng thøc trªn ta ®îc:

( )

y ( x i +1 ) +y ( x i −1 ) = 2y(x1 ) +h 2 y ′′ ( x i ) +O h 4
Suy ra:
y ( x i+1 ) − 2y ( x i ) + y ( x i−1 )
h

2

( )

= y′′ ( x i ) +O h 2


y i+1 − 2y i + y i−1 y xi − y xi
=
= y′′ ( x i ) +O(h 2
2
h
h

Hay

(2.13)

Thay (2.23) vµo (2.11) ta ®îc:
ωi+ 1 =
2

1
 y − 2y i+1 +y i

 y − 2y i + y i−1

p i+1  i+2
+O h 2 ÷ − p i  i+1
+O h 2 ÷ + O h 2

2
2
h
h
h






( )

( )

( )

y − 2y i +1 + y i
y i+1 − 2y i + y i−1 
1
=  p i +1 i+2

p
+O h 2
i
÷
2
2
h
h
h


( )

Thay (2.13) vµo (2.12) ta ®îc:
ωi− 1 =

2

1   y i+1 − 2y i +y i−1

 y − 2y i−1 + y i−2

pi 
+O h 2 ÷ − p i −1  i
+O h 2 ÷ + O h 2

2
2
h 
h
h




( )

( )

( )

y i − 2y i−1 + y i−2 
1  y − 2y i + y i−1
2
=  p i i+1


p
÷+ O h
i −1
2
h
h2
h


( )

• §Æt Z(x) = q(x)y'(x)
Còng tõ (2.9) ta suy ra:
 y − yi

Z i+ 1 = q i+ 1 y ′i + 1 = q i + 1  i+1
+ O h2 ÷
2
2
2
2 
h


( )

 y − y i−1

Z i− 1 = q i− 1 y ′i− 1 = q i − 1  i
+ O h2 ÷

2
2
2
2 
h


( )

 q(x)y' ( x) )  i = Z' ( x i ) =
'

SV: NguyÔn ViÕt Thanh

Z i+ 1 − Z i− 1
2

h

2

( )

+ O h2

21


§å ¸n tèt nghiÖp


Trêng §HBK Hµ Néi

=

1
 y − yi

 y − y i−1

q i+ 1  i+1
+O h 2 ÷ − q i− 1  i
+ O h 2 ÷ + O h 2

2
2
h
h
h



=

y − y i−1 
1
 y − yi
q i+ 1  i+1
− q i− 1 i
+ O h2
÷

2
2
h
h
h


( )

( )

( )

( )

ThËt vËy:
y i +1

h2
h3
′′
= y(x i+1 ) = y(x i + h) = y(x i ) +hy'(x i ) + y (x i ) + y ′′′(x i ) +O(h 4 )
2
6

y xi =
y i −1

y ( x i+1 ) − y(x i )
h


= y' ( x i ) +

h
h2
y ′′(x i ) + y ′′′(x i ) +O h 3
2
6

( )

h2
h3
′′
= y(x i−1 ) = y(x i − h) = y(x i ) − hy'(x i ) + y (x i ) − y ′′′(x i ) + O(h 4 )
2
6

y(x i ) − y(x i −1 )
h
h2
y xi =
= y'(x i ) − y ′′ ( x i ) + y ′′′ ( x i ) + O h 3
h
2
6

( )

(Gi¶ thiÕt: y IV (x) ≤ K)

2

q i+ 1

2

h
h
1 h

= q  x i + ÷ = q ( x i ) + q' ( x i ) +  ÷ q ′′ ( x i ) +O h 3
2
2
2!  2 


( )

2

q i− 1
q i+ 1

2

2

h
h
1 h


= q  x i − ÷ = q ( x i ) y − q' ( x i ) +  ÷ q ′′ ( x i ) +O h 3
2
2
2!  2 


( )

y i+1 − y i−1
h
= q(x i )y' ( x i ) + ( q ( x i ) y ′′ ( x i ) + q' ( x i ) y' ( x i ) ) +
h
2
h2  1
1
1

+  q ( x i ) y ′′′ ( x i ) + q' ( x i ) y ′′ ( x i ) + q ′′ ( x i ) y' ( x i ) ÷ +O h 3
2 3
2
4


( )

q i− 1

2


y i − y i−1
h
= q(x i )y' ( x i ) − ( q ( x i ) y ′′ ( x i ) + q' ( x i ) y' ( x i ) ) +
h
2
h2  1
1
1

+  q ( x i ) y ′′′ ( x i ) + q' ( x i ) y ′′ ( x i ) + q ′′ ( x i ) y' ( x i ) ÷ +O h 3
2 3
2
4


( )

SV: NguyÔn ViÕt Thanh

22


Đồ án tốt nghiệp

' ( x i ) =

Trờng ĐHBK Hà Nội

1
h ( q(x)y'(x) ) ' i +O h 3 = ( q(x)y'(x) ) ' i +O h 2


h

( )

=

( )

y yi
y y i1
1
q i+ 1 i +1
q i 1 i


2
2
h
h
h


Vậy:
y i+1 y i
y i y i 1
1
q

q

= [ q(x)y'(x) ] ' i +O h 2
1
1


i+
i
2
2
h
h
h


( )

Tơng tự, ta có thể chỉ ra rằng:

[ q(x)y(x)] =

y i +2 2y i+1 + y i
y i+1 2y i + y i1
y i 2y i1 + y i2
1
p

2p
+
p
i +1

i
i 1

h 2
h2
h2
h2


( )

+ O h2

Bằng cách khai triển các yi tới đạo hàm cấp 5 theo công thức Taylor, với giả
thiết y VI (x) C
Đặt i y (xi), coi i là nghiệm gần đúng của y(xi) và bỏ qua các vô
cùng bé của h ta đợc phơng trình sau:
i+2 2 i+1 + i
2 i + i=1
2 i 1 + i2
1
p
2p i i+1
+p i1 i
2 i +1
2
2
h
h
h

h2


ữ+


i
i1
1
+ q i+ 1 i+1
q i 1 i
ữ + g i i = fi
2
2
2
h
h

Viết lại:

(

)

(

)

p i1 i2 2p i + 2p i 1 h 2 q i 1 i1 + p i +1 + 4p i +p i 1 h 2 q i+ 1 +q i 1 + h 2 g i i



2
2
2

(

)

2p i+1 + 2p i h 2 q i+ 1 i +1 +p i +1 i +2 = h 4 fi
2

Trong đó:
h
h


q i + 1 = q x i = ữ,q i 1 = q x i ữ
2
2
2
2



SV: Nguyễn Viết Thanh

23



Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

p i = p ( x i ) ,g i = g ( x i ) ,fi = f ( x i )
Có thể tính:
q i+ 1 =
2

q i 1 =

q ( x i+1 ) + q ( x i )
2
q ( x i ) + q ( x i 1 )

2

2

+O ( h 2 )
+O ( h 2 )

Đặt:
A i = p i1 ,B i = 2p i = 2p i1 h 2 .q i 1

(

2

)


C i = p i+1 + 4p i +p i 1 h 2 q1+ 1 + q i 1 + h 4 g i
2

2

D i = 2p i+1 + 2p i h 2 q i+ 1 ,
2

E i = p i+1 ,Fi = h 4 fi
Ta có phơng trình sau:
Aii-2 - Bii-1 + Cii - Dii+1 + Eii+2 = Fi, 2 i N - 2

(2.14)

Kết hợp với các điều kiện biên (2.2), ta có:
y(a) = y a 0 = y a
y(b) = y b 0 = y b
y'(a) = y' x =a = y' 0 =

y1 y 0 h
h
y 0 +O(h 2 ) = y x1 y 0 + O(h 2 ) = y' a
h
2
2

Bây giờ, ta cần xấp xỉ đạo hàm y"0 tại điểm x0 = a:
y 0 = y(a) = y 0
h2

y1 = y(a + h) = y 0 =hy' 0 + y 0 +O(h 3 )
2
(2h 2 )
y 2 = y(a + 2h) = y 0 = 2hy' 0 +
y 0 +O(h 3 )
2
Nhân cả hai vế của đẳng thức ý với (-2) sau đó cọng với hai đẳng thức y 0 và y2
ở trên, ta đợc:

SV: Nguyễn Viết Thanh

24


Đồ án tốt nghiệp

Trờng ĐHBK Hà Nội

y 0 2y1 + y 2
= y0 +O(h) f
h2
Mà:
y 2 y1 y 1 y 0

y 0 2y1 + y 2
y y x1
h
h
=
= x2

= y xx1
2
h
h
h
y0 = y xx1 +O(h)
Vậy:
h
h
y'0 = y x1 (y xx1 +O(h)) +O(h 2 ) = y x1 y xx1 +O(h 2 ) = y' a y
2
2
Trong đó:
y x1 =

y1 y 0
y 2y1 + y 2
y
; y xx1 = 0
h
h2

Thay vào, ta có:
y1 y 0
1
( y 0 2y1 + y 2 ) + O(h 2 )
h
2h
1 3
1

= y 0 = 2y1 y 2 ữ +O h 2 = y'a
h 2
2

y'0 =

( )

Thay y bởi và bỏ qua sai số địa phơng cấp 2 O(h2), ta đợc:
1 3
1
0 + 21 2 ữ = y'a

h 2
2
-30 + 41 - 2 = 2hy'a
Tơng tự với điều kiện biên y'(b) = y'b, ta có:
y'(b) = y' x=b = y' N =

y N y N 1 h
+ y N +O(h 2 ) = y' b
h
2

Ta cần xấp xỉ đạo hàm cấp 2 y"N tại xN= b:

SV: Nguyễn Viết Thanh

25



×