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

Phương pháp sai phân giải gần đúng phương trình vi phân tuyến tính

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 (569.18 KB, 77 trang )

Mục lục
Lời nói đầu .. 3
Chơng 1.

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

1.1. Mở đầu 5
1.2. Khái niệm về bài toán biên .. .. 5
1.3. Bài toán vi phân . 5
1.4. Lới sai phân . 6
1.5. Hàm lới . 6
1.6. Đạo hàm lới .. 6
1.7. Qui ớc viết vô cùng bé .. 7
1.8. Công thức Taylor 7
1.9. Liên hệ giữa đạo hàm và đạo hàm lới ... 8
1.10. Phơng pháp sai phân ... 9
1.11. Giải bài toán sai phân bằng phơng pháp truy đuổi . 9
1.11.1. Phơng pháp truy đuổi từ phải ...10
1.11.2. Phơng pháp truy đuổi từ trái 11
1.12. Sự ổn định của bài toán sai phân 12
1.13. Sự xấp xỉ …………………………………………………………… . 12
1.14. Sù héi tô …………………………………………………………… .. 13
1.15. Trêng hợp điều kiện biên loại ba 14
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 18
2.1. Bài toán vi phân 18
2.2. Lới sai phân 19
2.3. Hàm lới .. 19
2.4. Đạo hàm lới 19

1



2.5. Phơng pháp sai phân ... 20
2.6. Cách giải bài toán sai phân ... 27
2.6.1. Phơng pháp lặp Seidel co dÃn 27
2.6.2. Phơng pháp truy đuổi 28
2.6.2.1. Phơng pháp truy đuổi từ phải ... 28
2.6.2.2. Phơng pháp truy đuổi từ trái . 31
2.6.2.3. Sự ổn định .. 34
2.7. Sự xấp xỉ ... 37
2.8. Sự ổn định của bài toán sai phân .. 37
2.9. Bài toán sai phân đối với sai số ……………………………………… 49
2.10. Sù héi tơ vµ sai sè ………………………………………………….. 50
Phơ lục .. 58
Tài liệu tham khảo 84

2


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 trình 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,).
Đề tài: "Phơng pháp sai phân giải gần đúng phơng trình vi phân

tuyến tính"
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 là 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 là 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
3


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 phủ 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.
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 12 2003

Sinh viên thực hiƯn
Ngun §øc Dịng

4



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 về 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ổ
sung đợ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)] ′ − q( x) y ( x) = − f ( x)

a< x
y (a ) = α ; y (b) = β

Bµi toán trên đợc gọi là bài toán biên loạ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 ) + σ 1 y (a ) = α ; p (b) y ′(b) + σ 2 y (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ế ta 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 1 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 thỏa mÃn:
Ly = − ( py′ )′ + qy = f ( x)
y(a) = α , y(b) = β

(1.1)
(1.2)

trong ®ã p = p( x) , q = q ( x) , f ( x) là những hàm số cho trớc đủ trơn tháa m·n:
0 < c0 ≤ p ( x) ≤ c1 , c0 , c1 = const ,

q( x) ≥ 0

5


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 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 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.
ã 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

1.5

xi

x1

xN = b

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 v tại nút
xi viết là vi .

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 v . Đạo hàm lới tiến cấp một của v . Ký hiệu là v x , có giá trị tại nút
xi là:
v xi =

vi +1 vi
h

Đạo hàm lới lùi cấp mét cđa v , ký hiƯu lµ v x , có giá trị tại nút xi là:
vxi =

vi vi 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) ).
6


Do đó có đạo hàm lới cấp hai vxx :
v xxi =

v xi +1 − v xi 1  vi +1 − vi vi − vi −1  vi +1 − 2vi + vi −1
= 

=
h
h h

h 
h2

NÕu a lµ một hàm lới thì:
(av x ) xi =

1.7

