Documentos de Académico
Documentos de Profesional
Documentos de Cultura
E SCUELA DE M ATEMÁTICA
MÉTODOS NUMÉRICOS II
Autor:
Juan Carlos G IRÓN R OJAS
Profesor:
Gabriel DOMINGO P ÉREZ
Dr. M ONTORO
Linda Chrisly L ÓPEZ R AMOS
Jesús A. G ARCÍA G ONZALES
Aproximación de la función racional de Chebyshev
1 APROXIMACIÓN DE CHEBYSHEV
Para obtener aproximaciones de función racional precisa de forma más uniforme, usamos los
polinomios de Chebyshev. El método general de aproximación de función racional de Chebyshev
procede de la misma forma que la aproximación de Padé, excepto que cada término x k en la
aproximación de Padé se reemplaza por el polinomio de k− ésimo grado de Chebyshev Tk ( x ).
Suponga que queremos aproximar la función f mediante una función racional r de enésimo
grado escrita en la forma.
n
∑ pk Tk (x)
k =0
r(x) = m donde N = n+m y q0 = 1
∑ qk Tk (x)
k =0
∞ ∑ pk Tk (x)
∑ ak Tk (x) −
k =0
f (x) − r(x) = m
k =0
∑ qk Tk (x)
k =0
o
∞ m k =0
∑ ak Tk (x) ∑ qk Tk (x) − ∑ pk Tk (x)
k =0 k =0 n
f (x) − r(x) = m
∑ qk Tk (x)
k =0
Los coficientes q1 , q2 , ..., qm y p0 , p1 , ..., pn se seleccionan de tal forma que el numerador en el lado
derecho de está ecuación para Tk ( x ) cuando k = 0; 1; ...; N Esto implica que la serie
1
Con el procedimiento de Chebyshev surgen dos problemas que lo hacen más difícil de im-
plementar que el método de Padé. Uno se presenta porque el producto del polinomio q( x ) y la
serie para f ( x ) implican productos de los polinomios de Chebyshev. Este problema se resuelve al
utilizar la relación
1h i
Ti ( x ) Tj ( x ) = Ti+ j ( x ) − T|i− j| ( x )
2
El otro problema es más difícil de resolver e implica el cálculo de la serie de Chebyshev para f ( x ).
En teoría, esto no es difícil, si
∞
f (x) = ∑ ak Tk (x)
k =0
entonces la ortogonalidad de los polinomios de Chebyshev implica que
Z 1 Z 1
1 f (x) 2 f ( x ) Tk ( x )
a0 = √ dx y √ ak = dx donde k ≥ 1
π 1 − x2
−1 −1 1 − x2 π
Prácticamente, sin embargo, estas integrales rara vez se pueden evaluar de forma cerrada y se
requiere una técnica de integración numérica para cada evaluación.
1.1 EJEMPLO-1
Los primeros cinco términos de la expansión de Chebyshev para e− x son
SOLUCIÓN
P̃5 ( x ) [ T0 ( x ) + q1 T1 ( x ) + q2 T2 ( x )] − [ p0 T0 ( x ) + p1 T1 ( x ) + p2 T2 ( x ) + p3 T3 ( x )]
Usando la relación y agrupando términos se obtienen las ecuaciones
2
1, 055265T0 ( x ) − 0, 613016T1 ( x ) + 0, 077478T2 ( x ) − 0, 004506T3 ( x )
rT (x) =
T0 ( x ) + 0, 378331T1 ( x ) + 0, 022216T2 ( x )
Al inicio de la sección encontramos que
T0 ( x ) = 1, T1 ( x ) = x, T2 ( x ) = 2x2 − 1, y T3 ( x ) = 4x3 − 3x
12 N=m+n;
13 Y=N+m;
14 A=zeros(1,N+1);
15
19 R=zeros(2,10);
20 R(1,1)=(pi/2)*(feval(fun,1)+feval(fun,−1));
21 h=pi;
22
23 i=2;
24 while i ≤ 10
25 sum=0;
26 for k=1:2^(i−2)
27 x=0+(k−0.5)*h;
28 z=cos(x);
29 sum=sum+feval(fun,z);
30 endfor
31 R(2,1)=(1/2)*(R(1,1)+h*sum);
32 j=2;
33 while j ≤ i
34 R(2,j)=R(2,j−1)+(R(2,j−1)−R(1,j−1))/(4^(j−1)−1);
35 j=j+1;
36 endwhile
37 h=h/2;
38 j=1;
39 while j ≤ i
40 R(1,j)=R(2,j);
41 j=j+1;
42 endwhile
43 i=i+1;
44 endwhile
3
45
46 A(1,1)=(2/pi)*R(2,10);
47
51 for s=1:Y
52 R=zeros(2,10);
53 R(1,1)=(pi/2)*(feval(fun,1)+feval(fun,−1)*cos(s*pi));
54 h=pi;
55
56 i=2;
57 while i ≤ 10
58 sum=0;
59 for k=1:2^(i−2)
60 x=0+(k−0.5)*h;
61 z=cos(x);
62 y=cos(s*x);
63 sum=sum+feval(fun,z)*y;
64 endfor
65 R(2,1)=(1/2)*(R(1,1)+h*sum);
66 j=2;
67 while j ≤ i
68 R(2,j)=R(2,j−1)+(R(2,j−1)−R(1,j−1))/(4^(j−1)−1);
69 j=j+1;
70 endwhile
71 h=h/2;
72 j=1;
73 while j ≤ i
74 R(1,j)=R(2,j);
75 j=j+1;
76 endwhile
77 i=i+1;
78 endwhile
79
80 A(1,s+1)=(2/pi)*R(2,10);
81
82 endfor
83
86 B=zeros(N+1,N+2);
87
88 for i=0:N
89 if i ≤ n
90 B(i+1,i+1)=1;
91 endif
92 for j=n+1:N
93 if i 6= 0
94 w=i+1;
95 z=j+1;
96 B(w,z)=−0.5*(A(1,w+z−n−1)+A(1,abs(w−z+n)+1));
97 else
98 B(i+1,j+1)=−0.5*A(1,j−n+1);
99 endif
100 endfor
101 if i 6= 0
102 B(i+1,N+2)=A(1,i+1);
4
103 else
104 B(i+1,N+2)=0.5*A(1,i+1);
105 endif
106 endfor
107
114 C=zeros(1,2);
115
5
161 if B(N+1,N+1)==0
162 disp('Se produce un sistema singular')
163 else
164 Q=zeros(1,m+1);
165 Q(1,1)=1;
166 Q(1,m+1)=B(N+1,N+2)/B(N+1,N+1);
167 for k=n+1:N−1
168 i=N+n−k;
169 sum=0;
170 for j=i+1:N
171 sum=sum+B(i+1,j+1)*Q(1,j−n+1);
172 endfor
173 Q(1,i−n+1)=(B(i+1,N+2)−sum)/B(i+1,i+1);
174 endfor
175 P=zeros(1,n+1);
176 for k=0:n
177 i=n−k;
178 s=0;
179 for j=n+1:N
180 s=s+B(i+1,j+1)*Q(1,j−n+1);
181 endfor
182 P(1,i+1)=B(i+1,N+2)−s;
183 endfor
184 disp('Coeficientes del numerador: ')
185 disp(' ')
186 disp('i p_i ');
187 fprintf('0 %7.7f\n',P(1,1))
188 for j=2:n+1
189 fprintf('%i %7.7f\n',j−1,P(1,j))
190 endfor
191 disp(' ')
192 disp('Coeficientes del denominador: ')
193 disp(' ')
194 disp('i q_i ');
195 fprintf('0 %7.7f\n',Q(1,1))
196 for j=2:m+1
197 fprintf('%i %7.7f\n',j−1,Q(1,j))
198 endfor
199 disp(' ')
200 endif
6
1.2 EJEMPLO-1
Los primeros cinco términos de la expansión de Chebyshev para e− x son
SOLUCIÓN
Solución con el código hecho en laboratorio.
18 i p_i
19 0 1.0500312
20 1 −0.6004342
21 2 0.0738307
22 3 −0.0040679
23
26 i q_i
27 0 1.0000000
28 1 0.3879720
29 2 0.0238035
7
1.3 EJEMPLO-2
Para sin( x ) la aproximación racional de Chebyshev de grado 4 con n = 2 y m = 2.
SOLUCIÓN
Solución con el código hecho en laboratorio.
15 0.019314
16 Coeficientes del numerador:
17
18 i p_i
19 0 0.0000000
20 1 0.9174672
21 2 0.0000000
22
25 i q_i
26 0 1.0000000
27 1 0.0000000
28 2 0.0888637
8
1.4 EJEMPLO-3
Para x.ln( x ) la aproximación racional de Chebyshev de grado 3 con n = 2 y m = 2
SOLUCIÓN
Solución con el código hecho en laboratorio.
9 Columns 1 through 4:
10
17 Columns 5 and 6:
18
27 i p_i
28 0 0.8227103
29 1 −1.6279737
30 2 0.8179251
31
34 i q_i
35 0 1.0000000
36 1 0.3636717
37 2 0.1087383