Khi n→∞ thì an→α, bn→α nên ta nói phương pháp chia đôi hội tụ.. Trước hết ta chuyển phương trình 2-1 về dạng tương đương: x Sau đó ta chọn một số xo nào đó ∈[a, b] làm xấp xỉ đầu rồi tí
Trang 1f(c), nếu f(c) = 0 thì c chính là nghiệm đúng α Nếu f(c) ≠ 0, lúc đó ta so sánh dấu của f(c) với dấu của f(a) để chọn khoảng phân ly nghiệm mới:
Nếu f(c) trái dấu với f(a) thì khoảng phân ly nghiệm mới là [a,c]
Nếu f(c) cùng dấu với f(a) thì khoảng phân ly nghiệm mới là [c,b]
Lúc này ta có khoảng phân ly nghiệm mới chỉ nhỏ bằng nửa khoảng phân ly nghiệm ban đầu, và ký hiệu là [a1,b1] Ta lại tiếp tục như vậy cho khoảng phân ly nghiệm mới [a1,b1] cho đến lần thứ n ta được khoảng phân ly [an,bn] nó nằm trong [a,b] và chỉ dài bằng 1/2n của [a,b] Theo định nghĩa ta có:
an ≤ α ≤ bn ; bn - a n = b n a
2
) ( −
Vậy có thể lấy an làm giá trị gần đúng của α, lúc đó sai số là:
n n n n
a b a b a
2
|
=
−
≤
−
cũng có thể lấy bn làm nghiệm gần đúng của α, lúc đó sai số là :
n n n n
a b a b b
2
|
Do đó với n đủ lớn an hay bn đều đủ gần với α Khi n→∞ thì an→α, bn→α nên ta nói phương pháp chia đôi hội tụ
Chú ý: Trong quá trình chia đôi liên tiếp, có thể gặp điểm chia mà tại đó f bằng
không Khi đó ta có điểm chia chính là nghiệm đúng của f(x)
2.2.2 Thí dụ
Xét phương trình (2-9), ta đã chứng tỏ nó có khoảng phân ly nghiệm [1, 2] và có f(1) < 0, f(2) > 0 Ta chia đôi khoảng [1,2] điểm chia là 3/2
0 1 2
3 2
3 2
>
−
−
⎟
⎠
⎞
⎜
⎝
⎛
=
⎟
⎠
⎞
⎜
⎝
⎛
f trái dấu với f(1) vậy α ∈ [1,3/2]
Ta chia đôi khoảng [1, 3/2], điểm chia là 5/4 ta có f(5/4) < 0 cùng dấu với f(1), vậy α ∈ [5/4, 3/2]
Ta chia đôi khoảng [5/4, 3/2], điểm chia là 11/8 Ta có f(11/8) > 0 trái dấu với f(5/4), vậy α ∈ [5/4, 11/8]
Ta chia đôi khoảng [5/4, 11/8], điểm chia là 21/16 Ta có f(21/16) < 0 cùng dấu với f(5/4), vậy α ∈ [21/16, 11/8]
Ta chia đôi khoảng [21/16, 11/8], điểm chia là 43/32 Ta có f(43/32) > 0 trái dấu với f(21/16), vậy α ∈ [21/16, 43/32]
Ta dừng quá trình chia đôi tại đây và lấy 21/16 = 1,3125 hay 43/32 = 1,34375 làm giá trị gần đúng của α thì sai số không vượt quá 1/25 = 1/32 = 0,03125 Như
Trang 2vậy ta đã chia đôi 5 lần khoảng [1, 2] là 2-1=1 Nếu yêu cầu sai số bé hơn thì ta phải tiếp tục chia đôi
2.2.3 Sơ đồ tóm tắt phương pháp chia đôi
1) Cho phương trình f(x) = 0
2) Ấn định sai số cho phép ε
3) Xác định khoảng phân ly nghiệm [a, b]
4) Lập chương trình tính theo sơ đồ khối sau đây:
Nhập f(x), a,b, ε
Tính c = (a+b)/2; Tính f(c)
f(c).f(a) < 0
Tính e= b - a
Đ
S
Đ
Kết quả:
α = a với |α - a| < ε
α = b với |α - b| < ε
Chú ý: Xem phần phụ lục để tham khảo chương trình tính gần đúng phương trình một ẩn bằng phương pháp chia đôi
Trang 32.3 PHƯƠNG PHÁP LẶP
2.3.1 Mô tả phương pháp
Xét phương trình (2-1) với giả thiết nó có nghiệm thực α và phân ly trong khoảng [a, b] Trước hết ta chuyển phương trình (2-1) về dạng tương đương:
( )x
Sau đó ta chọn một số xo nào đó ∈[a, b] làm xấp xỉ đầu rồi tính dần dãy số xn theo quy tắc:
Quá trình này có tính lặp đi lặp lại nên phương pháp này có tên là phương pháp
lặp, hàm ϕ gọi là hàm lặp
2.3.2 Sự hội tụ của phương pháp lặp
Định nghĩa:Nếu dãy xn → α khi n → ∞ thì ta nói phương pháp lặp (2-13), (2-14) hội tụ
Khi phương pháp lặp hội tụ thì xn càng gần với α nếu n càng lớn Cho nên ta có thể xem xn với n xác định là giá trị gần đúng của α Nếu phương pháp lặp không hội tụ thì xn có thể rất xa α Vì vậy chỉ có phương pháp lặp hội tụ mới có giá trị Để kiểm tra xem một phương pháp lặp có hội tụ hay không ta dùng định lý sau
Định lý 4: Xét phương pháp lặp (2-13), (2-14) giả sử :
1) [a, b] là khoảng phân ly nghiệm α của phương trình (2-1) tức là của phương trình (2-12);
2) Mọi xn tính theo (2-13) (2-14) đều ∈ [a, b];
3) Hàm ϕ(x) có đạo hàm thỏa mãn:
( )x ≤q< 1 a<x<b
'
Thế thì phương pháp lặp (2-13), (2-14) hội tụ :
Chứng minh định lý :
Trước hết vì α là nghiệm của (2-12) nên có α = ϕ(α) đem đẳng thức này trừ đi (2-13) vế với vế ta được
α - xn = ϕ(α) - ϕ(xn-1) (2-17)
Ta sẽ áp dụng công thức Lagrangiơ vào vế phải của đẳng thức trên
Công thức Lagrangiơ được phát biểu: Cho hàm số F(x) liên tục trên [a,b], có đạo hàm trong (a,b) thì tồn tại số c ∈ (a,b), tức là c = a + θ(b-a), 0< θ <1 sao cho:
Trang 4Aïp dụng (2-18) ta có :
α - xn = ϕ’(c) (α - xn-1) (2-19) với c = a + θ(α - xn-1) ∈ (a,b)
Theo giả thiết (2-15) ta có |ϕ’(c)| ≤ q <1 Do vậy (2-19) cho
|α - xn | = |ϕ’(c)| | α - xn-1| ≤ q |α - xn-1| Nên có |α - xn | ≤ q |α - xn-1|
Bất đẳng thức này đúng với mọi n Do vậy có :
|α - xn | ≤ q |α - xn-1|
|α - xn-1 | ≤ q |α - xn-2|
|α - x2 | ≤ q |α - x1|
|α - x1 | ≤ q |α - x0| Nhân các bất đẳng thức này vế với vế ta được :
|α - xn | ≤ qn |α - x0| (2-20)
Vì α và x0 đã xác định, qn → 0 khi n → ∞ do 0 < q < 1, nên vế phải → 0 và ta có
|α - xn | → 0 khi n → ∞ Đó chính là điều phải chứng minh
2.3.3 Chú thích
Khi hàm ϕ đã thỏa mãn giả thiết 3) của định lý 4 thì sự thỏa mãn giả thiết 2) phụ thuộc vào việc chọn xo và nó thỏa mãn trong điều kiện sau: Giả sử |ϕ’(x)| ≤ q < 1 Nếu ϕ’(x) > 0 ta có thể chọn xo ∈ [a, b] một cách bất kỳ, còn nếu ϕ’(x) < 0 thì phải chọn xo theo quy tắc:
b b
a khi b x
b a a
khi a x
<
<
+
=
+
<
<
=
α
α 2
) (
2
) (
0
0
(2-21)
Muốn biết α thuộc khoảng nào ta chỉ việc tính f((a+b)/2) rồi so sánh dấu của nó với dấu của f(a)
2.3.4 Đánh giá sai số
Giả sử ta tính theo (2-13) (2-14) n lần và xem xn là giá trị gần đúng của α Khi đó sai số |α - xn| có thể đánh giá bởi công thức |α - xn| ≤ qn|α - xo| Ta còn có
|α - xo| < b - a nên: |α - xn| ≤ qn(b - a) (2-22)
Nhưng công thức này thường cho sai số quá lớn so với thực tế Ta xét một công thức đánh giá sai số khác như sau
Định lý 5 : Xét phương trình
Trang 5Có nghiệm X ∈ [c,d] và X là một số ∈[c,d] được xem là giá trị gần đúng của X Lúc đó ta có
m
X F X
Trong đó m là một số dương thỏa mãn
|F’(x)| ≥ m > 0, c< x < d (2-25)
Chứng minh : Theo giả thiết ta có F(X) = 0 nên có F( X ) = F(X)
Aïp dụng công thức Lagrangiơ (2-18) vào vế phải được F(X ) = F’(C) (X -X) Trong đó C = X + θ(X -X) ∈ (c,d) Theo giả thiết (2-25) ta có
|F(X)| = |F’(C)| |X -X| ≥ m|X - X| từ đó ta rút ra kết luận(2-24)
Ta áp dụng kết quả này để đánh giá sai số của phương pháp lặp
Với F(x) = x - ϕ(x), c = a, d = b
X = α, X = xn
Ta thu được
m
x x
x n | | n ( n)|
Trong đó m là một số dương thỏa mãn
0< m < |(x - ϕ(x))’|, a < x < b Theo giả thiết (2-15) của định lý 4 ta có:
|(x - ϕ(x))’| = |1 - ϕ’(x)| ≥ 1 - |ϕ’(x)| ≥ 1 - q > 0
Mặt khác ϕ(xn) - xn = ϕ(xn) - ϕ(xn-1)
= ϕ’(c)(xn - xn-1) Trong đó c = xn-1 + θ(xn - xn-1) ∈ (a,b)
Do đó :
|ϕ(xn) - xn| = |ϕ’(c)| |(xn - xn-1)| ≤ q|xn - xn-1| Vậy (2-26) trở thành:
1
−
≤
q
q x
Công thức này cho phép ta đánh giá sai số theo những đại lượng vừa tính đựơc
xn-1 và xn
2.3.5 Thí dụ
Xét phương trình x3 - x - 1 Ta đã chứng minh được nó có một nghiệm thực α phân ly trong khoảng [1,2] Bây giờ ta dùng phương pháp lặp để tính gần đúng nghiệm α đó Muốn thế trước hết ta tìm hàm lặp ϕ(x) thích hợp để phương pháp lặp hội tụ, tức là ϕ(x) phải thỏa mãn những giả thiết của định lý 4
Phương trình có thể được viết thành : x = x3 -1 (2-28)
Và đặt ϕ(x) = x3 -1 nhưng lúc này ϕ’(x) = 3x2 ≥ 3 tai mọi x ∈ [1,2]
Trang 6Nếu hàm lặp chọn như vậy phương pháp lặp sẽ không có hy vọng hội tụ Ta viết phương trình dưới dạng khác như sau :
x3 = x + 1
x = (x + 1) 1/3
Lúc đó ϕ’(x) = (1/3)(x + 1) -2/3 =
) 1 (
1 3
1
+
⎟
⎠
⎞
⎜
⎝
⎛
x
nên
0 < ϕ’(x) ≤ 1/3 tại mọi x ∈ [1,2]
Lúc này hàm lặp ϕ(x) thỏa mãn các điều kiện của đinh lý 4 và chú thích ở công thức (2-21) Ta bắt đầu thực hiện phép lặp tại x0 bất kỳ trong [1,2]; chẳng hạn chọn x0 = 1 Giả sử ta tính lặp 5 lần với các kết quả như sau :
x0 = 1
x1 = 1,25992105; |α - x1| ≤ 0,13
x2 = 1,312293837; |α - x2| ≤ 0,027
x3 = 1,322353819; |α - x3| ≤ 0,005
x4 = 1,324268745; |α - x4| ≤ 0,00096
x5 = 1,324632625; |α - x5| ≤ 0,000182 Kết quả này có quá nhiều chữ số đáng nghi Ta quy tròn nó đến 4 chữ số lẻ thập phân bằng cách viết: α - 1,3246 = α - x5 + x5 - 1,3246
|α - 1,3246| ≤ |α - x5| + |x5 - 1,3246|
|α - 1,3246| ≤ 0,000182 + 0,00003265
Do đó : |α - 1,3246| ≤ 0,00025
Vậy ta có kết quả là α = 1,3246 ± 0,00025
Chú ý : Trong thực tế người ta dừng quá trình tính khi
|(xn - xn-1)| < sai số cho phép ε
2.3.6 Thuật toán của phương pháp lặp
- Cho phương trình f(x) = 0
- Ấn định sai số cho phép ε
- Xác định khoảng phân ly nghiệm [a,b]
- Tìm hàm lặp hội tụ ϕ
- Chọn xấp xỉ đầu x0
- Tính xn = ϕ(xn-1) với n = 1,2,3, cho tới khi | xn - xn-1| < ε thì dừng Lấy kết quả α ≈ xn với sai số α ε
q
q
x n
−
≤
−
1 trong đó q là số dương nhỏ hơn 1 thỏa mãn |ϕ’(x)| ≤ q<1 với mọi x ∈ (a,b)
Trang 72.4 PHƯƠNG PHÁP TIẾP TUYẾN
2.4.1 Mô tả phương pháp
Mục tiêu của phương pháp tiếp tuyến là tìm cách thay phương trình (2-1),
phi tuyến đối với x, bằng một phương trình gần đúng tuyến tính đối với x Chúng
ta dùng khai triển Taylo để làm điều đó
Công thức Taylo : Cho hàm số F(x) xác định và có đạo hàm đến cấp n+1
tại x0 và lân cận x0 Thế thì khai triển Taylo bậc n của F(x) tại x0 là:
) ( )!
1
(
) (
) (
!
) (
) (
"
! 2
) (
) ( ' ) (
) ( )
(
) 1 ( 1 0
0 ) ( 0 0
2 0 0
0 0
c F n
x
x
x F n
x x x
F x x x F x x x F
x
F
n n
n n
+ +
+
−
+
+
− + +
− + +
+
=
(2-30)
c = x0 + θ(x - x0); 0 < θ < 1 (2-31)
Công thức này có giá trị tại các giá trị x tại lân cận x0, c là một số trung gian nằm
giữa x0 và x
Xét phương trình (2-1) với giả thiết nó có nghiệm thực α phân ly trong [a,b] Giả
sử hàm f có đạo hàm f’(x) ≠ 0 tại x ∈ [a,b] đạo hàm cấp hai f’’(x) tại x ∈ (a,b) Ta
chọn x0 ∈ [a,b] rồi viết khai triển Taylo bậc nhất của f tại x0 :
) , ( ) (
], ,
[
) ( ' ) (
2
1 ) ( ' ) (
) ( )
(
0 0
2 0 0
0 0
b a x x x
c b
a
x
c f x x x
f x x x f x
f
∈
− +
=
∈
− +
− +
=
θ
Như vậy phương trình (2-1) được viết thành :
Ta bỏ qua số hạng cuối cùng và được phương trình:
0 ) ( '' ) (
2
1 ) ( ' ) (
) ( x0 + x − x0 f x0 + x − x0 2 f c =
f
Tức là ta đã thay phương trình (2-1) bằng phương trình bậc nhất (2-32) Đó là
việc thay thế gần đúng Gọi x1 là nghiệm của (2-32) ta có ngay :
) ( '
) (
0
0 0
1
x f
x f x
Từ x0 ta tính một cách tương tự ra x1, vv và một cách tổng quat, khi đã biết xn
ta tính xn+1 theo công thức
) ( '
) (
1
n
n n
n
x f
x f x
x0 chọn trước trên [a,b] (2-35) và xem xn là giá trị gần đúng của nghiệm α
Trang 8Phương pháp tính xn theo phương pháp tuyến tính hóa trên gọi là phương pháp Niutơn hay cũng chính là phương pháp tiếp tuyến
Chú ý 1 : Nhìn vào (2-34) , (2-35) ta thấy phương pháp tiếp tuyến cũng là loại
phương pháp lặp với hàm lặp
) ( '
) ( )
(
x f
x f x
x = −
Chú ý 2 : Về mặt hình học thì f(x0) là hệ số góc của tiếp tuyến của đồ thị hàm số
y = f(x) tại x0 Ta xem trên hình 2-6
y
x b
P
α
M
B
a
A
Đọan đồ thị AB cắt trục hoành tại M
Có hoành độ chính là nghiệm đúng α
Để tính gần đúng α ta thay một cách
gần đúng cung AB bởi tiếp tuyến tại B,
B có hoành độ x0, tiếp tuyến này cắt
trục hoành tại P, P có hoành độ x1 và ta
xem x1 là giá trị gần đúng của α Hình 2-6
Để tính x1 ta viết phương trình tiếp tuyến tại B
Với x0 = b ta có : Y - f(x0) = f’(x0) (X - x0)
Tại P ta có X = x1, Y = 0 nên có :
-f(x0) = f’(x0)(x1 - x0)
Từ đó ta suy ra (2-33) Cho nên phương pháp này được gọi là phương pháp tiếp tuyến
2.4.2 Sự hội tụ và sai số
Vấn đề ở đây là khi tính bằng phương pháp tiếp tuyến thì phải có xn → α khi n→
∞ Điều này được khẳng định ở định lý sau
Định lý 6: Giả sử [a,b] là khoảng phân ly nghiệm của phương trình (2-1), f có
đạo hàm f’, f’’ và f’ liên tục trên [a,b], f’ và f’’ không đổi dấu trong (a,b) Xấp xỉ đầu x0 chọn là a hay b sao cho f(x0) cùng dấu với f’’ Khi đó xn tính bởi 34) (2-35) hội tụ về α khi n→ ∞, cụ thể hơn ta có xn đơn điệu tăng tới α nếu f’f’’<0, xn đơn điệu giảm tới α nếu f’f’’ >0 Khi dừng lại ở n xác định ta được xn và coi xn gần đúng với α
Về sai số áp dụng định lý 5 ta có :
m
x f
x n | | ( n)
Với 0< m ≤ |f’(x)|, α ≤ x ≤ b (2-38)
Ta không chứng minh định lý 6 nhưng có thể hiểu trên các hình 2-7 dưới đây
Trang 9A a
B
α
x1 b x
y
x2
b) y
A a
B
α
x1
b x
x
A
a
B
α
x1
b
y
d)
y
x
A
a
B
α
x1
b c)
x2
x2
x2 a)
Hình 2-7
2.4.3 Thí dụ
* Hãy tính căn bậc hai của một số dương a Tức là có phương trình x2 = a hay ta có thể viết là : f(x) = x2 - a = 0 (2-39)
Rõ ràng nghiệm dương của phương trình (2-39) phân ly trong khoảng [1,a]; Trong khoảng đó f’(x) =2x > 0, f’’ = 2 >0 Vậy ta có thể áp dụng định lý 6 Công thức (2-34) viết thành :
) (
2
1
1
n n n
x
a x
Với a = 2 ta có f(2) =22 -2 > 0 cùng dấu với f’’ nên ta chọn x0 = 2 Aïp dụng công thức (2-40) có :
x1 = 1,5
x2 = 1,417
x3 = 1,41421
Ta biết 2=1,414213562 nên ta thấy phương pháp tiếp tuyến hội tụ rất nhanh
• Ta lại giải phương trình (2-9), f(x) = x3 - x -1 = 0 ta đã tìm được khoảng phân
ly nghiệm của nó là [1,2] Trong khoảng đó
f’(x) = 3x2 -1 > 0 f’’(x) = 6x > 0
Trang 10Vậy có thể áp dụng định lý 6 Để chọn x0 ta tính f(2) = 23 -2 - 1 = 5 >0 cùng dấu với f’’ vậy chọn x0 = 2 Ta có công thức tính :
2
1 3
1
0
2 3 1
=
−
−
−
−
=
+
x
x
x x x x
n
n n n n
Ta có bảng kết quả tính toán như sau:
0 2
1 1,545454545
2 1,359614916
3 1,325801345
2.4.4 Chú ý
Trong thực tế ta dừng quá trình tính khi |xn - xn-1| < sai số cho phép ε
2.4.5 Thuật toán giải bằng phương pháp tiếp tuyến
1 Cho phương trình f(x) = 0
2 Ấn định sai số cho phép ε
3 Tìm khoảng phân ly nghiệm [a,b] trong đó f’ và f’’ không đổi dấu
4 Chọn x0
5
Tính
) ( '
) (
0
0 0
1
x f
x f x
x = −
Tính e = |x1- x0|
Thay x0 = x1 e<ε
Đ
S
Tính e = |x1- x0|
Với sai số
m
x f
x1 ≤ ( 1)
−
α trong đó 0 < m < |f’(x)|, x∈(a,b)
Trang 112.5 PHƯƠNG PHÁP DÂY CUNG
2.5.1 Mô tả phương pháp
Trong phương pháp tiếp tuyến ta đã thay cung đồ thị AB của hàm y = f(x) bởi tiếp tuyến vẽ tại A hay B Bây giờ ta thay cung AB bởi dây cung AB rồi lấy hoành độ x1 của giao điểm P của dây cung với trục hoành làm giá trị gần đúng của nghiệm α (H 2-8)
Phương trình dây cung AB được viết :
a b
a X a f b
f
a f Y
−
−
=
−
−
) ( )
(
) (
x y
A
a
B
α
P
Tại giao điểm P có Y = 0, x = x1, nên :
a b
a x a f b
f
a f
−
−
=
−
) ( )
(
) (
Từ đó suy ra:
) ( ) (
) ( ) (
1
a f b f
a f a b a
x
−
−
−
Hình 2-8 Hay:
) ( ) (
) ( ) (
1
b f a f
a bf b af
x
−
−
Phương pháp tính x1 như vậy gọi là phương pháp dây cung Sau khi tính được x1
ta tìm khoảng phân ly nghiệm mới xem là [a, x1] hay [x1,b] rồi lại tiếp tục phương pháp dây cung như trên cho khoảng phân ly nghiệm mới, đã thu nhỏ hơn khoảng cũ Cứ tiếp tục như thế ta được các giá trị x2, x3, ,xn, ngày càng gần α Sai số có thể tính bằng (2-24)
2.5.2 Thí dụ
Ta lại xét phương trình (2-9), khoảng phân ly nghiệm của nó là [1,2] Ta có:
a = 1; f(a) = f(1) = 13 - 1 - 1 = -1 < 0
b = 2 f(b) = f(2) = 23 - 2 - 1 = 5 > 0
Theo (2-42) có :
167 , 1 ) 1 ( 5
) 1 (
2 5 1
−
−
−
−
=
x
Tiếp tục ta có f(1,167) = -0,58 < 0; khoảng phân ly nghiệm mới là [1,167;2] Ta tìm được
253 , 1 )
58 , 0 ( 5
) 58 , 0 (
2 5 167 , 1
−
−
−
−
=
x