ai +1v xi +1 − ai v xi ai +1vi +1 − (ai +1 + ai )vi + ai vi −1
=
h
h2

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) = (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 , x có thể dơng hay âm. Khi đó theo công thức
Taylor ta có:
F ( x + ∆x) = F ( x) + ∆xF ′( x) +

(∆x) 2
(∆x) m ( m )
(∆x) m +1 ( m +1)
F ′′( x) + ... +
F ( x) +
F
(c) (1.3)
2!
m!
( m + 1)!

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 ∈ [α , β ]

7



Khi đó

(x ) ( m+1) ( m+1)
F
(c ) là một vô cùng bé khi x 0 . Tức là tồn tại hằng số
( m + 1)!

x
K > 0 không phơ thc vµo ∆ sao cho:

(∆x ) ( m +1) ( m +1)
F
(c) ≤ K (∆x ) ( 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 ) +

1.9

(∆x) 2
(∆x) m ( m )
F ′′( x ) + ... +
F ( x) + ((x ) ( m +1) )
2!
m!

(1.4)


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 ( xi +1 ) = y ( xi + h) = y ( xi ) + hy′( xi ) + Ο(h 2 )

Ta suy ra
y xi =

y ( xi + 1 ) − y ( xi )
= y ′ ( xi ) + Ο (h)
h

(1.5)

y ( xi −1 ) = y ( xi − h) = y ( xi ) − hy′( xi ) + Ο(h 2 )
y xi =

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

(1.6)

Ngoµi ra víi qui íc:
xi + 12 = xi +

h
, yi + 12 = y ( xi + 12 )
2


Ta cßn cã
2

h
h
1 h
y ( xi +1 ) = y ( xi + 12 + ) = y ( xi + 12 ) + y′( xi + 12 ) +   y′′( xi + 12 ) + Ο(h 3 )
2
2
2!  2 
2

h
h
1 h
y ( xi ) = y ( xi + 12 − ) = y ( xi + 12 ) − y′( xi + 1 2 ) +   y′′( xi + 1 2 ) + Ο(h 3 )
2
2
2!  2 

Ta suy ra
y ( xi +1 ) − y ( xi ) = hy′( xi + 12 ) + Ο(h 3 )

Do ®ã

8


y xi = y xi + 1 =


y ( xi + 1 ) − y ( xi )
= y ′ ( xi + 1 2 ) + Ο (h 2 )
h

(1.7)

§ång thêi
y ( xi + 1 ) + y ( xi )
= y ( xi + 12 ) + Ο ( h 2 )
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 ( xi ) tại các nút xi h . Gọi
các giá trị gần đúng đó là vi . Muốn có vi ta thay bài toán vi phân (1.1) (1.2) bởi
bài toán sai phân:
Lh v (av x ) xi + qi vi = f i

(1.9)

v0 = α , v N = β

(1.10)

trong ®ã: ai = p( xi − h 2 ) , qi = q( xi ) , f i = 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ó:

ai vi 1 (ai + ai +1 + h 2 qi )vi + ai +1vi +1 = −h 2 f i , i = 1,2,..., N − 1
v0 = α , v N =

(1.11)
(1.12)

Đó là một hệ đại 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ệ ba đờng chéo tổng quát:
Ai y i 1 C i yi + Bi y i + 1 = − Fi , i = 1,2,..., N − 1

(1.13)

y 0 = m1 y1 + n1 , y N = m2 y N −1 + n2

(1.14)

trong ®ã:
Ai > 0 , Bi > 0 , Di = Ci − Ai − Bi ≥ 0

(1.15)

0 ≤ m1 ≤ 1, 0 ≤ m2 ≤ 1, m1 + m2 < 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:
Ai = ai , Bi = ai +1 , C i = ai + ai +1 + h 2 qi , Fi = h 2 f i
m1 = 0 , m2 = 0 , n1 = α , n 2 = β


9


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:
yi = α i + 1 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 y i 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:

( Ci Ai i ) yi = Bi yi+ 1 + Ai β i + Fi

(1.18)

Do
Ci Ai i 0

(1.19)

Điều kiện này đợc thỏa 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 A1α 1 ≥ A1 + B1 − A1α 1 = B1 + (1 − α 1 ) A1 ≥ B1 > 0
⇒ 0 < α2 =


B1
≤1
C1 − A1α 1

Mét c¸ch tơng tự, giả sử 0 < i 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
C k − Ak α k ( C k − Ak − Bk ) + Bk + (1 − α k ) Ak

Ta suy ra:
C i − Aiα i ≥ Ai + Bi − Aiα i = Bi + (1 − α i ) Ai > Bi > 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

C i − Aiα i
C i − Aiα i

§èi chiÕu víi (1.17) , ta suy ra:

10


α i+ 1 =

Bi
Aβ + F
, β i+ 1 = i i i
Ci − Aiα i
Ci − Aiα i

(1.20)

T¹i i = 0 , c«ng thøc (1.17) viÕt:
y 0 = α1 y1 + 1

Đối chiếu với công thức thứ nhất của (1.14) , ta suy ra:
α 1 = m1 , β 1 = 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 ) yN = n2 + m2 β N

