Documentos de Académico
Documentos de Profesional
Documentos de Cultura
function [v,nit]=regulafalsi(f,a,b,nmax,tol)
% x, estimación del límite de la sucesión
% f, función definida como cadena de caracteres en la variable x
% v, dominio en un vector [v(1),v(2)]
% n, es el número de iteraciones, hacemos una distinción entre n>1, número de
iteraciones y n<=1
% tolerancia del error
f=inline(f); %
fa=f(a); fb=f(b); % Evaluamos la función en a y en b y las denominamos
como fa y fb
if fa*fb>0 % Comprobamos si fa*fb es mayor de cero, si lo
verifica nos aparece
% en pantalla que no hay cambio de sgno en el
% intervalo que hemos escogido y por tanto no hay
% raíz
disp('No hay cambio de signo en el intervalo')
v=[];nit=[];
return
elseif fa==0 % Sino ocurre eso, entonces y nos devuelve en
pantalla que encontró que
% tiene una raíz.
disp('raiz encontrada')
v=a;nit=0;
return
elseif fb==0
disp('raiz encontrada')
v=b;nit=0; % No hicimos ninguna iteración aún
return
end % Fin del bucle
figure
clc
subplot(2,1,1); % En una misma pantalla nos dibuja dos graficas una
encima de otra
plot([a b],[0 0],'r') % Nos representa
hold on % Mantiene la gráfica
fplot(f,[a b]); % Representa
title('Grafica de la funcion') % Título de la gráfica
subplot(2,1,2);hold on
title('Visualizacion del proceso') % Título del gráfico
xlabel(' Subintervalos ') % Título eje x
ylabel(' Numero de iteracion') % Título eje y
format long % Formto con más decimales
nit=0;
a1=a;
b1=b;
if abs(a1-v(i))<tol | abs(b1-v(i))<tol
return
elseif f(a1)*fvi < 0
b1=v(i);
else
disp(' fue encontrada la raiz! ');
return
end
end