Está en la página 1de 37

Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing.

Rick Delgadillo Ayala | 1

Universidad Nacional de San Cristóbal de Huamanga

Escuela de Formación Profesional de Ingeniería Civil

Métodos Numéricos Aplicados a la


Ingeniería Civil (IC-343)

Interpolación y Aproximación de
Funciones
Mg. Ing. Rick Milton Delgadillo Ayala
e-mail: rick.delgadillo@unsch.edu.pe

Ayacucho – Perú
2017

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 2

Definición
Un polinomio de grado n es una expresión de la forma:
P(x) = anxn + an-1xn-1 + ... +a1x + a0
Donde an <> 0

Teorema (teorema de aproximación de Weierstrass)


Suponga que f está definida y es continua en [a, b]. Para e > 0
existe un polinomio P definido en [a, b], con la propiedad de
que
|f(x) – P(x)| < e, para toda x en [a, b]

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 3

Desarrollo en series de Taylor


Sea f(x) = ex
Desarrollando en serie de Taylor alrededor de x = 0

P0(x) = 1 P1(x) = 1 + x P2(x) = 1 + x + x2/2


P3(x) = 1 + x + x2/2 + x3/6 P4(x) = 1 + x + x2/2 + x3/6 + x4/24
P5(x) = 1 + x + x2/2 + x3/6 + x4/24 + x5/120

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 4

Valores de ex
Valores de las aproximaciones de ex con polinomios de
Taylor

x p0(x) p1(x) p2(x) p3(x) p4(x) p5(x) exp(x)


-2.0 1.00000 -1.00000 1.00000 -0.33333 0.33333 0.06667 0.13534
-1.5 1.00000 -0.50000 0.62500 0.06250 0.27344 0.21016 0.22313
-1.0 1.00000 0.00000 0.50000 0.33333 0.37500 0.36667 0.36788
-0.5 1.00000 0.50000 0.62500 0.60417 0.60677 0.60651 0.60653
0.0 1.00000 1.00000 1.00000 1.00000 1.00000 1.00000 1.00000
0.5 1.00000 1.50000 1.62500 1.64583 1.64844 1.64870 1.64872
1.0 1.00000 2.00000 2.50000 2.66667 2.70833 2.71667 2.71828
1.5 1.00000 2.50000 3.62500 4.18750 4.39844 4.46172 4.48169
2.0 1.00000 3.00000 5.00000 6.33333 7.00000 7.26667 7.38906

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 5

Expansión de Taylor para 1/x


n
f k  1 n
Pn x    x  1    1k x  1k
k

k 0 k! k 0

n 0 1 2 3 4 5 6 7
Pn(3) 1 -1 3 -5 11 -21 43 -85

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 6

Interpolación polinomial de Newton

Revisaremos algunos casos: lineal, de segundo grado y de


tercer grado.

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 7

Interpolación lineal
Utilizando triángulos semejantes

f1 x   f  x0  f  x1   f  x0 
 f(x)
x  x0 x1  x0

Reordenando
f(x1)
f  x1   f  x0  f1(x)
f1  x   f  x0   x  x0 
x1  x0
f(x0)

x0 x x1

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 8

Ejemplo
Estimar ln 2 mediante interpolación lineal si ln1 = 0 y ln 6 = 1.791759 y ln 4 = 1.386294

1.791759 0 f  x1   f  x0 
f1 2  ln1  2  1  0.3583519 f1  x   f  x0   x  x0 
6 1 x1  x0
Valor real ln 2 = 0.6931472
1.386294 0
f1 2  ln1  2  1  0.4620981 Error relativo porcentual = 33.3%
4 1
2.5
f(x) = ln x
2

1.5

Valor verdadero
1

f1(x)
0.5

Estimaciones lineales
-0.5

-1
0 1 2 3 4 5 6 7 8
Escuela de Formación Universidad Nacional de
Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 9

