Sei sulla pagina 1di 37

Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing.

Rick Delgadillo Ayala | 1

Universidad Nacional de San Cristbal de Huamanga

Escuela de Formacin Profesional de Ingeniera Civil

Mtodos Numricos Aplicados a la


Ingeniera Civil (IC-343)

Interpolacin y Aproximacin de
Funciones
Mg. Ing. Rick Milton Delgadillo Ayala
e-mail: rick.delgadillo@unsch.edu.pe

Ayacucho Per
2017

Escuela de Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 2

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

Teorema (teorema de aproximacin 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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 5

Expansin de Taylor para 1/x


n
f k 1 n
Pn x x 1 1k x 1k
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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 6

Interpolacin polinomial de Newton

Revisaremos algunos casos: lineal, de segundo grado y de


tercer grado.

Escuela de Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 7

Interpolacin lineal
Utilizando tringulos 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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 8

Ejemplo
Estimar ln 2 mediante interpolacin 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 Formacin Universidad Nacional de
Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 9

Interpolacin cuadrtica
Polinomio cuadrtico
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 ecuacin (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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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
Estimacin cuadrtica
= 0.0518731 -0.5

El polinomio es Estimacin 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 Formacin Universidad Nacional de
Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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 xn1)
Los coeficientes se calculan con
b0 = f(x0)
b1 = f [x1, x0]
b2 = f [x2, x1, x0]

bn = f [,xn, xn1, ..., x1, x0]


Donde los parntesis 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 interpolacin de Newton en diferencias divididas.


Escuela de Formacin Universidad Nacional de
Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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

Estimacin cbica
-1
0 1 2 3 4 5 6 7 8

Escuela de Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 14

Estimacin del error


Para estimar el error requerimos de un datos ms (xn+1). La
siguiente frmula puede utilizarse para estimar el error.

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

Escuela de Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 15

Interpolacin 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 xk1)(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
ik

Escuela de Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 16

N-simo polinomio interpolante


de Lagrange
Teorema
Si x0, x1, x2, ... xn, son n+1 nmeros distintos y si f es una funcin
cuyos valores estn dados en esos nmeros, entonces existe un
polinomio de grado a lo ms 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
ik

Escuela de Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 17

Aproximacin 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.5x 4 x 6.5x 10
n,0 2 0.52 4
L x
x 2x 4 4 x 24x 32
n,1 2.5 22.5 4 3

L x
x 2x 2.5 x 4.5x 5
n,2 4 24 2.5 3

P(x) = 0.5*((x6.5)x+10)+0.4*((4x+24)x32)/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 Formacin Universidad Nacional de
Profesional de Ingeniera Civil
f(3) = P(3) = 0.325 San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 18

Aproximacin a 1/x con


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

Escuela de Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 19

El error en la interpolacin de
Lagrange
El error en la interpolacin de Lagrange puede calcularse
con

f n 1 x
f x0 Px x x0 x x1 ...x xn
n 1!

Escuela de Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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 Formacin Universidad Nacional de
Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 22

Interpolacin 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
interpolacin de grado 2 con los puntos (2, 0.5), (3, 0.3333) y
(4, 0.25) y resolviendo la ecuacin:
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 Formacin Universidad Nacional de
Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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.
Tambin se pueden usar lneas rectas entre cada par de puntos
para hacer interpolacin lineal entre ellos o polinomios
cuadrticos o cbicos.
Tales interpoladores se llaman trazadores lineales, cuadrticos y
cbicos, respectivamente.
La ventaja de los trazadores es que no presentan el efecto de
oscilacin de los polinomios de alto grado.

Escuela de Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 24

f (x)

f (x)

f (x)

f (x)

Escuela de Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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) + mn1 (x x0) xn1 <= x <= xn


Los valores de mi se calculan con:

f xi 1 f xi
mi
xi 1 xi

Escuela de Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 27

Trazadores cuadrticos
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 funcin 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 xi21 bi xi 1 ci f ( xi 1 )
2. La primera y ltima funcin 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 xi1 + bi 1 = 2ai xi1 + bi
4. Suponer derivada 0 en el primer punto. a1 = 0
Escuela de Formacin Universidad Nacional de
Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 29

La condicin 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 condicin 2 da las siguientes ecuaciones
9a1 + 3b1 + c1 = 2.5
81a3 + 9b3 + c3 = 0.5
La condicin 3 genera:
9a1 + b1 = 9a2 + b2
14a2 + b2 = 14a3 + b3
Escuela de Formacin Universidad Nacional de
Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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 solucin 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 Formacin Universidad Nacional de
Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 31

yi = ppval (pp, xi) - Evala 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 cbicos 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 parmetros, evala el los puntos xi.

Escuela de Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 32

Splines cbicos
Aplicando las condiciones de continuidad del spline S y de las
derivadas primera S' y segunda S'', es posible encontrar la
expresin analtica 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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 33

Aplicando las condiciones de continuidad se llega a

hi 1 zi 1 2hi hi 1 zi hi zi 1 yi 1 yi 6 yi yi 1
6
hi 1 hi 1

La ecuacin anterior, genera un sistema de n1


ecuaciones lineales con n+1 incgnitas.
donde
u1 h1 0 0 0 0 z1 v1
hi21
h1 u2 h2 0 0 0 z2 v2 ui 2hi hi 1
0 h u 0 0
ui 1
2 3

0 0 0 bi
6
yi 1 yi
0 0 0 u hi
n2 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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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 Formacin Universidad Nacional de
Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera Civil (IC - 343) Mg. Ing. Rick Delgadillo Ayala | 36

Cdigo en MatLab
%encuentra los trazadores cbicos 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 cbicos
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 Formacin Universidad Nacional de
Profesional de Ingeniera Civil San Cristbal de Huamanga
Mtodos Numricos Aplicados a la Ingeniera 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 Formacin Universidad Nacional de


Profesional de Ingeniera Civil San Cristbal de Huamanga

Potrebbero piacerti anche