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ế, là một học rất quan trọng của chương trình đào tạo kỹ thuật cũng như một người kĩ sư.Đến với bài của
Trang 2LỜI NÓI ĐẦU
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àitoán 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ế, là một học rất quan trọng của chương trình đào tạo kỹ thuật cũng như một người kĩ sư.Đến với bài của nhóm sẽ có 3 vấn đề cần được giải quyết:
Vấn đề 1: Trình bày cơ sở lý thuyết về các phương pháp xấp xỉ nghiệm sử dụng trong bài.Vấn đề 2: Giải các bài tập tương ứng từng phần
Đây là phần bài tập lớn của nhóm chúng em thực hiện bởi các thành viên trong nhóm.Chúng em cố gắng thể hiện nội dung một cách cụ thể để dễ dàng hiểu rõ và đánh giá,đồng thời cũng trình bày cách xây dựng phương pháp từ ý tưởng, cách giải phương pháp
là đúng đắn và hợp lý, phân tích trường hợp sử dụng.Trong quá trình làm bài không tránhkhỏi lỗi và sai sót Hy vọng sẽ nhận được góp ý và đánh giá của thầy và các bạn
Trang 3BẢNG PHÂN CÔNG NHIỆM VỤ
Vì nội dụng bài tập lớn phương pháp tính khá dài nên khó tránh khỏi những sai sót Do
đó, tụi em đã thảo luận và thống nhất nhóm với nhau về bài làm:
Tích cực trao đổi và thảo luận về nội dung bài tập
Bám sát các yêu cầu và bố cục phần hướng dẫn
Thực hiện đúng tiến độ công việc theo từng tuần
Sửa chéo bài và tìm sai sót khuyết điểm.Các phần bài làm được trình bày theo bảng phân công nhiệm vụ sau:
Trang 4sử dụng khi hàm số là một hàm liên tục và đạt giá trị khác dấu ở hai đầu của khoảng tìmkiếm.
Nguyên lý hoạt động
Ý tưởng cơ bản của phương pháp chia đôi là chia nhỏ khoảng tìm kiếm của nghiệm thànhcác khoảng nhỏ hơn, sau đó kiểm tra xem nghiệm có nằm trong khoảng đó hay không.Nếu nghiệm nằm trong khoảng đó, chúng ta chọn khoảng đó làm khoảng mới và tiếp tụcquá trình chia đôi trên khoảng đó Nếu không, chúng ta chọn khoảng còn lại và tiếp tụcquá trình Quá trình này được lặp lại cho đến khi đạt được một sai số mong muốn hoặcmột số lần lặp cố định
Ý tưởng của phương pháp
Trang 5Ưu điểm và Nhược điểm
Ưu điểm:
Dễ hiểu và triển khai
Phù hợp với các hàm liên tục và có tính chất liên tục đơn giản
Đảm bảo hội tụ về nghiệm với mọi hàm liên tục và khả năng xấp xỉ nghiệm
Nhược điểm:
Chậm hơn so với các phương pháp khác khi hội tụ về nghiệm
Không thể sử dụng được cho hàm không liên tục hoặc không có tính chất liên tục đơngiản
Cần chọn một khoảng ban đầu chứa nghiệm và phụ thuộc vào sự lựa chọn này
1.2 Phương pháp Fixed – Point Iteration
Phương pháp lặp đơn, còn được gọi là phương pháp lặp điểm cố định hoặc đơn giản làphương pháp lặp, là một kỹ thuật cơ bản được sử dụng để xấp xỉ các nghiệm của phươngtrình trong toán học và khoa học máy tính Phương pháp này dựa trên việc lặp đi lặp lạimột hàm tới khi một tiêu chí hội tụ được đáp ứng, kết quả là một xấp xỉ của nghiệm
Nguyên lý hoạt động
Nguyên lý của phương pháp lặp đơn là chúng ta bắt đầu với một giả định ban đầu và sau
đó lặp đi lặp lại một hàm số cho đến khi đạt được sự hội tụ tới một giá trị cố định Quátrình lặp này thường được thực hiện bằng cách lựa chọn một hàm lặp mà khi áp dụng lênmột giá trị xấp xỉ, ta nhận được một giá trị mới gần hơn với nghiệm mong muốn Phươngpháp này cần sự lựa chọn kỹ lưỡng của hàm lặp và một điểm khởi đầu gần với nghiệm
Ý tưởng của phương pháp
Trang 6 Ưu điểm và Nhược điểm
Ưu điểm:
Dễ triển khai và hiểu
Phù hợp với các bài toán có thể biểu diễn dưới dạng phương trình lặp
Có thể hội tụ tới nghiệm cho nhiều loại hàm
Nhược điểm:
Khả năng hội tụ không luôn đảm bảo
Sự chọn lựa của hàm lặp và điểm ban đầu ảnh hưởng lớn đến kết quả
Có thể chậm hơn so với các phương pháp khác trong một số trường hợp
1.3 Phương pháp Newton’s Method
Phương pháp Newton, còn được gọi là phương pháp Newton-Raphson, là một trongnhững phương pháp quan trọng và hiệu quả nhất để xấp xỉ nghiệm của một phương trìnhtrong toán học và khoa học máy tính Phương pháp này dựa trên việc sử dụng đạo hàmcủa hàm số để xấp xỉ nghiệm và cung cấp tốc độ hội tụ nhanh chóng đối với hầu hết cáctrường hợp
Trang 7 Lặp đi lặp lại: Áp dụng công thức lặp Newton để tạo ra x1,x2….xn theo côngthức:
xn = x - f¿ ¿
Kiểm tra sự hội tụ: Kiểm tra xem giá trị xn có hội tụ tới một giá trị cố định haykhông Nếu có, giá trị đó sẽ là xấp xỉ của nghiệm Nếu không, tiếp tục lặp lại chođến khi đạt được sự hội tụ
Trang 8 Ý tưởng của phương pháp
Ưu điểm và Nhược điểm
Ưu điểm:
Hội tụ nhanh chóng, đặc biệt là gần với nghiệm
Phù hợp với các hàm số liên tục và có tính chất liên tục đơn giản
Hiệu quả và chính xác trong việc xấp xỉ nghiệm
Trang 9II, Giải bài tập
1 Exercise set 2.1 (Bisection Method)
Trang 10% Display the result after 4 iterations
fprintf('After 4 iterations, the approximation is x = %.5f\n', xn);
Trang 11else
a = xn;
endend
% Display the result after 4 iterationsfprintf('After 4 iterations, the approximation is x = %.5f\n', xn);
xn = (a + b) / 2; % Compute the midpoint
fn = f(xn); % Evaluate the function at the midpoint
Trang 12% Display the result after 4 iterations
fprintf('After 4 iterations, the approximation of the root is x = %.5f\n', xn);
Trang 13fn = f(xn); % Evaluate the function at the midpoint
% Display the result after 8 iterations
fprintf('The approximation of the root after %d iterations is x = %.8f\n', maxIter, xn);
Trang 14xn = (a + b) / 2; % Compute the midpoint
fn = f(xn); % Evaluate the function at the midpoint
% Display the result after 8 iterations
fprintf('The approximation of the root after %d iterations is x = %.8f\n', maxIter, xn);
Trang 15xn = (a + b) / 2; % Compute the midpoint
fn = f(xn); % Evaluate the function at the midpoint
fprintf('Iteration %d: a = %.8f, b = %.8f, xn = %.8f, f(xn) = %+.8f\n',
i, a, b, xn, fn);
Trang 16% Update the interval based on where the sign change occurs
% Display the result after 8 iterations
fprintf('The approximation of the root after %d iterations is x = %.8f\n', maxIter, xn);
Bài 12:
In this case is required to use the bisection algorithm to obtain an estimation of the squareroot We provide a program implemented in Mathematica which provides the results ofeach of the iterations of the bisection method Finally, we show the bisection algorithm(Algorithm 2.1) implemented in Mathematica and Python, which provide the estimationand the number of iterations required for the estimation
We can notice that √x is a increasing function for x> 0 Therefore,
√1<√3<√4 => 1< √3 < 2This means that we are looking for a x – value in the interval [1,2]
Trang 172 Exercise set 2.2 (Fixed – Point Iteration)
Bài 5
x4 – 3x2 – 3 = 0x= ± 4
% Perform the fixed-point iteration until the error is less than the tolerance
while error > tol x1 = g(x0); % Compute the next iteration
error = abs(x1 - x0); % Calculate the absolute difference
fprintf('X%d = %.9f, Error = %.9f\n', n, x1, error);
x0 = x1; % Update the guess for the next iteration
n = n + 1; % Increment the iteration counter
Trang 18% Display the result
fprintf('The solution after %d iterations is x = %.9f\n', n, x0);
Bài 6:
x3 – x – 1 = 0x= ± 3
Trang 19fprintf('The solution after 4 iterations is x = %.9f\n', x0);
maxIter = 4; % We stop after 4 iterations
% Perform the fixed-point iterationwhile n < maxIter
x1 = g(x0); % Compute the next iteration
Trang 20error = abs(x1 - x0); % Calculate the absolute difference fprintf('X%d = %.9f, Error = %.9f\n', n+1, x1, error);
x0 = x1; % Update the guess for the next iteration
n = n + 1; % Increment the iteration counterend
% Display the result after 4 iterationsfprintf('The solution after 4 iterations is x = %.9f\n', x0);
% Define the iteration function
g = @(x) (1/pi) * (asin(-x/2) + 2*pi);
% Initialize the first guess
Trang 21x1 = g(x0); % Compute the next iteration
error = abs(x1 - x0); % Calculate the absolute difference
fprintf('X%d = %.9f, Error = %.9f\n', n, x1, error);
x0 = x1; % Update the guess for the next iteration
end
% Display the result after 5 iterations
fprintf('The solution after 5 iterations is x = %.9f\n', x0);
3 Exercise set 2.3 (Newton’s Method)
Bài 1:
f(x) = x2 – 6f’(x) = 2x
Trang 22x2 = x1 - f(x1)/df(x1);
fprintf('x2 = %.5f\n', x2);
Bài 2:
f(x) = -x3 – cos(x)f’(x) = -3x2 + sin(x)
Trang 23f(x) = 12 + 14x2 – xsin(x) - 12cos(2x)f’(x) = 12x – (sin(x)+cos(x)x) + sin(2x)
-Thus, if the solution x0 = 5πx) + x = 0, then after 19 iterations the error will be within 10-5
Besides, if the solution x0 = 10πx) + x = 0, then after 40 iterations the error will be within 10-5
Code Matlab
% Trường hợp x 0 = 5ππ
% Define the function and its derivative
f = @(x) 0.5 + 0.25*x^2 - x*sin(x) - 0.5*cos(2*x);
df = @(x) 0.5*x - sin(x) - x*cos(x) + sin(2*x);
% Initial guess (You can set the initial guess to any value you want to start with)
x0 = 5*pi; % For example, starting at 5*pi
% Initialize the variable to hold the current value
x_current = x0;
% Perform the iterations
for i = 1:21 x_next = x_current - f(x_current)/df(x_current);
% Print the 20th and 21st iterations
if i == 20 || i == 21 fprintf('Iteration %d: x = %.10f\n', i, x_next);
Trang 24end % Update the current value for the next iteration
x_current = x_next;
end
Bài 22:
f(x) = cos(x) - xf’(x) = -sin(x) -1
x0 = pi / 4; % Start with pi/4
% Initialize the variable to hold the current value
Trang 25x_next = x_current - f(x_current)/df(x_current);
fprintf('x%d = %.10f\n', i, x_next);
% Update the current value for the next iteration
x_current = x_next;
end