(1.22)

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 m2α N > 0 . Suy ra (1.22) cho:
yN =

n2 + m 2 β N
1 − m2α N

(1.23)

Sau ®ã (1.17) cho phÐp tÝnh ra c¸c y i , i = N −1, N − 2...,0 .
VËy cã thuËt to¸n:
α1 = m1 , β1 = n1
Bi
A β + Fi
α i +1 =
, β i +1 = i i
,
Ci − Aiα i
Ci − Aiα i
yN =

i = 2,..., N

n2 + m2 β N

1 − m2α N

yi = α i +1 yi +1 + β i +1 ,

i = N − 1, N 2,...,2,1,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 = m2 , η N = n2

11


ξi =

Ai
B η + Fi
, η i = i i +1
,
C i − ξ i +1 Bi
C i − ξ i +1 Bi

y0 =

n1 + m1η1
1 − m1ξ 1


y i +1 = ξ i +1 y i + η i +1 ,

i = 1,2,..., N − 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 v = (v0 , v1 ,..., vN ) ∈ R N +1 vµ hµm líi
f = ( f 1 , f 2 ,..., f N −1 ) ∈ R N −1 , ta sư dơng c¸c chn:

v ∞ = max{ vi } ,
0≤ i ≤ N

f ∞ = max { f i }

(1.24)

1 i N 1

Đị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 thỏa mÃn:
v K{ f ∞ + α + β } ,

K = const

(1.25)

ý nghÜa của bài toán ổn định là:
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ã:

( )

h2
h3
′′( xi ) +
y
y ′′′( xi ) + Ο h 4
2!
3!
y ( xi +1 ) − y ( xi )
h
h2
⇒ y xi =
= y ′( xi ) + y ′′( xi ) +
y ′′′( xi ) + Ο h 3
h
2
6
y ( xi +1 ) = y ( xi ) + hy ′( xi ) +

( )

( )


a i +1 y xi

h
h
h2

a i +1 = p ( xi + ) = p ( xi ) + p ′( xi ) +
p ′ ( xi ) + Ο h 3
2
2
8
h
1
1 ′


= ( ky ′)( xi ) + ( p ′( xi ) y ′( xi ) + p ( xi ) y ′ ( xi ) ) + h 2  p ′ ( xi ) y ′( xi ) + p ′( xi ) y ′ ( xi ) +
2
4
8
+
= ( py ′)( xi ) +

( )

1


p ( xi ) y ′′( xi )  + Ο h 3

6


( )

h
( py ′)′ ( xi ) + h 2 1 p ′′y ′ + 1 p ′y ′′ + 1 py ′′′( xi ) + Ο h 3
8

2
4
6



12


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

a i y xi

y ( xi ) − y ( xi −1 )
h
h2
= y ′( xi ) − y ′′( xi ) +
y ′′′( xi ) + Ο( h 3 )
h
2

6
h
h
h2
ai = p ( xi − ) = p ( xi ) − p ′( xi ) +
p ′′( xi ) + Ο( h 3 )
2
2
8
1
h
1
1