Interpolación cuadrática
Polinomio cuadrático
f2(x) = b0 + b1(x – x0) + b2(x – x0)(x – x1) (1)
simplificado
f2(x) = b0 + b1x – b1x0 + b2x2 + b2x0 x1 – b2xx0 – b2xx1
Podemos escribirlo como
f2(x) = a0 + a1x + a2x2
Donde
a0 = b0 – b1x0 + b2x0 x1, a1 = b1 – b2x0 – b2x1, a2=b2
Podemos evaluar b0, b1 y b2 sustituyendo x0, x1 y x2 en la ecuación (1), se obtiene
b0 = f(x0)
f  x2   f  x1  f x1   f x0 

f  x1   f  x0  x2  x1 x1  x0
b1  b2 
x1  x0 x2  x0

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 10

ejemplo 2
Calculemos ln 2 con ln 4 y ln 6, los punto que se conocen son:
x0 = 1 f(x0) = 0 f(x) = ln x
x1 = 4 f(x0) = 1.386294
2.5

x0 = 6 f(x0) = 1.791759
2
Aplicando las ecs. anteriores
Valor verdadero
1.5
b0 = 0
b1 = (1.386294 – 0)/(4 – 1) = 0.4620981 1

b2 = ((1.791759 – 1.386294) 0.5

/(6 – 4) – 0.4620981)/(6 – 1) 0
Estimación cuadrática
= – 0.0518731 -0.5

El polinomio es Estimación lineal


-1
0 1 2 3 4 5 6 7 8
f2(x) = 0.4620981(x – 1) – 0.0518731(x – 1)(x – 4)

Valor real ln 2 = 0.6931472


f2(2) = 0.5658444
Error relativo porcentual = 18.4%
Escuela de Formación Universidad Nacional de
Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 11

Forma general
Polinomio general
fn(x) = b0 + b1(x – x0) +...+ bn(x – x0)(x – x1)... (x – xn–1)
Los coeficientes se calculan con
b0 = f(x0)
b1 = f [x1, x0]
b2 = f [x2, x1, x0]

bn = f [,xn, xn–1, ..., x1, x0]


Donde los paréntesis cuadrados se denominan diferencias divididas finitas.
La n-ésima diferencia dividida finita es:

f xn , xn 1 ,..., x1   f xn 1 , xn  2 ,..., x0 


f xn , xn 1 ,..., x1 , x0  
xn  x0

Se conoce como polinomio de interpolación de Newton en diferencias divididas.


Escuela de Formación Universidad Nacional de
Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 12

ejemplo 3
Calculemos ln 2 con ln 0, ln 4, ln 5 y ln 6, los punto que se conocen son:
x0 = 1 f(x0) = 0
x1 = 4 f(x1) = 1.386294
x2 = 6 f(x3) = 1.791759
x3 = 5 f(x2) = 1.609438
primeras diferencias
f [x1, x0] = (1.386294 – 0)/(4 – 1) = 0.4602981
f [x2, x1] = (1.791759 – 1.386294)/(6 – 4) = 0.2027326
f [x3, x2] = (1.609438 – 1.791759)/(5 – 6) = 0.1823216
Segundas diferencias
f [x2, x1, x0] = (0.2027326 – 0.4602981)/(6 – 1) = –0.05187311
f [x3, x2, x1] = (0.1823216 – 0.2027326)/(5 – 4) = –0.02041100
tercera diferencia
f [x3, x2, x1 , x0] = (–0.02041100–(–0.05187311))/(5 – 1) = 0.007865529
Polinomio f3(x) = 0 + 0.4602981(x – 1) –0.05187311(x – 1) (x – 4) + 0.007865529(x – 1) (x – 4) (x – 6)
Valor calculado con el polinomio f3(2) = 0.6287686

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 13

Ejemplo 3 (cont.)
f3(x)

2.5

Valor verdadero
1.5

1
f(x) = ln x
0.5

-0.5

Estimación cúbica
-1
0 1 2 3 4 5 6 7 8

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 14

Estimación del error


Para estimar el error requerimos de un datos más (xn+1). La
siguiente fórmula puede utilizarse para estimar el error.

Rn = f [,xn+1, xn, ..., x1, x0](x – x0) (x – x1)... (x – xn)

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 15

