Phương pháp tính là bộ môn toán học có nhiệm vụ giải đến kết quả bằng số cho các bài toán, nó cung cấp các phương pháp giải cho những bài toán trong thực tế mà không có lời giải chính xác. Môn học này là cầu nối giữa toán học lý thuyết và các ứng dụng của nó trong thực tế. Trong thời đại tin học hiện nay thì việc áp dụng các phương pháp tính càng trở nên phổ biến nhằm tăng tốc độ tính toán.
Trần Hiếu Phương pháp Euler Chia [x0 , x] thành n đoạn có độ dài h = x − x0 mốc x0 , x1 , , xn n 1.1: Công thức Euler yo yi+1 = y(x0 ) = yi + hf (xi , yi ) 1.2: Công thức Euler cải tiến yo = y(x0 ) yi+1 = yi + h [f (xi , yi ) + f (xi + h, yi + hf (xi , yi ))] Nhận xét: Sai số bước CT Euler o(h2 ) Sai số bước CT Euler cải tiến o(h3 ) Ví dụ: y = y − 2x , ≤ x ≤ 0, (h = 0, 1) y y(0) = Giải gần sử dụng CT Euler cải tiến Giải: 2x Ta có: f (x, y) = y − ; x0 = 0; h = 0, 1; y0 = 1; X = 0, y Áp dụng CT Euler cải tiến 2x0 2x0 h y0 − + f x0 + h, y0 + h y0 − y0 y0 0, =1+ [1 + f (0, 1; 1, 1)] 0, 2.0, =1+ + 1, − = 1, 0959091 1, h y2 = y1 + [f (x1 , y1 ) + f (x1 + h, y1 + h.f (x1 , y1 ))] 0, 2.0, = 1, 0959091 + 1, 0959091 − + f (0, 2; 1, 1872413) 1, 0959091 = 1, 184096 y1 = y0 + Trần Hiếu Phương pháp Runge-Kutta nấc (RK4) Sai số bước o(h5 )) y0 = y(x0 ) K1i + 2K2i + 2K3i + K4i = hf (xi , yi ) h Ki = hf xi + , yi + 2 h K2i = hf xi + , yi + 2 = hf xi + h, yi + K3i yi+1 = yi + K1i K2i K3i K4i Ví dụ: y = x + y, y(0) = ≤ x ≤ 0, với h = 0, Giải: Ta có: f (x, y) = x + y; x0 = 0; X = 0, 1; h = 0, 1; y0 = Áp dụng CT RK4 ta có: y0 = 1; y1 = y0 + (K1 + 2K2 + 2K3 + K4 ) K1 = hf (x0 ; y0 ) = 0, 1(0 + 1) = 0, 0, 0, K2 = hf x0 + = 0, 1(0, 05 + + 0, 05) = 0, 11 ; y0 + 2 0, 0, 11 K3 = hf x0 + ; y0 + = 0, 1(0, 05 + + 0, 05) = 0, 1105 2 K4 = hf (0, + x0 ; y0 + 0, 1105) = 0, 12105 Thay số ⇒ y1 = 1, 11034 Trần Hiếu Hệ phương trình vi phân y (x) = f (x, y, z) z (x) = g(x, y, z) y(x0 ) = y0 , z(x0 ) = z0 Lần lượt áp dụng phương pháp cho phương trình, ý tính nghiệm (yi , zi )T theo thứ tự nút xi từ thấp đến cao Ví dụ áp dụng phương pháp Euler, ta có: y(xi+1 ) = y(xi ) + hf (xi , y(xi ), z(xi )) z(xi+1 ) = z(xi ) + hf (xi , y(xi ), z(xi )) y(x0 ) = y0 ; z(x0 ) = z0 PTVP bậc cao y (x) = f1 (x)y + f2 (x)y + f3 (x) y(x0 ) = y0 , y (x0 ) = y0 Thực đổi biến y = z ⇒ y = z PTVP chuyển hệ: y (x) = z(x) z (x) = f1 (x)z + f2 (x)y + f3 (x) y(x0 ) = y0 , z(x0 ) = y (x0 ) ... y(xi ), z(xi )) y(x0 ) = y0 ; z(x0 ) = z0 PTVP bậc cao y (x) = f1 (x)y + f2 (x)y + f3 (x) y(x0 ) = y0 , y (x0 ) = y0 Thực đổi biến y = z ⇒ y = z PTVP chuyển hệ: y (x) = z(x) z (x) = f1... = hf xi + h, yi + K3i yi+1 = yi + K1i K2i K3i K4i Ví dụ: y = x + y, y(0) = ≤ x ≤ 0, với h = 0, Giải: Ta có: f (x, y) = x + y; x0 = 0; X = 0, 1; h = 0, 1; y0 = Áp dụng CT RK4 ta có: y0 = 1;