= ( py ′) ( xi ) − ( py ′) ( xi ) + h 2  p ′′y ′ + p ′y ′′ + py ′′′( xi ) +Ο( h 3 )
2
8
4
6



Ta suy ra:

( ay x ) xi

=

ai +1 y xi +1 − ai y xi


= ( py ′ ) ( x i ) + Ο h 2
h

( )

Do ®ã:
Lh yi − Lyi = ϕ i ,

()

ϕ i = h2

(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 ( h 2 ) .
Hơn nữa, vì v0 y0 = α − α = 0 vµ v N − y N = β − β = 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à vi là
nghiệm của bài toán sai phân (1.9) (1.10) .
Nói phơng pháp sai phân (1.9) −(1.10) héi tô nÕu:
v− y



→ 0 khi h → 0

tøc lµ:

∀i , vi − y ( xi ) → 0 khi h → 0

hay:
∀i , vi → y ( xi ) khi h 0

Nói phơng pháp sai phân có cÊp chÝnh x¸c Ο(h m ) , m > 0 nếu:
v y



= ( h m )

Định lý. Phơng pháp sai phân (1.9) (1.10) là phơng pháp hội tụ với cấp
chính x¸c Ο(h 2 ) .

13


Chứng minh. Đặt z = v y ta có:
Lh z = − ( az x ) x + qz = − ( a( v − y ) z ) x + q( v − y )

= − ( av x ) x + qv − { − ( ay x ) x + qy} = f − Lh y

Theo (1.26) :

( Lh y ) i = ( Ly ) ( xi ) + ϕ i ,

ϕ i = Ο (h 2 )

Theo (1.2) vµ (1.10) :

z 0 = ( v − y ) 0 = v0 − y 0 = v0 − y (a) = α − α = 0

z N = ( v − y ) N = v N − y N = v N − y (b) = β − β = 0

VËy z tháa m·n:

( Lh z ) i

= −ϕ i , ϕ i = Ο(h 2 )

z0 = 0 , z N = 0

Do đó, áp dụng bất đẳng thức ổn định (1.25) ta ®ỵc:
z



= v−y



(

≤K ϕ



)

+0 +0 =K ϕ




≤ Mh 2 , K , M = const > 0

Suy ra:
∀ , vi − y ( xi ) Mh 2
i

Định lý đợc chứng minh.

1.15 Trờng hợp điều kiện biên loại ba
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ã:

14


y ( a + h) − y ( a )
h
= y ′(a ) + y ′′(a) + Ο (h 2 )
h
2
h
 h
a1 = p a +  = p (a) + p ′(a ) + Ο ( h 2 )

2
 2
h
h



⇒ a1 y x1 =  p (a ) + p ′(a ) + Ο ( h 2 )   y ′( a) + y ′′(a ) + Ο (h 2 ) 
2
2



h
= p (a ) y ′(a ) + [ p ′(a) y ′(a) + p( a) y ′′(a)] + Ο ( h 2 )
2
h

= p (a ) y ′(a ) + ( p( a) y ′( a) ) + Ο ( h 2 )
2
y x1 =

(1.27)

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
)
(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


h2 ) ,
(

ta sử dụng thêm chính phơ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 ) = a1 y x1 −

h
( q ( a ) y ( a ) − f ( a ) ) + Ο( h 2 )
2

Bá qua (h 2 ) và thay hàm cần tìm y bởi v , 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ố Ο(h 2 ) :
h
h


− ( av x ) 1 + σ 1 + q (a )v0 = α + f ( a)
2
2



Hoàn toàn tơng tự với biên x = b , ta cã:

( av x ) N

h

h


+ σ 2 + q (b) v N = β + f (b)
2
2



VËy ta có hệ phơng trình sau đối với bài toán biên lo¹i ba:

 ( av ) − q v = − f ,
i = 1, N − 1
i
 x xi i i

h
h


 − ( av x ) 1 + σ 1 + q(a) v0 = α + f (a)
2
2




