Vous êtes sur la page 1sur 25

DEPARTAMENTO DE CIENCIAS EXACTAS

MTODOS NUMRICOS

ROBERTO ARAGN
BRYAN MARTINEZ

NRC: 1182

24 de Mayo del 2017

1
Deber Nmero 2 - Primer Parcial Mtodos Numricos

Resolver los siguientes ejercicios:

1 Conocida la funcin f (x) = 2x 3 x 5, halle un intervalo [a, b] donde f (a) f (b) tenga signo
negativo, realice como prueba de escritorio las tres primeras iteraciones y encuentre mediante
el mtodo de Bolzano la raz positiva ms cerca al origen.

Grfica de la funcin :

[1; 1,5]

a = 1 b = 1, 5

f (a) = f (1) = 2(1)3 (1) 5 = 4


f (b) = f (1, 5) = 2(1, 5)3 (1, 5) 5 = 0, 25
f (a) f (b) = 4 0, 25 = 1 < 0

2
a + b 1 + 1, 5
c= = = 1, 25
2 2

Primera iteracin : [1,25 ; 1,5]

a = 1, 25 b = 1, 5

f (a) = f (1, 25) = 2(1, 25)3 (1, 25) 5 = 2, 34375


f (b) = f (1, 5) = 2(1, 5)3 (1, 5) 5 = 0, 25
f (a) f (b) = 2, 34375 0, 25 = 0, 5859375 < 0

a + b 1, 25 + 1, 5
c= = = 1.375
2 2
Segunda iteracin : [1.375 ; 1,5]

a = 1.375 b = 1, 5

f (a) = f (1.375) = 2(1.375)3 (1.375) 5 = 1, 17578125


f (b) = f (1, 5) = 2(1, 5)3 (1, 5) 5 = 0, 25
f (a) f (b) = 1, 17578125 0, 25 = 0, 2939453125 < 0

a + b 1.375 + 1, 5
c= = = 1.4375
2 2
Tercera iteracin : [1,4375 ; 1,5]

a = 1.4375 b = 1, 5

f (a) = f (1, 4375) = 2(1, 4375)3 (1, 4375) 5 = 0, 4965820313


f (b) = f (1, 5) = 2(1, 5)3 (1, 5) 5 = 0, 25
f (a) f (b) = 0, 4965820313 0.25 = 0, 1241455078 < 0

a + b 1.4375 + 1, 5
c= = = 1, 46875
2 2

Al momento con la tercera iteracin ontenemos un valor de 1, 46875 cercano a la raiz la cual es
1, 47970

3
2 Utilizando el mtodo de la secante, determine en [0, 2] la raz ms cercana al valor final del
p
intervalo, para la funcin cos(x) = 1 3 si n (x), considere una toleracia de 108 .

Grfica de la funcin :

p
f x = 1 3si n(x) cos(x) = 0

Intervalo [0, 2]

x 0 = 0 , y x 1 = 2

f x1
x2 = x1
f x01
0
x 2 = 2 = 2
1.732050808
0
x 3 = 2 = 6.28318530
1.732050808
E = |x 3 x 2 | = |6.28318530 2| = 0, 00000007

Por lo tanto la raiz mas cercana al valor final del intervalo es x = 6.28318530.

4
3 Grafique la funcion f (x) = c sc(x), en el intervalo [0, 2], analice y ejecute el programa del Mtodo
de Bolzano, qu ocurre?

Grfica de la funcin :

Cdigo del programa:

%Ejercicio3
%Analice y ejecute el programa por el Metodo de Bolzano
%Roberto Aragon , Bryan Martinez
%NRC:1182
function [tiempo iter raiz] = Ejercicio3RAMB(a,b,fx,delta)
%[tiempo iter raiz] = Ejercicio3RAMB(0,2*pi,(1/cos(x)),sqrt(eps))

f=inline(fx);

if((f(a)*f(b))>0)
display (No hay raices)
return
endif
tic
iter=0;

5
while abs(a-b)>delta
if((f(a)*f(b))<0)
c=(a+b)/2;
else f(c)==0
x=c
return
endif

if((f(a)*f(c))<0)
b=c;
else
a=c;
end

iter=iter+1;
endwhile

raiz=c
tiempo=toc;

endfunction