Interpolación y polinomio de
Lagrange
Se trata de encontrar un polinomio de grado n que pase por los
puntos (x0, f(x0)), (x1, f(x1)), ... (xn, f(xn)), se construye un cociente
Ln,k(xk) con la propiedad de que
Ln,k(xi) = 0 cuando i  k y Ln,k(xk) = 1
Se requiere entonces que el numerador contenga
(x – x0) (x – x1)... (x – xk–1)(x – xk+1)... (x – xn)
El denominador debe coincidir con el numerador cuando x = xk.

Ln ,k x  
 x  x0 x  x1 x  xk 1 x  xk 1 x  xn 

n
x  xi 
xk  x0 xk  x1 xk  xk 1 xk  xk 1 xk  xn  i 0 xk  xi 
ik

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 16

N-ésimo polinomio interpolante


de Lagrange
Teorema
Si x0, x1, x2, ... xn, son n+1 números distintos y si f es una función
cuyos valores están dados en esos números, entonces existe un
polinomio de grado a lo más n, con la propiedad de que
f(xk) = P(xk) para cada k = 0, 1, 2, ...n
Este polinomio está dado por
n
P x   f  x0 Ln , 0  x     f  xn Ln ,n  x    f  xk Ln ,k  x 
k 0
donde
Ln ,k x  
 x  x0 x  x1 x  xk 1 x  xk 1 x  xn 

n
x  xi 
xk  x0 xk  x1 xk  xk 1 xk  xk 1 xk  xn  i 0 xk  xi 
ik

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 17

Aproximación a 1/x con


interpolantes de Lagrange
Usaremos x0 = 2, x1 = 2.5 y x2 = 4, para obtener un polinomio de grado
2 para 1/x. f(x0) = 0.5, f(x1)= 0.4 y f(x2) = 0.25.
Los polinomios de Lagrange son:

L x  
x  2.5x  4  x  6.5x  10
n,0 2  0.52  4
L x  
x  2x  4   4 x  24x  32
n,1 2.5  22.5  4 3

L x  
x  2x  2.5  x  4.5x  5
n,2 4  24  2.5 3

P(x) = 0.5*((x–6.5)x+10)+0.4*((–4x+24)x–32)/3+ 0.25*((x + 4.5)x+5)/3


P(x) = (0.05x – 0.425)x + 1.15 = 0.05x2 – 0.425x + 1.15
Escuela de Formación Universidad Nacional de
Profesional de Ingeniería Civil
f(3) = P(3) = 0.325 San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 18

Aproximación a 1/x con


interpolantes de Lagrange
P(x) = (0.05x – 0.425)x + 1.15
f(3) = P(3) = 0.325

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 19

El error en la interpolación de
Lagrange
El error en la interpolación de Lagrange puede calcularse
con

f n 1  x 
f x0   Px   x  x0 x  x1 ...x  xn 
n  1!

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 20

Algoritmo en Matlab
function fi = Lagran_(x, f, xi)
fi=zeros(size(xi));
np1=length(f);
for i=1:np1
z=ones(size(xi));
for j=1:np1
if i~=j, z = z.*(xi - x(j))/(x(i)-x(j));end
end
fi=fi+z*f(i);
end
return

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 21

Calculo de coeficientes de P2(x)


%Calcula el polinomio interpolante de Lagrange
de grado 2
function [a,b,c] =
Lagrange(x0,x1,x2,fx0,fx1,fx2)
t0 = (x0 - x1)*(x0 - x2);
t1 = (x1 - x0)*(x1 - x2);
t2 = (x2 - x0)*(x2 - x1);
a = fx0/t0 +fx1/t1 +fx2/t2;
b = -fx0*(x1 + x2)/t0 - fx1*(x0 + x2)/t1 -
fx2*(x0 + x1)/t2;
c = fx0*x1*x2/t0 + fx1*x0*x2/t1 + fx2*x0*x1/t2;
Escuela de Formación Universidad Nacional de
Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 22

Interpolación Inversa
Tabla de valores de f (x) = 1/x.

x 1 2 3 4 5 6 7

f (x) 1 0.5 0.3333 0.25 0.2 0.1667 0.1429

Se desea conocer el valor de x tal que f (x) = 0.3.


El problema se resuelve definiendo un polinomio de
interpolación de grado 2 con los puntos (2, 0.5), (3, 0.3333) y
(4, 0.25) y resolviendo la ecuación:
f (x) = 0.3 = 1.08333 – 0.375x + 0.041667x2
Lo que da x = 5.704158 y x = 3.295842, el valor real es 3.333.
Escuela de Formación Universidad Nacional de
Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 23

Trazadores (Splines)
Dados n +1 puntos podemos construir un polinomio de grado n
para interpolar valores dentro del intervalo.
También se pueden usar líneas rectas entre cada par de puntos
para hacer interpolación lineal entre ellos o polinomios
cuadráticos o cúbicos.
Tales interpoladores se llaman trazadores lineales, cuadráticos y
cúbicos, respectivamente.
La ventaja de los trazadores es que no presentan el efecto de
oscilación de los polinomios de alto grado.

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 24

f (x)

f (x)

f (x)

f (x)

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 25

Trazadores lineales
Para los trazadores lineales se definen rectas entre cada
intervalo para calcular los valores intermedios.
f (x) = f (x0) + m0(x – x0) x0 <= x <= x1
f (x) = f (x1) + m1(x – x0) x1 <= x <= x2

f (x) = f (x0) + mn–1 (x – x0) xn–1 <= x <= xn


Los valores de mi se calculan con:

f  xi 1   f  xi 
mi 
xi 1  xi

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 26

ejemplo
x f (x)
3.0 2.5
4.5 1.0
2
7.0 2.5
9.0 0.5 0
2 4 6 8 10

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 27

Trazadores cuadráticos
El polinomio en cada intervalo es de la forma:
fi(x) = ai x2 + bi x + ci
Para encontrar los ai , bi , ci se deben cumplir las siguientes condiciones:
1. Los valores de la función deben ser iguales en los nodos interiores, 2n –
2 ecuaciones. a x2  b x  c  f (x )
i 1 i 1 i 1 i 1 i 1 i 1

ai xi21  bi xi 1  ci  f ( xi 1 )
2. La primera y última función debe pasar por los extremos, 2 ecuaciones.
a1 x02  b1 x0  c1  f ( x0 )
an xn2  bn xn  cn  f ( xn )

3. Las primeras derivadas en los nodos interiores deben ser iguales, n – 1


ecuaciones. O sea: 2ai –1 xi–1 + bi –1 = 2ai xi–1 + bi
4. Suponer derivada 0 en el primer punto. a1 = 0
Escuela de Formación Universidad Nacional de
Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 28

ejemplo
x f (x) Encontrar f (5)
3.0 2.5
4.5 1.0
7.0 2.5
9.0 0.5

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 29

La condición 1 genera las siguientes ecuaciones:


20.25a1 + 4.5b1 + c1 = 1.0
20.25a2 + 4.5b2 + c2 = 1.0
49a2 + 7b2 + c2 = 2.5
49a3 + 7b3 + c3 = 2.5
La condición 2 da las siguientes ecuaciones
9a1 + 3b1 + c1 = 2.5
81a3 + 9b3 + c3 = 0.5
La condición 3 genera:
9a1 + b1 = 9a2 + b2
14a2 + b2 = 14a3 + b3
Escuela de Formación Universidad Nacional de
Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 30

El sistema resultante es:


4.5 1 0 0 0 0 0 0  b1   1 
0
 0 20.25 4.5 1 0 0 0  c1   1 
0 0 49 7 1 0 0 0 a2  2.5
    
0 0 0 0 0 49 7 1 b2  2.5

3 1 0 0 0 0 0 0  c2  2.5
    
0 0 0 0 0 81 9 1  a3  0.5
1 0 9 1 0 0 0 0  b3   0 
    
 0 0 14 1 0  14  1 0  c3   0 
La solución es:
a1 = 0 b1 = –1 c1 = 5.5
a2 = 0.64 b2 = –6.67 c2 = 18.46
a3 = –1.6 b3 = –24.6 c3 = 91.3
f(5) = 0.64(5)2 – 6.67(5) +18.46 = 1.11
Escuela de Formación Universidad Nacional de
Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 31

yi = ppval (pp, xi) - Evalúa polinomio a trozos pp en


los puntos xi. Si pp.d es un escalar mayor que 1, o un
arreglo, entonces el valor regresado yi será un arreglo
que es d1, d1, ..., dk, length (xi).