h
h



 ( av x ) N + σ 2 + q(b) v N = + 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.
15


Thí dụ : Xét bài toán
(1 x 2 ) y ′′ − xy ′ = 2 ,



1
1
2
2

1
1
y (− ) = y ( ) = 0
2
2


Gi¶i : Ta chän h =

1
1 1
, nghĩa là chia đoạn [ , ] làm 4 phần bằng nhau bởi các
4
2 2

điểm chia.
1
1
1
1
x 0 = − , x1 = − , x 2 = 0 , x3 = , 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 vi , i =1,2,3 là nghiệm của hệ phơng trình sau:

v0 = 0 ,

2
 p i v i − 1 − ( p i + p i + 1 )v i + p i + 1 v i + 1 = − h f i
v = 0 ,
4

i= 0
, i = 1,2,3
i= 4

TÝnh c¸c hƯ sè:
15
15
3
, p 2 = 1, p 3 =
, p4 =
4
4
2
1

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

p1 =

Thay số vào ta đợc:

16


v0 = 0

 15 v −  1 + 15  v + v

 1 2
 4 0 
4 





15 
15


v2 +
v3
 v1 −  1 +


4 
4



 15 v − 2 + 5 3 v +
3
 4 2
4

v4 = 0


(

)

=
=

1
2 15
1
8


3
1
v4 =
2
2 15

Đâ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¶:
v1 = − 0.19943 ,

v 2 = − 0.26393 ,

v3 = 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) 2 + C1 arcsin x + C 2

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

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 quả sau:
i

xi

0
1
2

3
4

Nghiệm gần đúng

0.5
0.25
0
0.25
0.5
Sai số đạt:

vi

0
0.19943
0.26393
0.20295
0

Nghiệm ®óng
y ( xi )

0
−0.21031
−0.27415
−0.21031
0

max{ vi − y ( xi ) } ≈ 0.01

i =0 , 4

17


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
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ởng của phơng
pháp. Chơng này sẽ đ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.

2.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 tháa m·n:


Ly = [ p( x) y ′ ] + [ q ( x) y ′ ] + g ( x) y = f ( x)

y (a) = y a , y (b) = y b , y ′ (a ) = y ′a , y ′ (b) = y b

(2.1)
(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 < c 2 ≤ 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


y a , y b , y ′ , y b là những hàm số liên tục cho trớc.
a

Định lý về sự tồn tại và duy nhất nghiệm
Phơng trình (2.1) có dạng:
f ( x) g ( x)
q ( x )

p ′′( x) + q ( x)
2 p ′( x )

y−
y′ −
y ′′ −
y ′′′
p ( x) p( x )
p ( x)
p ( x)
p ( x)
= F ( x, y, y ′, y ′′, y ′′′)

y ( IV ) =

( p ( x) ≠ 0)

NÕu
(2.3)

18


′ ′
F ( x, y , y ′, y ′ , y ′′),

∂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 , y0 , y0, y0) là một điểm

thuộc D thì trong một lân cận nào đó của điểm x = x0 , tån t¹i mét nghiƯm duy
nhÊt y = y (x) của phơng trình (2.3) thỏa mÃn các điều kiện:
y

x = x0

= y0 , y ′

x = x0



= y 0 , y ′′

x = x0


= y 0′, y ′′′

x = x0


= y 0 .

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

2.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 = ( b a ) 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 = { x 0 , x1 , x N −1 , x N } gäi lµ tập các nút biên
ã Tập

2.3

h = h h

gọi là một lới trên [a, b]

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 v tại nút xi viết là vi .
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 ) .

2.4

Đạo hàm lới
Giả sử hàm y (x) đủ trơn. Theo c«ng thøc Taylor, ta cã

19


y ( xi +1 ) = y ( xi + h) = y ( xi ) + hy′( xi ) + Ο(h 2 )

Ta suy ra
y xi =

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

h

(2.4)

y ( xi −1 ) = y ( xi − h) = y ( xi ) − hy′( xi ) + Ο(h 2 )
y xi =
( 2.4)

