Danh mục

Phương pháp tính với C++ - Chương 6

Số trang: 0      Loại file: pdf      Dung lượng: 235.13 KB      Lượt xem: 19      Lượt tải: 0    
10.10.2023

Hỗ trợ phí lưu trữ khi tải xuống: miễn phí Tải xuống file đầy đủ (0 trang) 0
Xem trước 0 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Tài liệu tham khảo giáo trình Phương pháp tính với C++ - Chương 6 Tính gần đúng đạo hàm và tích phân xác định
Nội dung trích xuất từ tài liệu:
Phương pháp tính với C++ - Chương 6 CHƯƠNG 6: TÍNH GẦN ĐÚNG ĐẠO HÀM VÀ TÍCH  PHÂN XÁC ĐỊNH    §1. ĐẠO HÀM ROMBERG  Đạo  hàm  theo  phương  pháp  Romberg  là  một  phương  pháp  ngoại  suy  để  xác định đạo  hàm  với  một độ  chính  xác  cao.  Ta  xét  khai  triển  Taylor  của  hàm f(x) tại (x + h) và (x ‐ h):  h2 h3 h4 ( 4) f( x + h) = f( x) + hf ′( x) + f ′′( x) + f ′′′( x) + f ( x) + ⋅ ⋅ ⋅      (1)  2 3! 4! h2 h3 h4 f( x − h) = f( x) − hf ′( x) + f ′′( x) − f ′′′( x) + f ( 4 ) ( x) − ⋅ ⋅ ⋅      (2)  2 3! 4! Trừ  (1) cho (2) ta có:  2h 3 2h 5 ( 5) f( x + h ) − f( x − h) = 2 hf ′( x) + f ′′′( x) + f ( x) + ⋅ ⋅ ⋅      (3)  3! 5! Như vậy rút ra:  f( x + h) − f( x − h) h 2 h 4 ( 5) f ′( x) = − f ′′′( x) − f ( x) − ⋅ ⋅ ⋅        (4)    2h 3! 5! hay ta có thể viết lại:  1 [f( x + h) − f( x − h)] + a 2 h 2 + a 4 h 4 + a 6 h 6 + ⋅ ⋅ ⋅     f ′( x) =     (5)  2h trong đó các hệ số ai phụ thuộc f và x.  Ta đặt:  1 [f( x + h) − f( x − h)]     ϕ( h) =           (6)    2h Như vậy từ (5) và (6) ta có:  D(1,1) = ϕ( h) = f ′( x) − a 2 h 2 − a 4 h 4 − a 6 h 6 − ⋅ ⋅ ⋅           (7)  D( 2 ,1) = ϕ⎛ ⎞ = f ′( x) − a 2 2 4 6 h h h h − a4 − a6 − ⋅ ⋅ ⋅    ⎜⎟     (8)  ⎝2⎠ 4 16 64 và tổng quát với hi = h/2i‐1 ta có :  D(i ,1) = ϕ( h i ) = f ′( x) − a 2 h i2 − a 4 h i4 − a 6 h 6 − ⋅ ⋅ ⋅         (9)  i Ta tạo ra sai phân D(1,1) ‐ 4D(2,1) và có:  ϕ( h) − 4ϕ⎛ ⎞ = −3f ′( x) − a 4 h 4 − a 6 h 6 − ⋅ ⋅ ⋅     h 3 15 ⎜⎟     (10)  ⎝2⎠ 4 16 Chia hai vế của (10) cho ‐3 ta nhận được:  4 D( 2 ,1) − D(1,1) 1 5 = f ′( x) + a 4 h 4 + a 6 h 6 + ⋅ ⋅ ⋅    D( 2 ,2) =   (11)  4 4 16 Trong khi D(1, 1) và D(2, 1) sai khác f′(x) phụ thuộc vào h2 thì D(2, 2) sai khác  f′(x) phụ thuộc vào h4 . Bây giờ ta lại chia đôi bước h và nhận được:  158 4 6 D( 3 ,2) = f ′( x) + a 4 ⎛ ⎞ + a 6 ⎛ ⎞ + ⋅ ⋅ ⋅    1 h 5 h ⎜⎟ ⎜⎟         (12)  4 ⎝ 2 ⎠ 16 ⎝ 2 ⎠ và khử số hạng có h4 bằng cách tạo ra:  15 D( 2 ,3) − 16 D( 3 ,2) = −15f ′( x) + ⋅ ⋅ ⋅ + a 6 h 6            (13)  64 Chia hai vế của (13) cho ‐15 ta có:  16 D( 3,2) − D( 2 ,2) 1 = f ′( x) − a 6 h 6 − ⋅ ⋅ ⋅     D( 3 ,3) =       (14)  15 64 Với lần tính này sai số của đạo hàm chỉ còn phụ thuộc vào h6. Lại tiếp tục chia  đôi  bước  h  và  tính  D(4,  4)  thì  sai  số  phụ  thuộc  h8.  Sơ  đồ  tính đạo  hàm  theo  phương pháp Romberg là :    D(1, 1)     D(2, 1)    D(2, 2)      D(3, 1)    D(3, 2)    D(3, 3)    D(4, 1)  D(4, 2)  D(4, 3)  D(4, 4)          . . . . . . . . . . . .  trong đó mỗi giá trị sau là giá trị ngoại suy của giá trị trước đó ở hàng trên .   Với 2 ≤ j ≤ i ≤ n ta có:  4 j−1 D(i , j − 1) − D(i − 1, j − 1) D(i , j) =     4 j−1 − 1 và giá trị khởi đầu là:  1 [f( x + h i ) − f( x − h i )]  D(i , j) = ϕ( h i ) =   2h i với hi = h/2i‐1 .  Chúng  ta  ngừng  lại ...

Tài liệu được xem nhiều: