Está en la página 1de 22

5.

Interpolación, Diferenciación e Integración Numérica

5.1. Diferencias Finitas


Dadas las abscisas x k , uniformemente espaciadas: x k +1 = x k + h , a las que
corresponden valores f k ≈ f ( x k ) , se definen las primeras diferencias finitas hacia
adelante como:
∆ f k = f k +1 − f k .

Análogamente pueden definirse las segundas diferencias:

∆2 f k = ∆ f k +1 − ∆ f k = f k + 2 − 2 f k +1 + f k

y en general las diferencias finitas hacia adelante de orden n :

∆n f k = ∆n −1 f k +1 − ∆n −1 f k
n
i  n
∆n f k = ∑ (− 1)  i  f
i=0
k + n −i

 n n!
donde:   =
 i  i!(n − i )!
Una tabla de diferencias es un arreglo de la forma:
k fk ∆f k ∆2 f k ∆3 f k ∆4 f k ∆5 f k ∆6 f k ∆7 f k

0 0 0 0 0 1 -5 15 -35
1 0 0 0 1 -4 10 -20 35
2 0 0 1 -3 6 -10 15
3 0 1 -2 3 -4 5
4 1 -1 1 -1 1
5 0 0 0 0
6 0 0 0
7 0 0
8 0

Puede apreciarse como un pequeño error en las f k puede amplificarse en las


diferencias finitas altas, lo que puede ser útil para identificar posibles errores en una
tabla de f (x ) .

Las diferencias finitas tienen ciertas propiedades análogas a las derivadas. Así por
ejemplo:
∆ (c1u k + c 2 v k ) = c1 ∆u k + c 2 ∆v k

∆ (u k v k ) = u k ∆v k + v k +1 ∆u k

u  v k ∆u k − u k ∆v k
∆ k  =
 vk  v k v k +1
n −1 n −1


i =0
u i ∆v i = ( u n v n − u 0 v 0 ) − ∑∆(u v
i=0
i i +1 )

5-1
En forma similar, pueden definirse diferencias finitas hacia atrás:
∇f k = f k − f k − 1

∇ n f k = ∇ n −1 f k − ∇ n −1 f k −1

y diferencias centrales:

δ fk = f − f
k+ 1 k−1
2 2

δ2 fk = δ f −δf = f k +1 − 2 f k + f k −1
k+ 1 k−1
2 2
.....

δ n f k = δ n −1 f − δ n −1 f
k+1 k−1
2 2

Estas diferencias están relacionadas:

∆ f k = ∇f k +1 = δ f
k+1
2

Y en general:

∆n f k = ∇ n f k + n = δ n f k + n
2

Para puntos con espaciamiento no uniforme pueden calcularse diferencias divididas:


f ( x 0 ) − f ( x1 )
[ x 0 , x1 ] = = [ x1 , x 0 ]
x 0 − x1
[ x 0 , x1 ] − [ x1 , x 2 ]
[ x 0 , x1 , x 2 ] =
x0 − x2
...
[ x 0 , x1 , L x n −1 ] − [ x1 , x 2 , L x n ]
[ x 0 , x1 , x 2 , L x n ] =
x0 − xn

Por ejemplo:
k xk fk [x k , x k +1 ] L

0 0 -5 6 2 1 0 0
1 1 1 12 6 1 0
2 3 25 30 11 1
3 4 55 63 15
4 6 181 108
5 7 289

Para el caso de puntos con espaciamiento uniforme, h , las diferencias divididas pueden
relacionarse con diferencias finitas hacia delante:

∆n f i
[ xi , x i +1 , x i + 2 , L xi + n ] =
n! h n

y en forma similar con diferencias finitas centrales o hacia atrás.

5-2
Si f ( x ) es un polinomio de grado n , las diferencias finitas (de cualquier tipo) de orden
n + 1 o superior obtenidas con los f k = f ( x k ) son cero. En el ejemplo anterior f (x ) es
un polinomio de tercer grado.

5.2. Interpolación
Supóngase que se tiene una tabla de valores tales como:
xn f ( xk )
0 1.000 000
0.1 0.995 004
0.2 0.980 067
0.3 0.955 336
0.4 0.921 061
0.5 0.877 582

Y se requiere calcular f (0.25) . Para ello, f (x ) puede aproximarse localmente por una
función más simple, g ( x) , tal que g ( x k ) = f ( x k ) . El caso más común es aquel en que
g (x ) es un polinomio, pero también son frecuentes las aproximaciones con funciones
trigonométricas, por ejemplo:

g ( x ) = a 0 + a1 cos x + a 2 cos 2 x + L + b1 sen x + b2 sen 2 x + L


En lo que sigue se hace énfasis en interpolaciones polinómicas. Dados n + 1 puntos
x k , f ( x k ) , sólo un polinomio de grado n , p n (x ) , satisface las condiciones
p n ( x k ) = f ( x k ) para todo k . Sus coeficientes, a i , podrían obtenerse resolviendo:

1 x0 x 02 x0 K  a 0   f ( x 0 ) 
    
1 x1 x12 x13 K  a1   f ( x1 ) 
     
1 x2 x 22 x 23 K  a 2  =  f ( x 2 ) 
1 x3 x32 x33 K a 3   f ( x3 ) 
 
K   M   M 
pero esto no es práctico. Otros métodos más eficientes se revisan a continuación.

5.2.1 Fórmulas de Interpolación de Newton y Otras Expresiones Análogas.

Para puntos uniformemente espaciados:



α (α − 1) (α − 2) L (α − j + 1) j
f ( x 0 + αh ) = f 0 + ∑ j =1
j!
∆ f0

Esta expresión es fácil de obtener considerando un operador E tal que E f k = f k +1 , es


decir E = 1 + ∆ . Como E n f k = f k + n , puede escribirse: f ( x 0 + αh) = E α f 0 = (1 + ∆ ) α f 0 .
Generalmente se consideran solo algunos términos de esta serie.

Por ejemplo, despreciando las diferencias de orden 3 o superior:

f ( x k + αh) ≈ f k + α ∆f k + 12 α (α − 1) ∆2 f k =

(α − 1) (α − 2) α (α − 1)
= f k + α (2 − α) f k +1 + f k +2
2 2

5-3
Considerando los valores numéricos:
k xk f ( xk )
2 0.2 0.980 067
3 0.3 0.955 336
4 0.4 0.921 061

(para los que h = 0.1 ), el valor de f (0.25) podría obtenerse con α = 0.5 :
( −0.5) (−1.5) (0.5) (−0.5)
f ( x 2 + 0. 5 h ) = (0.980067) + (0.5) (1.5) (0.955336) + (0.921061)
2 2
de donde f (0.25) ≈ 0.968 895 (el valor exacto es 0.968 912 )

La expresión anterior es la fórmula de interpolación de Newton con diferencias finitas


hacia adelante. Similarmente puede escribirse la fórmula de Newton con diferencias
hacia atrás:

α(α + 1) (α + 2) L (α + j − 1) j
f ( x n + αh) = f n + ∑j =1
j!
∇ fn

o la fórmula de Newton con diferencias divididas:

f ( x) = f 0 + [x 0 , x1 ]( x − x 0 ) + [x 0 , x1 , x 2 ]( x − x 0 ) ( x − x1 ) +
+ [x 0 , x1 , x 2 , x 3 ] ( x − x 0 ) ( x − x1 ) ( x − x 2 ) + L

Esta última expresión es válida también para puntos con espaciamiento no uniforme.

Considérese por ejemplo la tabla de diferencias divididas:


i xi fi [xi , xi +1 ] [xi , L xi + 2 ] [xi ,L xi +3 ] [xi ,L xi + 4 ]
-1 0. 1.000 000 -0.099 667 -0.492 113 0.037 106 0.039 670
0 0.2 0.980 067 -0.247 301 -0.477 270 0.060 908 0.037 594
1 0.3 0.955 336 -0.342 755 -0.452 907 0.079 705
2 0.4 0.921 061 -0.478 627 -0.421 025
3 0.6 0.825 335 -0.604 934
4 0.7 0.764 842

f (0.25) = 0.980067 + (−0.247301) (0.25 − 0.2) + ( −0.477270) (0.25 − 0.2) (0.25 − 0.3) +
+ (0.060908) (0.25 − 0.2) (0.25 − 0.3) (0.25 − 0.4) + L = 0.968914

(Este es el resultado con 5 términos, con 3 términos se obtiene 0.968 895)

Otra alternativa es interpolar con diferencias centrales:

f ( x k + αh ) = f k + α δ f + 12 α (α − 1) δ 2 f k + 16 α (α − 1) (α + 1) δ 3 f +L
k+1 k+1
2 2

f ( x k + αh ) = f k + α δ f + 12 α (α + 1) δ 2 f k + 16 α (α − 1) (α + 1) δ 3 f +L
k−1 k−1
2 2

Estas son las fórmulas de Gauss. Promediando las dos expresiones se obtiene la
fórmula de Stirling:

α  α2 2 α (α 2 − 1)  3 
f ( x k + αh ) = f k +  δ f k+1 + δ f k−1  + δ fk +  δ f k+1 + δ3 f k−1  + L
2 2 2  2 12  2 2 

5-4
5.2.2. Fórmula de Interpolación de Lagrange

Esta fórmula es más adecuada para análisis teóricos que para el cómputo práctico. El
polinomio de interpolación se obtiene como:
m
p ( x) = ∑ g ( x) ⋅ f
i =0
i i

m
(x − x )
Los polinomios g i (x) se obtienen multiplicando n binomios: g i ( x ) = ∏ (x
j =0 i
j

−x )j
.
j ≠i

Nótese que g i ( x j ) = δ ij .

El siguiente ejemplo es ilustrativo:


k xk fk
0 0. -5.
1 1. 2.
2 3. 25.
( x − 1) ( x − 3) 1 2
g 0 ( x) = = ( x − 4 x + 3)
(0 − 1) (0 − 3) 3

( x − 0) ( x − 3) 1
g 1 ( x) = = (− x 2 + 3x)
(1 − 0) (1 − 3) 2

( x − 0) ( x − 1) 1 2
g 2 ( x) = = ( x − x)
(3 − 0) (3 − 1) 6
2
p ( x) = ∑ g ( x) ⋅ f
i =0
i i = 2x 2 + 4x − 5

5.2.3. Interpolación de Hermite.

En algunos casos es conveniente trabajar con los valores de la función, f (x ) y un cierto


número de sus derivadas f ′( x), f ′′( x ), f ′′′( x), K f (m ) ( x) . Dados los valores
(m )
f k , f k′ , f k′′, K f k en n puntos de abscisas x k , es posible determinar un polinomio
p( x ) de grado (m + 1) n − 1 que satisfaga:

p (i ) ( x j ) = f (i ) ( x j ) i = 0,1, K m
j = 0,1, K n − 1

La interpolación de una función cuando una o más de sus derivadas son conocidas en
cada punto se llama interpolación de Hermite. p( x ) puede obtenerse utilizando la
fórmula de Newton con diferencias divididas y considerando que:
f ( x1 ) − f ( x 0 )
[x0 , x 0 ] = xLim = f ′( x 0 )
→x 1 0 (x1 − x0 )
f ′( x 0 ) − [x 0 , x1 ]
[x0 , x 0 , x1 ] =
(x 0 − x1 )

5-5
También podrían usarse las expresiones de Lagrange, considerando primero puntos a
una distancia pequeña, ε , y luego identificando a las derivadas con los límites de
diversas expresiones para ε → 0 .

El siguiente ejemplo es ilustrativo. Se trata de determinar un polinomio p ( x ) de grado 3,


tal que:
p (0 ) = v A
p (L ) = v B
p ′(0 ) = θ A
p ′(L ) = θ B
k xk fk [x k , x k +1 ] [x k , x k +1 , x k + 2 ] [x k , xk +1 , x k + 2 , x k +3 ]
vB − v A θA 2 (vB − v A ) θ A + θ B
0 0 vA θA − +
L 2
L L3 L2
vB − v A θ B vB − v A
1 0 vA −
L L L2
2 L vB θB
3 L vB

Se han tomado datos de esta tabla siguiendo una trayectoria horizontal.

v −v θ   2(v A − v B ) θ A + θ B 
p (x ) = v A + θ A (x − 0 ) +  B 2 A − A  ( x − 0 ) +   (x − 0 ) ( x − L )
2 2
3
+ 2
 L L   L L 

( ) ( )
p ( x) = 1 − 3ξ 2 + 2ξ 3 v A + 3ξ 2 − 2ξ 3 v B + ξ (1 − ξ ) θ A L − ξ 2 (1 − ξ ) θ B L donde ξ =
2 x
L
.

5.2.4. Interpolación Inversa.

En la solución de f ( x) = 0 pueden obtenerse aproximaciones a una raíz, x , por


interpolación de una función inversa con ordenadas x k para abscisas de espaciamiento
no uniforme, f ( x k ) . Considérese, por ejemplo:

xk f ( xk )
1. 1.76
2. 0.41
3. -0.16
4. -0.32

Usando la fórmula de Lagrange con 4 puntos:

(0 − 0.41) (0 + 0.16) (0 + 0.32) (1) (0 − 1.76) (0 + 0.16) (0 + 0.32) ( 2)


x≈ + +
(1.76 − 0.41) (1.76 + 0.16) (1.76 + 0.32) (0.41 − 1.76) (0.41 + 0.16) (0.41 + 0.32)
(0 − 1.76) (0 − 0.41) (0 + 0.32) (3) (0 − 1.76) (0 − 0.41) (0 + 0.16) (4)
+ +
(−0.16 − 1.76) (−0.16 − 0.41) (−0.16 + 0.32) (−0.32 − 1.76) (−0.32 − 0.41) (−0.32 + 0.16)

x ≈ 2.37

5-6
5.2.5. Generalización a Varias Dimensiones.

Las expresiones anteriores pueden fácilmente generalizarse para "mallas" de más


dimensiones. Así, si se tienen puntos con coordenadas xi , y j , z k
( i = 0 L n; j = 0 L m; k = 0 L l ) las fórmulas de Lagrange resultan:
n m l
p ( x, y , z ) = ∑∑∑ g
i =0 j =0 k = 0
xi ( x) ⋅ g y j ( y ) ⋅ g zk ( z ) ⋅ f ijk

n
(x − x r )
donde g xi ( x ) = ∏ (x
r =0 i − xr )
y expresiones similares en las direcciones y, z .
r ≠i

Frecuentemente los puntos están uniformemente espaciados: xi +1 = xi + ∆x


y i +1 = y i + ∆y
z i +1 = z i + ∆z

La figura muestra una zona de una malla bidimensional con espaciamiento uniforme.
Las coordenadas de un punto en la proximidad de A pueden definirse por dos
parámetros α, β (coordenadas relativas medidas en unidades ∆x, ∆y ).

D C B
P
β ∆y
E O A

α ∆x
∆y
F G H

∆x

Usando la fórmula de Stirling, e incluyendo diferencias centrales hasta de 2° orden


inclusive, se obtiene:
+1 +1
f (x 0 + α∆x, y 0 + β ∆y ) = ∑∑a b
i = −1 j = −1
i j f ij

donde:
a1 = 12 α(α − 1) b1 = 12 β(β − 1)

a2 = 1 − α 2 b2 = 1 − β 2
a 3 = 12 α(α + 1) b3 = 12 β(β + 1)

5-7
y es igualmente fácil desarrollar expresiones análogas considerando un número mayor o
menor de puntos en cada dirección. La presencia de bordes curvos introduce algunas
dificultades (no es posible seguir teniendo un espaciamiento uniforme).

Sin embargo, en muchos casos es necesario trabajar con mallas no regulares, como la
mostrada en la figura adjunta. Las diferencias finitas no son entonces la herramienta
más adecuada. El concepto de elementos finitos es útil y permite un tratamiento más
simple. La región en estudio se divide en subregiones o elementos, conectados en un
número finito de nudos con los elementos adyacentes.

El valor de una función, f , en un punto en el interior de un elemento se obtiene


interpolando los valores de la función en los nudos del elemento:
N
f ( x, y , z ) = ∑ N ( x, y , z ) ⋅ f
i =1
i i

Las funciones de interpolación deben satisfacer:

N i ( x j , y j , z j ) = δ ij ( x j , y j , z j son las coordenadas del nudo j )


N

∑ N ( x, y , z ) = 1
i =0
i

Esto último es evidente si se supone f i = c para todo j y entonces f ( x, y, z ) = c .

Adicionalmente, las N i deben ser tales que se mantenga la continuidad de f (y en


algunos casos la continuidad de una o más derivadas) en los bordes entre elementos.

Es relativamente fácil construir estas funciones para elementos bidimensionales


rectangulares.

Por ejemplo, para un elemento con 4 nudos (con referencia al centroide):

1 x x  y y
N i ( x, y ) = 1 + i  1 + i  i = 1,2,3,4
4 a a  b b

5-8
Y Y

4 3 4 7 3

b b
8 6
X X
b b
1 2 1 5 2

a a a a

Y para un elemento con 8 nudos (con referencia al centroide):

1 x x  y y  x x y y 
Ni = 1 + i 1 + i  i + i − 1 i = 1,2,3,4
4 a a  b b  a a b b 
1   x  
2
Ni = 1−   1 + y i y  i = 5,7
2   a  
 b b

x x   y  
2
1
Ni = 1 + i 1 −    i = 6,8
2 a a   b  

Estos son los dos elementos más simples de la familia de Serendip.

Las funciones de interpolación para los correspondientes elementos tridimensionales son


similares.

5-9
En subregiones triangulares las funciones de interpolación resultan más simples si se
escriben en coordenadas de área, L1, L2, L3.. Un punto en el interior de un triángulo
permite definir tres triángulos parciales, cuyas áreas divididas entre el área total del
triángulo son justamente las Li:

Ai
Li =
A
En consecuencia:

L1 + L2 + L3 = 1 .

Las coordenadas x, y se relacionan con las


coordenadas de área mediante:
3 3

∑L x
i =1
i i =x ∑L y
i =1
j j =y

Por otro lado si el origen de coordenadas x, y está en el centroide del triángulo:

1 bi c
Li = + x+ i y
3 2A 2A
donde:
bi = y j − y k
ci = x k − x j i, j , k son permutaciones cíclicas de 1,2,3 .

Para un elemento con 3 nudos, el valor de una función, f ( x, y ) , puede obtenerse por
interpolación lineal de los tres valores nodales f 1 , f 2 , f 3 :
3
f ( x, y ) = ∑L f
i =1
i i 3

es decir, N i ( x, y ) = Li ( x, y ) .
En forma similar, para un elemento con 6 nudos 2
(nudos adicionales al centro de cada lado), f ( x, y )
puede obtenerse por interpolación cuadrática de
1
los valores nodales.
N i = Li (2 Li − 1) i = 1,2,3

N 4 = 4 L1 L2 3

N 5 = 4 L 2 L3 5
N 6 = 4 L3 L1 6
2
(Los elementos triangulares de mayor orden son en
general poco útiles). Expresiones análogas
4
pueden escribirse fácilmente para los 1
correspondientes elementos tridimensionales.

Para elementos más complejos, la construcción de funciones de interpolación puede


simplificarse si se efectúa previamente un "mapeo" adecuado.

5 - 10
Por ejemplo, para el hexaedro de Serendip con 20 nudos:
20
f ( ξ, η, ς ) = ∑ N ( ξ, η, ς ) ⋅ f
i =1
i i

Ni = 1
8
( 1 + ξ i ξ )( 1 + η i η )( 1 + ς i ς )( ξ i ξ + η i η + ς i ς − 2 ) i = 1, L8

N i = g ( ξ, ξ i ) g ( η, η i ) g ( ς, ς i ) i = 9, L 20

donde: g ( ξ, ξ i ) = 1
2
(1 + ξ ξi ) si ξ i = ±1
g ( ξ, ξ i ) = 1 − ξ( 2
) si ξ i = 0 .

Las coordenadas x, y, z pueden asociarse con las ξ, η, ς usando las mismas funciones
de interpolación:
20
x= ∑ N ( ξ, η, ς ) x
i =1
i i

20
y= ∑ N ( ξ, η, ς ) y
i =1
i i

20
z= ∑ N ( ξ, η, ς ) z
i =1
i i

en tal caso se dice que el elemento es isoparamétrico. También puede hablarse de


elementos sub-paramétricos o hiper-paramétricos, si las funciones utilizadas en el
mapeo son de orden menor o mayor que aquellas con que se interpola la función, f .

Nótese que también es posible hacer mapeos con las coordenadas de área.

5 - 11
5.3. Derivación
Dados f 1 ≈ f ( x1 ), f 2 ≈ f ( x 2 ) K f n ≈ f ( x n ) puede obtenerse una aproximación, g (x ) ,
a la función f (x) , tal que g ( x i ) = f ( x i ) para i = 1,2, K n . Este es el problema de
interpolación considerado en la sección 5.2. Entonces, las derivadas de f (x) podrían
aproximarse, localmente, por aquellas de g (x ) . Sin embargo, debe tenerse presente
que pequeños errores en los valores de la función pueden amplificarse enormemente al
calcular las derivadas. A mayor orden de la derivada, mayores son las probabilidades de
errores de cancelación.

En lo que sigue se considera el caso de abscisas x1 , x 2, K x n con espaciamiento


uniforme, h . Para h suficientemente pequeño:

f ( x i ± h ) = f ( x i ) ± h f ′( x i ) + 12 h 2 f ′′( x i ) ± 16 h 3 f ′′′( x i ) + K

hf ′( x i ) = f ( x i + h) − f ( x i ) − 12 h 2 f ′′( x i ) − K

de donde, con la notación f i ( m ) = f ( m)


( xi ) :
f i +1 − f i ∆f
f i′ = + O ( h) = i + O ( h)
h h
y en forma similar se tienen:
f i − f i −1
f i′ = + O( h)
h
f i+ 1 − f i− 1
f i′ = 2 2
+ O( h 2 )
h
Incluyendo puntos más alejados pueden obtenerse expresiones del tipo:

− 13 f i −1 − 12 f i + f i +1 − 16 f i + 2
f i′ = + O(h 3 )
h
Pero las expresiones más simples son las más frecuentemente utilizadas.

Considérese por ejemplo los valores:


∆f k f k +1 − f k −1
xk f ( xk ) f ′( x k )
h 2h
0. 1.000 000 0.049 958 0.
0.1 0.995 004 0.149 376 0.099 667 0.099 833
0.2 0.980 067 0.247 301 0.198 338 0.198 669
0.3 0.955 336 0.342 755 0.295 028 0.295 520
0.4 0.921 061 0.434 784 0.388 770 0.389 418
0.5 0.877 582 0.479 426

Igualmente, f ′′(x ) puede ser aproximada por diferencias finitas de segundo orden:

f ′′( xi ) = f i′′=
f i +1 − 2 f i + f i −1
( )
+ O h2 = δ2 fi + O h2 ( )
h2
Por ejemplo, para la función de la tabla precedente:
0.995004 − 2 (0.980067) + 0.955036
f ′′(0.2) ≈ ≈ 0.97925
(0.1) 2

5 - 12
El valor exacto es 0.980067...

y las derivadas de orden superior pueden ser aproximadas por las correspondientes
diferencias finitas.
(m) ∆m f i
Por ejemplo: fi ≈
hm
(m) δm f
fi ≈ mi
h
Cuando se tienen 2 o más variables independientes, x, y, t L y mallas ortogonales de
puntos uniformemente espaciados, las derivadas parciales pueden aproximarse por
diferencias finitas trabajando separadamente con cada variable. Así por ejemplo, para
∆x = ∆y = h , el Laplaciano:
∂ 2u ∂ 2 u
∇ 2u = +
∂ x2 ∂ y2
en un punto de coordenadas xi , y j puede aproximarse por:

u i +1, j − 2u i , j + u i −1, j u i , j +1 − 2 u , j + u i , j +1
∇ 52 u ij = 2
+
h h2
( )
con un error de O h 2 Nótese que en ∇ 2 u y ∇ 52 u ij el símbolo ∇ no es el operador
para diferencias hacia atrás.

Al utilizar elementos finitos, las derivadas se obtienen derivando exactamente las


n n
∂f ∂Ni
funciones de interpolación. Así, si: f = ∑
i =1
N i ( x, y , z ) f i se tiene:
∂x
= ∑ ∂x
i =1
fi .

Algunos comentarios adicionales relativos al uso de elementos isoparamétricos son aquí


necesarios. Para elementos isoparamétricos las funciones de interpolación N i están
expresadas como función de ξ, η, ς L :
n
f = ∑ N ( ξ, η, ς ) f
i =1
i i

y las coordenadas ξ, η, ς L están relacionadas con las x, y , z L mediante las mismas


funciones de interpolación, v.g.:
n
x= ∑ N (ξ, η, ς) x
i =1
i i

Excepto para casos particulares de geometría muy simple, es prácticamente imposible


obtener expresiones explícitas para las ξ, η, ς L en función de las x, y, z L y lo mismo
puede decirse de las funciones de interpolación, N i ( ξ, η, ς ) . Como consecuencia, en
general es fácil obtener derivadas con relación a las ξ, η, ς L , pero comparativamente
∂f ∂f ∂f
difícil obtener expresiones explícitas para las , , , L . Su evaluación numérica
∂x ∂ y ∂z
es, sin embargo, muy simple. Teniendo en cuenta que:

5 - 13
 ∂f   ∂x ∂y ∂z   ∂f 
 ∂ξ   ∂ξ ∂ξ ∂ξ
  
    ∂x 
 ∂f   ∂x ∂y ∂z   ∂f 
   =  ∂y 
 ∂η   ∂η ∂η ∂η   
 ∂f   ∂x ∂y ∂z   ∂f 
 ∂ς   ∂ς ∂ς ∂ς   ∂z 
  
∂f ∂f ∂f
O en notación más compacta: =J . Los elementos de la matriz J y de se
∂r ∂x ∂r
obtienen con expresiones e la forma:
n
∂x ∂ Ni
∂ξ
= ∑i =1
∂ξ
xi

M
n
∂z ∂ Ni
∂η
= ∑i =1
∂η
zi

Por otro lado, al obtenerse la matriz J puede hacerse el cambio de variables:

dx dy dz = det( J ) ⋅ d ξ d η d ς
lo que facilita enormemente las integrales, ya que los límites de integración son en cada
caso − 1 y + 1 .

5.4. Ecuaciones de Diferencias


Una fórmula de recursión del tipo: yn + k = f ( yn , yn +1 , yn + 2 , K , yn + k −1 , n ) se denomina
ecuación de diferencias de orden k . La solución de ecuaciones de diferencias tiene
cierta analogía con la solución de ecuaciones diferenciales ordinarias.

La ecuación
y n + k + a1 y n + k −1 + K + a j y n + k − j + K + a k y n = 0

es una ecuación de diferencias lineal, homogénea, de orden k , con coeficientes


j
constantes. Esta ecuación queda satisfecha por y j = cr . Los posibles valores de r
corresponden a las raíces de la ecuación característica:

p(r ) = r k + a1 r k −1 + a 2 r k − 2 + K + a k −1 r + a k = 0 .

Si la ecuación característica tiene k raíces distintas r1 , r2 , K rk la solución general de la


ecuación de diferencias (lineal, homogénea, con coeficientes constantes) puede
escribirse:
j j j j
y j = c1 r1 + c 2 r2 + c 3 r3 + K c k rk

Lo cual puede probarse por simple sustitución. Si en cambio se tiene una raíz de
j
multiplicidad m , deben considerarse términos q ( j ) r , donde q ( j ) es un polinomio de
orden m − 1 . En cualquier caso la solución tiene k constantes independientes.

Considérese por ejemplo: y n + 2 − 5 y n +1 + 6 y n = 0 , con condiciones iniciales y 0 = 0 ,


y1 = 1 . Por recursión con y n + 2 = 5 y n +1 − 6 y n se obtienen:

5 - 14
y 2 = (5)(1) − (6)(0) = 5
y 3 = (5)(5) − (6)(1) = 19
y 4 = (5)(19) − (6)(5) = 65
y 5 = (5)(65) − (6)(19) = 211

Por otro lado, la ecuación característica es en este caso r 2 − 5r + 6 = 0 , cuyas raíces


son r1 = 2 , r2 = 3 . La solución general es: y n = c1 ⋅ 2 n + c 2 ⋅ 3 n y dadas las condiciones
iniciales:
n=0 c1 + c 2 = 0
n =1 2c1 + 3c 2 = 1
se obtienen: c1 = −1 y c 2 = 1 , es decir y n = 3 n − 2 n .

Por ejemplo, y 4 = (3) 4 − ( 2) 4 = 81 − 16 = 65 .

En cambio, y n + 3 − 3 y n + 2 + 4 y n = 0 tiene la ecuación característica r 3 − 3r 2 + 4 = 0


cuyas raíces son r1 = −1 , r2 = r3 = 2 , y su solución general es entonces:
y n = c1 (−1) n + (c 2 + c3 n)(2) n .
La fórmula de recursión para los polinomios de Tchebicheff:
T n +1 ( x) − 2 xTn ( x) + T n −1 ( x ) = 0
es también una ecuación de diferencias lineal, homogénea, de orden 2, con coeficientes
constantes (porque 1, -2x, 1 no son función de n). Su ecuación característica es:
r 2 − 2 x r + 1 = 0 , con raíces r = x ± i 1 − x 2 . Haciendo el cambio de variable x = cos θ
se tiene: r = cos θ ± i sen θ = e ± iθ . La solución general de la ecuación de diferencias es

( )
Tn = c1 e +iθ
n
( )
+ c 2 e −iθ
n
= c1 e inθ + c 2 e −inθ . Con las condiciones iniciales T0 ( x ) = 1 ,
T1 ( x ) = x = cos θ se obtienen c1 = c 2 = 1
2
y finalmente Tn ( x ) = 12 e inθ + 12 e − inθ = cos nθ ,
donde θ = arc cos x .