y ( xi ) − y ( xi − 1 )
= y ′ ( xi ) + (h)
h

(2.5)

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 .
xi + 12 = xi +

Qui íc:

h
, yi + 12 = y ( xi + 12 )
2

Ta cßn cã
2

h
h
1 h
y ( xi +1 ) = y ( xi + 12 + ) = y ( xi + 12 ) + y′( xi + 12 ) +   y′′( xi + 12 ) + Ο(h 3 )

2
2
2!  2 
2

h
h
1 h
y ( xi ) = y ( xi + 12 − ) = y ( xi + 12 ) − y′( xi + 1 2 ) +   y′′( xi + 1 2 ) + Ο(h 3 )
2
2
2!  2 

Ta suy ra
y ( xi +1 ) − y ( xi ) = hy′( xi + 12 ) + Ο(h 3 )

Do ®ã
y xi = y xi + 1 =

y ( xi + 1 ) − y ( xi )
= y ′ ( xi + 12 ) + Ο ( h 2 )
h

(2.6)

§ång thêi
y ( xi + 1 ) + y ( xi )
= y ( xi + 12 ) + Ο ( h 2 )
2


(2.7)

y ( xi +1 ) − y ( xi −1 )
= y ′( xi ) + Ο(h 2 )
2h
y ( xi + 12 ) − y ( xi − 12 )
h

2.5

 h2 
= y ′ ( x i ) + Ο     = y ′ ( xi ) + Ο ( h 2 )
2



(2.8)

(2.9)

Phơng pháp sai phân

20


Giả sử bài toán vi phân (2.1) (2.2) thỏa 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 ( xi ) tại
các nút

xi h .


Gọi các giá trị gần đúng đó là vi . Muốn có vi 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 + 12 − ω i − 12

− ω ′( xi ) = Ο ( h 2 )

h
ω ′( xi ) = ( p( x) y ′′)′i′

Theo (2.6) ta cã
yi − yi− 1
− y ′ ( xi − 1 2 ) = Ο ( h 2 )
h

(2.10)

( py ′′) i +1 − ( py ′ ) i
+ Ο (h 2 ) (theo 2.6)
h
p y′ − p y′
= i + 1 i + 1 i i + Ο (h 2 )
h
( py ′′) i − ( py ′ ) i −1
= ( pi − 12 yi′′− 12 )′ = ( py ′ )′i − 12 =

+ Ο (h 2 ) (theo 2.10)
h
′i − pi −1 yi′−1
py
= i
+ Ο (h 2 )
h

ω i + 12 = ( pi + 12 y i′+ 12 )′ = ( py ′ )′i + 12 =

ω i − 12

(2.11)

(2.12)

Ta cã:
h2
h3
y′′( xi ) + y ′′′( xi ) + Ο(h 4 )
2
6
2
h
h3
yi −1 = y ( xi −1 ) = y ( xi − h) = y ( xi ) − hy′( xi ) +
y′′( xi ) − y′′′( xi ) + Ο(h 4 )
2
6
yi +1 = y ( xi +1 ) = y ( xi + h) = y ( xi ) + hy ( xi ) +


Cộng vế với vế hai đẳng thức trên ta đợc:
y ( xi +1 ) + y ( xi −1 ) = 2 y ( xi ) + h 2 y ′′( xi ) + Ο(h 4 )

Suy ra
y ( xi +1 ) − 2 y ( xi ) + y ( xi −1 )
= y ′′( xi ) + Ο(h 2 )
2
h

21


Hay

yi + 1 − 2 yi + yi − 1 y xi − y xi
=
= y ′ ( xi ) + Ο (h 2 )
2
h
h

(2.13)

Thay (2.13) vµo ( 2.11) ta ®ỵc
ω i + 12 =

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

 y − 2 y i + y i −1


+ Ο (h 2 )  − pi  i +1
+ Ο (h 2 )   + Ο (h 2 )
 p i +1 
h 
h2
h2