Ejecucin del programa :

>> [tiempo iter raiz] = Ejercicio3RAMB(0,2*pi,(1/cos(x)),sqrt(eps))


No hay raices

Anlisis: Si una funcin continua como es el caso de la funcin cosecante sube y baja dentro de
un intervalo , Bolzano toma todos los valores intermedios los cuales debern pasar dos veces por
el mismo punto , con respecto a la funcin cosecante es una funcin peridica que no tienen lmite
en + ni en , motivo por el cual no obtenemos el valor de una raiz.

6
4 Un objeto est situado en un plano cuya pendiente vara a una tasa constante w. La posicin
del objeto, al instante t ; est dada por la frmula:
g
e(t ; w) = [si nh(w t ) si n(w t )]
2w 2
m
donde g = 9.8 que es la aceleracin de la gravedad. Cuando dicho objeto se mueve 10 metros en 4
s2 p
segundos, calcule el valor de w, usando el mtodo de Bolzano, con una tolerancia de eps, adems
determine cuantas iteraciones se requieren para alcanzar la tolerancia indicada y el tiempo uti-
lizado.

Grfica de la funcin :

Cdigo del programa :

%Ejercicio 4
%Roberto Aragon Bryan Martinez
%NRC:1182
%Usando el Metodo de Bolzano halle w

7
function [iter tiempo w] = Ejercicio4RAMB(time,fx)
%[iter tiempo w]=Ejercicio4RAMB(2,20*(x.^2)-9.8*(sinh(4*x)-sin(4*x)))

tol= sqrt(eps);
b=time;
a=0.01;
f = inline(fx);

if b<0
disp(EL TIEMPO NO PUEDE TENER VALORES NEGATIVOS)
return
endif

if f(a)*f(b)>0
disp(NO EXISTE RAICES)
return
endif

tic
iter=0;

while abs(a-b)>tol
if f(a)*f(b)<0
c=(a+b)/2;
else f(c)==0
x=c;
return
endif

if f(a)*f(c)<0
b=c;
else
a=c;
endif

iter=iter+1;

endwhile

w=c;
tiempo=toc;
hold on
x=0:0.001:3;
y=f(x);
x1=w;
y1=0;

8
plot(x,y,x1,y1,rp);
grid on;

Ejecucin del programa :

>> [iter tiempo w]=Ejercicio4RAMB(2,20*(x.^2)-9.8*(sinh(4*x)-sin(4*x)))


iter = 27
tiempo = 0.0050020
w = 0.095661

5 Calcular utilizando el Mtodo de Newton Raphson la raz de la funcion f (x) = x 2 e x

Grfica de la funcin :

9
f (x) = x 2 e x

f 0 (x) = 2x + e x

x0 = 1

f (x0 )
x1 = 1 = 0.7330436052
f (x0 0 )

f (x1 )
x 2 = 0.7330436052 = 0.7038077863
f (x0 1 )

f (x2 )
x 3 = 0.7038077863 = 0.7034674682
f (x0 2 )

f (x3 )
x 4 = 0.7034674682 = 0.7034674683
f (x0 3 )

f (x3 )
x 5 = 0.7034674682 = 0.7034674225
f (x0 3 )

Cdigo del programa :

%EJERCICIO 5
%Roberto Aragon , Bryan Martinez
%NRC:1182
%Calcular utilizando el metodo de Newton Raphson la raiz de la funcion

%EJERCICIO 5
%Roberto Aragon , Bryan Martinez
%NRC:1182
%Calcular utilizando el metodo de Newton Raphson la raiz de la funcion
function [Raiz I Tiempo]=Ejercicio5RAMB(x0,fx,gx) %Punto Inicial,Funcion y Derivada
%[Raiz I Tiempo]=Ejercicio5RAMB(0,x.^2-e.^-x,2*x+e.^-x)
format long
tic
f=inline(fx);
g=inline(gx);
x(1)=x0;
x(2)=x(1)-f(x(1))/g(x(1));

10
I=1;
nmax=100;

while abs(x(I+1)-x(I))>1*10^(-10)||I==nmax
I=I+1;
x(I+1)=x(I)-f(x(I))/g(x(I));
end

Raiz=x(I+1);
Tiempo=toc;

end

