Está en la página 1de 18

Vacacional2019-1metodos

jorgemoralespa
July 2019

1 Primer Corte
1.1 Tolerancia
Ejercicio 1. Considere la sucesión
5n
xn = (1)
7n + 3
determine si es o no convergente, si lo es halle una aproximación del limite con
3 cifras significativas.
Solución 1. clc;
clear all;
%definir el numero de cifras significativas
m=3;
%Armar Tolerancia
T=10^(-1-m);
x(1)=(5*1)/(7*1+3);
n=1;
EN(1)=100;
while EN(n)>T
n=n+1;
%Condicional pare el while en n=10000
if n==10000
break;
end
x(n)=(5*n)/(7*n+3);
EN(n)=abs((x(n)-x(n-1))/x(n));
end
n
x(n)
EN(n)

1
Ejercicio 2. Considere la sucesión

an = (−1)n (2)

determine si es o no convergente, si lo es halle una aproximación del limite con


3 cifras significativas.
Solución 2. clc;
clear all;
%definir el numero de cifras significativas
m=3;
%Armar Tolerancia
T=10^(-1-m);
x(1)=(-1)^1;
n=1;
EN(1)=100;
while EN(n)>T
n=n+1;
%Condicional pare el while en n=10000
if n==10000
break;
end
x(n)=(-1)^n;
EN(n)=abs((x(n)-x(n-1))/x(n));
end
n
x(n)
EN(n)

2
Ejercicio 3. Determine si la serie

X 1
2
(3)
n=1
n

converge o diverge, en caso de ser convergente halle una aproximación de la


suma con 3 cifras significativas.
Solución 3. clc;
clear all;
%definir el numero de cifras significativas
m=3;
%Armar Tolerancia
T=10^(-1-m);
%Calcular la serie Sum_1^\infty 1/n^2
s(1)=1;
n=1;
EN(1)=100;
while EN(n)>T
n=n+1;
%Condicional pare el while en n=10000
if n==10000
break;
end
s(n)=s(n-1)+(1/(n^2));
EN(n)=abs((s(n)-s(n-1))/s(n));
end
n
s(n)
EN(n)

3
Ejercicio 4. Considere la sucesión an para n = 1, 2, 3, ... dada por

a1 = 1, a2 = 1, an = an−1 + an−2 (4)

y a partir de ella se construye la sucesión bn para n = 2, 3, ... dada por


an
bn = (5)
an−1

determine si la sucesión (bn ) converge o diverge, en caso de ser convergente


halle una aproximación del limite con 3 cifras significativas.
Solución 4.
clc;
clear all;
%definir el numero de cifras significativas
m=3;
%Armar Tolerancia
T=10^(-1-m);
a(1)=1;
a(2)=1;
b(2)=a(2)/a(1);
n=2;
EN(2)=100;
while EN(n)>T
n=n+1;
%Condicional pare el while en n=10000
if n==10000
break;
end
a(n)=a(n-1)+a(n-2);
b(n)=a(n)/a(n-1);
EN(n)=abs((b(n)-b(n-1))/b(n));
end
n
b(n)
EN(n)

4
Ejercicio 5. Considere la sucesión an para n = 1, 2, 3, ... dada por

(−1)n−1
a1 = 1, an = an−1 + (6)
n
determine si la sucesión (an ) converge o diverge, en caso de ser convergente
halle una aproximación del limite con 2 cifras significativas.
Solución 5.
clc;
clear all;
%definir el numero de cifras significativas
m=2;
%Armar Tolerancia
T=10^(-1-m);
%Calcular la sucesion a(n+1)=a(n)+((-1)^n)/(n+1)
a(1)=1;
n=1;
EN(1)=100;
while EN(n)>T
n=n+1;
%Condicional pare el while en n=10000
if n==10000
break;
end
a(n)=a(n-1)+(((-1)^(n-1))/(n));
EN(n)=abs((a(n)-a(n-1))/a(n));
end
n
a(n)
EN(n)

5
Ejercicio 6. Considere la sucesión an para n = 1, 2, 3, ... dada por

