Về mặt hình học, phương pháp này có nghĩa là kẻ dây cung của đường cong fx qua hai điểm A[a, fa] và B[b, fb].. Khi đã tìm được xấp xỉ nào đó xn ∈ [a, b] ta có thể kiện toàn nó theo phươn
Trang 2n 1000 x
x + = − với xo chọn bất kì trong ( 9, 10 )
Trên cơ sở phương pháp này chúng ta có các chương trình tính toán sau:
Chương trình giải phương trình exp((1/3)*ln(1000‐x)) với số lần lặp cho trước
Trang 4f(x) liên tục trên đoạn [a, b] và f(a).f(b) <
0. Chia đoạn [a, b] thành 2 phần bởi
chính điểm chia (a + b)/2.
b 1
ξ
b a
Trang 6x1 = a + h1
Trong đó
) a b ( ) b ( ) a (
) a (
h 1 =− − + −
Tiếp theo dùng cách đó với đoạn [ a, x1] hay [x1, b] mà hai đầu hàm nhận giá trị trái dấu ta được nghiệm gần đúng x2 v.v.
Về mặt hình học, phương pháp này có nghĩa là kẻ dây cung của đường cong f(x) qua hai điểm A[a, f(a)] và B[b, f(b)]. Thật vậy phương trình dây cung AB
có dạng:
Trang 7)a()b(
)a(ya
a x1 ξ b
Cho x = x1 y = 0 ta có
)a()b(
)a(a
−
−
Trên cơ sở của phương pháp ta có
chương trình tính nghiệm của phương
Trang 8b] đồng thời fʹ(x) và fʺ(x) liên tục và giữ
nguyên dấu trên đoạn [a, b]. Khi đã tìm
được xấp xỉ nào đó xn ∈ [a, b] ta có thể
kiện toàn nó theo phương pháp Newton.
Từ mút B ta vẽ tiếp tuyến với đường cong.
Phương trình đường tiếp tuyến là
x1 b = xo
a
)xx)(
b(f)x(
Tiếp tuyến này cắt trục hoành tại điểm có
y = 0, nghĩa là:
)xx)(
b(f)x
hay :
)x(f
)x(x
x
0
0 0
Từ x1 ta lại tiếp tục vẽ tiếp tuyến với đường cong thì giao điểm xi sẽ tiến tới nghiệm của phương trình.
Trang 9Việc chọn điểm ban đầu xo rất quan trọng. Trên hình vẽ trên ta thấy nếu chọn điểm ban đầu xo = a thì tiếp tuyến sẽ cắt trục tại một điểm nằm ngoài đoạn [a, b]. Chọn xo = b sẽ thuận lợi cho việc tính toán. Chúng ta có định lí:
Nếu f(a).f(b) < 0 ; f(x) và fʺ(x) khác không và giữ nguyên dấu xác định khi x
∈ [a, b] thì xuất phát từ xo∈ [a, b] thoả mãn điều kiện f(x o ).f″(x o ) > 0 có thể tính theo phương pháp Newton nghiệm ξ duy nhất với độ chính xác tuỳ ý.
để tại đó f(xo).fʺ(xo) > 0. Áp dụng lí thuyết trên chúng ta xây dựng chương trình tính sau:
Trang 112 2 2
2
1 1
2 1 1 1
0
2 0
fcbhah
)xx(h
v
fcbhah
)xx(h
v
fc)0(b)0(a)xx(0
v
=++
=
=
=++
=
=
=++
1
2 1
2 0
b
)1(h
f)1(ffa
+γ+
−γ
=
Sau đó ta tìm nghiệm của phương trình av2 + bv + c = 0 và có :
ac4bb
c2x
n
2 0
0)
11(2.01
07385
0)11()0907.0()2915.0(1
c
91338
02
.0
2.0)45312
0()097.0(2915.0b
Trang 1289526
1)0907.0()45312
0(4)91338
0(91338
0
)0907.0(20
.2
2 4
109184
1
c
81826
010474
.0
10474
0)4728.0(109184.10907.0b
4728.09095
.110474
09095.0
07385
09095.1)109184.1()0907.0(9095.0
110
9184.1)4728.0(4)81826
0(81826
0
109184.1289526
1
n
4 2
Trang 15Đây là một phương trình sai phân tuyến tính hệ số hằng. Khi cho trước các giá trị đầu yo, y1, yn‐1 ta tìm được các giá trị yn, yn+1, Chúng được gọi là nghiệm của phương trình sai phân tuyến tính (1).
Đa thức
với cùng một hệ số ai như (1) được gọi là đa thức đặc tính của phương trình sai phân tuyến tính (1). Nếu (2) có n nghiệm phân biệt x1, x2, , xn thì (1) có các nghiệm riêng là
k i
=
k
1
2 2
1 k
1 1 k
x
xc
c1xc
=
+ +
+
1 k
1
2 2
1 1
k 1 1 1
k
x
xc
c1xc
1 k
1
2 2 1
1 k
1
k
x
xc
c1
x
xc
c1xy
1 2 k
1 k
Trang 160 n
yk+3 ‐10yk+2 + 31yk+1 ‐ 30yk = 0
Ta cho trước các giá trị y1 = 0; y2 = 0 và y3 = 1. Theo (4) ta tính được :
y4 = ‐ (‐10y3 + 31y2 ‐ 30y1) = 10
y5 = ‐ (‐10y4 + 31y3 ‐ 30y2) = 69
y6 = ‐ (‐10y5 + 31y5 ‐ 30y3) = 410
y7 = ‐ (‐10y6 + 31y5 ‐ 30y4) = 2261
y8 = ‐ (‐10y7 + 31y6 ‐ 30y5) = 11970
y9 = ‐ (‐10y8 + 31y7 ‐ 30y6) = 61909
y10 = ‐ (‐10y9 + 31y8 ‐ 30y8) = 315850
y11 = ‐ (‐10y10 + 31y9 ‐ 30y8) = 1598421
y12 = ‐ (‐10y11 + 31y10 ‐ 30y9) = 8050130
y13 = ‐ (‐10y12 + 31y11 ‐ 30y10) = 40425749
y14 = ‐ (‐10y13 + 31y12 ‐ 30y11) = 202656090
y15 = ‐ (‐10y14 + 31y13 ‐ 30y12) = 1014866581
y16 = ‐ (‐10y15 + 31y14 ‐ 30y13) = 5079099490
y17 = ‐ (‐10y16 + 31y15 ‐ 30y14) = 24409813589
y18 = ‐ (‐10y17 + 31y16 ‐ 30y15) = 127092049130
y19 = ‐ (‐10y18 + 31y17 ‐ 30y16) = 635589254740
Tỉ số các số yk+1/yk lập thành dãy :
10 ; 6.9 ; 5.942 ; 5.5146 ; 5.2941 ; 5.172 ; 5.1018 ; 5.0607 ; 5.0363 ; 5.0218 ; 5.013 ; 5.0078 ; 5.0047 ; 5.0028 ; 5.0017 ; 5.001
Trang 18i n
i n i 1
n 0
a
ax
)x(Px
x
0 n
0 n 0
)x(P
)x(Px
x
1 n
1 n 1
Trang 19với bn = Pn(xi). Đa thức Pn‐1(x) có dạng:
Pn‐1(x) = boxn‐1 + b1xn‐2 + p3xn‐3 + + bn‐2x + bn‐1 (4)
Để xác định các hệ số của đa thức (4) ta thay (4) vào (3) và cân bằng các hệ số với đa thức cần tìm nghiệm Pn(x) mà các hệ số ai đã cho:
Phép chia Pn(x) cho (x ‐ α1) cho ta Pn‐1(x) và một nghiệm mới khác được tìm theo cách trên khi chọn một giá trị xo mới hay chọn chính xo=α1. Khi bậc của đa thức giảm xuống còn bằng 2 ta dùng các công thức tìm nghiệm của tam thức để tìm các nghiệm còn lại.
Trang 20375.15.3)x(P
)x(Px
x
0 n
0 n 0
096.06.3)x(P
)x(Px
x
1 n
1 n 1
Trang 21§9. PHƯƠNG PHÁP NGOẠI SUY AITKEN
Trang 22Xét phương pháp lặp :
với f(x) thoả mãn điều kiện hội tụ của phép lặp, nghĩa là với mọi x∈ [a, b] ta có:
phải tìm các giá trị đặc biệt s* và p* để cho bn‐1 và bn triệt tiêu. Khi đó r1(x)= 0
và nghiệm của tam thức x2 ‐ s*x + p*x sẽ là nghiệm của đa thức Pn(x). Ta biết rằng bn‐1 và bn là hàm của s và p :
s
(
g
0)p
xi+1 = xi ‐ f(xi)/fʹ(xi)
hay fʹ(xi)(xi+1 ‐ xi) = ‐f(xi)
Với một hệ có hai phương trình,công thức lặp trở thành:
J(Xi)(Xi+1 ‐ Xi) = ‐F(Xi)
Trang 23với Xi = { si, pi}T và Xi+1 = { si+1, pi+1}T
)p,s()
X
(
F
i i
i i
fs
f)
∆
∂
∂
)p,s(gpp
gss
g
)p,s(pp
fss
f
i i
i i
gf
∂+
fg
s
gp
fp
gs
f
∂
∂,s
g
∂
∂,p
g
∂
∂. Các đạo hàm này được tính theo công thức truy hồi.
Do bo = ao nên
)sb(s
as
0s
)sb
Trang 24bps
bsbs
n 3
n 2
s
fc
s
fc
s
fc
2 2 n 3 n 1 n
3 n n 2 n 1 n
cc
c
cbc
bs
2 n n 1 n 1 n
cc
c
cbc
bp
Trang 25.5
5.57.0
1.38
.0
1.35
.5
7.02.3
8.05.5
88.251
.4
5.57.0
88.207.0
88.251
.4
17.003.1
07.051.4
Trang 26Như vậy:
P4(x) = (x2 + 0.9x + 1.1)(x2 + 2x + 3)
Chương trình sau áp dụng lí thuyết vừa nêu để tìm nghiệm của đa thức.
Trang 29f
0)x, ,x,x,x
(
f
0)x, ,x,x,x
(
f
0)x, ,x,x,x
(
f
n 3
2 1 n
n 3 2 1 3
n 3
2 1 2
n 3 2 1 1
)x(xx
i
i i
n 2
n 1
n
n
2 3
2 2
2 1
2
n
1 3
1 2
1 1 1
i
x
fx
fx
fx
f
x
fx
fx
fx
f
x
fx
fx
fx
−
=++
−
=
−+++
x
2
04x8x25
05xxxx
08xxx3xx
4 3 2 1
3
2 1
4 3 2 1
4 2 1
2 2
3
1
Trang 30
x2x
x2
08
0x
25
1
xx30
xx3x3x
x3x
3
2 1 3
1 3
2
2 1 1
2 1 4
1
2 2 4
1.12499779,8.05819031 }T với độ chính xác 0.000001.Vectơ số dư r = { 0.00000536,‐0.00000011,‐0.00000001,‐0.00000006}T.
Trang 32printf(ʺCac phan tu duong cheo cua ma tran bang khong\nʺ);