Professional Documents
Culture Documents
Phƣơng Pháp Tính
Phƣơng Pháp Tính
1
2
3 4
Chƣơng 0: Nhập môn Chƣơng 0: Nhập môn
p Các lĩnh vực nghiên cứu của môn học
p Định hƣớng chung của PPT ü Tính giá trị các hàm:
Bài toán gốc Bài toán gần đúng ü Phép nội suy, ngoại suy.
Vô hạn à Hữu hạn ü Tính gần đúng đạo hàm, tích phân xác định.
ü Giải gần đúng phƣơng trình phi tuyến
Vi phân à Đại số
ü Giải gần đúng hệ phƣơng trình đại số tuyến tính.
Phi tuyến à Tuyến tính
ü Giải gần đúng phƣơng trình vi phân thƣờng, phƣơng trình vi
Phức tạp à Đơn giản
phân đạo hàm riêng.
5 6
7 8
Bài 1.1: Sai số tuyệt đối và sai số tƣơng đối Bài 1.2: Sai số thu gọn
p Ví dụ 1: Giả sử a* = e (» 2,718281828...); a = 2, 71 p Một số thập phân a có dạng tổng quát:
Do 2,71 < a* < 2,72 = 2,71 + 0,01 = a + 0,01 Þ lấy
Mặt khác, 2, 71 < a* < 2, 719 = 2, 71 + 0, 009 = a + 0, 009 Þ lấy • Nếu là số nguyên.
p Nhận xét: Sai số tƣơng đối rất quan trọng vì nó phản ánh độ • Nếu có phần lẻ gồm m chữ số.
chính xác của phép đo, và phép đo này chính xác hơn phép đo • Nếu s = +¥ Þ a là số thập phân vô hạn.
kia hay không. Ví dụ:
F Ví dụ 2: Đo độ dài 2 vật A=1m, B=10m với cùng sai số tuyệt a = 12,345 Þ a = 1.101 + 2.100 + 3.10-1 + 4.10-2 + 5.10-3
0,1 0,1
đối là 0,1m; sai số tƣơng đối lần lƣợt là a = = 10%, b = = 1%
1 10 p Thu gọn một số a là bỏ đi một số các chữ số bên phải a để đƣợc
=> phép đo vật B chính xác hơn phép đo vật A 10 lần, mặc dù sai một số mới ngắn gọn hơn và gần đúng với a nhất.
số tuyệt đối bằng nhau. 9 10
Bài 1.2: Sai số thu gọn Bài 1.2: Sai số thu gọn
p Quy tắc thu gọn: p Ví dụ:
ü Giả sửa = .10 p + .10 p -1 + + .10 j + + .10 p- s 1) a = 1, 23567 » 1, 2357 » 1, 236 » 1, 24 » 1, 2 » 1
p p -1 j p- s
2) b = 1, 2354 » 1, 235 » 1, 24 » 1, 2 » 1
Ta giữ lại đến số hạng thứ j. Gọi phần bỏ đi là . Đặt 3) c = 1, 2452 » 1, 245 » 1, 24 » 1, 2 » 1
a= p .10 p + p -1 .10 p -1 + + j .10 j
p Mọi số Ga thỏa mãn a - a £ Ga đƣợc gọi là sai số thu gọn của a.
Trong đó ìï j , 0£ < 0,5.10 j
j =í Nhận xét: Sau khi thu gọn, sai số tuyệt đối tăng lên lƣợng bằng Ga
ïî j + 1, 0,5.10 j < < 10 j
=> Chứng minh????
ü Trong trƣờng hợp = 0,5.10 j :
ü Nếu chẵn Þ j = j
ü Nếu lẻ Þ j = j +1
11 12
Bài 1.3: Chữ số chắc (chữ số đáng tin) Bài 1.3: Chữ số chắc
13 14
15 16
Bài 1.4: Sai số tính toán Bài 1.4: Sai số tính toán
p Bài toán thuận về sai số: là bài toán tìm sai số của kết quả khi
biết sai số của các số liệu ban đầu.
p Giả sử cần tìm hàm y = f ( x1 , x2 ,..., xn ). Gọi xi* , yi* và xi , yi , i = 1, n là
các giá trị đúng và gần đúng của đối số và số. Giả sử hàm f khả
vi liên tục. Khi đó
n
y - y * = f ( x1 ,..., xn ) - f ( x1* ,..., xn* ) = å f i ' xi - xi*
i =1
n
¶f
Ø Sai số tuyệt đối: Dy = å Dxi
i =1 ¶xi
Dy n ¶
Ø Sai số tƣơng đối: y= =å ln f Dxi
y i =1 ¶xi 17 18
Bài 1.4: Sai số tính toán Bài 1.4: Sai số tính toán
19 20
BÀI TẬP CHƢƠNG I
CHƯƠNG 2
21 22
Tính giá trị đa thức tại x = c, tức là cần tính P(c), với c là giá
trị cho trƣớc.
23 24
Bài 2.1: Sơ đồ Horner và áp dụng Bài 2.1: Sơ đồ Horner và áp dụng
p Ví dụ 1: Cho P( x) = x 6 - 5 x 4 + 2 x3 - x - 1. Áp dụng sơ đồ Horner
Horner, tính P(-2)
Input ai, c, n
Giải: Lập sơ đồ Horner:
P=0
i = 0,1,2,...,n
P = P*c + ai
Print P
p Ví dụ 2: Cho . Tính P(-2)
Xác định P(y+c), với y là biến mới, c là giá trị cho trƣớc. Trong đó, Pn-1(x) là đa thức bậc n-1.
Phương pháp: Giả sử Mặt khác P( y + c) = y(b0 y n-1 + b1 y n- 2 + + bn-2 y + bn-1 ) + bn
P( y + c) = b0 y n + b1 y n-1 + + bn-1 y + bn (b0 ¹ 0)
Đặt x = y + c Þ P( x) = ( x - c)(b0 y n-1 + b1 y n-2 + + bn-2 y + bn-1 ) + bn (2*)
=> Ta cần xác định các hệ số bi , i = 0, n
Từ (*) và (2*) ta suy ra P1 ( x) = P1 ( y + c) = b0 y n-1 + b1 y n-2 + + bn-2 y + bn-1
P ( i ) (c)
Þ = bn -i Û P (i ) (c) = i !bn-i
i!
29 30
Bài 2.1: Sơ đồ Horner và áp dụng Bài 2.2: Sai phân của hàm số thực
Ví dụ 3: Cho P( x) = 2 x + 4 x - x + x + 2 . Xác định P( y - 1)
6 5 2
p p Tỷ sai phân:
Giải: Ta có c = -1. Lập sơ đồ Horner tổng quát: Xét hàm y=f(x) trên [a, b] và cho trƣớc bảng giá trị xi , yi , i = 0, n
Tỷ sai phân cấp 1 của hàm f:
f ( xi ) - f ( xi -1 )
f xi , xi -1 = , i = 1, n
D.hàm: xi - xi -1
P (-1) = -2; Tỷ sai phân cấp 2 của hàm f:
P '( -1) = 1!*11 = 11;
f xi +1 , xi - f xi , xi -1
P ''( -1) = 2!*( -11) = -22; f xi +1 , xi , xi -1 = , i = 1, n - 1
xi +1 - xi -1
P '''( -1) = 3!* 0 = 0;
P (4) (-1) = 4!*10; Tỷ sai phân cấp n của hàm f:
P (-1) = 5!*(-8);
(5)
f xn , xn-1 ,..., x1 - f xn-1 ,..., x1 , x0
f xn , xn -1 ,..., x1 , x0 =
P (-1) = 6!* 2.
(6)
31 xn - x0 32
Bài 2.2: Sai phân của hàm số thực Bài 2.2: Sai phân của hàm số thực
p Các tính chất của tỷ sai phân:
Tính chất tuyến tính
f + g xk ,..., x0 = f xk ,..., x0 + g xk ,..., x0
Tính chất đối xứng
f xi , xi -1 = f xi -1 , xi
f xi +1 , xi , xi -1 = f xi -1 , xi , xi +1
33 34
Bài 2.2: Sai phân của hàm số thực Bài 2.2: Sai phân của hàm số thực
p Sai phân
Giả sử hàm f : R ® R là hàm cho trƣớc và các điểm cách đều nhau
khoảng h, tức xi +1 = xi + h . Khi đó:
Sai phân cấp 1 của hàm f:
Df ( xi ) = f ( xi +1 ) - f ( xi ) = f ( xi + h) - f ( xi )
Sai phân cấp 2 của hàm f:
D 2 f ( xi ) = D Df ( xi ) = Df ( xi +1 ) - Df ( xi ) = Df ( xi + h) - Df ( xi )
Quy ước: 35 36
Bài 2.2: Sai phân của hàm số thực Bài 2.2: Sai phân của hàm số thực
p Các tính chất của sai phân: p Liên hệ giữa tỷ sai phân và sai phân trong trƣờng hợp các
Tính chất tuyến tính điểm cách đều nhau khoảng h:
D( f + g ) = Df + Dg f ( xi ) - f ( xi -1 ) Df ( xi -1 ) Df ( xi -1 )
f xi , xi -1 = = =
xi - xi -1 h 1!h
Nếu c = const ÞDc = 0
Giả sử Pn(x) là đa thức bậc n. Khi đó: f xi +1 , xi - f xi , xi -1 Df ( xi ) - Df ( xi -1 ) D 2 f ( xi -1 )
f xi +1 , xi , xi -1 = = =
xi +1 - xi -1 2h 2 2!h 2
D n Pn ( x0 ) = D n Pn ( x1 ) = = const
D m Pn ( x) = 0 "m > n
D k f ( x0 )
f xk , xk -1 ,..., x1 , x0 =
k !h k
37 38
Bài 2.2: Sai phân của hàm số thực BÀI TẬP CHƢƠNG II
p Ứng dụng sai phân tính giá trị đa thức p Bài 1: Cho P( x) = 2 x5 + 4 x3 - x 2 + 2 . Xác định:
PHÉP NỘI SUY VÀ ÁP DỤNG Ø Ta xây dựng đa thức Pn(x) có bậc không quá n sao cho:
Pn ( xi ) = yi = f ( xi ), i = 0, n
41 42
Ø Hàm Pn(x) đƣợc gọi là hàm nội suy của f(x) trên [a, b]. ·
f(c) f(x)
Rn(c)
Ø Các điểm xi , i = 0, n đƣợc gọi là các mốc nội suy.
Pn(c) ·
·
·
·
p Định lý: Đa thức nội suy Pn(x) của hàm f(x) đƣợc xây dựng từ
Pn(x)
các mốc nội suy trên (nếu có) là duy nhất.
x0 c x1 x2 xn
Xấp xỉ đƣờng cong f(x) bởi đa thức Pn(x) (với Pn(xi)=f(xi)). Ƣớc
lƣợng f(c) bởi Pn(c): f(c) » Pn(c) với sai số Rn(c)
43 44
Bài 3.1 Đa thức nội suy Lagrange Bài 3.1 Đa thức nội suy Lagrange
p Cho trƣớc n+1 điểm mốc: (x0,y0),(x1,y1),…, (xn,yn) Ví dụ 3.1: Xây dựng đa thức nội suy Lagrange cho hàm y=sin(px)
p Đa thức nội suy Lagrange là đa thức Pn (x) có bậc không quá n rồi tính gần đúng sin(p/5) với các mốc nội suy cho trong bảng:
và nhận các giá trị y0, y1, y2, …,yn theo công thức x 0 1/6 1/2
y=sin(px) 0 1/2 1
n
( x - x0 )( x - x1 )...( x - xi -1 )( x - xi +1 )...( x - xn )
Pn ( x) = å yi
i =0 ( xi - x0 )( xi - x1 )...( xi - xi -1 )( xi - xi +1 )...( xi - xn ) Giải: Đa thức nội suy Lagrange:
p Với n=1 (có 2 mốc nội suy) 1 1
( x - )( x - )
1
( x - 0)( x - )
1
( x - 0)( x - )
6 2 1 2 6 = -3x 2 + 7 x
x - x1 x - x0 P2 ( x) = 0 ´ + ´ + 1´
P1 ( x) = y0 + y1 1
(0 - )(0 - )
1 2 1 1 1
( - 0)( - )
1 1 1
( - 0)( - ) 2
x0 - x1 x1 - x0 6 2 6 6 2 2 2 6
p Với n=2
( x - x1 )( x - x2 ) ( x - x0 )( x - x2 ) ( x - x0 )( x - x1 ) Thay x=1/5 vào P2(x) tìm được , ta có sin( /5) P2(1/5)=0,58
P2 ( x) = y0 + y1 + y2
( x0 - x1 )( x0 - x2 ) ( x1 - x0 )( x1 - x2 ) ( x2 - x0 )( x2 - x451 ) 46
Bài 3.1 Đa thức nội suy Lagrange Bài 3.1 Đa thức nội suy Lagrange
§ Ví dụ 3.2: Tìm đa thức nội suy Lagrange đối với hàm y=f(x) p Ví dụ 3.3: Xây dựng đa thức nội suy Lagrange từ bảng số
liệu sau: x 0 2 3
đƣợc cho nhƣ trong bảng
y 1 3 2
Tính gần đúng f(0,2)?
Đs:
ĐS n
125 3 91
P3 ( x) = å yi lin = = x - 30 x 2 + x - 0,5 p Ví dụ 3.4: Xây dựng đa thức nội suy Lagrange từ bảng số
i =0 3 12 liệu sau:
x 0 2 3 5
Ta có: f(0,2) » P3(0,2)=0,15 y 1 3 2 5
=> Nhận xét???
47 48
Bài 3.1 Đa thức nội suy Lagrange Bài 3.2 Đa thức nội suy Newton
49 50
và tỷ sai phân các cấp của hàm f(x) q Đa thức nội suy Newton cũng chính là đa thức nội suy
Lagrange chỉ khác về cách trình bày.
Đa thức nội suy Newton tiến xuất phát từ x0 là:
Pn ( x) = f ( x0 ) + ( x - x0 ) f [ x0 , x1 ] + ( x - x0 )( x - x1 ) f [ x0 , x1 , x2 ] p Nếu thêm một mốc (xn+1,yn+1), đa thức nội suy Pn+1(x) trên tập
+ ... + ( x - x0 )( x - x1 )...( x - xn-1 ) f [ x0 , x1 ,..., xn ] điểm mốc mới đƣợc tính theo Pn(x) nhƣ sau:
Tƣơng tự, đa thức nội suy Newton lùi xuất phát từ xn là: Pn+1 ( x) = Pn ( x) + ( x - x0 )( x - x1 )...( x - xn ) f [ x0 , x1 ,..., xn+1 ]
Pn ( x) = f ( xn ) + ( x - xn ) f [ xn , xn -1 ] + ( x - xn )( x - xn -1 ) f [ xn , xn -1 , xn -2 ]
+ ... + ( x - xn )( x - xn-1 )...( x - x1 ) f [ xn , xn -1 ,..., x0 ]
51 52
Đa thức nội suy Newton với các mốc bất kỳ Đa thức nội suy Newton với các mốc bất kỳ
§ Ví dụ 3.5: Xây dựng đa thức nội suy theo phƣơng pháp newton Ví dụ 3.6: Xây dựng đa thức nội suy Newton từ bảng số liệu
cho hàm y=sin(px) với các mốc nội suy cho trong bảng: sau:
x 0 2 3
x 0 1/6 1/2 y 1 3 2
y=sin(px) 0 1/2 1
Đs:
Giải: Lập bảng tỷ hiệu xi yi TSPC1 TSPC 2
0 0
1/ 6 1/ 2 f [ x0 , x1 ] 3
Ví dụ 3.7: Xây dựng đa thức nội suy Newton từ bảng số liệu
1/ 2 1 f [ x1 , x2 ] 3 / 2 f [ x0 , x1 , x2 ] 3
sau:
x 0 2 3 5
P2 ( x) f ( x0 ) (x x0 ) f [ x0 , x1 ] ( x x0 )( x x1 ) f [ x0 , x1 , x2 ] y 1 3 2 5
7
0 3x (-3) x( x -1/ 6) - 3x2 x
2 53 54
3.2.2 Đa thức nội suy Newton với các mốc cách đều Đa thức nội suy Newton với các mốc cách đều
xi+1-xi = h (hằng số) Þ xi = x0 + ih Cho các mốc nội suy sắp xếp theo thứ tự tăng dần, cách đều
nhau khoảng h và sai phân các cấp của hàm f(x)
x0 x1 x2 xi xi+1 Đa thức nội suy Newton tiến xuất phát từ x0 với các mốc cách
đều là:
…
h h Pn ( x) f ( x0 )
y0
(x x0 )
2
y0
(x x0 )( x x1 ) ...
n
y0
(x x0 )( x x1 )...( x xn 1 )
1!.h 2!.h 2 n !.h n
2h
Tƣơng tự, đa thức nội suy Newton lùi xuất phát từ xn với các mốc
cách đều là:
ih Pn ( x) f ( xn )
yn 1
( x xn )
2
yn 2
( x xn )( x xn 1 )
1!.h 2!.h 2
n
y0
55 ... ( x xn )( x xn 1 )...( x x1 ) 56
n !.hn
Đa thức nội suy Newton tiến-các mốc cách điều 3.2.3. Sai số của đa thức nội suy
Ví dụ 3.8: Cho hàm y=f(x) xác định bởi bảng: p Giả sử Pn (x) là đa thức nội suy của hàm f(x) với các mốc nội suy
Tính gần đúng f(4/3) bằng đa thức nội suy Newton (x0,y0),(x1,y1),…, (xn,yn).
Giải: Nhận thấy các mốc nội suy cách đều nhau khoảng h=1 Khi đó, hiệu R( x) = f ( x) - Pn ( x) gọi là sai số của phép nội suy.
Bảng sai phân x y ry r2y Để đánh giá sai số này, giả sử hàm f(x) khả vi đến cấp n+1 trên [a,b]
1 2 Gọi M = Max f ( n+1) x . Khi đó, công thức đánh giá sai số:
2 7 5 a £ x £b
3 14 7 2 M
R( x) £ n +1 ( x)
=> Đa thức nội suy Newton: (n + 1)!
P2 ( x) = 2 +
5
( x - 1) +
2
( x - 1)( x - 2) = x 2 + 2 x - 1 Þ f æ 4 ö » 31 Với n +1 ( x) = ( x - x0 )( x - x1 ) ( x - xn )
1!.1 2!.12 ç3÷ 9
è ø
57 58
D
S nS32 Sn n
2 2
x 0 1/6 1/2 D 2 S n = DS n +1 - DS n = n + 2 - n + 1 = 2n + 3
y=sin(px) 0 1/2 1 D 3 S n = D 2 S n +1 - D 2 S n = 2( n + 1) + 3 - (2n + 1) = 2 = const
Giải: Đa thức nội suy Lagrange tìm đƣợc: P2 ( x) = -3x 2 + 7 x Lập bảng sai phân
2 1 1
1 7 1
sin( / 5) P2 (1/ 5) 3.( ) 2 . 0,58
5 2 5 2 5 4
Sai số: M 3 14 9 5 2
R3 ( x) (x x0 )( x x1 )( x x2 )
3! Áp dụng công thức nội suy Newton tiến với t=n-1
max sin (3) ( x) 3 3 5 2
M max cos( x) Sn = 1 + 4(n - 1) + ( n - 1)(n - 2) + ( n - 1)(n - 2)(n - 3) =
3 3
2! 3!
1 1 1 1 1 1 1
R3 ( x) | x( x )( x )| R3 (1/ 5) ( )( ) 0, 010335 1
= n(n - 1)(2n + 1)
59 60
6 6 2 6 5 5 6 5 2
6
Bài 3.3 Chọn mốc nội suy tối ƣu Chọn mốc nội suy tối ƣu
p Với công thức đánh giá sai số Đa thức Chebyshev:
n
M M
R( x) = f ( x) - Pn ( x) £ Õ
(n + 1)! i =0
( x - xi ) =
(n + 1)!
( x) Tn(x) = cos(n.arccosx) với |x| £1, nÎN*
Tính chất:
Cần chọn các xi Î[a;b] để max ( x) ® min Tn+1(x) = 2x.Tn(x)-Tn-1(x)
xÎ[ a ;b ]
Nhận xét: t=
1
[2 x - (a + b)] Tn(x) là đa thức bậc n, hệ số cao nhất là 2n-1
Với phép biến đổi
b-a
Nhận xét:
Thì đoạn [a;b] chuyển thành [-1;1] 2i + 1
Tn(x) có đúng n nghiệm: xi = cos( ) , i = 0,1,2,..., n - 1
2n
Nên các mốc nội suy trên [a;b] đều có thể chuyển về
các mốc nội suy trên [-1;1] Mọi nghiệm của Tn(x) đều thuộc [-1;1]
i
max Tn ( x) |= 1 khi x=xi= cos( ), i = 0,1,2,..., n
61 xÎ[ -1;1] n 62
Chọn mốc nội suy tối ƣu Chọn mốc nội suy tối ƣu
Trường hợp 1: Các các mốc nội trong [-1, 1], khi đó các mốc nội Trường hợp 2: Trƣờng hợp các mốc nội suy đƣợc chọn trong
suy đƣợc chọn là nghiệm của Tn+1(x) : [a, b] bất kỳ. Đặt:
(2i + 1) (2 x - a - b)
xi = cos , i = 0,1,.., n t= Þ -1 £ t £ 1
2(n + 1) (b - a)
Khi đó Chọn các mốc ti theo trƣờng hợp 1, suy ra các mốc xi
1æ 2i + 1 ö
xi = ç (b - a )cos + (b - a) ÷ , i = 0, n
1 1 2è 2(n + 1) ø
( x) = n
Tn +1 ( x) £ n
2 2 Khi đó, ƣớc lƣợng tốt nhất của phép nội suy:
M M M M (b - a )n +1
R ( x) £ ( x) = n R ( x) = f ( x) - P ( x) £ ( x) £
(n + 1)! 2 (n + 1)! (n + 1)! (n + 1)! 22 n+1
63 64
Đặt vấn đề
p Trong toán học, đã có phƣơng pháp tính đạo hàm và tính
phân xác định
Thực tế, thƣờng gặp các trƣờng hợp :
TÍNH GẦN ĐÚNG ĐẠO HÀM
p
n Hàm y=f(x) chỉ đƣợc cho ở dạng bảng, công thức tƣờng
minh của y là chƣa biết.
VÀ TÍCH PHÂN XÁC ĐỊNH n Hàm f(x) đã biết, nhƣng phức tạp
n Hoặc viết chƣơng trình máy tính để tính tích phân xác
định.
Þ Chọn giải pháp: “Tính gần đúng”
65
Bài 3.5 Tính gần đúng đạo hàm 3.5 Tính gần đúng đạo hàm
p Áp dụng công thức Taylor: Sai số: f '' ( ) M
''
f ( ) R( x0 ) = h£ h Với |f’’(x)|<=M, "x Î[x0,x0+h]
f ( x) = f ( x0 ) + f ' ( x0 )( x - x0 ) + ( x - x0 ) 2 2 2
2
Đặt h = x-x0 Þ x=x0+h: Ví dụ 1: Cho f(x)=2x4+x-1. Tính f’(1)?
f '' ( ) 2
f ( x0 + h) = f ( x0 ) + f ' ( x0 )h + h Giải: Chọn h=0.001, ta có:
2
Khi |h| khá bé có thể bỏ qua số hạng có h2. Khi đó f ' (1) »
f (1 + 0,001) - f (1) 2,009 - 2
= = 9,01
0,001 0,001
f ( x0 + h) - f ( x0 )
f ' ( x0 ) = (1)
h Sai số: Do |f’’(x)|≤|f’’(1,001)|=24,05 "xÎ[1;1,001]
Có thể lấy công thức (1) để tính gần đúng f’(x0) khi |h| 24,05
| R(1) |£ .0,001 = 0,012
khá bé 2
3.5. Tính gần đúng đạo hàm 3.5. Tính gần đúng đạo hàm
p Áp dụng đa thức nội suy Ví dụ 2: Cho hàm y=f(x) dƣới dạng bảng
n Xấp xỉ f(x) bằng đa thức nội suy Pn(x), với n+1 mốc x 0 2 3
a=x0<x1<x2<…<xn=b y 1 3 2
f ( x) = Pn ( x) + R( x)
Tính gần đúng f’(1)=?
Þ f ' ( x) = P ( x) + R' ( x)
n
'
Giải: Áp dụng công thức nội suy Lagrange hoặc công thức nội suy
Newton, ta thu đƣợc đa thức nội suy bảng dữ liệu trên:
n f’(x) » Pn’(x) với xÎ[a,b] 2 7 4
P2 ( x) = - x 2 + x + 1 Þ f '( x) » P2 '( x) = - x +
7
Sai số: 3 3 3 3
'
n æ f ( n +1) (c) n
ö
R ' ( x) = çç Õ ( x - xi ) ÷÷ 4 7
Vậy f '(1) » P '(1) = - + = 1
è (n + 1)! i =0 ø 2
3 3
Bài 3.6 Tính gần đúng tích phân 3.6.1 Công thức hình thang
q Cần tính b p Phân hoạch [a,b] thành n đoạn con bằng nhau: a=x0<x1<…<xn=b
I = ò f ( x)dx
a
f(x)
p Nếu hàm f(x) liên tục trên [a,b] và có nguyên hàm F(x), công
thức Newton – Lepnit:
b h=xi+1-xi=1/n
I = ò f ( x)dx = F (b) - F (a)
a
p Trƣờng hợp:
x0=a x1 x2 xi Xi+1 b=xn
P f(x) chỉ đƣợc cho ở dạng bảng
b x1 x2 xn
P Hoặc f(x) đã biết nhƣng tính toán phức tạp I = ò f ( x)dx =
Þ Thay vì tính đúng, tính gần đúng sẽ đơn giản hơn a
ò f ( x)dx + ò f ( x)dx + ... + ò f ( x)dx
x0 x1 xn-1
3.6.1 Công thức hình thang 3.6.1 Công thức hình thang
Trên đoạn [xi, xi+1], xấp xỉ f(x) bởi đa thức (bậc 1) P1(x) è Ii gần bằng diện tích hình thang xiABxi+1
xi+1 xi +1 xi+1
Ii = ò f ( x)dx » ò P1 ( x) = ò ( yi + ( x - xi ) f [ xi , xi +1 ])dx xi +1 1
xi xi xi f(x) Ii = ò f ( x)dx » h( yi + yi +1 )
B xi 2
Đặt x = xi+th Þ dx = hdt. Với x Î [xi, xi+1] Þ t Î [0,1]
ri(h)
1 A yi+1
1
xi +1 1 1
Ii = ò f ( x)dx » ò h( yi + t.Dyi )dt = h.( yit + Dyit 2 ) = h( yi + yi +1 ) yi
xi
0
2 0 2
xi xi+1
Sai số địa phƣơng
h
3.6.1 Công thức hình thang 3.6.1 Công thức hình thang
p Công thức hình thang tổng quát: Ví dụ: Tính gần đúng các tích phân sau bằng công thức hình thang
b x1 x2 xn
I = ò f ( x)dx = ò f ( x)dx + ò f ( x)dx + ... + ò f ( x)dx 1
a x0 x1 xn -1 5 1 dx
n -1
a) I =ò dx b) I = ò
0 1+ x
2
h h 1 x
= å ( yi + yi +1 ) = y0 + 2 y1 + 2 y2 + + 2 yn -1 + yn
i =0 2 2 Với phân hoạch [1,5] thành n=4 phần bằng nhau. Đánh giá sai số
b-a
b
Vậy ò f ( x) dx »
a
2n
y0 + 2 y1 + 2 y2 + + 2 yn -1 + yn (2) Giải: a) Bảng giá trị
x 1 2 3 4 5
Mh M (b - a ) 2
3 y 1 1/2 1/3 1/4 1/5
o Sai số toàn phần: | r (h) |£ n = h (3)
12 12
M = Max|f’’(x)|,xÎ[a,b]
3.6.1 Công thức hình thang 3.6.2 Công thức Simpson(Parabol)
Phân hoạch [a,b] thành n=2m đọan con bằng nhau: a=x0<x1<……<x2m=b
Áp dụng công thức (2) ta tính đƣợc
f(x) (b - a)
dx 5 - 1 æ 2 2 2 1 ö 101
5
h = xi +1 - xi =
I =ò » ç1 + + + + ÷ = n
1
x 2 ´ 4 è 2 3 4 5 ø 60
xi = x0 + ih, i = 0,1,..., 2 m
Sai số:
f ''( x) = 2 x -3 Þ M = max f ''( x) = max 2 x -3 = 2 x0=a x1 x2 b=x2m
1£ x £5 1£ x £5
M (b - a ) 2 2 ´ 4 2 2 x2 x4 x2 m
ÞR = h = ´1 =
b
P2(x)
I = ò f ( x)dx » ò f ( x)dx + ò f ( x)dx + ... + ò f ( x)dx
a x0 x2 x2 n - 2
x2 i + 2 x2 i + 2
f(x) Ii = ò f ( x)dx » ò P2 ( x)dx h h h
x2 i x2 i
= ( y0 + 4 y1 + y2 ) + ( y2 + 4 y3 + y4 ) + ... + ( y2 n-2 + 4 y2 n-1 + y2 n )
3 3 3
Đặt x = x2i + th, dx = hdt; x =x2i
Þ t=0; x = x2i+2 Þ t=2 h
I = [( y0 + y2 n ) + 4( y1 + y3 + ... + y2 n-1 ) + 2( y2 + y4 + .. + y2 n-2 )] (4)
xi Xi+1 Xi+2
3
p Trƣờng hợp n=1: p Giả sử cần tính tích phân I = ò f ( x )dx với độ chính xác cho trƣớc.
æ y + y1 ö
b
1 æ1 1 ö a
P10 = P11 = Þ ò f ( x )dx » b - a ç y0 + y1 ÷ = b - a ç 0 ÷ Công thức đánh giá sai số:
2 a è2 2 ø è 2 ø M h3
+ Công thức hình thang: | r (h) |£ n , M = Max|f’’(x)|, " xÎ[a,b]
Đây chính là công thức hình thang (địa phƣơng) 12
3.6.4 Sai số và cách chọn bƣớc 3.6.4 Sai số và cách chọn bƣớc
p Tiến hành tính 2 lần để kiểm tra độ chính xác (tính kép): p Sai số:
1
+Tính tích phân với bƣớc h nào đó, cho kết quả In + Công thức hình thang: D » I n - I2n
3
+Tính lại theo công thức đó với bƣớc h/2 (tăng n gấp đôi), kết quả I2n
1
+ Công thức Simpson: D» In - I2n
w Nếu I n - I 2 n < thì lấy 15
w Nếu I n - I 2 n ³ thì tiếp tục lặp lại với bƣớc h/4 Bài tập: Tính gần đúng các tích phân sau bằng công thức hình thang với
độ chính xác = 10-2 , xác định h nhờ cách tính kép
è Bƣớc h đầu tiên thƣờng đƣợc chọn cỡ m , trong đó, m=2 với ct 0,3 1
dx dx
hình thang, và m=4 với ct Simpson a) I=ò b) I = ò
0 +
0,1
x 1 x2
BÀI TẬP CHƢƠNG III BÀI TẬP CHƢƠNG III
p Bài 5: Sử dụng công thức nội suy Lagrange, tính gần đúng sin
12
(hàm y=sinx) với các mốc nội suy
x0 = 0, x1 = , x2 = , x3 = , x4 = Ƣớc lƣợng sai số.
6 4 3 2
4
M (C2): y=H(x)
Định lý: Nếu f(x) khả vi liên tục trên trên [a,b], f’(x) không
đổi dấu trên (a,b), và f(a).f(b)<0 thì f(x) có duy nhất một
1 2
nghiệm trên (a,b).
4.1 Nghiệm và khoảng phân ly nghiệm 4.1 Nghiệm và khoảng phân ly nghiệm
y y y=f(x) Ví dụ 1.2: Xét hàm f(x) = x3-3x+1.
f’(x)>0 f’(x)>0
y=f(x) f(a)<0 f(a)<0 Ta có: f’(x) = 3x2 – 3=0 Û x = -1 hoặc x = 1
f(b)>0 f(b)>0
a a Bảng xét dấu f’(x)
a
b x a b x
x -¥ -1 1 +¥
f’(x) + 0 - 0 +
y f’(x)<0
y
y=f(x) f’(x)>0, "x Î (-2,-1) hơn nữa f(-2). f(-1)=(-1).(3)=-3<0
y=f(x) f(a)>0 f’(x)<0
f(b)<0 f(a)>0
f(b)<0 Vậy (-2, -1) là một khoảng phân ly nghiệm
b Tƣơng tự, (-1,1) và (1,2) cũng là các khoảng phân ly
a a x a a nghiệm
4.1 Nghiệm và khoảng phân ly nghiệm Bài 4.2.Phƣơng pháp chia đôi (Bisection)
Ví dụ 1.3: Tìm các khỏang phân ly nghiệm của phƣơng trình Bài toán: Giả sử (a,b) là khoảng phân ly nghiệm của phƣơng trình
5x3 - 19x + 3 = 0 f(x) = 0. Tìm nghiệm thực gần đúng của phƣơng trình trong
(a,b), sai số £ e.
Xét f(x) = 5x3 - 19x + 3 y
19 19 f(x)
p Tính f’(x) = 15x2 – 19; f’(x) = 0 Û x1 = ; x2 = - Nội dung của phương pháp:
15 15
p Bảng biến thiên
üChọn x0 là điểm giữa [a,b] làm
a x0
X -¥ +¥ nghiệm gần đúng. x
a b
f’(X) + 0 - 0 a+b
+
x0 =
¥
2
f(x)
17,26
§ Nếu f(x0)=0 Þ x0 là nghiệm đúng ® Dừng.
-¥ -11,26
§ Nếu f(x0) ¹ 0 và sai số Dx0£ e thì x0 là nghiệm gần
Vậy có thể lấy (-3;-2); (0;1); (1,5;2) là các khoảng phân ly nghiệm đúng cần tìm với sai số Dx0 ® Dừng.
của phƣơng trình 5x3 - 19x + 3 = 0.
4.2. Phƣơng pháp chia đôi 4.2. Phƣơng pháp chia đôi
§ Nếu f(x0) ¹ 0 và sai số Dx0 > e thì xét dấu f(a).f(x0): Ví dụ 1: Tìm nghiệm gần đúng của phƣơng trình x3 + 4x2 – 1=0
Nếu f(a).f(x0) < 0 thì khoảng phân ly nghiệm mới (a,x0) trên (0,1) theo phƣơng pháp chia đôi với 5 lần lặp.
Nếu f(a).f(x0) >0 thì khoảng phân ly nghiệm mới (x0,b) Giải: Với f(x) = x3 + 4x2 -1, ta có f(0) = -1, f(1) = 4
§ Lặp lại phƣơng pháp chia đôi với khoảng phân ly nghiệm mới. => (0,1) là khoảng phân ly nghiệm.
§ Quá trình lặp lần lƣợc cho ta các nghiệm gần đúng x0, x1,…. Và Kết quả thực hiện của 5 lần lặp (với phƣơng pháp chia đôi)
kết thúc khi tìm đƣợc xn với sai số Dxn≤ e
y f(x)
a x0 x2
x1 b x
Nghiệm gần đúng tìm được là x » 0,46875
4.2. Phƣơng pháp chia đôi 4.2. Phƣơng pháp chia đôi
q Đánh giá sai số: Gọi a là nghiệm đúng. Ta có: Ví dụ: Tìm nghiệm gần đúng của phƣơng trình x3 + 4x2 - 1 = 0 trên
1 (0,1) với sai số £ e = 0,1 bằng phƣơng pháp chia đôi.
1
n Bƣớc 0: D 0 = - x0 £ 1 (b - a) Þ D x = 1 (b - a )
2 0
2 • x0 = (a+b)/2=(0+1)/2 =0,5;
1 1 1 1 Sai số: Dx0 = ½*(b-a)=1/2=0,5 > e = 0,1
n Bƣớc 1: D1 = - x1 £ ( (b - a)) = 2 (b - a) Þ D x1 = (b - a)
2 2 2 22 f(0).f(0,5) = -0,125 < 0 Þ Thay b = 0,5; a=0 (không đổi)
• x1 = (a+b)/2=(0+0,5)/2 =0,25;
n … Sai số: Dx1 = ½*(0,5-0)=0,25 > e = 0,1
1 f(0).f(0,25) = 0,73>0 Þ Thay a = 0,25; b=0,5 (không đổi)
n Bƣớc n: D xn = .(b - a )
2 n +1 • x2=(a+b)/2=(0,25+0,5)/2 =0,375;
Sai số:Dx2=½*(0,5-0,25)=0,125>e = 0,1
Ƣu nhƣợc điểm của phƣơng pháp
f(0,25).f(0,375) = 0,28>0 ÞThay a=0,375;b=0,5 (không đổi)
• x3=(a+b)/2=(0,375+0,5)/2 =0,4375;
Ø Ưu điểm:Đơn giản, dễ lập trình.
Sai số: Dx3 = ½*(0,5-0,375)=0,0625<e = 0,1
Ø Nhược điểm: Hội tụ về nghiệm chậm.
Do x3 < = 0,1 nên x =x3= 0,4375 là nghiệm gần đúng cần tìm.
Giải thuật của phương pháp chia đôi Bài 4.3. Phƣơng pháp dây cung
Input a, b, eps Bài toán: Giả sử (a,b) là khoảng phân ly nghiệm của phƣơng trình
f(x)=0. Giả thiết f’(x), f’’(x) liên tục và ko đổi dấu trên (a, b). Tìm
x = (a+b)/2 nghiệm thực gần đúng của f(x)=0 trên (a,b) với sai số£e cho trƣớc.
Compute f(x)
Nội dung của pp: B
§ Thay cung AB bởi dây trƣơng cung AB
F
f(a)*f(x) > 0
x1
T AB cắt trục hoành tại điểm (x1,0).
a a
b - a f (a)
b
b=x f(x)
a=x x1 = a - A
f (b ) - f ( a )
F § Nếu |x1-a| £ e, x1: nghiệm gần đúng cần tìm.
b - a < eps
§ Nếu không, lặp lại phƣơng pháp dây cung với khoảng phân ly mới (x 1,b)
T hoặc (a, x1) tùy theo tính chất của f(x)
Print x End
4.3. Phƣơng pháp dây cung 4.3. Phƣơng pháp dây cung
ü Nếu f(x1).f(a)<0 thì (a,x1) là khoảng phân ly nghiệm mới Để xây dựng công thức tính nghiệm, ta xét thêm tính tăng giảm và lồi
ü Nếu f(x1).f(b)<0 thì (x1,b) là khoảng phân ly nghiệm mới lõm của đƣờng cong f(x). Giả sử f’ và f’’ không đổi dấu trên (a,b)
4.3. Phƣơng pháp dây cung 4.3. Phƣơng pháp dây cung
A
B x0 = b
x0 = a
x1 X0=b (3.2)
f ( xn ).( xn - b) (3.1) f ( xn ).( xn - a)
xn xn+1 xn +1 = xn - xn +1 = xn -
a f ( xn ) - f (b) a f ( xn ) - f (a)
B1 B0
b
An-1 A
n
4.3. Phƣơng pháp dây cung 4.3. Phƣơng pháp dây cung
ü Từ 2 trƣờng hợp trên, ta rút ra công thức tính nghiệm chung: Ví dụ: Tìm nghiệm gần đúng của phƣơng trình x3-3x+1=0 trên (1,5; 2)
bằng phƣơng pháp dây cung với 3 lần lặp (nghĩa là giá trị của nghiệm
cần tìm lần lƣợt là x0, x1, x2 và x3).
f ( xn )( xn - d )
xn +1 = xn - (3.3) Giải:
f ( xn ) - f (d ) Đặt f(x) = x3 – 3x+1
f’(x)=3x2-3; f’(x)=0 Û x = -1 Ú x = 1
Trong đó: f’’(x) =6x; f’’(x)=0 Û x = 0;
d=b, x0 = a nếu b là điểm Fourier Bảng xét dấu:
4.3. Phƣơng pháp dây cung 4.3. Sai số của phƣơng pháp dây cung
Dựa vào bảng xét dấu, ta thấy:
f’(x)>0 và f’’(x)>0 "xÎ(1,5; 2) và f(1,5)=-1,125<0 ; f(2)=3>0 Nếu có số m thoả: 0< m ≤ |f’(x)|, "xÎ[a,b]
=> f(2).f’’(x)>0 =>x=2 là điểm Fourier f ( xn )
Vậy, chọn x0 = 1,5; d = 2
D xn £
f ( xn )( xn - d ) m
Áp dụng công thức tính nghiệm: xn +1 = xn -
f ( xn ) - f (d )
Ta tính được:
Nếu có số M,m thoả 0< m ≤ |f’(x)| ≤M, "xÎ[a,b] thì sai số
cũng có thể chọn là:
f ( x1 )( x1 - 2) f ( x0 )( x0 - 2)
x2 = x1 - = ... x1 = x0 - = ...
f ( x1 ) - f (2) f ( x0 ) - f (2) M -m
D xn £ xn - xn -1
m
f ( x2 )( x2 - 2)
x3 = x2 - =?
f ( x2 ) - f (2)
4.3. Phƣơng pháp dây cung 4.3. Phƣơng pháp dây cung
Ví dụ: Dùng phƣơng pháp dây cung tìm nghiệm gần đúng của phƣơng Þ f’(x)>0; f’’(x)>0 "x Î (0,5; 1,5)
trình 5x3-x2-x-1=0 với sai số không quá 0,02. f(1,5)*f’’(x)>0 => x=1,5 là điểm Fourier.
Giải: Đặt f(x) = 5x3-x2-x-1
ì x0 = 0,5
Vì f(0,5)=-1,125<0; f(1,5)=12,125>0 => (0,5; 1,5) là khoảng phân Công thức tính nghiệm: ï
í f ( xn -1 )( xn -1 - 1,5)
ly nghiệm. Ta có: ï x = x - -
f ( xn -1 ) - f (1,5)
n n 1
î
f’(x)=15x2-2x-1; f’(x)=0 Û x1=-1/5; x2 =1/3
f’’(x)=30x-2 ; f’’(x)=0Û x=1/15
Ta có m=min|f’(x)| =min| 15x2-2x-1 |=f’(0,5)=1,75 "x Î(0,5; 1,5)
Xét dấu f’ và f’’:
Vậy có thể chọn biểu thức đánh giá sai số:
X -¥ -1/5 1/5 1/3 -¥
f’ + 0 - 0 + f ( xn )
D xn £
f’’ - 0 + 1,75
End
4.4. Phƣơng pháp tiếp tuyến (Phƣơng pháp
Newton) 4.4. Phƣơng pháp tiếp tuyến:
Bài toán: Giả sử (a,b) là khoảng phân ly nghiệm của phƣơng Trƣờng hợp 1: x=b là điểm Fourier
trình f(x)=0. Giả thiết f’(x), f’’(x) liên tục và không đổi dấu
trên (a, b). Tìm nghiệm thực gần đúng của f(x)=0 trên (a,b) với
sai số£e cho trƣớc. (T0)
(T)
B f(x) x1
4.1 Nội dung của pp: a
f(x) a
- Thay đƣờng cong f(x) trên x1 x0=b X0=b
a a b
[a,b] bởi tiếp tuyến (T) với x1
đƣờng cong tại điểm A hoặc
x0 = b
B, hoành độ giao điểm x1
của (T) với trục hoành xem f ( xn )
x n+1 = xn -
nhƣ nghiệm gần đúng của phƣơng trình f '( xn )
4.4. Phƣơng pháp tiếp tuyến: 4.4. Phƣơng pháp tiếp tuyến:
b) Trường hợp 2: x=a là điểm Fourier
p Kết luận: Từ 2 trƣờng hợp, ta rút ra công thức tính nghiệm
A0ºA
Giải thuật của PP tuyếp tuyến (1)
4.4. Sai số của PP tiếp tuyến (TH x=a là điểm Fourier)
§ Giả sử a là nghiệm đúng của phƣơng trình. m1, m2 là các số thỏa điều Input: a,b,e, m
kiện 0<m1≤|f’(x)| và |f’’(x)|≤m2 <+∞. Ta có:
x0 = a
)
x1 = x0 –f(x0)/f’(x0)
f ' ' (c)( xn - xn -1 ) 2
f ( xn ) = f ( xn -1 ) + f ' ( xn -1 )( xn - xn -1 ) + err = |f(x1)|/m
2 x0 = x1
f ( xn -1 )
xn = xn -1 - Þ f ( xn -1 ) + f ' ( xn-1 )( xn - xn -1 ) = 0
f ' ( xn-1 ) F
err < e
1 m
Þ f ( xn ) = f ' ' (c)( xn - xn -1 ) 2 £ 2 ( xn - xn -1 ) 2
2 2 T
m Print x1 End
Þ xn - a £ 2m1 ( xn - xn-1 ) = D x
2 2
n
4.5. Phƣơng pháp lặp đơn 4.5. Phƣơng pháp lặp đơn
Ví dụ : Tìm nghiệm gần đúng của phƣơng trình
p Sự hội tụ về nghiệm của phƣơng pháp
5x3 – 20x + 3 = 0 trên [0,1]
Định lý: Giả sử (a,b) là khoảng phân ly nghiệm của phƣơng Ta có: [0, 1] là khoảng phân ly nghiệm của phƣơng trình.
trình f(x)=0. Tồn tại phép biến đổi f(x)=0 Û x= j(x) Phƣơng trình đã cho tƣơng đƣơng với:
Và j(x) và j’(x) là các hàm số tiên tục trên [a,b]. x = j(x) = (5x3+3)/20
Với |j’(x)| =|3x2/4| £ 0,75=q<1 trên [0;1]
Nếu |j’(x)| £ q < 1 "xÎ[a,b], x0Î[a,b] thì dãy {xn}, Ta có công thức lặp: xn = (5x3n-1+3)/20
n=0,1,2,… nhận đƣợc từ: xn = j(xn-1) hội tụ đến nghiệm a Các nghiệm gần đúng tìm đƣợc sau 5 lần lặp
của phƣơng trình f(x)=0. j(xn)
q F
xn - £ xn - xn -1
1- q err<e
Hoặc có thể dùng công thức:
T
qn Print x1 End
xn - £ x1 - x0
1- q
Giải gần đúng hpt đại số tuyến tính Giải gần đúng hpt đại số tuyến tính
p Trong thực tế, nhiều bài toán kinh tế, kỹ thuật, sinh
thái quy về việc giải hệ phƣơng trình đại số tuyến
tính(đstt): p Nếu det(A)¹0 thì hệ có nghiệm duy nhất
AX = B
Trong đó: Phƣơng pháp giải thuộc 2 hai nhóm:
æ a11 a12 ... a1n ö æ x1 ö æ b1 ö p
ç ÷ ç ÷ ç ÷
ç ç b2 ÷ Trực tiếp (giải đúng): Cramer, Gauss, Cholesky…
a a ... a 2n ÷
o
A = ç 21 22 ç x2 ÷ =
... ÷ X =ç ÷ B ç ... ÷ o Lặp (gần đúng) : Jacobi, Seidel, Gauss-Seidel...
ç ÷ ... ç ÷
ç a a ... a ÷ ç ÷
è n1 n2 nn ø
ç ÷ çb ÷
è xn ø è nø
Bài 5.1. Phƣơng pháp Cramer 5.1. Phƣơng pháp Cramer
Ví dụ 1: Giải hệ sau bằng phƣơng pháp Cramer: ì2 x1 + x2 - x3 = 3
æ a11 ... a1i -1 b1 a1i +1 ... a1n ö ï
í x1 - x2 + 2 x3 = 2
det( Ai ) ç ÷ ï3x - 2 x + x = -1
a21 ... a2 i -1 b2 a2 i +1 ... a2 n ÷ Giải: Ta có: î 1
xi = Ai = ç
2 3
2 1 3
Thay cột thứ i trong A bởi B để có Ai det( A3 ) 1 1 2 20
3 2 1
Trong đó:
A: Ma trận các hệ số
det( A1 ) 10 det( A2 ) 30 det( A3 ) 20
Ai: Ma trận có đƣợc từ A bằng cách thay cột i bởi B x1 1; x2 3; x3 2
det( A) 10 det( A) 10 det( A) 10
5.2. Phƣơng pháp Gauss 5.2. Dùng phƣơng pháp Gauss tính định thức
Bài tập: Sử dụng pp Gauss giải các hệ phƣơng trình: p Bài toán: Tính det(A), với æ a11 a12 ... a1n ö
ç ÷
ì2 x1 + x2 - x3 = 3 x1 x2 x3 4 ç a 21 a 22 ... a 2n ÷
A=ç ÷
ï ...
a ) í x1 - x2 + 2 x3 = 2 b) 2 x1 x2 x3 5 ç ÷
ï3x - 2 x + x = -1 ç a a ... a ÷
î 1 2 3
x1 3x2 3x3 6 è n1 n2 nn ø
5.2. Dùng phƣơng pháp Gauss tìm ma trận nghịch đảo 5.2. Dùng phƣơng pháp Gauss tìm ma trận nghịch đảo
Xét cột thứ j trong 2 ma trận A.A-1 và I. Ta có hệ: p Nội dung của phƣơng pháp là:
ìa11x1 j + a12 x2 j + ... + a1n xnj = 0 Giải hệ có dạng:
ï æ a11 a12 ... a1n ö æç x1 j ö æ e1 j ö
ïa21x1 j + a22 x2 j + ... + a2 n xnj = 0 æ a11 a12 ... a1n ö æç x1 j ö æ e1 j ö
÷ ç ÷ ç ÷ ÷ ç ÷
ç ÷ ç a21 a22 ... a2 n ÷ ç x2 j ÷ ç e2 j ÷
ïï... Hay ç a21 a22 ... a2 n ÷ ç x2 j ÷ ç e2 j ÷
ç ... ÷ ´ ç ... ÷=ç ÷
í ç ... ÷ ´ ç ... ÷=ç ÷
ç ÷ ç ÷ ç ... ÷
ïa j1 x1 j + a j 2 x2 j + ... + a jn xnj = 1 ç ÷ ç ÷ ç ... ÷ ç a a ... a ÷ ç x ÷ ç enj ÷
ï... ç a a ... a ÷ ç x ÷ çè enj ÷ø è n1 n 2 nn ø è nj ø è ø
ï è n1 n 2 nn ø è nj ø
ïîan1 x1 j + an 2 x2 j + ... + ann xnj = 0 ì0 (i ¹ j )
ì0 (i ¹ j ) Với eij = í
î1 (i = j )
Với eij = í
î1 (i = j )
Bài 5.3. Phƣơng pháp phần tử trội 5.3. Phƣơng pháp phần tử trội
Với PP Gauss đƣợc trình bày ở trên: Nội dung của phương pháp:
n Phƣơng pháp Gauss là PP giải đúng. Thực tế, vẫn xảy ra sai số p Thực hiện phép khử ẩn với dòng trội sao cho cột thứ q sau
do quy tròn. Hơn nữa, các tính toán trên máy tính chỉ là gần khi trừ khử apq còn lại các phần tử khác đều bằng 0.
đúng. Sai số sẽ lớn khi phần tử akk » 0
p Bỏ cột q và dòng p ta được ma trận vuông mới cấp n-1.
n Không thực hiện đƣợc nếu ở bƣớc k, phần tử akk=0
p Tiếp tục quá trình với ma trận mới cấp n-1 vừa thu được.
n Ý tƣởng của phƣơng pháp này là chọn trong các hệ số aij hệ số
có trị tuyệt đối lớn nhất (phần tử trội). Chẳng hạn đó là phần tử
apq. Khi đó, dòng thứ p đƣợc gọi là dòng trội.
5.3. Phƣơng pháp phần tử trội Bài 5.4. Phƣơng pháp Cholesky (căn bậc hai)
Nhận xét: p Giải hệ PT tuyến tính: AX = B, trong đó A là ma trận đối xứng
p Nếu det A ¹ 0 thì phƣơng pháp phần tử trội áp dụng đƣợc.
p Phƣơng pháp phần tử trội ƣu việt hơn phƣơng pháp Gauss là p Nội dung của phương pháp:
không phải chia cho những phần tử akk( k -1) » 0 n Quá trình thuận: Giả sử biến đổi đƣợc ma trận A thành tích
của 2 ma trận vuông cấp n : A = S T .S
Bài tập: Giải hệ sau bằng phƣơng pháp phần tử trội: trong đó:
ì x1 + x2 + x3 = 1
ï æ s11 s12 s1n ö æ s11 0 0ö
í 2 x1 + 3x2 + x3 = 2 ç
ï x + 2x + x = 3 0 s22 s2 n ÷÷ ç
s s22 0 ÷÷
î 1 S =ç ; S = ç 12
T
2 3 ç ÷ ç ÷
ç ÷ ç ÷
ĐS: (-3,2,2) è0 0 snn ø è s1n s2 n snn ø
Nhƣ vậy, việc giải hệ Ax=B đƣợc chuyển về việc giải 2 hệ tam giác: æ s11 s12 s1n öæ x1 ö æ y1 ö n
ç
s22 s2 n ÷ç ÷ ç ÷ yi - ås ik . xk
ç0 ÷ç x2 ÷ = ç y2 ÷ y
xn = n ; xi = k =i +1
(i < n )
S T y = B; Sx = y ç ÷ç ÷ ç ÷ snn sii
ç ÷ç ÷ ç ÷
è0 0 snn øè xn ø è yn ø
5.4. Phƣơng pháp Cholesky Chuẩn của ma trận và chuẩn của vector
Ví dụ : Giải hệ sau bằng phƣơng pháp Cholesky Định nghĩa: Chuẩn của ma trận A=(aij) là một số thực ||A|| thỏa các
điều kiện:
ì2 x1 + x2 - x3 = 3
ï a. ||A||≥0 (với ||A||=0 Û A = 0)
í x1 - x2 + 2 x3 = 2 b. || a.A||=|a|.||A||, với a là một số thực
ï3 x - 2 x + x = -1
î 1 2 3 c. ||A+B||≤||A||+||B||
d. ||A.B|| ≤||A||.||B||
Giải: Phân tích A = S T .S
æ2 0 0 ö æ 1 1 / 2 -1/ 2 ö
ç
S = ç 1 -3 / 2
T
0 ÷ , S = çç 0 1 -5 / 3 ÷÷
÷ Thực tế thƣờng dùng 3 chuẩn sau:
ç 3 -7 / 2 -10 / 3 ÷ ç0 0 1 ÷ø a. A 1 = max å | aij | (Chuẩn cột)
è ø è j i
1
Giải hệ , được nghiệm y1=3/2, y2= -1/3, y3= 2 (Chuẩn Ơclit )
b. A 2 = ( å | aij |2 ) 2
i, j
Giải hệ Sx = y, được nghiệm x1=1, x2= 3, x3= 2
c. A ¥
= max å | aij | (Chuẩn dòng)
i j
Chuẩn của ma trận và chuẩn của vector Chuẩn của ma trận và chuẩn của vector
Ví dụ 1: Cho æ 2 -1 1 ö
p Chuẩn Vector: Vector là ma trận chỉ có 1 cột nên chuẩn của Vector là:
ç ÷
A = ç1 0 2÷ n
ç 3 - 7 4÷ X 1 = x1 + x2 + ... + xn = å xi
è ø i =1
n 1
Tính? A 1, A ¥ = (å xi ) 2
2 2 2
= x1 + x2 + ... + xn
2
X 2
i =1
X ¥
= max xi
i
æ1ö
Ví dụ 2: Cho vector ç ÷
ç 2÷ Tính các chuẩn dòng, cột của X
X =ç ÷
4
ç ÷
ç 3÷
è ø
Sự không ổn định của hệ phƣơng trình đại số
tuyến tính. Bài 5.5. Phƣơng pháp lặp giải hpttt Ax=b
p Giả sử nghiệm của hệ AX=B tìm đƣợc là X1. § Bài toán: Tìm nghiệm của hệ: Ax=b
p Nếu thay đổi rất ít giá trị của các hệ số hoặc của vế phải, mà
§ Phƣơng pháp:
nghiệm tìm đƣợc của hệ sai lệnh lớn so với X1. Ta nói hệ
AX=B không ổn định, ngƣợc lại hệ phƣơng trình gọi là ổn Biến đổi hệ về dạng tƣơng đƣợng: x = Bx+g
định
p Cách đơn giản để kiểm tra tính ổn định của hệ thống phƣơng Định lý: Nếu ||B||p<1 thì dãy lặp , trong đó,
trình là: Giải hệ AX=B đồng thời cũng giải hệ AX=B1 với B1 x0 Î R n bất kỳ cho trƣớc, đều hội tụ về nghiệm duy nhất x* của
khác rất ít so bới B. Nếu hai nghiệm tìm đƣợc xấp xỉ nhau, ta phƣơng trình x = Bx+g
nói hệ ổn định, ngƣợc lại ta nói hệ không ổn định Hơn nữa, ta có đánh giá sai số:
p Cách khác: xét hệ số Cond(A)=||A||.||A-1||
Với ||A|| là một chuẩn nào đó.
Cond(A) càng lớn, hệ càng không ổn định
Con(A) càng gần với 1, hệ càng ổn định.
5.5.1. Phƣơng pháp Jacobi giải hpttt Ax=b 5.5.1. Phƣơng pháp Jacobi giải hpttt Ax=b
§ Ma trận A đƣợc gọi là có đƣờng chéo trội, nếu các phần tử nằm
trên đƣờng chéo chính có trị tuyệt đối lớn hơn tổng trị tuyệt đối
của các phần tử trên 1 hàng.
§ Định lý: Nếu A có đƣờng chéo trội thì có thể đƣa phƣơng trình
Ax=b về dạng x=Bx+g, với ma trận B có chuẩn nhỏ hơn 1.
F Nếu A có đường chéo trội, ta chia mỗi hàng của hệ cho phần tử
nằm trên đường chéo chính của hàng này, giữ ần trên đường chéo
chính (có hệ số =1) ở vế trái, chuyển các số hạng còn lại sang
phải, ta được hệ x=Bx+g với B có chuẩn nhỏ hơn 1.
§ Phương pháp Jacobi giải lặp hệ theo sơ đồ:
x( k +1) = B x( k ) + g , (k ³ 0)
Thông thƣờng, chọn x (0) = g
5.5.1. Phƣơng pháp Jacobi giải hpttt Ax=b 5.5.2. Phƣơng pháp Seidel giải hpttt Ax=b
æ 0 -0, 2 -0,1 ö æ 1 ö 3 § Giả sử có hệ x=Bx+g. Phân tích B thành tổng 2 ma trận tam giác:
ç ÷ ç ÷ = max å bij = 0,3 < 1
B = ç -0,1 0 -0, 2 ÷ ; g = ç 1, 2 ÷ B B=B1+B2
¥ 1£i £3 æ 0 0 0ö æb b b ö
ç -0,1 -0,1 0 ÷ø ç 0,8 ÷ j =1
ç
11 12 1n
è è ø b 0 0 ÷÷ ç
0 b22 b2 n ÷÷
B1 = ç 21 ; B2 = ç
ç ÷ ç ÷
ç ÷ ç ÷
è bn1 bn 2 0ø è0 0 bnn ø
5.5.3. Phƣơng pháp Seidel giải hpttt Ax=b 5.5.3. Phƣơng pháp Seidel giải hpttt Ax=b
§ Ví dụ: Dùng pp Seidel giải hệ sau Tách B thành tổng B1 + B2
ì10 x1 + 2 x2 + x3 = 10 æ 0 0 0ö æ 0 -0, 2 -0,1 ö
ï ç
í x1 + 10 x2 + 2 x3 = 12 B1 = ç -0,1 0 0 ÷÷ ; B2 = çç 0 0 -0, 2 ÷÷
ï x + x + 10 x = 8 ç -0,1 -0,1 0 ÷ ç0 0 0 ÷ø
î 1 2 3 è ø è
æ 1 ö
§ Giải: Nhận thấy ma trận hệ số có đƣờng chéo trội. Biến đổi hệ về Áp dụng pp Seidel với x (0) ç ÷
= g = ç 1, 2 ÷ theo công thức:
dạng ç 0,8 ÷
ì x1 = -0, 2 x2 - 0,1x3 + 1 è ø
æ 0 -0, 2 -0,1 ö æ 1 ö
ï ç
í x2 = -0,1x1 - 0, 2 x3 + 1, 2 B = ç -0,1 0 -0, 2 ÷÷ ; g = çç 1, 2 ÷÷ ì x1( k +1) = -0, 2 x2( k ) - 0,1 x3( k ) + 1
ï x = -0,1x - 0,1x + 0,8 ç -0,1 -0,1 0 ÷ø ç 0,8 ÷ ï ( k +1)
î 3 è è ø ( k +1)
í x2 = -0,1 x1 - 0, 2 x3 + 1, 2
1 2 (k )
3
= max å bij = 0,3 < 1 nên pp hội tụ ï ( k +1) ( k +1) ( k +1)
Do î x3 = -0,1 x1 - 0,1 x2 + 0,8
B ¥ 1£i £3
j =1
BÀI TẬP CHƢƠNG V
Bài 1: Cho các HPT:
ì18 x1 - 3 x2 + 2 x3 = 50 ì10 x1 + x2 + x3 = 12 CHƯƠNG 6
ï ï
a ) í4 x1 + 11x2 - x3 = 33 b) í 2 x1 + 10 x2 + x3 = 13
ï6 x + 3 x + 12 x = 36 ï 2 x + 2 x + 10 x = 14
î 1 2 3 î 1 2 3
GIẢI GẦN ĐÚNG
a. Sử dụng pp Gauss, tìm nghiệm chính xác của hệ
b. Sử dụng các pp lặp: Jacobi, Seidel, tìm 5 xấp xỉ đầu tiên của hệ. PHƢƠNG TRÌNH VI PHÂN THƢỜNG
Bài 2: Dùng pp lặp Jacobi, Seidel giải hệ Ax=B với 5 lần lặp, biết
æ 10 -1 2 -3 ö æ0 ö
ç ç ÷
1 10 -1 2 ÷÷ 5 ÷
A=ç ; B=ç
ç 2 3 20 -1÷ ç -10 ÷
ç ÷ ç ÷ 170
è 3 2 1 20 ø è15 ø
6.1. Giải gần đúng bài toán Cauchy 6.1. Giải gần đúng bài toán Cauchy
p Bài toán Cauchy cho phƣơng trình vi phân cấp n: p Các pp giải:
Tìm nghiệm y=y(x) của phƣơng trình v Các pp giải tích: tìm nghiệm gần đúng dƣới dạng
biểu thức giải tích:
ü Phƣơng pháp xấp xỉ liên tiếp Picard
ü Phƣơng pháp chuỗi nguyên
với các điều kiện đầu
y ( x0 ) = y0 , y '( x0 ) = y0' , , y ( n-1) ( x0 ) = y0( n-1)
x0 < x1 < < xn
v Các pp số: tìm nghiệm của bài toán tại các điểm
y0 , y0' , , y0( n-1) ü Phƣơng pháp Euler, Euler cải tiến
trong đó là các số cho trƣớc ü Phƣơng pháp Runge-Kutta
6.1. Giải gần đúng bài toán Cauchy cấp 1 6.1.1. Phƣơng pháp xấp xỉ liên tiếp Picard
p Giả sử cần giải bài toán Cauchy
ïì y ' = f ( x, y ), x Î a, b , x0 = a
p Một số phƣơng pháp giải gần đúng bài toán Cauchy í (1)
ïî y ( x0 ) = y0
đối với ptvp cấp 1:
p Việc giải bài toán (1) hoàn toàn tƣơng đƣơng với việc tìm
ìï y ' = f ( x, y ), x Î a, b , x0 = a nghiệm của phƣơng trình tích phân
í (1)
ïî y ( x0 ) = y0
x
y ( x) = y0 + ò f t , y (t ) dt
x0
y0 ( x) = y0
p Nội dung phƣơng pháp: x
(2)
yn ( x) = y0 + ò f t , yn-1 (t ) dt
x0
6.1.1. Phƣơng pháp xấp xỉ liên tiếp Picard 6.1.1. Phƣơng pháp xấp xỉ liên tiếp Picard
p Định lý: Giả sử hàm f(x,y) thỏa mãn điều kiện Lipsit theo biến p Ví dụ 1: Xét bài toán Cauchy ì y ' = x - y
í
y trên miền mở D : x - x0 £ a, y - y0 £ b , tức là î y (0) = 1
Các xấp xỉ liên tiếp có dạng
"( x, y),( x, y ) Î D f ( x, y ) - f ( x, y ) £ L y - y
y0 = y (0) = 1
Giả sử ( x0 , y0 ) Î D . Khi đó, dãy nghiệm yn ( x) xác định từ công x
x2
y1 = 1 + ò (t - 1)dt = 1 - x +
thức (2) sẽ hội tụ về nghiệm duy nhất y * ( x ) của bài toán (1) 0
2
x
æ x 2 x3 (-1) n x n ö (-1) n +1 x n+1
q Tốc độ hội tụ đƣợc ƣớc lƣợng bởi bất đẳng thức: yn = 1 + ò (t - yn -1 ) dt = 1 - x + 2 ç - + + ÷+ ® y * ( x)
K Ln 0 è 2! 3! n! ø ( n + 1)!
( x ) := y ( x ) - y *
( x ) £ ( x - x0 )n +1
(n + 1)! Nghiệm chính xác:
n n
trong đó K = max f ( x, y )
( x , y )Î D
6.1.2. Phƣơng pháp chuỗi nguyên 6.1.3. Phƣơng pháp Euler
p Xét bài toán Cauchy (1), trong đó, hàm f(x,y) giải tích trong lân p Xét bài toán Cauchy (1)
cận (x0, y0), tức là ïì y ' = f ( x, y ), x Î a, b , x0 = a
¥
í
f ( x, y ) = å a (x - x ) ( y - y )
ij 0
i
0
j
ïî y ( x0 ) = y0
i , j =0
p Cần tìm nghiệm gần đúng tại một số điểm a £ x0 < x1 < < xn £ b
Khi đó, nghiệm đúng y*(x)
có thể khai triển thành chuỗi Taylor: p Xét trƣờng hợp các điểm cách đều nhau khoảng h: xi+1 =xi +h
¥ *( i )
y ( x0 ) Từ khai triển Taylor, ta có
y* ( x) = å ( x - x0 )i (3) p
i =0 i ! h f xi , y ( xi )
y ( xi +1 ) = y( xi ) + + O(h 2 )
è Nhƣ vậy, ta cần tính các đạo hàm y*(i)(x0) : 1!
p Vậy ta coi y ( xi +1 ) » y ( xi ) + h f xi , y( xi )
¶f ( x, y ( x))
và có số M sao cho £ M , x Î x0 , xn
¶x
Mh L ( xn - x0 )
Khi đó, sai số i = yi - y ( xi ) £ e -1
2L
Ø Nhận xét:
ü Phương pháp Euler là phương pháp tường minh.
ü Phương pháp Euler có ưu điểm: đơn giản, dễ lập trình.
Tuy nhiên, độ chính xác của phương pháp thấp.
6.1.4. Phƣơng pháp Euler cải tiến 6.1.4. Phƣơng pháp Euler cải tiến
p Thay vì dùng công thức Euler (4), ta sử dụng công thức sau: p Có thể làm tăng độ chính xác cho phƣơng pháp Euler cải tiến
ì yi*+1 = yi + hf ( xi , yi ) bằng cách áp dụng phƣơng pháp lặp đơn cho tính các giá trị yi
ï
+1 = yi + hf ( xi , yi )
ï h Ø Lấy yi(0)
í yi +1 = yi + éë f ( xi , yi ) + f ( xi +1 , yi +1 ) ùû
*
(5)
ï 2 Ø Lặp lại theo k>=1
ïîi = 0,1,..., n - 1 h
y i(+k1) = yi + éë f ( xi , yi ) + f ( xi +1 , yi(+k1-1) ) ùû
2
( k -1)
Khi thấy y i 1 - y i 1 £ thì dừng lại và lấy yi +1 » y
(k ) (k )
Ø
p Bài tập: Giải ví dụ 2 bằng pp Euler cải tiến + + i +1
6.1.5. Phƣơng pháp Runge-Kutta 4 (RK4) 6.1.5. Phƣơng pháp Runge-Kutta 4 (RK4)
p Công thức k1 = h f ( xn , yn ) p Ví dụ: Sử dụng pp RK4, giải bài toán với bƣớc h=0,2 (n=5)
h 1 ì y ' = x - y, 0 £ x £ 1
k2 = h f ( xn + , yn + k1 ) í
2 2 î y (0) = 1
h 1 (6) p HD: Chia đoạn [0,1] thành 5 đoạn bởi xi =0,2*i, i=1,2,3,4,5.
k3 = h f ( xn + , yn + k 2 )
2 2 Ta có: y1 = y0 + Dy0
k4 = h f ( xn + h, yn + k3 ) trong đó 1
Dy0 = k1 + 2k2 + 2k3 + k4
1 6
yn +1 = yn + k1 + 2k2 + 2k3 + k4
6
trong đó, p( x), q( x), f ( x) là các hàm đã biết, xác định trên [a,b],
1 , 2 , 1 , 2 , A, B là các hằng số đã biết, thỏa mãn
Tiếp tục quá trình cho đến khi tìm đƣợc y5
1 + 2 > 0; 1 + 2 >0
6.2. Phƣơng pháp sai phân giải bài toán biên 6.2. Phƣơng pháp sai phân giải bài toán biên
p Xét bài toán biên tuyến tính (7) p Khi đó, bào toán (7) đƣợc xấp xỉ bởi bài toán sau:
p Chia đoạn [a,b] thành n phần bằng nhau: ì yi +1 - 2 yi + yi -1 y -y
ï 2
+ pi i +1 i -1 + qi yi = f i
h 2h
xi = a + ih (i = 0,1, 2, , n) ï
ïï (i = 1, 2,3, , n - 1)
b-a í y1 - y0
h= ï 0 y0 + 1 h = A
n
ï
p Ký hiệu pi = p( xi ), qi = q( xi ), fi = f ( xi ) ï y + yn - yn -1 = B
yi = y ( xi ), y 'i = y '( xi ), y ''i = y ''( xi ) ïî 0 n 1
h
p Ta thay gần đúng đạo hàm bởi các công thức Nhƣ vậy, ta cần giải hệ (n+1) phƣơng trình để xác định (n+1) ẩn.
y -y y - 2 yi + yi -1 M h2
y '( xi ) » y 'i = i +1 i -1 , y ''( xi ) » y ''i = i +1 p Sai số: yi - y ( xi ) £ b-a
2
với M = max f (4) ( x)
2h h2 96 a £ x £b
y -y y - yn-1
y0' = 1 0 , yn' = n
h h
6.2. Phƣơng pháp sai phân giải bài toán biên BÀI TẬP CHƢƠNG VI
Ví dụ: Giải bài toán ìí x y ''+ xy ' = 1, 1 £ x £ 1, 4 với n=4
2
p
ì xy
î y (1) = 0, y (1, 4) = 0,0566 ïy' = , 0 £ x £1
Bài 1: Giải bài toán Cauchy í 2 với bƣớc chia h=0,1
1, 4 - 1 ìï2 xi 2 ( yi +1 - 2 yi + yi -1 ) + xi ( yi +1 - yi -1 )h = 2h ïî y (0) = 1
Giải: với h = = 0,1 ta có í
4 ïî y0 = y (1) = 0, y4 = y (1,4) = 0,0566 a. Bằng phƣơng pháp Euler
b. Bằng phƣơng pháp Euler cải tiến
Hay ta có hệ ì y ''+ x 2 y = 0, 0 £ x £ 1
Bài 2: Giải bài toán biên í với bƣớc h=0,2
î y (0) = 0, y (1) = 1