function [ matriz ] = rfalsa (a,b,nmax,delta,tolerancia) format long
Transcripción
function [ matriz ] = rfalsa (a,b,nmax,delta,tolerancia) format long
function [ matriz ] = rfalsa (a,b,nmax,delta,tolerancia) format long %Esta herramienta muestra todos los resultados con la mayor cantidad de decimales posible. % a,b es el intervalo en el que se va a trabajar luego de haber realizado la búsqueda. %Se utilizan los criterios de parada de número máximo de iteraciones, delta y tolerancia. El que primero se cumpla, detiene el programa. %Inicializadores i=0; m=delta+1; error=tolerancia+1; erroranterior=1; q=a; %Se hace solo para la primera vez que el programa haga un ciclo; esto garantiza que el error no sea cero y el programa no termine por el criterio de parada tolerancia. while i<nmax & m>delta & error>tolerancia %Se utilizan los criterios para que el programa continúe. i=i+1; matriz(i,1)=i; %Aumenta el contador de las iteraciones x=b-(funcion(b)*(b-a))/(funcion(b)-funcion(a)); matriz(i,2)=x; %Se divide el intervalo en el punto donde la recta que une a y b intersecta el eje x y=funcion(x); matriz(i,3)=y; %Se evalúa f(x) m=abs(y); %Se nombra f(x) con 'm' para que sea evaluado por el criterio de parada delta. error=abs(x-q); matriz(i,4)=error; %Se halla el error absoluto de las x alpha=error/erroranterior; %Se halla la rapidez de convergencia. matriz(i,5)=alpha; %MOSTRANDO LA MATRIZ, EL ÚLTIMO VALOR DE X ES LA SOLUCION. if funcion(a)*funcion(x)<0 b=x; else a=x; endif erroranterior=error; q=x; endwhile endfunction %Condicionales para verificar que haya cambio de signo entre los dos extremos del nuevo intervalo en estudio.
Documentos relacionados
function [matriz] = newtonmod (a,nmax,delta,tolerancia) format long
function [matriz] = format long
Más detalles