Solving an equation using Newton Raphson method

3 visualizaciones (últimos 30 días)
Nina Nadina
Nina Nadina el 16 de Nov. de 2020
Respondida: arushi el 2 de Sept. de 2024
I have to write code using MATLAB to find the sqrt of the following function :
$(a+cx+ex^2)/(1+bx+dx^2+fx^3)-g=0$
All of that while using Newton Raphson equation. Thank you very much.

Respuestas (1)

arushi
arushi el 2 de Sept. de 2024
Hi Nina,
Here is an example implementation -
% Define the parameters
a = ...; % Define your value
b = ...; % Define your value
c = ...; % Define your value
d = ...; % Define your value
e = ...; % Define your value
f = ...; % Define your value
g = ...; % Define your value
% Define the function
F = @(x) (a + c*x + e*x.^2) ./ (1 + b*x + d*x.^2 + f*x.^3) - g;
% Derivative of the function
F_prime = @(x) ((c + 2*e*x) .* (1 + b*x + d*x.^2 + f*x.^3) - ...
(a + c*x + e*x.^2) .* (b + 2*d*x + 3*f*x.^2)) ./ ...
(1 + b*x + d*x.^2 + f*x.^3).^2;
% Initial guess
x0 = ...; % Choose a starting point
% Tolerance and maximum iterations
tol = 1e-6;
max_iter = 100;
% Newton-Raphson iteration
x = x0;
for iter = 1:max_iter
x_new = x - F(x) / F_prime(x);
if abs(x_new - x) < tol
fprintf('Converged to %f after %d iterations\n', x_new, iter);
break;
end
x = x_new;
end
if iter == max_iter
disp('Newton-Raphson method did not converge');
end
% Display the result
fprintf('The root is approximately: %f\n', x_new);
Hope this helps.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by