Ejecucin del programa :

>> [Raiz I Tiempo]=Ejercicio5RAMB(1,x.^2-e.^-x,2*x+e.^-x)


Raiz = 0.703467422498392
I = 5
Tiempo = 0.00100088119506836

11
6 Aplicar el mtodo de Newton para calcular los cortes entre las funciones f (x) = e x y
g (x) = x 2 1

Grfica de la funcin :

f (x) = g (x) = 0
e x = x 2 1 = 0
h(x) = x 2 e x 1

h (x) = x 2 e x 1

h 0 (x) = 2x + e x

x0 = 1

12
h (x0 )
x1 = 1 0 = 1.155362403
h (x 0)

h (x1 )
x 2 = 1.155362403 0 = 1.147776181
h (x 1)

h (x2 )
x 3 = 1.147776181 0 = 1.147757632
h (x 2)

h (x3 )
x 4 = 1.147757632 0 = 1.1477576321
h (x 3)

Cdigo del programa :

%EJERCICIO 6
%Roberto Aragon , Bryan Martinez
%NRC:1182
%Aplicar el Metodo de Newton para calcular los cortes entre las funciones

function [ n ,tiempo,raiz ] = Ejercicio6RAMB( x0,fx,gx )


%[ iter,tiempo,raiz ] = Ejercicio6RAMB( 1,x.^2-1-e.^-x,2*x+e.^-x)
format long
f = inline(fx);
g = inline(gx);
tic
x(1)=x0;
x(2)=x(1)-f(x(1))/g(x(1));
n=1;
while abs(x(n+1)-x(n))>sqrt(eps)
n=n+1;
x(n+1)=x(n)-f(x(n))/g(x(n));
endwhile
raiz=x(n+1);
tiempo=toc;
endfunction

Ejecucin del programa :

>> [ iter,tiempo,raiz ] = Ejercicio6RAMB( 1,x.^2-1-e.^-x,2*x+e.^-x)


iter = 4
tiempo = 0.00100111961364746
raiz = 1.14775763214474

13
7 En la funcin f (x) = x 2 + x + 1, al aplicar el mtodo de la biseccin, qu sucede?

Grfica de la funcin :

MTODO DE LA BISECCIN

f (x) = x 2 + x + 1

[1; 0]

f (a) = f (1) = 1

f (b) = f (0) = 1

f (a) f (b) > 0

1>0

C 1 = 1+0
2 = 0.5

[0, 5; 0]

f (a) = f (0, 5) = 0, 75

14
f (b) = f (0) = 1

f (a) f (b) > 0

0, 75 > 0

C 2 = 0.25

[0, 25; 0]

f (a) = f (0, 25) = 0, 8125

f (b) = f (0) = 1

f (a) f (b) > 0

0, 8125 > 0

C 3 = 0.125

[0, 125; 0]

f (a) = f (0, 125) = 0, 890625

f (b) = f (0) = 1

f (a) f (b) > 0

0, 890625 > 0

C 4 = 0.0625

[0, 0625; 0]

f (a) = f (0, 0625) = 0, 94140625

f (b) = f (0) = 1

f (a) f (b) > 0

0, 94140625 > 0

C 5 = 0.03125

[0, 03125; 0]

f (a) = f (0, 03125) = 0, 969726

f (b) = f (0) = 1

15
f (a) f (b) > 0

0, 969726 > 0

C 6 = 0.015625

[0, 015625; 0]

f (a) = f (0, 015625) = 0, 984619

f (b) = f (0) = 1

f (a) f (b) > 0

0, 984619 > 0

C 7 = 0.0078125

La funcion f (x) = x 2 + x + 1 presenta una grfica que no tiene cortes con el eje x por ello a travs del
Metodo de la Biseccin la respuesta tiende o se acerca a cero.

ANALIZANDO MEDIANTE LOS MTODOS ESTUDIADOS

MTODO DE NEWTON

f (x) = x 2 + x + 1

f (x) = 2x + 1

x o = 1

2
x 1 = 1 (1) 1+1
2(1)+1

x1 = 0

2
x 2 = 0 (0)0+1
+0+1

x 2 = 1

2
x 3 = 1 (1) 1+1
2(1)+1

16
x3 = 0

x 4 = 1

La grafica de funcion al no tener corte con el eje X, no tiene raiz, pero al someter la funcin al
mtodo de Newton nos da valores alternados entre 0 y -1 la cual nos indica que el punto ms cer-
cano al eje X se encuentra en ese intervalo.

MTODO DE LA SECANTE

f (x) = x 2 + x + 1

x 1 = P t o 1 = 1

x2 = P t o2 = 0

f (x n )(x n x n1 )
x n+1 = x n f (x n ) f (x n1 )

x B = 0 1(0+1)
11

x B = 10

x B = (i nd et er mi nad o)

El metodo de la secante nos indica que la funcin no presenta ninguna raz entre los puntos x 1 = 1
y x 2 = 0 por ello como respuesta por medio de este metodo es infinito.

17
1
8 En la funcin g (x) = x 3 .Se puede aplicar el mtodo de Newton para localizar sus races?
Justifique su respuesta

Grfica de la funcin :

Cdigo del programa :

%EJERCICIO 8
%Roberto Aragon , Martinez Bryan
%NRC:1182
function [ n ,tiempo,raiz ] = Ejercicio8RAMB( x0,fx,gx )
%[ iter,tiempo,raiz ] = Ejercicio8RAMB(0,x.^(1/3),(1/3)*x.^(-2/3))
format long
f = inline(fx);
g = inline(gx);
tic
x(1)=x0;
x(2)=x(1)-f(x(1))/g(x(1));
n=1;
while abs(x(n+1)-x(n))>sqrt(eps)
n=n+1;
x(n+1)=x(n)-f(x(n))/g(x(n));
endwhile
raiz=x(n+1);
tiempo=toc;
endfunction

18
Ejecucin del programa :

>> [ iter,tiempo,raiz ] = Ejercicio8RAMB(0,x.^(1/3),(1/3)*x.^(-2/3))


iter = 1
tiempo = 0.00100111961364746
raiz = 0

>> [ iter,tiempo,raiz ] =Ejercicio8RAMB(-1,x.^(1/3),(1/3)*x.^(-2/3))


iter = 1025
tiempo = 0.111068964004517
raiz = NaN + Infi

>> [ iter,tiempo,raiz ] = Ejercicio8RAMB(1,x.^(1/3),(1/3)*x.^(-2/3))


iter = 1025
tiempo = 0.109071016311646
raiz = NaN - NaNi

Como podemos observar en el grfico de la funcin no se puede aplicar el mtodo de Newton


ya que por las tangentes en cualquier punto va a generar una oscilacin de izquierda a derecha sin
convergencia alguna a la verdadera raiz.

19
en un tnel de altura h. El proyec-
9 Un proyectil es lanzado con velocidad inicial v 0 y un ngulos
2g h
til llega a su alcance mximo cuando es tal que si n(x) = donde es la aceleracin de la
v 02
m
gravedad. Calcule usando el mtodo de Newton, asumiendo que v 0 = 15 y h = 1, 85m.
s
Datos

g = 9.8 m
s2

v 0 = 15 ms

h = 1.85m

Reemplazamos los datos, tenemos:

f (x) = si n(x) 0.40144

Grfica de la funcin

Cdigo del programa :

%EJERCICIO 9
%Roberto Aragon , Martinez Bryan
%NRC:1182
function [ n ,tiempo,raiz ] = Ejercicio9RAMB( x0,fx,gx )
%[ iter,tiempo,raiz ] = Ejercicio9RAMB(0,sin(x)-0.40144,cos(x))
format long

20
f = inline(fx);
g = inline(gx);
tic
x(1)=x0;
x(2)=x(1)-f(x(1))/g(x(1));
n=1;
while abs(x(n+1)-x(n))>sqrt(eps)
n=n+1;
x(n+1)=x(n)-f(x(n))/g(x(n));
endwhile
raiz=x(n+1);
tiempo=toc;
endfunction

Ejecucin del programa :

>> [ iter,tiempo,raiz ] = Ejercicio9RAMB(0,sin(x)-0.40144,cos(x))


iter = 4
tiempo = 0
raiz = 0.413088554580761

>> [ iter,tiempo,raiz ] = Ejercicio9RAMB(3,sin(x)-0.40144,cos(x))


