Académique Documents
Professionnel Documents
Culture Documents
Preguntas
√
1. Para determinar la solución positiva de x∗ > 0 de 3
x − tanx + 1 = 0 se pueden considerar las siguientes
iteraciones de punto fijo.
√
(a) xk+1 = (tanxk − 1)3 (b) xk+1 = arctan( 3 x + 1)
Para cada una de las iteraciones analice la convergencia de x∗ ≈ 1,14 y dado el caso la tasa de convergencia
de la sucesión.
2. Sean c ∈ R y
p
f (x) = sign(x − c) |x − c|
3. (a) Implemente en Matlab los métodos de bisección, Regula Falsi, iteracion de Punto Fijo, Secante,
Newton para solucionar ecuaciones no lineales en R
(b) Use cada uno de los métodos para encontrar la raiz de la función f (x) = cos2 (2x) − x2 en el intervalo
(0, 1,5) con una presición de = 10−10 . Considerando como valor inicial x0 = 0,75 para los métodos
de iteracion de punto fijo y Newton. Para los métodos de la Secante y Regula Falsi los valores iniciales
x0 = 0,75 y x1 = 0 y para el método de biseccion los extremos del intervalo (0, 1,5).
(c) Compare todos los métodos graficando el número de interaciones vs error de aproximación para cada
uno de los métodos en un mismo plano. Interprete los resultados.
∞
4. Considere una sucesión una sucesión {pn }n=0 que converge linealmente a su limite p y tal que p − pn 6= 0
para todo n ≥ 0. Demuestre que si existe un número real A con |A| < 1 y tal que
p − pn+1
lı́m =A
n→∞ p − pn
∞
entonces la sucesión {qn }n=0 definida por
(pn+1 − pn )2
qn = pn −
pn+2 − 2pn+1 + pn
∞
converge a p mas rapidamente que {pn }n=0 en el sentido de que
p − qn
lı́m =0
n→∞ p − pn
¿A cuál método podemos aplicar este resultado para mejorar su tasa de convergencia?
1
Solución
1. Para la iteracion (a). Matlab nos muestra la siguiente tabla donde se ve que evidentemente el método
diverge.
Para la iteración (b) Matlab nos muestra la convergencia de la iteración. Donde ademas podemos observar
que la sucesión posee una convergencia al menos lineal dado que existe cierta relación entre un error en
determinada iteración y el error anterior a esa iteración.
2. Sean c ∈ R y
p
f (x) = sign(x − c) |x − c|
(b) Explique los comportamientos del método de Newton al aplicarlo para resolver f (x) = 0.
El método de Newton diverge para esta función Sea x0 ∈ R con x 6= c. Si aplicamos la iteracion de
newton tenemos que
p
f (x) (|(c − x0 )|)
x1 = x0 + 0 = x0 + = x0 + 2c − 2x0 = 2c − x0
f (x) √ 1
2 (|(c−x0 )|)
2
Y aplicando numevamente la iteración obtenemos
p
f (x1 ) (|(c − x1 )|)
x2 = x1 + 0 = x1 + = x1 + 2c − 2x1 = 2c − x1 = x0
f (x1 ) √ 1
2 (|(c−x1 )|)
3
32 b = str2num ( s t r { 1 } ) ;
33 b = reshape ( b , n , 1 )
34 p=zeros ( n , 1 ) ;
35 L=zeros ( n ,m) ;
36 R=zeros ( n ,m) ;
37 I=zeros ( n ,m) ;
38 P=zeros ( n ,m) ;
39 i f det (A)~=0
40 for i =1:1: n
41 p ( i , 1 )=i ;
42 end
43 f o r j = 1 : 1 : n−1
44 r=j ;
45 f o r i=j : 1 : j +1
46 i f abs (A( i , j ) )>abs (A( r , j ) )
47 r=i ;
48 else
49 continue
50 end
51 end
52 i f r~=j
53 aux=p ( j , 1 ) ;
54 p ( j , 1 )=p ( r , 1 ) ;
55 p ( r , 1 )=aux ;
56 aux=b ( j , 1 ) ;
57 b ( j , 1 )=b ( r , 1 ) ;
58 b ( r , 1 )=aux ;
59 for k =1:1: n
60 aux=A( j , k ) ;
61 A( j , k )=A( r , k ) ;
62 A( r , k )=aux ;
63 end
64 end
65
66
67 A( j +1, j )=A( j +1, j ) /A( j , j ) ;
68 b ( j +1 ,1)=b ( j +1 ,1)−A( j +1, j ) ∗b ( j , 1 ) ;
69 f o r k=j + 1 : 1 : n
70 A( i , k )=A( i , k )−A( i , j ) ∗A( j , k ) ;
71 end
72
73 end
74 for k =1:1: n
75 I ( k , k ) =1;
76 end
77 for j =1:1: n
78 for i =1:1: n
79 P( i , j )=I ( p ( i , 1 ) , j ) ;
80 i f i<=j
81 L( i , j )=I ( i , j ) ;
82 R( i , j )=A( i , j ) ;
83 else
84 L( i , j )=A( i , j ) ;
85 R( i , j ) =0;
86 end
4
87 end
88 end
89 x=zeros ( n , 1 ) ;
90 x ( n , 1 )=b ( n , 1 ) /R( n , n ) ;
91 f o r i=n−1: −1:1
92 sum=0;
93 f o r j =( i +1) : 1 : n
94 sum=sum+R( i , j ) ∗x ( j , 1 ) ;
95 end
96 x ( i , 1 ) =(b ( i , 1 )−sum) /R( i , i ) ;
97 end
98 P=P ’
99 A=L∗R;
100 A=P∗A
101 L
102 R
103 x
104 else
105 disp ( ’A e s una m a t r i z s i n g u l a r . ’ ) ;
106 end
Método de la secante
1
2 f p r i n t f ( ’ \ n C a l c u l o de l a r a i z de una e c u a c i o n por e l metodo de l a
S e c a n t e \n\n ’ ) ;
3 f=input ( ’ I n g r e s e l a f u n c i o n f ( x ) : ’ , ’ s ’ ) ;
4 x0=input ( ’ I n g r e s e e l extremo i z q u i e r d o d e l i n t e r v a l o : ’ ) ;
5 x1=input ( ’ I n g r e s e e l extremo d e r e c h o d e l i n t e r v a l o : ’ ) ;
6 e=input ( ’ I n g r e s e e l e r r o r : ’ ) ;
7 ea=input ( ’ i n g r e s e e l numero p e r m i t i d o de i t e r a c i o n e s : ’ ) ;
8 c =0;
9 while ea>e
10 x=x0 ;
11 g=eval ( f ) ;
12 x=x1 ;
13 gg=eval ( f ) ;
14 x i=x1 −(( gg ∗ ( x0−x1 ) ) / ( g−gg ) ) ;
15 ea=abs ( ( xi −x1 ) / x i ) ∗ 1 0 0 ;
16 x0=x1 ;
17 x1=x i ;
18 f p r i n t f ( ’ r a i z : %11.11 f ’ , x i )
19 f p r i n t f ( ’ E r r o r : %11.11 f ’ , ea )
20 c=c +1;
21 end
22 f p r i n t f ( ’ La r a i z e x a c t a e s : %11.11 f ’ , x i )
23 f p r i n t f ( ’ Numero de i t e r a c i o n e s : %d\n ’ , c ) ;
Método de Regula Falsi
1 f p r i n t f ( ’ \ n C a l c u l o de l a r a i z de una e c u a c i o n por e l metodo de Regula
F a r s i \n\n ’ )
2 Fx=input ( ’ I n g r e s e l a f u n c i o n : ’ , ’ s ’ ) ;
3 a=input ( ’ I n g r e s e extremo i z q u i e r d o d e l i n t e r v a l o : ’ ) ;
4 c=input ( ’ I n g r e s e e l extremo d e r e c h o d e l i n t e r v a l o : ’ ) ;
5 e=input ( ’ I n g r e s e e l e r r o r : ’ ) ;
6
7 x=a ;
5
8 Fa=eval ( Fx ) ;
9 x=c ;
10 Fc=eval ( Fx ) ;
11 f p r i n t f ( ’ \n %6s %7s %8s %8s %8s \n ’ , ’A ’ , ’B ’ , ’C ’ , ’ | c−a | ’ , ’ | c−b | ’ ) ;
12 while abs ( c−a )>e
13 b=(c ∗Fa−a∗Fc ) / ( Fa−Fc ) ;
14 x=b ;
15 Fb=eval ( Fx ) ;
16 f p r i n t f ( ’ \n %11.11 f %11.11 f %11.11 f %11.11 f %11.11 f \n ’ , a , b , c , abs ( c−a
) , abs ( c−b ) ) ;
17 i f abs ( Fc )<e
18 break ;
19 else
20 i f Fa∗Fb<=0
21 c=b ;
22 Fc=Fb ;
23 else
24 a=b ;
25 Fa=Fb ;
26 end
27 end
28 end
29 f p r i n t f ( ’ \ nEl r e s u l t a d o s e r a %11.11 f ’ , b ) ;
30 e z p l o t ( Fx ) ;
31 grid on ;
Método de punto fijo
1
2 function [ p , r e s , i t e r ] = PuntoFijo ( x0 , eps , nmax )
3 x=x0 ;
4 phix = acos ( x ) /2 ;
5 iter = 0;
6 e r r = abs ( phix−x ) ;
7 s a l i r =f a l s e ;
8 while ( s a l i r==f a l s e )
9 iter = iter + 1;
10 x = phix ;
11 phix = acos ( x ) /2 ;
12 e r r = abs ( phix−x ) ;
13 i f e r r < eps
14 s a l i r =t r u e ;
15 end
16 i f i t e r > nmax
17 s a l i r =t r u e ;
18 end
19 end
20 i f i t e r > nmax
21 disp ( ’ no s e ha a l c a n z a d o l a c o n v e r g e n c i a ’ ) ;
22 else
23 p = x;
24 r e s = phix−x ;
25 disp ( ’ c o n v e r g e n c i a a l c a n z a d o ’ ) ;
26 end
27 end
Método de Newton
6
1 f p r i n t f ( ’ \ n C a l c u l o de l a r a i z de una e c u a c i o n por e l metodo de Newton\n\n
’)
2 f=input ( ’ I n g r e s e l a f u n c i o n : ’ ) ;
3 x0=input ( ’ I n g r e s e e l v a l o r i n i c i a l : ’ ) ;
4 t o l=input ( ’ I n g r e s e e l e r r o r : ’ ) ;
5
6 i =1;
7 f x ( i )=x0 ;
8
9 syms x ;
10 f 1=s u b s ( f , x , f x ( i ) ) ;
11 z=d i f f ( f ) ;
12 d=s u b s ( z , x , f x ( i ) ) ;
13
14 ea ( 1 ) =100;
15
16 while abs ( ea ( i ) )>=t o l ;
17 f x ( i +1)=f x ( i )−f 1 /d ; f 1=s u b s ( f , x , f x ( i +1) ) ; d=s u b s ( z , x , f x ( i +1) ) ;
18 ea ( i +1)=abs ( ( f x ( i +1)−f x ( i ) ) ) ;
19 i=i +1;
20 end
21 fprintf ( ’ i fx ( i ) E r r o r aprox ( i ) ’ ) ;
22 f o r j =1: i ;
23 f p r i n t f ( ’ %2d \ t %11.11 f \ t %7.11 f \n ’ , j −1, f x ( j ) , ea ( j ) ) ;
24 end
(b) Implementando el Método de newton para resolver f (x) = cos2 (2x) − x2 con valor inicial x0 = 0,75
y con una precisión de = 10−10 , obtenemos el siguiente resultado.
i f (xi ) Error aprox (i)
1 0.75000000000 100.00000000000
2 0.43719350746 0.31280649254
3 0.51470246789 0.07750896043
4 0.51493324796 0.00023078007
5 0.51493326466 0.00000001670
6 0.51493326466 0.00000000000
Implementando el Método de la Secante para resolver f (x) = cos2 (2x) − x2 con valores iniciales
x0 = 0,75 y x1 = 0, ademas de una precisión de = 10−10 , obtenemos el siguiente resultado.
i f (xi ) Error aprox (i)
1 0.48154209092 100.000000000
2 0.53159002943 9.41476245586
3 0.51509141604 3.20304568700
4 0.51493235745 0.03088922038
5 0.51493326471 0.00017618930
6 0.51493326466 0.00000000877
7 0.51493326466 0.00000000000
La raiz exacta es: 0.51493326466 Numero de iteraciones: 7
Implementando el Método Regula Falsi para resolver f (x) = cos2 (2x) − x2 con valores iniciales
x0 = 0,75 y x1 = 0, ademas de una precisión de = 10−10 , obtenemos el siguiente resultado.
7
i A B C |c-a| |c-b|
1 0.00000000000 0.48154209092 0.75000000000 0.75000000000 0.26845790908
2 0.48154209092 0.52032811421 0.75000000000 0.26845790908 0.22967188579
3 0.48154209092 0.51498090752 0.52032811421 0.03878602330 0.00534720669
4 0.48154209092 0.51493367040 0.51498090752 0.03343881661 0.00004723712
5 0.48154209092 0.51493326812 0.51493367040 0.03339157949 0.00000040229
6 0.48154209092 0.51493326469 0.51493326812 0.03339117720 0.00000000342
7 0.48154209092 0.51493326466 0.51493326469 0.03339117377 0.00000000003
El resultado sera 0.51493326466
Implementando el Método de Bisección para resolver f (x) = cos2 (2x) − x2 en el intervalo (0, 1,5),
ademas de una precisión de = 10−10 , obtenemos el siguiente resultado.
i a b c |c-a| |c-b|
1 0.00000000000 0.75000000000 1.50000000000 1.50000000000 0.75000000000
2 0.00000000000 0.37500000000 0.75000000000 0.75000000000 0.37500000000
3 0.37500000000 0.56250000000 0.75000000000 0.37500000000 0.18750000000
4 0.37500000000 0.46875000000 0.56250000000 0.18750000000 0.09375000000
5 0.46875000000 0.51562500000 0.56250000000 0.09375000000 0.04687500000
6 0.46875000000 0.49218750000 0.51562500000 0.04687500000 0.02343750000
7 0.49218750000 0.50390625000 0.51562500000 0.02343750000 0.01171875000
8 0.50390625000 0.50976562500 0.51562500000 0.01171875000 0.00585937500
9 0.50976562500 0.51269531250 0.51562500000 0.00585937500 0.00292968750
10 0.51269531250 0.51416015625 0.51562500000 0.00292968750 0.00146484375
11 0.51416015625 0.51489257812 0.51562500000 0.00146484375 0.00073242188
12 0.51489257812 0.51525878906 0.51562500000 0.00073242188 0.00036621094
13 0.51489257812 0.51507568359 0.51525878906 0.00036621094 0.00018310547
14 0.51489257812 0.51498413086 0.51507568359 0.00018310547 0.00009155273
15 0.51489257812 0.51493835449 0.51498413086 0.00009155273 0.00004577637
16 0.51489257812 0.51491546631 0.51493835449 0.00004577637 0.00002288818
17 0.51491546631 0.51492691040 0.51493835449 0.00002288818 0.00001144409
18 0.51492691040 0.51493263245 0.51493835449 0.00001144409 0.00000572205
19 0.51493263245 0.51493549347 0.51493835449 0.00000572205 0.00000286102
20 0.51493263245 0.51493406296 0.51493549347 0.00000286102 0.00000143051
21 0.51493263245 0.51493334770 0.51493406296 0.00000143051 0.00000071526
22 0.51493263245 0.51493299007 0.51493334770 0.00000071526 0.00000035763
23 0.51493299007 0.51493316889 0.51493334770 0.00000035763 0.00000017881
24 0.51493316889 0.51493325830 0.51493334770 0.00000017881 0.00000008941
25 0.51493325830 0.51493330300 0.51493334770 0.00000008941 0.00000004470
26 0.51493325830 0.51493328065 0.51493330300 0.00000004470 0.00000002235
27 0.51493325830 0.51493326947 0.51493328065 0.00000002235 0.00000001118
28 0.51493325830 0.51493326388 0.51493326947 0.00000001118 0.00000000559
29 0.51493326388 0.51493326668 0.51493326947 0.00000000559 0.00000000279
30 0.51493326388 0.51493326528 0.51493326668 0.00000000279 0.00000000140
31 0.51493326388 0.51493326458 0.51493326528 0.00000000140 0.00000000070
32 0.51493326458 0.51493326493 0.51493326528 0.00000000070 0.00000000035
33 0.51493326458 0.51493326476 0.51493326493 0.00000000035 0.00000000017
34 0.51493326458 0.51493326467 0.51493326476 0.00000000017 0.00000000009
El resultado es entonces 0.51493326467
(c) Comparando los 5 métodos expuestos tenemos la siguiente imagen:
8
4. Sea {pn }∞
0 una sucesión que converge linealmente a p y además cumple que existe A ∈ R, con |A| < 1 tal
que:
p − pn+1
lı́m =A
n→∞ p − pn
p−pn+1
Sea {δn }∞
0 una sucesión de reales definida por δn = p−pn − A es claro que lı́m δn = 0. Definamos
n→∞
n = p − pn , entonces podemos reescribir la anterior expresión por :
(pn+1 − pn )2
qn = pn −
pn+2 − 2pn+1 + pn
pn+1 − pn = pn+1 − pn + p − p
= (pn+1 − p) − (pn − p)
= n+1 − n
= (δn + A)n − n
= (δn + A − 1)n
9
Por tanto la sucesión qn se podrá reescribir como:
(pn+1 − pn )2
qn = pn −
pn+2 − 2pn+1 + pn
(δn + A − 1)2 2n
= pn −
n (σn + (A − 1)2 )
(δn + A − 1)2 n
= pn −
σn + (A − 1)2
(δn + A − 1)2 n
= pn − +p−p
σn + (A − 1)2
(δn + A − 1)2 n
= n − +p
σn + (A − 1)2
Por lo tanto tenemos que:
(δn + A − 1)2 n
qn − p = n −
σn + (A − 1)2
σn + (A − 1)2 − (δn + A − 1)2
= n
σn + (A − 1)2
σn + (A − 1)2 − (δn2 − 2δn (A − 1) + (A − 1)2 )
= n
σn + (A − 1)2
σn − δn2 + 2δn (A − 1)
= n
σn + (A − 1)2
Dividiendo por n es ambos lados de la igualdad anterior obtenemos que
qn − p σn − δn2 + 2δn (A − 1)
=
n σn + (A − 1)2
Por lo tanto
qn − p qn − p
lı́m = lı́m
n→∞ pn − p n→∞ n
σn − δn2 + 2δn (A − 1)
= lı́m
n→∞ σn + (A − 1)2
= 0.
Podemos usar este resultado para mejorar el método del punto fijo sea f una función tal que existe p un
punto fijo para f si suponemos que el método del punto fijo converge, es decir la sucesión definida por :
xn+1 = f (xn )
(xn+1 − xn )2
zn = xn −
xn+2 − 2xn+1 + xn
(f (xn ) − xn )2
= xn −
f (f (xn )) − 2f (xn ) + xn
Así pues tenemos una sucesión asociada a esta función una sucesión de iteración de punto fijo, zn . Por lo
ya expuesto como {xn }∞
n=0 converge a p entonces zn lo hará más rápido.
10
5. Usamos el siguiente programa:
1
2 function [ Z ,N]= f r a c t a l ( d )
3 x=linspace ( −1 , 1 ,500) ;
4 y=linspace ( −1 , 1 ,500) ;
5 [ X,Y]=meshgrid ( x , y ) ;
6 Z=X+i ∗Y;
7 for k =1:20;
8 Z=Z−(g ( Z , d ) . / h ( Z , d ) ) ;
9 end
10 N=zeros ( 5 0 0 , 5 0 0 ) ;
11 f o r j =1:d
12 r=exp ( 2 ∗ pi ∗ i /d ) ^ j ;
13 Mj=abs ( Z−r ) ;
14 m=(Mj<=0.00000001) ∗ j ;
15 N=N+m;
16 end
17 colormap ( hsv ) ;
18 imagesc (N)
19 shading f l a t ;
20 axis ( ’ s q u a r e ’ , ’ e q u a l ’ , ’ o f f ’ ) ;
21 imgStr=s p r i n t f ( ’ f . png ’ , 5 0 0 , d , 1 ) ;
22
23 print ( ’−dpng ’ , imgStr )
24
25 end
26 function y=g ( x , d ) ;
27 y=(x . ^ d ) −1;
28 end
29
30 function y=h ( x , d ) ;
31 y=d ∗ ( x . ^ ( d−1) ) ;
32 end
11
Finalmente para d = 7 tenemos la siguiente imagen:
12