pp = spline (x, y) yi = spline (x, y, xi)


Regresa los interpolantes cúbicos de y en los puntos x.
Si se llama con dos argumentos, regresa los trozos
polinomicos pp que ueden ser evaluados con ppval.
Si se llama con tres parámetros, evalúa el los puntos xi.

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 32

Splines cúbicos
Aplicando las condiciones de continuidad del spline S y de las
derivadas primera S' y segunda S'', es posible encontrar la
expresión analítica del spline.

Si x   xi 1  x   x  xi 3
zi 3 zi 1
6hi 6hi
 yi 1 zi 1hi   yi zi hi 
   x  xi     xi 1  x 
 hi 6   hi 6 

Donde hi = xi+1 – xi y z0, z1, … ,zn son incognitas.

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 33

Aplicando las condiciones de continuidad se llega a

hi 1 zi 1  2hi  hi 1 zi  hi zi 1   yi 1  yi   6  yi  yi 1 
6
hi 1 hi 1

La ecuación anterior, genera un sistema de n–1


ecuaciones lineales con n+1 incógnitas.
donde
 u1 h1 0 0 0 0  z1   v1 
     hi21
 h1 u2 h2 0 0 0  z2   v2  ui  2hi  hi 1  
0 h u  0 0      
ui 1
 2 3
  
0 0    0       bi 
6
 yi 1  yi 
0 0 0  u hi
 n2 h2  zn 3   vn 3 
hi 1vi 1
0 0 0 0 h un 1  zn  2   vn  2  vi  bi  bi 1 
 2 ui 1

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 34

Los valores del spline S se calculan eficientemente con

Si x   yi  x  xi Ci  x  xi Bi  x  xi Ai 

Donde
Ai 
1
zi 1  zi 
6hi
zi
Bi 
2
Ci   zi 1  zi   yi 1  yi 
hi hi 1
6 3 hi

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 35

Los coeficientes de los polinomios se pueden calcular con:


c1 = yi – xi D
c2 = D – xi E
c3 = E – xi A
c4 = A
Para obtener: fi (x) = c1 + c2 x + c3 x2 + c4 x3
Donde
A
zi 1  zi 
6hi
zi
B
2
zi 1  i zi   yi 1  yi 
hi h 1
C
6 3 hi
D  C  xi B  Axi2
E  B  2 xi A
Escuela de Formación Universidad Nacional de
Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 36

Código en MatLab
%encuentra los trazadores cúbicos para un conjunto
de puntos x,y
% x - vector con los n valores de x
% y - vector con los n valores de y
% w - matriz de n-1 por 4 con los coeficientes de
los polinomios cúbicos
function w = spline3(x,y)
[dummy n] = size(x);
for i = 1:n-1
h(i) = x(i+1)-x(i);
b(i) = 6*(y(i+1)-y(i))/h(i);
end
u(2) = 2*(h(1)+h(2));
v(2) = b(2)-b(1);
for i = 3:n-1
u(i) = 2*(h(i)+h(i-1))-h(i-1)^2/u(i-1);
v(i) = b(i)-b(i-1)-h(i-1)*v(i-1)/u(i-1);
end
Escuela de Formación Universidad Nacional de
Profesional de Ingeniería Civil San Cristóbal de Huamanga
Métodos Numéricos Aplicados a la Ingeniería Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 37

z(n) = 0;
for i = n-1:-1:2;
z(i) = (v(i)-h(i)*z(i+1))/u(i);
end
z(1) = 0;
for i = 1:n-1
A = (z(i+1)-z(i))/6/h(i);
B = z(i)/2;
C = -h(i)*z(i+1)/6-h(i)*z(i)/3+(y(i+1)-y(i))/h(i);
D = C-x(i)*B+A*x(i)^2;
E = B-2*x(i)*A;
w(i,4) = y(i)-x(i)*D;
w(i,3) = D-x(i)*E;
w(i,2) = E-x(i)*A;
w(i,1) = A;
end
end

Escuela de Formación Universidad Nacional de


Profesional de Ingeniería Civil San Cristóbal de Huamanga

También podría gustarte