• Giả sử x∗là lời giải đúng của bài toán nào đó, còn x là lời giải gần đúng của bài toán này theo một phương pháp số gần đúng nào đó.. Trong chương này, trình bày phương pháp xây dựng đa
Trang 1TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA TOÁN - CƠ - TIN HỌC
Trang 21 SAI SỐ
1.1 Các kiến thức cơ bản.
1.1 Sai số tuyệt đối và tương đối
• Số x là số gần đúng của số x∗nếu x gần với x∗ (hay x sai khác x∗không nhiều)
• Giả sử x∗là lời giải đúng của bài toán nào đó, còn x là lời giải gần đúng của bài toán này
theo một phương pháp số (gần đúng) nào đó Khi đó
gọi là sai số tương đối của lời giải gần đúng x đối với lời giải đúng x∗
1.2 Phân loại sai số Có các loại sai số sau:
• Sai số giả thiết. Do trong khi mô hình hoặc giải quyết các bài toán, người ta đưa thêm cácgiả thiết nhằm giảm độ phức tạp của mô hình
• Sai số phương pháp. Do lựa chọn phương pháp sai, chưa phù hợp Trong nhiều trường hợp
có thể khắc phục được
• Sai số dữ liệu. Do quá trình quan sát, đo đạc, tính toán mang đến các dữ liệu không chínhxác Có thể hạn chế hay khắc phục được
• Sai số tính toán. Do quá trình tính toán với số gần đúng, hoặc làm tròn số
• Sai số ngẫu nhiên.Do các yếu tố ngẫu nhiên ảnh hưởng, không thể loại bỏ, nhưng có thểquản lý được
1.3 Sai số của các phép toán
• Phép cộng/trừ: Nếu x=x1±x2± · · · ±xnthì sai số tuyệt đối có quan hệ:
Trang 31.2 Ví dụ minh họa.
Ví dụ 1.1. Cho x = 0.0001, y = 1.0001, z = 1000.0001 là các lời giải gần đúng tương ứng với cáclời giải đúng x∗ = 0.0002, y∗ =1.0099, z∗ =1000.0002 của các bài toán 1, 2 và 3 tương ứng đã cho.Khi đó sai số tuyệt đối tương ứng với ba bài toán này sẽ là:
∆x=|x−x∗| =0.0001, ∆y=|y−y∗| =0.0001, ∆z=|z−z∗| =0.0001
Về mặt trực giác, mặc dù sai số tuyệt đối của ba bài toán là như nhau, nhưng ta có thể thấy bàitoán 1 có lời giải không chính, bài toán 2 có độ chính xác chấp nhận được, còn bài toán 3 có độchính xác cao
Sai số tương đối của ba bài toán này sẽ là
• Sai số của z :=x+2y:∆z≤ ∆x+2∆y=0.0001+2×0.0002=0.0005
• Sai số của z :=xyhoặc z := x/y là δz≤δx+δy= 0.0001
2.3456+
0.00021.2421 =2.0365×10
(2) x=1000.0000±0.0002, y=2000.0000±0.0004 và f(x, y) =x5+y5−4x2y+xy2−2x4y
Bài 3. Hãy nghiên cứu ảnh hưởng của sai số đến nghiệm của phương trình bậc hai P2(x) :=
ax2+bx+c = 0 Biết rằng phương trình này có nghiệm và sai số của các hệ số a, b, c lần lượt là
a∗±∆a, b∗±∆b, c∗±∆c
2 NỘI SUY
2.1 Các kiến thức cơ bản cần nhớ Trong chương này, trình bày phương pháp xây dựng đa thức
nội suy của một hàm cho dưới dạng bảng
Khi nào cần xây dựng đa thức nội suy? Có hai nhu cầu thực tế thường dẫn đến bài toán nội suylà:
3
Trang 4• Các hàm cho dưới dạng phức tạp, khó tính toán, công thức cồng kềnh.
• Hàm không cho dưới dạng biểu thức mà cho dưới dạng bảng (tức là chỉ biết một số giá trị của hàm tại các điểm cụ thể).
Có thể xây dựng đa thức nội suy dạng Lagrange hoặc đa thức nội suy Newton (tiến, lùi, trungtâm )
Bài toán nội suy: Giả sử hàm f :[a, b] → Rcho dưới dạng bảng nội suy:{(xi, yi) |yi := f(xi), 0≤
i≤N}trong đó:
a=x0< x1< · · · < xN =bHãy tìm một đa thức bậc N có dạng PN(x) =a0+a1x+ · · · +aNxNsao cho:
PN(xi) = f(xi) =yi, ∀i=0, N (điều kiện nội suy )
a) Đa thức nội suy Lagrange.
Đa thức nội suy Lagrange cho dưới dạng:
Đa thức nội suy Lagrange có ưu điểm là đơn giản, dễ tính toán, dễ lập trình cho máy tính Tuy nhiên, nhược điểm là khi thêm hoặc bớt một mốc nội suy thì cần phải tính lại toàn bộ công thức.
b) Đa thức nội suy Newton trên lưới đều.
Đa thức nội suy New tơn có nhiều dạng khác nhau Tuy nhiên có hai công thức thông dụng là:
công thức Newton tiến và công thức Newton lùi Các công thức này sử dụng trong trường hợp nội suy
với lưới đều ( tức là mốc nội suy cách đều): xi =x0+ihtrong đó h= (b−a)
N và i=0, N
• Công thức Newton tiến Thường được sử dụng để nội suy các giá trị đầu bảng Dạng công
thức này như sau:
PN(x) =y0+ ∆y0
1!h1(x−x0) +∆2y0
2!h2(x−x0)(x−x1) + · · ·+ ∆Ny0
+∆Ny0
N! t(t−1)(t−2) · · · (t−N+1)Trong đó∆ky0là sai phân tiến cấp k của f tại x0, được tính theo công thức đệ quy sau:
Trang 5• Công thức Newton lùi Thường được sử dụng để nội suy cuối bảng Dạng công thức này
như sau:
PN(x) =yN+ ∇yN
1!h1 (x−xN) + ∇2yN
2!h2 (x−xN)(x−xN− 1) + · · ·+ ∇NyN
+ ∇NyNN! t(t+1)(t+2) · · · (t+N−1)Trong đó∇kyN là sai phân lùi cấp k của f tại xN, được tính theo công thức đệ quy sau:
là nội suy tại các điểm x≈ xN
• Ngoài các công thức nội suy thường gặp trên, ta còn có các công thức nội suy Newtongiữa bảng (công thức Gauss I, Gauss II), công thức Stirling, công thức Bessel, và công thứcNewton cho trường hợp mốc nội suy không cách đều
c) Đánh giá sai số cho đa thức nội suy.
Công thức sai số của đa thức nội suy PN(x)của hàm f(x)là:
RN(x) = f(x) −PN(x) = f(N+1)(ξ)
(N+1)! wN(x)
5
Trang 6trong đó: wN(x) = (x−x0)(x−x1) · · · (x−xN)và ξ ∈ (a, b)là điểm trung gian.
Như vậy nếu gọi:
2.2 Các ví dụ Dưới đây là một số ví dụ mẫu cơ bản để tham khảo:
Ví dụ 2.1. Xây dựng đa thức nội suy cấp 2 của hàm f trên đoạn[−1, 1]cho bởi bảng nội suy sau:
xi -1 0 1
yi 1/3 1 3Sau đó tính gần đúng giá trị của f tại x1 = −0.5 và x2 = 0.5 So sánh với giá trị đúng f(−0.5) =
Trang 7xi -2 -4/3 0 4/3 2
yi 0 1 2 1 0Sau đó tính gần đúng giá trị f(1)theo đa thức nội suy này và so sánh với giá trị chính xác f(1) =
P4(x) = 9x4−196x2+640
320Khi đó f(1) ≈P4(1) = 9−196+640
320 =1.415625 Do vậy| (1) −P4(1)| =0.001411
Ví dụ 2.3. Xây dựng đa thức nội suy cho hàm f(x) =x2+x+1 cho dưới dạng bảng sau:
xi 1 2 3 4
yi 3 7 13 21
Do mốc nội suy cách đều, do vậy ta sẽ dùng công thức nội suy Newton tiến
Trước hết ta xây dựng bảng sai phân tiến:
Trang 8Như vậy ta có đa thức nội suy Newton tiến của f(x)là:
P3(x) =y0+∆y0
1! (x−1) +
∆2y02! (x−1)(x−2) +
∆3y03! (x−1)(x−2)(x−3)
=3+4(x−1) + (x−1)(x−2)
=x2+x+1Như vậy đa thức nội suy dạng Newton của đa thức là đa thức và trùng với chính nó
Ví dụ 2.4. Xây dựng đa thức nội suy cho hàm f(x)cho dưới dạng bảng sau:
xi -1 0 1 2
yi 1/4 1 4 16Tính giá trị gần đúng của hàm f tại x= −0.5 và so sánh với giá trị đúng f(−0.5) =0.5
Biết f(x) =4xhãy đưa ra công thức đánh giá sai số
Bài giải:
Do mốc nội suy cách đều, do vậy ta sẽ dùng công thức nội suy Newton tiến
Trước hết ta xây dựng bảng sai phân tiến:
xi yi ∆y ∆2y ∆3y
−1 1434
P3(x) =y0+ ∆y0
1! (x+1) +
∆2y02! (x+1)x+
∆3y03! (x+1)x(x−1)
f(−0.5) ≈P3(−0.5) = 27(−0.5)3+27(−0.5)2+18(−0.5) +24
24 =0.765625Khi đó| (−0.5) −P3(−0.5)| = |0.500000−0.765625| =0.265625
Trang 9Ví dụ 2.5. Một tích phân phụ thuộc tham số có dạng
xi 1 2 4 8
yi 0 1 2 3c
xi −π
4 0 π
4
yi -1 0 1(2) Cho biết hàm f(x) = ln x tại các điểm x0 = 1, x1 = 2, x2 = 3, x3 = 4 lần lượt là y1 =
0.000000; y2=0.693147; y3=1.098612; y4=1.386294
a Hãy xây dựng đa thức nội suy cho hàm f(x)
b Biết f(1.5) =0.405465, hãy tính giá trị gần đúng của f(1.5)qua đa thức nội suy và sosánh với giá trị đúng
c Đưa ra công thức đánh giá sai số
(3) Cho biết hàm f(x) =2 cosπ
2xtại x= −1; 0; 1; 2 lần lượt là y=0; 1; 0;−1
a Hãy xây dựng đa thức nội suy cho hàm f(x)
b Biết f(−0.5) = −0.707107, hãy tính giá trị gần đúng của f(−0.5)qua đa thức nội suy
và so sánh với giá trị đúng
c Đưa ra công thức đánh giá sai số
9
Trang 103 GIẢI GẦN ĐÚNG PHƯƠNG TRÌNH PHI TUYẾN MỘT ẨN SỐ
3.1 Các kiến thức cơ bản cần nhớ Trong chương này cần lưu ý đến ba phương pháp chính là:
phương pháp lặp đơn, phương pháp dây cung và phương pháp Newton.
Lược đồ chung cho bài toán giải một phương trình phi tuyến bao gồm các bước như sau:
• Bước 1: Tìm khoảng[a, b]chứa nghiệm, từ điều kiện f(a)f(b) ≤0.
• Bước 2: Tìm điểm xuất phát x0 ∈ [a, b](chẳng hạn như điểm Fourier), tìm điều kiện để hội tụ.
• Bước 3: Xây dựng lược đồ lặp.
• Bước 4: Tính thử với một số bước lặp.
• Bước 5: Xây dựng thuật toán dưới dạng sơ đồ khối hoặc mã giả (nếu có).
• Bước 6: Tìm điều kiện dừng, đưa ra công thức đánh giá sai số.
Dưới đây là một số phương pháp cơ bản
(1) Phương pháp chia đôi Xét phương trình
(2) Phương pháp lặp đơn Xét phương trình
f(x) =0, ∀x∈ D⊂ Rtrong đó giả thiết: f ∈ C1[a,b]
Sơ đồ giải bao gồm các bước:
• Tìm a, b ∈Dsao cho: f(a)f(b) <0, nghĩa là phương trình có nghiệm x∗ ∈ [a, b]
• Đưa phương trình về dạng: x= g(x)trong đó hàm g :[a, b] → [a, b]
10
Trang 11Sơ đồ giải bao gồm các bước:
• Tìm a, b∈D sao cho: f(a)f(b) <0, nghĩa là phương trình có nghiệm x∗∈ [a, b].
• Tính f0(x), f00(x)và tìm điểm Fourier (tức là điểm x1 ∈ [a, b]sao cho f(x1)f00(x1) >0).
• Tính m =infx∈[a,b]| 0(x)|và M=supx∈[a,b]| 0(x)|.
Sơ đồ giải bao gồm các bước:
• Tìm a, b ∈Dsao cho phương trình có nghiệm x∗ ∈ [a, b]
• Tính f0(x), f00(x)và tìm điểm Fourier (tức là điểm x1∈ [a, b]sao cho f(x1)f00(x1) >0)
• Tính m1 =infx∈[a,b]| 0(x)|và M2 =supx∈[a,b]| 00(x)|
• Xây dựng sơ đồ lặp: Giả sử x = alà điểm Fourier, ta có sơ đồ lặp:
Trang 12• Phương pháp chia đôi là phương pháp cổ điển nhất, đơn giản, không sử dụng thông tincủa hàm f , tốc độ hội tụ chậm, do vậy ít được sử dụng.
• Phương pháp lặp đơn là phương pháp đơn giản, tuy nhiên điều kiện cần thỏa mãn rất chặt,tốc độ hội tụ tuyến tính
• Phương pháp dây cung tính toán đắt hơn, ít được sử dụng
• Phương pháp Newton là phương pháp rất tốt, hội tụ bậc hai, tính toán khá đắt, thườngđược sử dụng để giải "tinh" bài toán Hiện nay, phương pháp Newton được cải tiến, sửdụng rộng rãi trong các lĩnh vực
3.2 Các bài tập mẫu Dưới đây sẽ xét các ví dụ cơ bản.
Ví dụ 3.1. Giải phương trình sau bằng phương pháp lặp đơn:
x3+x−1000=0
Bài giải. Ta có: f(9)f(10) <0, do vậy phương trình có ít nhất một nghiệm x∗∈ [9; 10]
Có nhiều cách để đưa phương trình trên về dạng x=g(x), chẳng hạn như:
1) x= g1(x):=1000−x3
2) x= g2(x):= 1000
x2 − 1
x3) x= g3(x):=√3
1000−xXét lần lượt từng trường hợp, ta có:
|xk+1−xk| <299e
Hãy dùng máy tính tính các giá trị x1, x2, x3, x4, x5và đánh giá sai số
Ví dụ 3.2. Giải phương trình sau bằng phương pháp dây cung:
Trang 13Ví dụ 3.3. Giải phương trình sau bằng phương pháp Newton:
x4−3x2+75x−10000=0
Bài giải. Đặt f(x) = x4−3x2+75x−10000, thì f(−10) = −1050; f(−11) = 3453, do vậy
f(−10)f(−11) <0 nên phương trình có ít nhất một nghiệm x∗ ∈ [−11;−10]
Dễ thấy f0(x) = 4x3−6x+75 < 0; f00(x) = 12x2−6 > 0,∀x ∈ [−11;−10] Vậy điểm Fourier
Ví dụ 3.4. Giải phương trình sau bằng phương pháp Newton:
Trang 143.3 Các bài tập thực hành Hãy làm các bài tập sau:
(1) Giải các phương trình sau bằng lược đồ lặp đơn Hãy dùng máy tính tính các giá trị
2x +2 cos x−6=0 trên đoạn[1; 2]
(4) Sử dụng phương pháp Newton, tìm giá trị lớn nhất, nhỏ nhất của hàm số:
Trang 154 TÍNH GẦN ĐÚNG ĐẠO HÀM VÀ TÍCH PHÂN
4.1 Kiến thức cần nắm vững Trong phần này cần nắm vững các công thức về tính gần đúng đạo
hàm và tích phân
1 Tính gần đúng đạo hàm. Bài toán tính gần đúng đạo hàm do hai yêu cầu chính:
(i) Biết hàm f(x), nhưng biểu thức đạo hàm phức tạp, khó tính toán
(ii) - Biết hàm f(x), nhưng cho dưới dạng bảng (cho bằng số) và có thể không chính xác
Có các công thức tính đạo hàm cơ bản: Công thức sai phân, công thức Richardson, công thức nộisuy
a Công thức sai phân (tiến, lùi, trung tâm): Có thể dùng một trong ba công thức sau
– Công thức sai phân tiến
– Sai số của công thức sai phân tiến và lùi là cỡ O(h), nếu ta gọi M = supx∈[a,b]| 00(x)|
thì công thức đánh giá sai số đạt được là:
E(x) ≤ M
2 hCòn công thức sai phân trung tâm có sai số cỡ O(h2)
b Công thức Richardson: Công thức này có dạng:
f0(x) ≈ f(x−2h) −4 f(x−h) +3 f(x)
2hhoặc
f0(x) ≈ −3 f(x) +4 f(x+h) − f(x+2h)
2hSai số đạt được của hai công thức này là cỡ O(h2), Nếu ta gọi M = supx∈[a,b]| 000(x)|thìcông thức đánh giá sai số đạt được là:
15
Trang 162 Tính gần đúng tích phân. Cần nắm vững các phương pháp tính tích phân (1 lớp) Chủ yếu là
các phương pháp: hình thang, parabol (simpson), Newton-Cotes Cần tính tích phân
n Sai số của công thức hình thang:
|r| ≤ M(b−a)
12 h
2
trong đó M=supx∈[a,b] f00(x)
b Phương pháp Parabol (Simpson) Công thức tính toán:
I = (b−a)
6n (f0+4 f1+2 f2+4 f3+2 f4· · · +2 f2n−2+4 f2n−1+ f2n)trong đó fk = f(xk) = f(a+kh), 2n là số điểm chia, h= (b−a)
2n Sai số của công thức Parabol:
16
Trang 17Khi đó sai số:| 0(1) −d f(1)| =0.010532
• Dùng công thức sai phân tiến:
d f(1) = 1−√3
0.90.1 =0.345106Khi đó sai số:| 0(1) −d f(1)| =0.011773
• Dùng công thức sai phân trung tâm:
| 0(1) −d f(1)| = |0.910239−0.902495| =0.007744Nếu sử dụng công thức Richardson thứ hai ta thu được:
Trang 18Hãy tính f0(−0.3)bằng phương pháp Richardson và phương pháp nội suy.
Dùng công thức đa thức nội suy Newton để tính, ta cần lập bảng sai phân:
xi yi ∆y ∆2y ∆3y ∆4y ∆5y ∆6y
-0.3 0.617034
0.1077457-0.2 0.7247797 0.0188146
0.1265603 0.0032851-0.1 0.851340 0.0220997 0.0005742
0.14866 0.0038593 0.00009950.0 1.000000 0.025959 0.0006737 0.0000178
0.174619 0.004533 0.00011730.1 1.174619 0.030492 0.004533
0.205111 0.0053240.2 1.379730 0.035816
0.2409270.3 1.620657
Khi đó áp dụng công thức nội suy ta có:
Bài giải:Khi n=4 ta có h= (5−1)/4=1 Do đó:
Trang 19Ví dụ 4.5. Tính tích phân sau bằng phương pháp Simpson, và đưa ra công thức đánh giá sai số(với ít nhất 2 điểm chia).
6 =
1
6.Tương tự tính toán các fi ta có:
Trong khi đó giá trị chính xác của tích phân này là I =ln2=0.693147
Ví dụ 4.7. Tính tích phân sau bằng phương pháp hình thang với ít nhất 4 khoảng chia
Trang 20(x)
=2
(4) Dùng công thức hình thang tính các tích phân sau (với ít nhất 4 điểm chia) Hãy đưa racông thức đánh giá sai số (nếu có thể)
xlnxdx
d I=
Z 2
− 2x32xdx(5) Dùng công thức Simpson tính các tích phân sau (với ít nhất 4 điểm chia).Hãy đưa ra côngthức đánh giá sai số (nếu có thể)
a I =
Z 3 1
Trang 215 PHƯƠNG PHÁP SỐ TRONG ĐẠI SỐ TUYẾN TÍNH
5.1 Các kiến thức cơ bản Trong phần này cần lưu ý đến ba bài toán của Đại số tuyến tính (ĐSTT):
• Giải hệ phương trình ĐSTT
• Tính định thức và ma trận nghịch đảo
• Tính giá trị riêng, véc tơ riêng
a Các phương pháp giải hệ đại số tuyến tính. Xét hệ phương trình đại số tuyến tính
trong đó A= (aij)n×n∈ Rn×n, x= (x1,· · · , xn)T ∈ Rn, b= (b1,· · · , bn)T ∈ Rnvà rank A=n
Định lý cơ bản Hệ (2) có nghiệm nếu rank A=rank A, ở đây A= [A, b]là ma trận mở rộng của A.
Đối với ma trận vuông A, có ba định nghĩa chuẩn của ma trận như sau:
(1) Chuẩn∞ (chuẩn Chebyshev)
Có hai loại phương pháp giải hệ đại số tuyến tính (2):
a Phương pháp trực tiếp Phương pháp Crammer, PP khử Gauss, PP Gass compact, PP
phần tử trội, PP Căn bậc 2, PP phân tích nhân tử Cholesky (LU), PP trực giao
b Phương pháp lặp PP lặp đơn, PP Jacobi, PP Seidel, PP Gauss-Seidel
Trong phần này nên lưu ý đến phương pháp khử Gauss và các PP lặp:
(A) Phương pháp khử Gauss Gồm hai bước:
Bước thuận Đưa ma trận A về dạng tam giác.
Ta đặt A( 0 ) = A, sau đó dùng phương pháp biến đổi sơ cấp (biến đổi tuyến tính), đưa
ma trận A(0)về dạng tam giác:
A(0)→ A(1) → · · · → A(n)
21
Trang 22trong đó A(n)là ma trận tam giác.
Bước ngược Giải hệ tam giác.
xk = bk−∑k − 1
j = 1 akjxj
akk , ∀k= n, 1Chú ý Phép biến đổi sơ cấp trong đại số tuyến tính bao gồm
1) Tráo đổi hai hàng (cột)
2) Nhân / chia một hàng (cột) với một số thực khác không
3) Thay một hàng (cột) bằng tổ hợp tuyến tính các hàng khác (nói riêng, cộng một hàng(cột) với các hàng (côt) khác)
(B) Phương pháp căn bậc hai và phương pháp phân tích nhân tử Cholesky Yêu cầu A là ma
trận đối xứng, khi đó PP căn bậc hai gồm hai bước:
Bước phân tích Phân tích A = LU = STStrong đó U = Slà ma trận tam giác trên và L = ST là ma
trận tam giác dưới
Bước giải hệ Giải hai hệ tam giác Đặt y= Ux, ta giải hệ tam giác dưới Ly=b Sau khi tìm được y,
giải hệ tam giác trên Ux =y
Nếu ta gọi S= (sij)n×nthì S được tính qua A theo công thứưc sau:
Tuy nhiên nếu A không là ma trận đối xứng, ta cũng phân tích được A=LUtrong đó L là
ma trận tam giác dưới, U là ma trận tam giác trên, nhưng lúc này LT 6=U Công thức tínhtoán trong tưrờng hợp này khá phức tạp Xem ví dụ dưới để rõ hơn
(C) Phương pháp lặp đơn: Phương pháp lặp đơn dựa vào định lý cơ bản sau:
... data-page="21">5 PHƯƠNG PHÁP SỐ TRONG ĐẠI SỐ TUYẾN TÍNH
5.1 Các kiến thức Trong phần cần lưu ý đến ba tốn Đại số tuyến tính (ĐSTT):
• Giải hệ phương trình ĐSTT... ST ma
trận tam giác
Bước giải hệ Giải hai hệ tam giác Đặt y= Ux, ta giải hệ tam giác Ly=b Sau tìm y,
giải hệ tam giác Ux =y
Nếu ta gọi S= (sij)n×nthì... phương pháp Simpson, đưa công thức đánh giá sai số( với điểm chia).
6 =
1
6.Tương tự tính tốn fi ta có:
Trong giá trị xác tích phân I =ln2=0.693147