(−1)n−1
a1 = 1, an = an−1 + (7)
n
determine si la sucesión (an ) converge o diverge, en caso de ser convergente
halle una aproximación del limite con 2 cifras significativas.
Nota 1. Este es el mismo ejercicio (5), sin embargo en la programación no se
guarda toda la sucesión en un vector, en vez de ello se va redefiniendo la variable
a.
Solución 6.
clc;
clear all;
%definir el numero de cifras significativas
m=3;
%Armar Tolerancia
T=10^(-1-m);
%Calcular la sucesion a(n+1)=a(n)+((-1)^n)/(n+1)
a=1;
n=1;
EN=100;
while EN>T
n=n+1;
%Condicional pare el while en n=10000
%if n==10000
% break;
%end
b=a+(((-1)^(n-1))/(n));
EN=abs((a-b)/b);
a=b;
end
n
a
EN

6

Ejercicio 7. Halle una aproximación de e con 4 cifras significativas usando
la serie de McLaurin de f (x) = ex .
Nota 2. El siguiente programa se realizo evaluando cada polinomio de Taylor
con sus coeficientes en un for.
Solución 7.
clear all;
clc;
vx=0.5;
syms x
f=exp(x);
m=4;
Tol=10^(-1-m);
En(1)=100;
s(1)=taylor(f,x,’order’,1)
k=1;
while En(k)>Tol
ST=taylor(f,x,’order’,k+1);
c=coeffs(ST);
sum=0;
for i=1:k+1
sum=sum+c(i)*vx^(i-1);
s(k+1)=sum;
En(k+1)=abs((s(k+1)-s(k))/s(k+1));
k=k+1;
end
end
k-1
s(k-1)
En(k-1)

7
Ejercicio 8. Halle una aproximación de tan(1) con 3 cifras significativas us-
ando la serie de McLaurin de f (x) = tan(x).
Nota 3. El siguiente programa se realizo evaluando cada polinomio de Taylor
de orden par (En matlab el orden del polinomio se cuenta desde 1) ya que
la función tangente es una función impar, este programa sirve para evaluar
cualquier función impar.
Solución 8.
clc;
clear all;
vx=1;
syms x
f=tan(x);
m=3;
T=10^(-1-m);
EN(1)=100;
ST=taylor(f,x,’order’,2);
s(1)=subs(ST,vx);
n=1;
while EN(n)>T
n=n+1;
ST=taylor(f,x,’order’,2*n);
s(n)=subs(ST,vx);
EN(n)=abs((s(n)-s(n-1))/(s(n)));
end
n
eval(s(n))
EN(n)

8
Ejercicio 9. Halle una aproximación de cos(1) con 3 cifras significativas usando
la serie de McLaurin de f (x) = cos(x).
Nota 4. El siguiente programa se realizo evaluando cada polinomio de Taylor
de orden impar (En matlab el orden del polinomio se cuenta desde 1) ya que la
función coseno es una función par, este programa sirve para evaluar cualquier
función par.
Solución 9.
clc;
clear all;
vx=1;
syms x
f=cos(x);
m=3;
T=10^(-1-m);
EN(1)=100;
ST=taylor(f,x,’order’,1);
s(1)=subs(ST,vx);
n=1;
while EN(n)>T
n=n+1;
ST=taylor(f,x,’order’,2*n-1);
s(n)=subs(ST,vx);
EN(n)=abs((s(n)-s(n-1))/(s(n)));
end
n
eval(s(n))
EN(n)

9

Ejercicio 10. Halle una aproximación
√ de 5 con 3 cifras significativas usando
la serie de McLaurin de f (x) = x + 4.

Nota 5. El siguiente programa sirve para evaluar z , para 0 < z < 8.
Solución 10.
clc;
clear all;
vx=1;
syms x
f=sqrt(x+4);
m=3;
T=10^(-1-m);
EN(1)=100;
ST=taylor(f,x,’order’,1);
s(1)=subs(ST,vx);
n=1;
while EN(n)>T
n=n+1;
ST=taylor(f,x,’order’,n);
s(n)=subs(ST,vx);
EN(n)=abs((s(n)-s(n-1))/(s(n)));
end
n
eval(s(n))
EN(n)

10
Ejercicio 11. Halle una aproximación de f (1) con 3 cifras significativas usando
1
la serie de McLaurin de f (x) = 3−x .
1
Nota 6. El siguiente programa sirve para evaluar 3−z , para −3 < z < 3.
Solución 11.
clc;
clear all;
vx=-4;
syms x
f=1/(3-x);
m=3;
T=10^(-1-m);
EN(1)=100;
ST=taylor(f,x,’order’,1);
s(1)=subs(ST,vx);
n=1;
while EN(n)>T
n=n+1;
ST=taylor(f,x,’order’,n);
s(n)=subs(ST,vx);
EN(n)=abs((s(n)-s(n-1))/(s(n)));
end
n
eval(s(n))
EN(n)

11
Ejercicio 12. Utilice el método de Bisección para hallar la solución de la
ecuación f (x) = 0 donde
f (x) = x2 − 2
con puntos iniciales a = 1, b = 3.
Nota 7. El siguiente programa sirve para encontrar la solución de f b(x) = 0,
donde la funcion f b puede ser definida en el archivo ”fb.m” el cual contiene la
definición de la función, adicionalmente contiene un condicional para verificar
que los puntos iniciales cumplan la condición de f (a) ∗ f (b) < 0
Solución 12.
clc;
%arbitrarios y ordenados, es decir x(1)<x(2)
x(1)=1;
x(2)=3;
xi=x(1);
xd=x(2);
if fb(x(1))*fb(x(2))<0
m=2;
T=10^(-1-m);
n=2;
En(2)=100;
while En(n)>T
n=n+1;
x(n)=(xi+xd)/2;
if fb(x(n))==0
disp(’la raiz es’, x(n));
break;
elseif fb(xi)*fb(x(n))<0
xd=x(n);
else
xi=x(n);
end
En(n)=abs((x(n)-x(n-1))/x(n));
end
n
x(n)
En(n)
else
disp(’Error en los puntos iniciales’)
end

Nota 8. Aqui se defini la función f b.


function y = fb(x)
y = x^2-2;
end

12
Ejercicio 13. Halle una aproximación de la solución de f (x) = 0 por medio
del método de Newton donde

f (x) = x2 − 2 (8)

con 4 cifras significativas y punto inicial x1 = 1.


Nota 9. La derivada de la función f se realiza manual y se introduce directa-
mente la sucesión de recurrencia.
Solución 13.
clear all;
clc;
format long;
m=4;
T=10^(-1-m);
x(1)=1;
En(1)=100;
n=1;
while En(n)>T
x(n+1)=(x(n)^2+2)/(2*x(n));
En(n+1)=abs((x(n+1)-x(n))/x(n+1));
n=n+1;
%condicion para parar programa por numero de iteraciones
if n==10000
break;
end
end
n
x(n)
En(n)

13
Ejercicio 14. Halle una aproximación de la solución de f (x) = 0 por medio
del método de Newton donde

f (x) = cos x − x (9)

con 4 cifras significativas y punto inicial x1 = 1.


Nota 10. La derivada de la función f se realiza manual y se introduce directa-
mente la sucesión de recurrencia.
Solución 14.
clear all;
clc;
format long;
m=4;
T=10^(-1-m);
x(1)=1;
En(1)=100;
n=1;
while En(n)>T
x(n+1)=x(n)+(cos(x(n))-x(n))/(1+sin(x(n)));
En(n+1)=abs((x(n+1)-x(n))/x(n+1));
n=n+1;
%condicion para parar programa por numero de iteraciones
if n==10000
break;
end
end
n
x(n)
En(n)

14
Ejercicio 15. Halle una aproximación de la solución de f (x) = 0 por medio
del método de Newton donde

f (x) = cos x − x (10)

con 4 cifras significativas y punto inicial x1 = 1.


