Está en la página 1de 9

ESCUELA MILITAR DE INGENIERÍA

MCAL. ANTONIO JOSE DE SUCRE

´´BOLIVIA´´

TAREA # 2

INGENIERIA DE SISTEMAS
MÉTODOS NUMÉRICOS
ESTUDIANTE:
HUCHANI IBAÑEZ YHOSELIN ANGELA
CODIGO:
8430561

PARALELO:
4TO SEMESTRE

FECHA: 28 / 08 / 2015

LA PAZ – BOLIVIA
TAREA # 2

SOLUCIÓN DE ECUACIONES TRASCENDENTES EN MATLAB

En esta tarea se realizará la solución de la siguiente ecuación no lineal:

𝑓(𝑥) = 𝑥𝑒 𝑥 − 2𝑥 3 + 4𝑥 − 15

Se realizarán 2 métodos numéricos vistos en clases. Para los 2 casos, el límite del
error es: 0.00001.

1. Realizar el programa del método de la Bisección entre [0 y 5].

Programa en Matlab:

% METODO DE LA BISECCION
% Yhoselin Angela Huchani Ibañez
clc
clear all
close all
%% Introduciendo la funcion
f = inline('(x*(exp(x)))-2*(x^3) + 4*x -15');
%% Comenzando el metodo
% Limites para buscar el cero
a=0;
b=5;
% Rango del error
lim_error = 0.00001;
error=1;
i=1;
vect=0;
vec_p=1;
for ii=1:10
tic
while error > lim_error
p=a+(b-a)/2 ;

fa=f(a);
fb=f(b);
fp=f(p);

vec_p(i+1)=p;
error=abs(vec_p(i+1)-vec_p(i))/vec_p(i+1);
MAT_RES(i,:)=[i a b p fa fb fp error];

i=i+1;
if ( fa*fp > 0 )
a=p;
else
b=p;
end
end
toc
vect(ii)=toc;
end
disp(' iter a b c f(a) f(b) f(c) error')
MAT_RES
fprintf('La raiz de x es aproximada por: %f en la iteracion: %d , evaluando el resultado
es: %f ',p,i,fp)

% Graficando la convergencia del error


figure(1)
plot(MAT_RES(:,8))
title('Convergencia del Error')
%Sacando la Media y Desviacion estandar
h=mean(vect);
k=std(vect);
fprintf(' \n Media : % f y Desviacion Estandar : %f' ,h,k

a) Realizar 10 pruebas y obtener el promedio del tiempo y su desviación


estándar.

N° Tiempo
(segundos)
1 0,01340867
2 3,12E-05
3 4,66E-05
4 4,15E-05
5 2,35E-05
6 2,01E-05
7 1,88E-05
8 1,84E-05
9 1,80E-05
10 1,80E-05
Media 0.001389

Desviación Estándar 0.004198

b) Tabla
c) Graficar el comportamiento del error relativo

2. Realizar el programa del método de la Regla Falsa entre [0 y 5].

Metodo de la regla falsa


%Yhoselin Angela Huchani Ibañez
clc
clear all
close all
% Introduciendo la funcion
f=inline('(x*(exp(x)))-2*(x^3) + 4*x -15');
%comenzando el metodo
%limites para buscar el cero
a=0;
c=5;
%Rango del error
lim_error = 0.00001 ;
error=1;
i=1;
vec_p=1;
fa=f(a);
fc=f(c);
k1=0;
kr=0;
for ii=1:10
tic
if fa*fc < 0
while error>lim_error
b=a-((c-a)/(fc-fa))*fa;
fb=f(b);
vec_b(i+1)=b;
error=abs(vec_b(i+1)-vec_b(i))/vec_b(i+1);
MAT_RES(i,:)=[i a b c fa fb fc error];
i=i+1;

if(fa*fb <0)
c=b;
fa=f(a);
fc=fb;
kr=0;
k1=k1+1;
if(k1 > 1)
fa=fa/2;
end
else
a=b;
fa=fb;
%fc=f(c);
k1=0;
kr=kr+1;
if(kr > 1)
fc=fc/2;
end
end
end
else
disp('No existen raices o existe un numero par de raices');
end
toc
vect(ii)=toc;
end
disp(' iter a b c f(a) f(b) f(c) error')
MAT_RES
fprintf('la raiz de x es aproxiamda por: %f en la iteracion : %d , evaliuando el
resultado es %ld ',b,i,fb)

%Graficando la convergencia del error


figure(1)
plot(MAT_RES(:,8))
grid on
title('Convergencia del Error')
%Sacando la Media y Desviacion estandar
h=mean(vect);
k=std(vect);
fprintf(' \n Media : % f y Desviacion Estandar : %f' ,h,k)

a) Realizar 10 pruebas y obtener el promedio del tiempo y su desviación


estándar

N° Tiempo
1 0,00502836
2 5,05E-05
3 2,65E-05
4 4,02E-05
5 2,35E-05
6 1,97E-05
7 1,80E-05
8 1,75E-05
9 1,75E-05
10 3,98E-05

Media 0.000528

Desviación Estándar 0.001581


b) Tabla

c) Graficar el error relativo


3. Analizar los resultados de los 2 algoritmos e indicar:
a) Cuál método tiene menor cantidad de iteraciones.

Método N° de Iteraciones

Bisección 19

Regla Falsa 15

Respuesta. El método que tiene menor número de iteraciones es el método de la


Regla Falsa con iteraciones igual a 15.

b) Cual método tiene el menor tiempo de proceso.

Método Media (tiempo) Desviación Estándar


(tiempo)

Bisección 0.001389 0.004198

Regla Falsa 0.000528 0.001581

Respuesta. El método que tiene menor tiempo de proceso es el método de la Regla


Falsa con un tiempo igual a 0.001389 segundos.

También podría gustarte