aplicasion a matlab
Publicado por nani (1 intervención) el 01/11/2004 17:53:19
necesito un algoritmo o programa en matlab que sea aplicado a algun tema de analisis numericos... y ojala tambien incluya greficas
Valora esta pregunta


0



function [raiz, historial] = newtonRaphson(f, df, x0, tolerancia, max_iter)
% Método de Newton-Raphson para encontrar la raíz de una función % f: Función % df: Derivada de la función % x0: Valor inicial % tolerancia: Tolerancia para la convergencia % max_iter: Número máximo de iteracioneshistorial = zeros(max_iter, 1);
x = x0;for i = 1:max_iter
% Método de Newton-Raphsonx = x - f(x) / df(x);
% Almacenar el historial para graficar la convergenciahistorial(i) = x;
% Verificar la convergenciaif abs(f(x)) < tolerancia
break;
end
end
raiz = x; % Graficar la convergenciafigure;
plot(1:i, historial(1:i), '-o');
title('Convergencia del Método de Newton-Raphson');
xlabel('Iteración');
ylabel('Aproximación de la Raíz');
grid on;
end
% Ejemplo: Encontrar la raíz de f(x) = x^2 - 2f = @(x) x^2 - 2;
df = @(x) 2 * x;
x0 = 1; % Valor inicial
tolerancia = 1e-6; % Tolerancia para la convergencia
max_iter = 100; % Número máximo de iteraciones
[raiz, historial] = newtonRaphson(f, df, x0, tolerancia, max_iter);
disp(['Raíz aproximada: ', num2str(raiz)]);

