1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài giảng Phương pháp số: Bài 4 - ThS. Nguyễn Thị Vinh

48 1 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Trong lĩnh vực Công Nghệ Thông Tin nói riêng, yêu cầu quan trọng nhất của người học đó chính là thực hành. Có thực hành thì người học mới có thể tự mình lĩnh hội và hiểu biết sâu sắc với lý thuyết. Với ngành mạng máy tính, nhu cầu thực hành được đặt lên hàng đầu. Tuy nhiên, trong điều kiện còn thiếu thốn về trang bị như hiện nay, người học đặc biệt là sinh viên ít có điều kiện thực hành. Đặc biệt là với các thiết bị đắt tiền như Router, Switch chuyên dụng

BÀI 0 10 12 NỘI SUY BẰNG ĐA THỨC VÀ LÀM KHỚP DỮ LIỆU 14 NỘI SUY BẰNG ĐA THỨC (1) BÀI TOÁN NỘI SUY: Cho x0, x1, …, xn n + điểm phân biệt trục số thực f(x) hàm nhận giá trị thực, xác định khoảng I = [a, b] chứa điểm Hãy xây dựng đa thức pn(x) có bậc ≤ n mà điểm x0, x1, …, xn pn(xi) = f(xi) i = 0, …, n SỰ TỒN TẠI ĐA THỨC NỘI SUY: (Đa thức nội suy Lagrange) Cho hàm f(x) nhận giá trị thực n + điểm phân biệt x0, x1, …, xn, tồn đa thức bậc ≤ n nôi suy f(x) x0, x1, …, xn pn(x) = a0l0(x) + a1l1(x) + … + anln(x) với = f(xi) x  xi lk (x)  Π i 0 x k  x i n ik PHƢƠNG PHÁP SỐ - Bài NỘI SUY BẰNG ĐA THỨC (2) SỰ DUY NHẤT CỦA ĐA THỨC NỘI SUY Bổ đề: Nếu z1, …, zn nghiệm phân biệt đa thức p(x) p(x) = (x – z1)(x – z2) … (x – zn) r(x) với r(x) đa thức Hệ quả: Nếu p(x) q(x) hai đa thức bậc ≤ k có giá trị trùng k+1 điểm z0, …, zk phân biêt, p(x) ≡ q(x)  có nhiều đa thức bậc ≤ n nội suy f(x) n + điểm phân biệt x0, x1, …, xn Mặt khác, từ tồn đa thức nội suy Lagrange  có đa thức bậc ≤ n nội suy f(x) n + điểm phân biệt x0, x1, …, xn  Kết luận: có đa thức bậc ≤ n nội suy f(x) n + điểm phân biệt x0, x1, …, xn PHƢƠNG PHÁP SỐ - Bài NỘI SUY BẰNG ĐA THỨC (3) Ví dụ 1: trường hợp n = 1, nghĩa cho biết hàm f(x) hai điểm phân biệt x0, x1 Vậy ta có hai đa thức bậc x  x1 l0 (x)  x  x1 x  x0 l1 (x)  x1  x  Trong ví dụ này, đa thức nội suy Lagrange đa thức nội suy tuyến tính (n = 1) x  x0 x  x1 p n (x)  f(x )l (x)  f(x )l (x)  f(x )  f(x ) x  x1 x1  x f(x )(x  x )  f(x )(x  x ) f(x )  f(x )   f(x )  (x  x ) x  x1 x1  x Đây PT đƣờng thẳng qua điểm (x0, y0) (x1, y1) PHƢƠNG PHÁP SỐ - Bài 4 NỘI SUY BẰNG ĐA THỨC (4) Ví dụ 2: Từ bảng giá trị tích phân sau, tính giá trị đa thức nội suy Lagrange K(3.5), biết K(1) = 1.5709, K(4) = 1.5727, K(6) = 1.5751 π/2 dx Ta có K(k)   [1  (sin k)2 sin x]1/2 (3.5  4)(3.5  6) 1.25 l0 (3.5)    0.08333 (1  4)(1  6) 15 (3.5  1)(3.5  6) 6.25 l1 (3.5)    1.04167 (4  1)(4  6) 6 (3.5  1)(3.5  4) 1.25 l2 (3.5)    0.12500 (6  1)(6  4) 10  K(3.5) ≈ (1.5709)(0.08333)+(1.5727)(1.04167)+(1.5751)((–0.12500) = 1.57225 PHƢƠNG PHÁP SỐ - Bài NỘI SUY BẰNG ĐA THỨC (5) NHƯỢC ĐIỂM CỦA ĐA THỨC NỘI SUY Lagrange: • Việc ƣớc lƣợng điểm x cần 2(n+1) phép nhân/chia (2n+1) phép cộng trừ sau tất mẫu số đa thức nội suy Lagrange đƣợc tính tốn chia vào giá trị hàm tƣơng ứng • Việc dùng đa thức Lagrange dƣờng nhƣ lãng phí, tính pk(x) khơng dùng lại đƣợc kết tính pk–1(x)  Nên tìm đa thức nội suy dạng khác PHƢƠNG PHÁP SỐ - Bài ĐA THỨC NỘI SUY NEWTON (1) Lập công thức pn(x) = A0 + A1 (x – x0) + A2 (x – x0) (x – x1) + … + An(x – x0)(x – x1) … (x – xn–1) = qk(x) + (x – x0)(x – x1) … (x – xk)r(x) với qk(x) = A0 + A1 (x – x0) + A2 (x – x0) (x – x1) + … + Ak(x – x0)(x – x1) … (x – xk–1) Nhận xét: pn(x) = qk(x) điểm x0, x1, …, xk, nghĩa qk(x) nội suy f(x) x0, …, xk PHƢƠNG PHÁP SỐ - Bài ĐA THỨC NỘI SUY NEWTON (2) Lập công thức: Xây dựng dãy đa thức có tính kế thừa p0(x),p1(x), … pk(x) = pk–1(x) + Ak(x – x0)(x – x1) … (x – xk–1) Ak = f[x0, …, xk] hệ số lũy thừa bậc cao xk pk(x), phụ thuộc vào giá trị f(x) điểm, x0, …, xk đƣợc gọi tỉ sai phân cấp k f(x) x0, …, xk pn(x) = f[x0] + f[x0, x1](x – x0) + f[x0, x1, x2](x – x0)(x – x1) + … + f[x0, x1, … , xn](x – x0)(x – x1) … (x – xn–1) PHƢƠNG PHÁP SỐ - Bài ĐA THỨC NỘI SUY NEWTON (3) Cơng thức tính tỉ sai phân Với n = 1, công thức nội suy Newton p1(x) = f[x0] + f[x0, x1](x – x0) so sánh với công thức nội suy Lagrange p1(x) = f(x0) + [f(x1) – f(x0)](x – x0) / [x1 – x0]  f[x0] = f(x0) f(x )  f(x ) f[x ]  f[x ] f[x0, x1] =  x  x x  x 1 ………… f[x1 , ,x k ]  f[x , ,x k 1 ] f[x0, x1, … , xk] = xk  x0 PHƢƠNG PHÁP SỐ - Bài ĐA THỨC NỘI SUY NEWTON (3) Bảng tỉ sai phân xi f[ ]=f( ) x0 f(x0) f[,] f[, ,] f[, , ,] f[, , , ,] f[x0, x1] x1 f(x1) f[x0, x1, x2] f[x1, x2] x2 f(x2) f[x0, x1, x2, x3] f[x1, x2, x3] f[x2, x3] x3 f(x3) f[x0, x1, x2, x3, x4] f[x1, x2, x3, x4] f[x2, x3, x4] f[x3, x4] x4 f(x4) PHƢƠNG PHÁP SỐ - Bài 10 CÁC ĐA THỨC GHÉP TRƠN (8) PHÉP NỘI SUY SPLINE BẬC BA: SAI SỐ Có thể sai số nội suy spline bậc ba với a ≤ x ≤ b: 5 max h i  j  |f(x)  g 3(x)|  max |f (4) ()|  384 ξ[a,b] Biên sai số lớn lần biên sai số nội suy Hermite, nhƣng nội suy Hermite bậc ba sử dụng thông tin hàm f(x) nhiều gấp hai lần,do thêm giá trị f’(xi),i = 2, …, N Các đạo hàm g ,3(x i ) phải xấp xỉ tốt f’(xi) Có thể 5max i h i 3 ' ' (4) | f (x)  g (x) | max | f () | 24 ξ[a,b] trƣờng hợp dãy điểm cách đều, xi = x0 + ih, với i ta có h | f ' (x)  g ,3 (x) | max | f (5) ( ) | , i  2, , N : ξ[a,b] 60 PHƢƠNG PHÁP SỐ - Bài 34 CÁC ĐA THỨC GHÉP TRƠN (9) double spline (vector< double > x, vector< double > f, double x0) { unsigned i, j, n = x.size(); double c3, c4; vector< double > h(n - 1, 0), y(n - 1, 0), u(1, 0), l(1, 0), d(n - 2, 0), w(n - 2, 0), z(n - 2, 0), s(n, 0); // Khởi tạo vector for (i = 0; i < n - 1; i++) h[i] = x[i+1] - x[i]; // số gia x for (i = 0; i < n - 1; i++) y[i] = (f[i+1] - f[i]) / h[i]; // tỉ sai phân cấp for (i = 0; i < n - 2; i++) d[i] = * (h[i+1] + h[i]); // ĐC l.insert (l.end (), h.begin () + 2, h.end ()); // ĐC u.insert (u.begin (), h.begin () , h.end () – 2); // ĐC for (i = 0; i < n - 2; i++) w[i] = * (y[i] * h[i+1] + y[i+1] * h[i]); // vế phải baDuongCheo (u, d, l, w, z); // Giải hệ ba đường chéo tìm nghiệm z for (i = 1; i < n - 1; i++) s[i] = z[i-1]; // Gán giá tri s1, sN-2 i = 0; // Tim khoảng thứ i [xi, xi+1] chứa x0 while (x0 > x[i+1]) i++; c4 = (s[i+1] + s[i] - * y[i]) / h[i] / h[i]; c3 = (y[i] - s[i]) / h[i] - c4 * h[i]; return f[i] + s[i] * (x0 - x[i]) + c3 * (x0 - x[i]) * (x0 - x[i]) + c4 * (x0 - x[i]) * (x0 - x[i]) * (x0 - x[i]); } PHƢƠNG PHÁP SỐ - Bài 35 ĐƢỜNG CONG LÀM KHỚP DỮ LIỆU (1) BÀI TOÁN: Hãy phục hồi quan hệ hàm y = f(x) từ liệu đo đƣợc yi, xi, i = 1, … , n x x1 x2 … xn y y1 y2 … yn Các liệu yi có chứa thành phần biến đổi chậm tính xu f(x), hay thơng tin f(x), thành phần biến đổi nhanh có biên độ tƣơng đối nhỏ đƣợc gọi sai số hay nhiễu yi = f(xi) + ei PHƢƠNG PHÁP SỐ - Bài 36 ĐƢỜNG CONG LÀM KHỚP DỮ LIỆU (2) BÀI TOÁN: Mi = (xi, yi) Làm biết đƣợc hàm khớp ? x y x y = f1(x) hay f2(x) x x x x x x Biến phụ thuộc x PHƢƠNG PHÁP SỐ - Bài Biến độc lập ĐƢỜNG CONG LÀM KHỚP DỮ LIỆU (3) PHƢƠNG PHÁP BÌNH PHƢƠNG BÉ NHẤT: Tìm hàm f(x) = f(c1, c2, … , ck; x) thể hầu hết thơng tin f(x) có liệu phần nhỏ nhiễu Hàm phụ thuộc vào tham số c1, , ck cách tuyến tính, f(c1, c2, …, ck; x) = c1Φ1(x) + c2Φ2(x) + … + ckΦk(x) { Φi } tập hàm đƣợc lựa chọn trƣớc { ci } tham số cần phải xác định Chọn tham số phù hợp với điểm thực nghiệm: tổng bình phƣơng sai số điểm thực nghiệm bé nhất, tức tham số phù hợp phải số làm cực tiểu hàm En k biến c1, c2, …, ck E(c1 , c , ,c k )   [ y i - f (c1 , c , ,c k ; x i )]2 i 1 PHƢƠNG PHÁP SỐ - Bài 38 ĐƢỜNG CONG LÀM KHỚP DỮ LIỆU (4) y PHƢƠNG PHÁP BÌNH PHƢƠNG BÉ NHẤT: Quan sát x Sai số Dự đoán dựa vào x tham số c1, , ck x ei = yi - f(c1, , ck; xi) x x x x x x n n i 1 i 1 Tim c¸c c1 , , c k lµmcùctiĨuE   e i2   y i  f c1 ,x , c k ; x i 2 Bình phƣơng sai số PHƢƠNG PHÁP SỐ - Bài ĐƢỜNG CONG LÀM KHỚP DỮ LIỆU (5) LẬP CƠNG THỨC • Điểm làm cực tiểu hàm E(c1,c2,…,ck) phải điểm dừng, nghĩa phải thoả mãn hệ k phƣơng trình n f(c1,c , ,ck ;x i ) E  [yi -f(c1,c , ck ;x i )]  0, j  1, k c j c j i 1  • Thay x = xi, f(c1,c2,…,ck; xi) = c1Ф1(xi) + c2 Ф2(xi) +…+ ck Фk(xi) vào hệ ta đƣợc hệ PTTT đối xứng  c1 (Φ , Φ )  c (Φ , Φ )   c k (Φ , Φ k )  (Φ , y)   c1 (Φ , Φ )  c (Φ , Φ )   c k (Φ , Φ k )  (Φ , y)   c1 (Φ k , Φ )  c (Φ k , Φ )   c k (Φ k , Φ k )  (Φ k , y) PHƢƠNG PHÁP SỐ - Bài 40 ĐƢỜNG CONG LÀM KHỚP DỮ LIỆU (6) LẬP CÔNG THỨC Φi=[Φi(x1), … , Φ i(xn)]T, i = 1, … , k; y = [f(x1) … , f(xn)]T (Φi, Φj) tích vơ hƣớng véc tơ Φi Φj, cụ thể (Φ i ,Φ j )  n n k 1 k 1  Φ i (x k ) Φ j (x k ) , (Φ i ,y )   Φ i (x k )f(x k ) Một số hàm làm khớp dạng tham số tuyến tính thƣờng gặp f(x) = a+ bx; f(x) = a + bx + cx2; f(x) = a + b/x f(x) = a + bcosx + csinx; biến đổi dạng tham số tuyến tính nhƣ f(x) = aebx; (a>0), f(x) = alnx + b f(x) = axb; (a>0, b>0) PHƢƠNG PHÁP SỐ - Bài 41 ĐƢỜNG CONG LÀM KHỚP DỮ LIỆU (7) VÍ DỤ 1: Giả sử ta có 11 điểm thực nghiệm xấp xỉ đƣờng thẳng dạng f(x) = c1 + c2 x Hãy xác định c1 c2 phƣơng pháp bình phƣơng bé PHƢƠNG PHÁP SỐ - Bài 42 ĐƢỜNG CONG LÀM KHỚP DỮ LIỆU (8) VÍ DỤ 1: n n   Tim c¸c c1 , c lµmcùctiĨuE     y i  (c1  c x i ) i 1 e i2 i 1 Xác định Φ1(xi) =1, Φ2(xi) = xi Tính tích vơ hƣớng (Φ1, Φ1), (Φ1, Φ2),(Φ2, Φ2), (Φ1, y), (Φ2, y) Giải hệ PTTT c1(Φ1,Φ1) + c2 (Φ1,Φ2) = (Φ1,y) c1(Φ1,Φ2) + c2 (Φ2,Φ2) = (Φ2,y) (c1, c2) PHƢƠNG PHÁP SỐ - Bài 43 ĐƢỜNG CONG LÀM KHỚP DỮ LIỆU (9) x = Φ2 i Φ1 y (Φ1, Φ1) (Φ1, Φ2) (Φ2, Φ2) (Φ1,y) (Φ2,y) 1 0.00 1 1 2 0.60 1 0.6 1.2 3 1.77 1 1.77 5.31 4 1.92 1 1.92 16 7.68 5 3.31 1 3.31 25 16.55 6 3.52 1 3.52 36 21.12 7 4.59 1 4.59 49 32.13 8 5.31 1 5.31 64 42.48 9 5.79 1 5.79 81 52.11 10 10 7.06 1 10 7.06 100 70.6 11 11 7.17 1 11 7.17 121 78.87 11 66 41.04 506 328.05 Tổng  11 66 41.04   Giải ta c = –0.7314 c = 0.7437     66 506 328.05 PHƢƠNG PHÁP SỐ - Bài 44 ĐƢỜNG CONG LÀM KHỚP DỮ LIỆU (10) SỬ DỤNG HÀM TRENDLINE TRONG VẼ ĐỒ THỊ EXCEL PHƢƠNG PHÁP SỐ - Bài 45 ĐƢỜNG CONG LÀM KHỚP DỮ LIỆU (11) SỬ DỤNG HÀM TRENDLINE TRONG VẼ ĐỒ THỊ EXCEL y Linear (y) y 8.00 7.00 6.00 5.00 4.00 y = 0.743x - 0.731 3.00 2.00 1.00 0.00 PHƢƠNG PHÁP SỐ - Bài 10 x 15 46 ĐƢỜNG CONG LÀM KHỚP DỮ LIỆU (12) SỬ DỤNG HÀM TRENDLINE TRONG VẼ ĐỒ THỊ EXCEL VÍ DỤ 2: Tìm đƣờng cong làm khớp liệu điểm thực nghiệm sau y = f(c1, c2, …, ck; x) x y 1.201 2.5 15 1.824 30 2.624 1.5 50 2.787 70 2.210 y = -0.001x2 + 0.091x + 0.739 0.5 0 PHƢƠNG PHÁP SỐ - Bài 20 40 60 80 47 BÀI TẬP Bài tập tính tốn: a) 2.2-1, 2.2-3, 2.2-5, 2.3-2, 2.6-2, 2.6-4, 6.2-2 b) Cho bảng liệu quan trắc đƣợc hàm y = f(x) x y 4.75 5.25 19.75 36 Hãy tính f(4) cách sử dụng - Đa thức nội suy Newton, - Đa thức ghép trơn spline bậc Bài tập lập trình: Hãy viết chƣơng trình - Nội suy Newton với bƣớc không cách cách đều, - Nội suy spline bậc ba PHƢƠNG PHÁP SỐ - Bài 48

Ngày đăng: 01/07/2023, 09:53

Xem thêm: