Está en la página 1de 8

Ejercicio 1

Apartado a

f(50)-f(0)

a*ch(50/a)-a*ch(0/a)=0

ach(50/a)-a-10=0

f=@(x) x.*cosh(50./x)-x-10

f = function_handle with value:


@(x)x.*cosh(50./x)-x-10

apartado b

x=126:0.01:127;
figure(1)
plot(x,f(x),x,0*x), grid on, hold on

apartado c

c.1

df=@(x) ((-50.*sinh(50./x))./x)+cosh(50./x)-1;
ddf=@(x) (2500.*cosh(50./x))./x.^3;
plot(x,df(x),'r',x,ddf(x),'g')
legend('funcion','eje X','primera derivada', 'segunda derivada')

1
f(126)*ddf(126)

ans =
6.950282884133423e-05

f(127)*ddf(127)

ans =
-3.907912113171166e-05

display("Como el producto de la función por su derivada en el extremo 126 es positivo, signific

"Como el producto de la función por su derivada en el extremo 126 es positivo, significa que ambos valores tiene

c.2

N=@(x) x-f(x)./df(x);
format long
p(1)=126;
error=1;
K=1;
while error>=10^(-6)&&K<=10
p(K+1)=N(p(K));
error=abs(p(K+1)-p(K))/abs(p(K+1));
K=K+1;
end
p(K)

2
ans =
1.266324360399890e+02

fprintf("la solucion es %.8f tras %d iteraciones y con un error de %.4f",p(K),K,error)

la solucion es 126.63243604 tras 4 iteraciones y con un error de 0.0000

apartado d

clc, clear
x=126:0.01:127;
g=@(x) x.*cosh(50./x)-10;
h=@(x) x;
figure(2)
plot(x,g(x),x,h(x))

disp('Como observamos en el dibujo, ambas gráficas se cortan en un punto, asegurando que existe

Como observamos en el dibujo, ambas gráficas se cortan en un punto, asegurando que existe un único punto fijo en el

dg=@(x) abs(cosh(50./x)-((50.*sinh(50./x))./x))

dg = function_handle with value:


@(x)abs(cosh(50./x)-((50.*sinh(50./x))./x))

figure(3)
plot(x,dg(x),'g')

3
k=abs(dg(127))

k =
0.919470747157482

d=10^(-8);
niter=ceil(log(d)/log(k))

niter =
220

p(1)=127;
for k=1:niter
p(k+1)=g(p(k));
end
p(niter)

ans =
1.266324360433872e+02

fprintf('La solución es %.8f tras %d iteraciones y con una cota de %.5f',p(niter),niter,dg(127)

La solución es 126.63243604 tras 220 iteraciones y con una cota de 0.91947

Apartado e

disp('Me parece que el método más eficaz es el de N.R porque es capaz de llegar a la solución c

Me parece que el método más eficaz es el de N.R porque es capaz de llegar a la solución con un menor número de itera

4
Ejercicio 2

apartado a

clc, clear
x=6:0.01:14;
g=@(x) exp(x./10);
g2=@(x) exp(1+cos(x)/2);
figure(4)
plot(x,g(x),x,g2(x)),grid on, hold on

f=@(x) 10+5*cos(x)-x;
figure(5)
plot(x,10+5*cos(x)-x,'g',x,0*x),grid on

5
disp('Observando la gráfica podemos determinar tres intervalos de longitud uno donde se encuent

Observando la gráfica podemos determinar tres intervalos de longitud uno donde se encuentran los puntos de intersecc

Apartado b

1)

a=13;b=14;d=10^(-8);
niter=ceil(-log(d)/log(2))

niter =
27

for k=1:niter
c=(a+b)/2;
if f(a)*f(c)<0
b=c;
else
a=c;
end
end
format long
c

c =
13.391673229634762

figure(4)

6
plot(c,g(c),'*b','MarkerSize',14) %para el apartado c del ej2

2)

clearvars
x=6:0.01:14;
g=@(x) exp(x./10);
g2=@(x) exp(1+cos(x)/2);
f=@(x) 10+5*cos(x)-x;
df=@(x) -5*sin(x)-1;
disp('Antes de programar el método debemos ver si la función cumple las condiciones de converge

Antes de programar el método debemos ver si la función cumple las condiciones de convergencia del mismo

f(9)

ans =
-3.555651309423385

f(8)

ans =
1.272499830956932

disp('La función no cumple la primera condicion de convergencia, ya que los resultados nos indi

La función no cumple la primera condicion de convergencia, ya que los resultados nos indican que la imagen del inter

3)

clearvars
x=6:0.01:14;
g=@(x) exp(x./10);
g2=@(x) exp(1+cos(x)/2);
f=@(x) 10+5*cos(x)-x;
df=@(x) -5*sin(x)-1;
N=@(x) x-f(x)./df(x);
p(1)=11;
error=1;
K=1;
while error>=10^(-8)&&K<=10
p(K+1)=N(p(K));
error=abs(p(K+1)-p(K))/abs(p(K+1));
K=K+1;
end
p(K)

ans =
11.247800175561007

figure(4)
plot(p(K),g(p(K)),'*b','MarkerSize',14) %para el apartado c del ej2
disp('como el método del punto fijo no ha servido para calcular la menor de las raices, lo hago

7
como el método del punto fijo no ha servido para calcular la menor de las raices, lo hago con el método de N.R

clearvars
x=6:0.01:14;
g=@(x) exp(x./10);
g2=@(x) exp(1+cos(x)/2);
f=@(x) 10+5*cos(x)-x;
df=@(x) -5*sin(x)-1;
N=@(x) x-f(x)./df(x);
p(1)=8;
error=1;
K=1;
while error>=10^(-8)&&K<=10
p(K+1)=N(p(K));
error=abs(p(K+1)-p(K))/abs(p(K+1));
K=K+1;
end
p(K)

ans =
8.218324259342822

figure(4)
plot(p(K),g(p(K)),'*b','MarkerSize',14) %para el apartado c del ej2

También podría gustarte