Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Método de la regla falsa, Apuntes de Métodos Numéricos

codigo de matlab Metodos numericos

Tipo: Apuntes

2016/2017

Subido el 17/05/2017

2056529
2056529 🇲🇽

1 documento

1 / 2

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
% Programa para cálculo de Raíces de Ecuaciones no Lineales
% Método de Bisección
clear all; % Limpia la memoria
% Ingresar la función, intervalo de evaluación y porcentaje de error.
fprintf('\nCálculo de la raíz de una ecuación por el método de Bisección\n\n');
Y=input('Dame la función : ','s');
Xa=input('Dame el intervalo inferior : ');
Xb=input('Dame el intervalo superior : ');
error=input('Dame el porciento del error : ');
% Determinar si en el intervalo entre [Xa,Xb] está comprendida la raíz de la ecuación
x=Xa;
Ya=eval(Y); % f(Xa)
x=Xb;
Yb=eval(Y); % f(Xb)
if (Ya*Yb)>0
fprintf('\n\n No existe una raíz en intervalo [Xa,Xb] \n\n');
fprintf('\Execute de nuevo el programa, por favor.\n\n');
break
end
% Se realizan los cálculos para determinar la raíz en la siguiente sección.
fprintf('\n\n')
disp(' N Xa Xb Xr F(Xa) F(Xb) F(Xr)
Error ');
disp
('|---|-----------------|------------------|-------------------|-------------------|------------------|-------------
-------|-----------');
Xant=0; % X anterior
N=0; % Contador de Iteraciones
while N<50
Xr=(Xa+Xb)/2;
Xact=Xr; % X actual
x=Xr;
Yr=eval(Y);
Ea=abs((Xact-Xant)/Xact)*100; % Cálculo del Error
fprintf('%4d %17.8g %17.8g %17.8g %17.8g %17.8g %17.8g %10.5g \n', N, Xa, Xb,
Xr, Ya, Yb, Yr, Ea);
% Impresión de los Resultados
if Ea<error
fprintf('\n\n La Raíz Exacta es: %d',Xr)
fprintf('\n\n Número de iteraciones: %d \n\n',N);
break
pf2

Vista previa parcial del texto

¡Descarga Método de la regla falsa y más Apuntes en PDF de Métodos Numéricos solo en Docsity!

% Programa para cálculo de Raíces de Ecuaciones no Lineales % Método de Bisección

clear all; % Limpia la memoria

% Ingresar la función, intervalo de evaluación y porcentaje de error.

fprintf('\nCálculo de la raíz de una ecuación por el método de Bisección\n\n'); Y=input('Dame la función : ','s'); Xa=input('Dame el intervalo inferior : '); Xb=input('Dame el intervalo superior : '); error=input('Dame el porciento del error : ');

% Determinar si en el intervalo entre [Xa,Xb] está comprendida la raíz de la ecuación x=Xa; Ya=eval(Y); % f(Xa)

x=Xb; Yb=eval(Y); % f(Xb)

if (Ya*Yb)> fprintf('\n\n No existe una raíz en intervalo [Xa,Xb] \n\n'); fprintf('\Execute de nuevo el programa, por favor.\n\n'); break end

% Se realizan los cálculos para determinar la raíz en la siguiente sección. fprintf('\n\n') disp(' N Xa Xb Xr F(Xa) F(Xb) F(Xr) Error '); disp ('|---|-----------------|------------------|-------------------|-------------------|------------------|------------- -------|-----------');

Xant=0; % X anterior N=0; % Contador de Iteraciones while N< Xr=(Xa+Xb)/2; Xact=Xr; % X actual x=Xr; Yr=eval(Y);

Ea=abs((Xact-Xant)/Xact)*100; % Cálculo del Error

fprintf('%4d %17.8g %17.8g %17.8g %17.8g %17.8g %17.8g %10.5g \n', N, Xa, Xb, Xr, Ya, Yb, Yr, Ea);

% Impresión de los Resultados if Ea<error fprintf('\n\n La Raíz Exacta es: %d',Xr) fprintf('\n\n Número de iteraciones: %d \n\n',N); break

end

% Se determina el nuevo intervalo de evaluación if (YaYr)< Xb=Xr; elseif (YaYr)== fprintf('\n\n La raíz exacta es: %17.8g',Xr) fprintf('\n\n Número de iteraciones: %d',N); break else Xa=Xr; end Xant=Xr; N=N+1; end