y − 2 y i +1 + y i
y − 2 yi + y i −1 
1
=  pi +1 i + 2
− pi i +1
 + (h 2 )
2
h
h
h2


Thay (2.13) vào (2.12) ta đợc
i − 12 =
=

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

 y − 2 yi −1 + yi − 2


+ Ο (h 2 )  − pi −1  i
+ Ο (h 2 )   + Ο ( h 2 )
 pi 
h 
h2
h2



y − 2 yi −1 + yi − 2 
1  y i +1 − 2 y i + yi −1
− pi 1 i
pi
+ (h 2 )
2
h
h
h2


ã Đặt Z ( x) = q ( x) y′( x)
Còng tõ (2.9) ta suy ra
Z i + 12 − Z i − 12
h

− Z ′( xi ) = Ο (h 2 )

Z ′( xi ) = [ q( x) y ′]




i

trong ®ã
y −y

Z i + 12 = qi + 12 yi′+ 12 = qi + 12  i +1 i + Ο( h 2 ) 
 h

 y − yi −1

Z i − 12 = qi − 12 yi′− 12 = qi − 12  i
+ Ο( h 2 ) 
 h


[ q ( x ) y ′ ( x )] i ′ = Z ′( x i ) =

Z i + 12 − Z i − 12

+ Ο (h 2 )
h
1
y −y

y −y

=  q i + 12  i +1 i + Ο ( h 2 )  − q i − 1 2  i i −1 + Ο (h 2 )   + Ο ( h 2 )
h

 h

 h

y −y
y −y 
1
=  q i + 1 2 i + 1 i − q i − 1 2 i i −1  + Ο ( h 2 )
h
h
h 

ThËt vËy

22


y i +1

h2
h3
′′( xi ) +
y
y ′′′( xi ) + Ο(h 4 )
2
6

= y ( xi +1 ) = y ( xi + h) = y ( xi ) + hy ′( xi ) +

y ( xi +1 ) − y ( xi )

h
h2
= y ′( xi ) + y ′′( xi ) +
y ′′′( xi ) + Ο(h 3 )
h
2
6

y xi =

y i −1 = y ( xi −1 ) = y ( xi − h) = y ( xi ) − hy ′( xi ) +
y xi =

h2
h3
y ′′( xi ) −
y ′′′( xi ) + Ο(h 4 )
2
6

y ( xi ) − y ( xi −1 )
h
h2
= y ′( xi ) − y ′′( xi ) +
y ′′′( xi ) + Ο( h 3 )
h
2
6
IV
(gi¶ thiÕt: y ( x) ≤ K )

2

h
h
1 h
qi + 1 2 = q ( xi + ) = q ( xi ) + q ′( xi ) +   q ′′( xi ) + Ο( h 3 )
2
2
2!  2 
2

h
h
1 h
qi − 12 = q( xi − ) = q ( xi ) − q ′( xi ) +   q ′′( xi ) + Ο( h 3 )
2
2
2!  2 
q

y
i+ 1

2

i +1
h

−y


(

+

q
i− 1

2

)

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

3
 q ( x ) y ′′′( xi ) + q ′( xi ) y ′′( xi ) + q ′′( xi ) y ′( xi )  + Ο (h )
2 3 i
2
4


(


)

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

h2  1
1
1

3
 q ( xi ) y′′′( xi ) + q′( xi ) y′′( xi ) + q′′( xi ) y ′( xi )  + Ο(h )
2 3
2
4


1
⇒ ω ′ ( x ) =  h( q ( x ) y ′ ( x ) ) ′ i + Ο ( h 3 )  = ( q ( x ) y ′ ( x ) ) ′ i + Ο  h 2 
 


i h


 
y −y
y −y 
1
=  q i + 12 i + 1 i − q i − 12 i i −1 
h
h
h 

VËy:
1
y −y
y − yi −1 

2
 qi + 12 i +1 i − qi − 12 i
 = [ q ( x ) y′( x)] i + Ο( h )
h
h
h 

T¬ng tù, ta cã thÓ chØ ra r»ng:

[ p( x) y ′′( x)] ″ =

y − 2 y i +1 + y i
y − 2 y i + y i −1

y − 2 y i −1 + y i − 2 
1 
− 2 pi i +1
+ pi −1 i
 pi +1 i + 2
+
2
2
2
h 
h
h
h2

+ Ο(h 2 )

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

23


yVI ( x) C

ã Đặt vi y ( xi ) , coi vi 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:
v 2vi +1 + vi
v − 2vi + vi −1
v − 2vi −1 + vi − 2 
1 
− 2 pi i +1

+ p i −1 i
 pi +1 i + 2
+
2
2
2
h 
h
h
h2

v −v
v − vi −1 
1
+  qi + 12 i +1 i − qi − 1 2 i
 + g i vi = f i
h
h
h 

ViÕt l¹i:

(

[

)

(


)

]

pi −1vi − 2 − 2 pi + 2 pi −1 − h 2 qi − 12 vi −1 + pi +1 + 4 pi + pi −1 − h 2 qi + 12 + qi − 12 + h 4 g i vi −

(

)

− 2 p i +1 + 2 p i − h 2 q i + 1 2 v i +1 + p i +1 v i + 2 = h 4 f i
trong ®ã:
h
h
qi + 12 = q ( xi + ) , qi − 12 = q ( xi − )
2
2
pi = p ( xi ) , g i = g ( xi ) , f i = f ( xi )

Cã thÓ tÝnh:
q ( xi +1 ) + q ( xi )
+ Ο(h 2 )
2
q( xi ) + q( xi −1 )
=
+ Ο( h 2 )
2

qi + 12 =
qi 12


Đặt
Ai = pi 1 , Bi = 2 pi + 2 p i −1 − h 2 qi − 12 ,

(

)

C i = p i + 1 + 4 p i + p i −1 − h 2 q i + 1 2 + q i − 1 2 + h 4 g i ,
Di = 2 pi +1 + 2 pi − h 2 qi + 12 ,
Ei = pi +1 , Fi = h 4 f i .

Ta có phơng trình sau:
Ai vi 2 Bi vi −1 + Ci vi − Di vi +1 + Ei vi + 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 ⇔ v0 = y a
y (b ) = y b ⇔ v N = y b

24



y ′(a ) = y ′ x = a = y 0 =

y1 − y 0 h
h



− y 0′ + Ο(h 2 ) = y x1 − y 0′ + (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 :

y0 = y ( a ) = y0

( )

h2

y0′ + Ο h 3
2
( 2h ) 2 y′′ + Ο h 3
′+
y2 = y (a + 2h) = y0 + 2hy0
0
2

y1 = y (a + h) = y0 + hy0 +

( )

Nhân cả hai vế của đẳng thức y1 với (-2) sau đó cộng với hai đẳng thức y 0 và
y 2 ở trên, ta đợc:


y 0 2 y1 + y 2

= y 0′ + Ο ( h )
h2


y 2 − y1 y1 − y 0

y 0 − 2 y1 + y 2
h
h = y x 2 − y x1 = y
=
x x1
2
h
h
h

⇒ y 0′ = y xx1 + Ο (h)

VËy:

y 0 = y x1 −

h

( y xx1 + Ο( h ) ) + Ο( h 2 ) = y x1 − h y xx1 + Ο( h 2 ) = y a
2
2


trong ®ã:
y x1 =

y1 − y0
y − 2 y1 + y2
; y xx1 = 0
h
h2

Thay vµo, ta cã:
y1 − y0 1
− ( y0 − 2 y1 + y2 ) + Ο h 2
h
2h
1 3
1 
=  − y0 + 2 y1 − y2  + Ο h 2 = y′
a
h 2
2 

( )


y0 =

( )

Thay y bëi v và bỏ qua sai số địa phơng cấp 2 ( h 2 ) , ta đợc:

1 3
1

v0 + 2v1 − v2  = ya
h 2
2 
⇒ − 3v0 + 4v1 − v2 = 2hy′
a

25


×