iter = 4
tiempo = 9.98973846435547e-004
raiz = 2.72850409900903

21
10 Hallar mediante el mtodo de Bolzano, Newton y de la secante la primera raz positiva de la
ecuacin: f (x) = cos(x).e x adems, determine en cada mtodo el nmero de iteraciones
utilizadas, el tiempo, el error absoluto y presente los valores en una tabla.

Grfica de la funcin :

MTODO DE BOLZANO

%EJERCICIO 10
%Roberto Aragon , Martinez Bryan
%NRC:1182
function [tiempo iter raiz] = Ejercicio10_BolzanoRAMB(a,b,fx,delta)
%[ tiempo,iter,raiz ] = Ejercicio10_BolzanoRAMB(-1,0,cos(pi*x)*e.^(-x), 10^(-6))
f=inline(fx);
if((f(a)*f(b))>0)
display (NO HAY RAICES)
return
end
tic
iter=0;
while abs(a-b)>delta
if((f(a)*f(b))<0)
c=(a+b)/2

22
else f(c)==0
x=c;
return
end
if((f(a)*f(c))<0)
b=c;
else
a=c;
end
iter=iter+1;
end
raiz=c;
tiempo=toc;
end

Ejecucin del programa :

>> [ tiempo,iter,raiz ] = Ejercicio10_BolzanoRAMB(0,1,cos(pi*x)*e.^(-x), 10^(-6))


c = 0.50000
c = 0.75000
c = 0.62500
c = 0.56250
c = 0.53125
c = 0.51562
c = 0.50781
c = 0.50391
c = 0.50195
c = 0.50098
c = 0.50049
c = 0.50024
c = 0.50012
c = 0.50006
c = 0.50003
c = 0.50002
c = 0.50001
c = 0.50000
c = 0.50000
c = 0.50000
tiempo = 0.0040021
iter = 20
raiz = 0.50000

23
MTODO DE LA SECANTE

%EJERCICIO 10
%Roberto Aragon , Martinez Bryan
%NRC:1182
function [n,tiempo,raiz ] = Ejercicio10_SecanteRAMB(x0,x1,fx)
%[ iter,tiempo,raiz ] = Ejercicio10_SecanteRAMB(0,9,cos(pi*x)*e.^(-x))
x(1)=x0;
x(2)=x1;
f=inline(fx);
if((f(x0)*f(x1))>0)
display (NO HAY RAICES)
return
end
tic
n=1;
while abs(x(n+1)-x(n))>=sqrt(eps)
n = n+1;
x(n+1)=x(n)-f(x(n))*(x(n)-x(n-1))/(f(x(n))-f(x(n-1)));
end
raiz=x(n+1);
tiempo=toc;
end

Ejecucin del programa :

>> [ iter,tiempo,raiz ] = Ejercicio10_SecanteRAMB(-1,0,cos(pi*x)*e.^(-x))


iter = 11
tiempo = 0.0019982
raiz = 0.50000

MTODO DE NEWTON

%EJERCICIO 10
%Roberto Aragon , Martinez Bryan
%NRC:1182
function [ n ,tiempo,raiz ] = Ejercicio10RAMB( x0,fx,gx )
%[ iter,tiempo,raiz ] = Ejercicio10RAMB(0.5,cos(pi*x)*e.^(-x),-e.^(-x)*cos(pi*x) - e.^(-
format long
f = inline(fx);
g = inline(gx);
tic
x(1)=x0;
x(2)=x(1)-f(x(1))/g(x(1));
n=1;
while abs(x(n+1)-x(n))>sqrt(eps)

24
n=n+1;
x(n+1)=x(n)-f(x(n))/g(x(n));
endwhile
raiz=x(n+1);
tiempo=toc;
endfunction

Ejecucin del programa :

>> [ iter,tiempo,raiz ] =
Ejercicio10RAMB(0.5,cos(pi*x)*e.^(-x),-e.^(-x)*cos(pi*x) - e.^(-x)*pi*sin(pi*x))
iter = 1
tiempo = 0
raiz = 0.500000000000000

Resultados :

Mtodo Iteraciones Tiempo Raz Error Absoluto


Bolzano 20 0.0040021 0.50000 0
Secante 11 0.0019982 0.50000 0
Newton 1 0 0.50000000000 0

25