Nota 11. La derivada de la función f se realiza de manera implicita en el pro-
grama, razon por la cual el siguiente algoritmo sirve para cualquier función
f.
Solución 15.
clear all;
clc;
format long;
m=4;
T=10^(-1-m);
x(1)=1;
En(1)=100;
n=1;
syms z
%Modificar la funcion f
f=cos(z)-z;
df=diff(f,z);
while En(n)>T
x(n+1)=x(n)-(subs(f,x(n)))/(subs(df,x(n)));
En(n+1)=abs((x(n+1)-x(n))/x(n+1));
n=n+1;
%condicion para parar programa por numero de iteraciones
if n==10000
break;
end
end
n
x(n)
En(n)

15
Ejercicio 16. Halle una aproximación de la solución de f (x) = 0 por medio
del método de Newton Mejorado donde

f (x) = cos x − x (11)

con 4 cifras significativas y punto inicial x1 = 1.


Nota 12. La función f dada en el ejercicio anterior no es óptima para aplicar
dicho método dado que la raı́z es simple, sin embargo el programa puede ser
usado en cualquier función, solamente es necesario cambiar la definición de f y
el punto inicial x1 .
Solución 16.
clear all;
clc;
format long;
m=4;
T=10^(-1-m);
x(1)=1;
En(1)=100;
n=1;
syms z
%Modificar la funcion f
f=cos(z)-z;
df=diff(f,z);
ddf=diff(f,z,2);
while En(n)>T
x(n+1)=x(n)-(subs(f,x(n))*subs(df,x(n)))/(subs(df,x(n))^2-subs(f,x(n))*subs(ddf,x(n)));
En(n+1)=abs((x(n+1)-x(n))/x(n+1));
n=n+1;
%condicion para parar programa por numero de iteraciones
if n==10000
break;
end
end
n
x(n)
En(n)

16
Ejercicio 17. Halle una aproximación de la solución de f (x) = 0 por medio
del método de la secante donde

f (x) = cos x − x (12)

con 4 cifras significativas y punto inicial x1 = 1, x2 = 2.


Nota 13. El programa puede ser usado en cualquier función, solamente es nece-
sario cambiar la definición de f y los puntos iniciales x1 y x2 .
Solución 17.
clear all;
clc;
format long;
m=4;
T=10^(-1-m);
x(1)=1;
x(2)=2;
En(2)=100;
n=2;
syms z
%Modificar la funcion f
f=cos(z)-z;
while En(n)>T
x(n+1)=x(n)-(subs(f,x(n))*(x(n)-x(n-1)))/(subs(f,x(n))-subs(f,x(n-1)));
En(n+1)=abs((x(n+1)-x(n))/x(n+1));
n=n+1;
%condicion para parar programa por numero de iteraciones
if n==10000
break;
end
end
n
x(n)
En(n)

17
Ejercicio 18. Halle una aproximación de la solución de f (x) = 0 por medio
del método de Regla Falsa donde

f (x) = cos x − x (13)

con 4 cifras significativas y punto inicial x1 = 0, x2 = 1.


Nota 14. El programa puede ser usado en cualquier función, solamente es nece-
sario cambiar la definición de f y los puntos iniciales x1 y x2 .
Solución 18.
clear all;
clc;
%arbitrarios y ordenados, es decir x(1)<x(2)
x(1)=0;
x(2)=1;
xi=x(1);
xd=x(2);
syms z
f=cos(z)-z;
if subs(f,xi)*subs(f,xd)<0
m=2;
T=10^(-1-m);
n=2;
En(2)=100;
while En(n)>T
n=n+1;
x(n)=xi-(subs(f,xi)*(xi-xd))/(subs(f,xi)-subs(f,xd));
if subs(f,x(n))==0
disp(’la raiz es’, x(n));
break;
elseif subs(f,xi)*subs(f,x(n))<0
xd=x(n);
else
xi=x(n);
end
En(n)=abs((x(n)-x(n-1))/x(n));
end
n
x(n)
En(n)
else
disp(’Error en los puntos iniciales’)
end

18

También podría gustarte