Documentos de Académico
Documentos de Profesional
Documentos de Cultura
biseccion (a,b,f)
f =
Inline function:
f(x) = 1 + 2.*x - 3.*x.^2.*exp(-x) + 2.*x.^3.*sin(x).*exp(-x./5)
>> f(1)
ans =
3.2742
>> fzero(f,3.2)
ans =
3.3138
function[Cero,Mat] = ReglaFalsa(a,b);
Err = 1; % Inicializa el error para ingresar al ciclo iterativo.
tol = 1e-5; % Tolerancia especificada para la convergencia.
c = 0; % Inicializa el contador de iteraciones.
while Err > tol & c < 30
% Valor de la funci�n al inicio del intervalo.
fa = 1 + 2.*a - 3.*a.^2.*exp(-a) + 2.*a.^3.*sin(a).*exp(-a./5);
% Valor de la funci�n al final del intervalo.
fb = 1 + 2.*b - 3.*b.^2.*exp(-b) + 2.*b.^3.*sin(b).*exp(-b./5);
% Punto de cruce de la recta entre los puntos [a,f(a)] y [b,f(b)].
h = a - fa*(b-a)/(fb-fa);
% Valor de la funci�n en el punto de cruce.
fh = 1 + 2.*h - 3.*h.^2.*exp(-h) + 2.*h.^3.*sin(h).*exp(-h./5);
% Contador de iteraciones para no dejar en un ciclo el programa en caso de alguna
% inconsistencia.
c = c + 1;
% Matriz que almacena los resultados de cada iteraci�n.
Mat(c,:) = [a fa b fb h fh];
% Discriminante para determinar el nuevo intervalo.
disc = fh*fa;
% El cruce por cero cumple con el criterio de error.
if abs(disc) <= tol
Err = 0;
Cero = h;
% Definici�n del nuevo intervalo al no cumplir el criterio de error.
elseif disc > tol
a = h;
b = b;
% Definici�n del nuevo intervalo al no cumplir el criterio de error.
elseif disc < tol
a = a;
b = h;
end
Err = abs(disc); % Criterio de error.
end
%02 Gutierrez.indd 49 2/4/10 7:27:48 PM www.FreeLibros.me
%50 CAP�TULO 2 Soluci�n de ecuaciones no lineales
% Cruce por cero que determina el m�todo de regla falsa o falsa posici�n.
Cero = h;
>> ReglaFalsa(3,4)
ans =
3.3138
>> [z,w]=ReglaFalsa(3,4)
z =
3.3138
w =
>>