La solución de una ecuación de diferencias lineal no homogénea puede obtenerse


sumando a la solución de la correspondiente ecuación homogénea una solución
particular. Los ejemplos siguientes son ilustrativos:

Considérese: y n +1 − 2 y n = a n , con la condición inicial y 0 = 1 . La correspondiente


ecuación homogénea, y n +1 − 2 y n = 0 , tiene la ecuación característica r − 2 = 0 y su
solución es entonces y n = c( 2) n . Para la solución particular puede tantearse una
solución de la forma y n = αa n , de donde αa n +1 − 2αa n = a n y por lo tanto α = (a − 2 )
−1

(esto es, suponiendo que a ≠ 2 ). La solución general es: y n = a (a − 2 ) + c( 2) . Con


n n

la condición inicial se halla c = 1 − (a − 2 ) y finalmente y n = 2 n + a n − 2 n (a − 2 )


−1
( )
(para a ≠ 2 ). Para a = 2 la regla de L' Hospital da: y n = 2 n + n 2 n −1 .

Para la ecuación de diferencias y n + 2 − 5 y n +1 + 6 y n = 2n + 3( −1) n puede considerarse la


solución particular: y = an + b + c (−1) n . Sustituyendo esta expresión en la ecuación e
identificando coeficientes se obtienen: a = 1 , b = 3 2 , c = 1 4 . Por otro lado, la ecuación
característica es: r 2 − 5r + 6 = 0 con raíces r1 = 2 , r2 = 3 . La solución general resulta
n
entonces y n = n + 3
2 + 1
4 ( −1) + c1 ( 2) n + c 2 (3) n .

5 - 15
5.5. Integración Numérica (Cuadratura)
La evaluación de una integral definida:
b

∫ a
f ( x) dx

en forma explícita es a veces muy difícil o prácticamente imposible. En tales casos


puede hacerse una aproximación numérica tal como las que se mencionan en esta
sección.

5.5.1 Regla de los Trapecios, Regla de Simpson y otras fórmulas interpolatorias.

Una posible forma de resolver el problema es aproximando, localmente, la función,


f ( x ) , por otra, g ( x ) , más simple de integrar.
En la Regla de los Trapecios se aproxima f ( x ) con segmentos de recta y entonces:
x1

∫ x0
f ( x) dx ≈ 1
2
(x1 − x0 ) [ f ( x0 ) + f ( x1 )]

Esta expresión puede generalizarse para un intervalo [x 0 , x n ] . Considerando abscisas


con espaciamiento uniforme x i = x i −1 + h , para los que se tiene valores de la función
f i = f ( x i ) puede hacerse interpolaciones lineales en cada subintervalo [x i , x i +1 ] para
obtener:
xn h
∫ x0
f ( x) dx ≈ T (h ) =
2
( f 0 + 2 f1 + 2 f 2 + K + 2 f n−1 + f n )

El error de truncación puede estimarse más fácilmente considerando primero el sub-


intervalo [− h 2 , + h 2] para el cual (siendo h pequeño):
IV
f ( x ) = f ( 0 ) + x f ′( 0 ) + 1
2
x 2 f ′′(0) + 16 x 3 f ′′′(0) + 1
24
x4 f ( 0) + K
e integrando:
+h h3 h5

2 IV
f ( x) dx = h ⋅ f (0) + f ′′(0) + f ( 0) + L
−h
2 24 1920

Por otro lado:


h h2 h3 h4
f (± h 2 ) = f 0 ± f ′(0) + f ′′(0) ± f ′′′(0) + f IV
(0 ) ± L
2 8 48 384
+h h  h  h  h
3
h5

2 IV
∴ f ( x) dx =  f   + f  −  − f ′′(0) − f ( 0) K
−h
2 2  2  2  12 480

Si h es pequeño el error local de truncación es de O h 3 . Sin embargo, para integrar ( )


entre límites a y b se requieren (b − a ) h subintervalos (este número es inversamente
proporcional a h ) y el error global es entonces de O h 2 . ( )
En la Regla de Simpson la aproximación local se hace interpolando con parábolas de 2°
grado. Considerando puntos con abscisas uniformemente espaciadas:
5
h
( f 0 + 4 f1 + f 2 ) − h f
x


2 IV
f ( x) dx = ( x1 ) + K
x0 3 90
y en general, considerando un número par de subintervalos:

5 - 16
h
( )
xn

∫ x0
f ( x) dx =
3
( f 0 + 4 f 1 + 2 f 2 + 4 f 3 + 2 f 4 + K + 2 f n −2 + 4 f n −1 + f n ) + O h 4

Esta fórmula es exacta cuando f ( x) es un polinomio de hasta tercer grado.


5 dx 1
Considérese por ejemplo:
∫ 1 x
= Ln 5 = 1.609 437 912 Para la función f ( x) =
x
se

obtienen los valores siguientes:


x f (x) x f (x)
1.00 1. 3.25 0.3076 9231
1.25 0.8 3.50 0.2857 1429
1.50 0.6666 6667 3.75 0.2666 6667
1.75 0.5714 2857 4.00 0.25
2.00 0.5 4.25 0.2352 9412
2.25 0.4444 4444 4.50 0.2222 2222
2.50 0.4 4.75 0.2105 2632
2.75 0.3636 3636 5.00 0.2
3.00 0.3333 3333
5 dx
y utilizando la regla trapezoidal se obtienen aproximaciones a
∫1 x
.

Por ejemplo con h = 1 :


5 dx
∫1 x
≈ 1
2
(1) [1. + 2(0.5 + 0.333K + 0.25) + 0.2] = 1.6833K

y en forma similar
h T (h )
1.0 1.683 333
0.5 1.628 968
0.25 1.614 406
....

Con la regla de Simpson se obtienen:


h S (h )
0.5 1.610846
0.25 1.609552
0.125 1.609446

Las fórmulas de los trapecios y de Simpson corresponden al grupo de fórmulas de


Newton - Cotes de intervalo cerrado. Algunas otras fórmulas de este grupo son la regla
de Simpson de los 3 8 :

3h
( )
x

∫ ( f 0 + 3 f1 + 3 f 2 + f 3 ) + O h 7
3
f ( x) dx =
x0 8
y la regla de Bode:

2h
( )
x

∫ (7 f 0 + 32 f1 + 12 f 2 + 32 f 3 + 7 f 4 ) + O h 9
4
f ( x ) dx =
x0 45

5 - 17
También pueden obtenerse fórmulas que utilizan puntos uniformemente espaciados pero
no incluyen los valores de la función en uno o en los dos límites de la integral. Estas son
las fórmulas de Newton - Cotes de intervalo abierto. Por ejemplo:
3h
( )
x

∫ ( f1 + f 2 ) + O h 3
3
f ( x) dx =
x0 2
4h
( )
x

∫ (2 f1 − f 2 + 2 f 3 ) + O h 5
4
f ( x) dx =
x0 3

5.5.2. Extrapolación de Richardson y el Método de Romberg


b
Si T (h ) es la aproximación de
∫ a
f ( x ) dx obtenida de la aplicación de la regla de los
trapecios con intervalo h , puede escribirse:
b
T (h) = ∫ a
f ( x) dx + a1h 2 + a2 h 4 + a3 h 6 + K

∫ f ( x ) dx + a1 (2h ) + a 2 (2h ) + a 3 2h 6 + K
2 4
T (2h) =
a

y entonces:

4T (h) − T ( 2h) b

3
= ∫ a
f ( x ) dx + b2 h 4 + b3 h 6 + K

b
es decir 1
3
(4 T (h) − T (2h)) es una aproximación a ∫ a
f ( x) dx con un error de truncación

( )
de O h 4 , menor que el de T (h ) o T (2h ) . En forma similar, para la regla de Simpson:
b
S ( h) = ∫ a
f ( x) dx + b2 h 4 + b3 h 6 + b4 h 8 + K

b
S ( 2h) = ∫ a
f ( x) dx + b2 (2h) 4 + b3 (2h) 6 + b4 (2h) 8 + K

y entonces:

(2)4 S (h) − S (2h) = b f ( x) dx + c h 6 + c h 8 + K


(2)4 − 1 ∫a 3 4

es una aproximación mejor a la integral, con un error global de O h 6 . Estos son dos ( )
ejemplos de la extrapolación de Richardson.
5 dx
Para la integral
∫1 x
considerada anteriormente:

T (1,0 ) = 1.683 333


T (0,5) = 1.628 968 1
3
(4 T (0.5) − T (1.0)) = 1.610 846 = S (0.5)
T (0,25 ) = 1.614 406 1
3
(4 T (.25) − T (0.5)) = 1.609 552 = S (0.25)

Obsérvese que estos resultados coinciden con los obtenidos de la regla de Simpson.

5 - 18
El método de Romberg considera inicialmente los resultados T1. j , de aplicar la regla de
los trapecios con distintos grados de subdivisión, h j = (b − a ) 2 j . Estas aproximaciones
2
( )
tienen errores de truncación de O h j . No es necesario rehacer todos los cálculos para
cada nueva subdivisión, pudiéndose emplear la expresión:

2 j −1
T1, j = 1
T
2 1, j −1
+ hj ∑ f (a + h i )
i =1
j

∆i = 2

Usando la extrapolación de Richardson se obtienen nuevas aproximaciones con errores


(
de O h 2j i + 2 : )
(2)2i Ti , j +1 − Ti , j
Ti +1, j =
(2)2i − 1
5 dx
Considérese nuevamente la integral:
∫ 1 x
. Con la regla de los trapecios se obtienen:

2 j −1

j
2
4
hj = j ∑ f (a + i h )
i =1
j T1, j
∆i = 2

0 4. 2.4
1 2. 0.333 333 1.866 667
2 1. 0.75 1.683 333
3 0.5 1.574 603 1.628 968
4 0.25 3.199 689 1.614 406
5 0.125 6.427 862 1.610 686

Y de las sucesivas extrapolaciones:


j T2, j T3, j T4, j T5, j T6, j
0 1.688 889 1.617 777 1.609 966 1.609 454 1.609 438
1 1.622 222 1.610 088 1.609 456 1.609 438
2 1.610 847 1.609 466 1.609 438
3 1.609 552 1.609 439
4 1.609 446

5.5.3. Integración con puntos no equidistantes

Las fórmulas de integración con puntos equidistantes consideradas en la sección 5.5.1:


b

∫ f (x )dx ≈ c f (x ) + c
a
1 1 2 f ( x 2 ) + c3 f (x3 ) + L + c m f (x m )

con m puntos de integración y m parámetros c1 , c 2 L c m permiten integrar exactamente


polinomios de grado m − 1 (y excepcionalmente de grado m , como en la regla de
Simpson). Si en cambio se toman puntos no equidistantes, para m puntos de
integración se tienen 2 m parámetros: w1 , w2 L wm y x1 , x 2 L x m lo que permite integrar
exactamente polinomios hasta de grado 2 m − 1 . Esta forma de integración numérica se
denomina de Gauss.

5 - 19
Con propósitos ilustrativos, considérese la fórmula de integración de Gauss con 3
puntos:
b

∫ a
f (x ) dx ≈ w1 f (x1 ) + w2 f (x 2 ) + w3 f ( x3 )

Esta expresión será exacta si f (x ) es un polinomio de grado igual o menor que 5 (es
decir, 2(3)-1) ¿Cuáles deben ser las abscisas x1 , x 2 , x 3 ? Esto se considera brevemente
en lo que sigue. El polinomio g ( x ) = ( x − x1 )( x − x 2 )( x − x 3 ) , cuyas raíces son
precisamente las abscisas de integración, es de tercer grado. En consecuencia la
integración:
b

∫ a
g ( x ) dx = w1 g ( x1 ) + w2 g ( x 2 ) + w3 g ( x3 ) = 0

es exacta. Lo mismo puede decirse de las integrales de los polinomios x g ( x ) y x 2 g ( x )


(que son de grado 4 y 5, respectivamente):
b

∫ a
x g ( x) d x = w1 x1 g ( x1 ) + w2 x 2 g ( x 2 ) + w3 x3 g ( x 3 ) = 0

∫ a
x 2 g ( x) d x = w1 x12 g ( x1 ) + w2 x 22 g ( x 2 ) + w3 x32 g ( x3 ) = 0

Es decir, x1 , x 2 , x 3 son los 3 ceros del polinomio g ( x ) que satisface las condiciones de
ortogonalidad:
b

∫ g ( x) dx = 0
a
b

∫ x g ( x) dx = 0
a
b

∫ x g ( x) dx = 0
2
a

Con el cambio de variable x = 1


2
(b − a ) z + 12 (b + a ) se tiene que:
b +1

∫ a
f (x ) dx = ∫ −1
F ( z ) dz = w1 F (z1 ) + w2 F ( z 2 ) + w3 F (z 3 )

y en tal caso las abscisas z i son los ceros del polinomio que satisface las condiciones:
+1

∫−1
P3 ( z ) dz = 0
+1

∫−1
z P3 ( z ) dz = 0
+1

∫−1
z 2 P3 ( z ) dz = 0

P3 ( z ) es el polinomio de Legendre de grado 3. En general, cuando se consideran m


puntos de integración las z i son los ceros del polinomio de Legendre de grado m ,
Pm ( z ) . En la tabla siguiente se indican algunos de estos polinomios y sus ceros:

5 - 20
m Pm ( z ) zi

1 z 0.
2 1
2
(3z − 1)
2 ± 0.57735K
3 1
2
(5z − 3z )
3 0., ± 0.77459K

4 1
8
(35z − 30z4 2
+3 ) ± 0.33998K , ± 0.86113K
5 1
8
(63z − 70z5 3
+ 15 z ) 0., ± 0.53846K , ± 0.90617 K

para estos polinomios: ( n + 1) Pn +1 ( z ) − ( 2n + 1) zPn ( z ) + n Pn −1 ( z ) = 0 .

Para determinar los "pesos" correspondientes w1 , w2 L wm puede considerarse que:


+1

∫ F ( z)dz = w F ( z ) + w F ( z
−1
1 1 2 2) + K + wm F ( z m ) = 0

debe ser exacta para F ( z ) = 1 , F ( z ) = z ,... F ( z ) = z m −1 . En general:

2
wi = .
(1 − z i2 ) Pm′ ( z i )

Las raíces, z i , de Pm ( z ) y los correspondientes pesos, wi , pueden hallarse en tablas


de Abramovitz y Según1 u otras similares. Por ejemplo, para m=5:

zi wi
0. 0.56888 88888 88889
± 0.53846 9310105683K 0.47862 86704 99366
± 0.90617 98459 38664 K 0.23692 68850 56189

Siendo conocidas estas abscisas y pesos:

[ ]
b

∫ f ( x) dx =
a
1
2
(b − a ) w1 f ( x1 ) + w2 f ( x 2 ) + K + wm f ( x m )

donde:
x i = 12 (b − a ) z i + 12 (b + a )

Estas son las fórmulas de integración de Gauss - Legendre.


2 dx
Considérese por ejemplo

1 x
= Ln 2 = 0.6931 4718 . En este caso a = 1, b = 2 ,

x i = ( z i + 3) / 2 y se tiene:
i zi xi f (x i ) wi
1 0. 1.5 0.666667 0.568889
2 -0.538469 1.230766 0.812502 0.478629
3 0.538469 1.769235 0.565216 0.478629
4 -0.906180 1.046910 0.955192 0.236927
5 0.906180 1.953090 0.512009 0.236927

1
Véase: "Handbook of Mathematical Functions".- M. Abramowitz e I.A. Segun, editores. Dover Publications
Inc., N.Y. 1965

5 - 21
5

∑ w f ( x ) = 0.6931474 .
2
y finalmente

1
1
x
dx ≈ 12 (2 − 1)
i =1
i i

Algunas de las múltiples variantes de integración Gaussiana se mencionan a


continuación (las correspondientes abscisas, xi , y pesos, wi , también pueden hallarse
en tablas):

Fórmula de Radau:
n −1
+1
 2 
∫ −1
f ( x)dx ≈  2
n
 f (−1) +

∑ w f (x )
i =1
i i

(Pn −1 ( x) + Pn ( x))
Las abscisas son los ceros de
(1 + x )
(1 − xi )
Los correspondientes pesos resultan: wi =
(nPn −1 ( xi )) 2

Fórmula de Lobatto:
n −1
+1 2
∫ −1
f ( x) dx ≈
n(n − 1)
[ f (1) + f (− 1)] + ∑ w f (x )
i =1
i i

La abscisa xi es el (i − 1) cero de Pn′−1 ( x )


0

Los pesos, w i , están dados por wi = 2[n(n − 1)] [Pn −1 (xi )]−2 .
−1

Integración de Gauss - Laguerre:


∞ n

∫ 0
e − x f ( x)dx ≈ ∑ w f (x )
i =1
i i

Las abscisas son los ceros de los polinomios de Laguerre, Ln ( x)


Los pesos resultan: wi = (n!) xi [(n + 1) Ln +1 ( x i )] .
2 −2

Integración de Gauss - Tchebicheff:


n
+1 f ( x) π
∫ −1
1− x2
dx ≈
n ∑ f (x )
i =1
i

En este caso se tienen abscisas x i = cos i − ( 1


2
)π .
n

5.5.4. Generalización a dos o más dimensiones.

Hasta el momento solo se ha considerado la integración en una dimensión. El proceso


para evaluar numéricamente integrales múltiples es análogo al proceso analítico, es
decir, se integra en una variable a la vez y en cada una de estas etapas las otras
variables se consideran como constantes. Por ejemplo:
n n m

∫∫ f ( x, y ) dx dy ≈ ∑ ∫
i =1
wi f ( x i , y ) dy ≈ ∑∑ w w
i =1 j =1
i j f ( xi , y j )

5 - 22

También podría gustarte