diferenciación e integración numérica programación numérica
TRANSCRIPT
Diferenciación e Integración numérica
Programación Numérica
Diferenciación
La diferenciación numérica puede calcularse usando la definición de derivada
h
xfhxfxf
h
00
00 lim'
Tomando una h pequeña. Si h > 0 se llama fórmula de diferencia progresiva, si h < 0 se llama fórmula de diferencia regresiva.
Error
x0= 2 ln(x0)= 0.693147181 f'(x0)= 0.5
h f(x0+h) ( f(x0+h) - f(x0) ) /h |inc -f'(x0)|0.1 0.741937345 0.487901642 -0.012098358
0.01 0.698134722 0.498754151 -0.0012458490.001 0.693647056 0.499875042 -0.000124958
0.0001 0.693197179 0.4999875 -1.24996E-05
Preguntas rápidas
Obtenga la derivada de las siguientes funciones en el punto especificado utilizando Excel o Matlab. Compárelas con el valor obtenido analíticamente.
1. f(x) = 3x sen(2x), x = /6
2. f(x) = 5ln(x + 1) – x2/5, x = 1.2
Fórmulas de diferencias divididas hacia adelante
h
xfxfxf ii
i
1'
Primera derivada
h
xfxfxfxf iii
i 234
' 12
Segunda derivada
2
12 2''
hxfxfxf
xf iiii
2
123 254''
h
xfxfxfxfxf iiii
i
Tercera derivada
3
123 33'''
h
xfxfxfxfxf iiii
i
3
1234
2
51824143'''
h
xfxfxfxfxfxf iiiii
i
Fórmulas de diferencias divididas centradas
h
xfxfxf ii
i11'
Primera derivada
h
xfxfxfxfxf iiii
i 1288
' 2112
Segunda derivada
2
11 2''
hxfxfxf
xf iiii
2
2112
12163016
''h
xfxxfxfxfxf iiiii
i
Tercera derivada
3
2112
2
22'''
h
xfxfxfxfxf iiii
i
3
321123
8
813138'''
h
xfxfxfxfxfxfxf iiiiii
i
Fórmulas de diferencias divididas hacia atrás
h
xfxfxf ii
i1'
Primera derivada
h
xfxfxfxf iii
i 243
' 21
Segunda derivada
2
212''
hxfxfxf
xf iiii
2
321 452''
hxfxfxfxf
xf iiiii
Tercera derivada
3
321 33'''
h
xfxfxfxfxf iiii
i
3
4321
2
31424185'''
h
xfxfxfxfxfxf iiiii
i
Ejemplo
x i-2 0 1.20000x i-1 0.25 1.10352x i 0.5 0.92500x i+1 0.75 0.63633x i+2 1 0.20000
f'(x) 0.5 -0.91250O(h) error O(h^2) error
centrada -0.934375 2.4% -0.9125 0.0%hacia adelante -1.154688 26.5% -0.859375 5.8%hacia atrás -0.714063 21.7% -0.878125 3.8%
f (x) = – 0.1x4 – 0.15x3 – 0.5x2 – 0.25x+1.2
Datos no espaciados regularmente
iiii
iii
iiii
iii
iiii
iii
xxxxxxx
xf
xxxxxxx
xf
xxxxxxx
xfxf
111
11
11
11
111
11
2
2
2'
Para derivar datos no espaciados regularmente se utiliza la siguiente fórmula. Se requiere conocer la función en tres puntos.
EjemploEl flujo de calor en la interfaz suelo-aire puede calcularse con la ley de Faraday
0
0
zdz
dTCkzq
Donde q = flujo de calor, k = coeficiente de difusividad térmica (3.5x10-7),= la densidad del suelo (1800), C = calor específico del suelo (840).
25.175.3075.3
25.100210
75.325.1025.175.3002
12
75.3025.1075.325.102
5.130'
f
= –1.333q = 70.56
Aire
Suelo
13.51210
3.75
1.25
Integración numérica
A los métodos de integración se les llama cuadratura numérica.
Seleccionaremos un conjunto de nodos [x0, ..., xn] del intervalo [a, b].
Después integramos un polinomio interpolante de Lagrange
n
iii xLxfxP
0
Se obtiene:
n
iii
b
axfadxxf
0
Donde b
a ii xLa
Regla del trapecioUtilizando un polinomio interpolante lineal de Lagrange.
101
00
10
1 xfxxxx
xfxxxx
xP
101001
101
00
10
1
22xfxf
hxfxf
xx
dxxfxx
xxxf
xxxx
dxxfb
a
b
a
Donde h = x1 – x0 =
Esta fórmula vale cuando f(x) tiene valores positivos.
Da valores exactos para polinomios de grado 1.
x0 = a x1 = b
P1 f
Pregunta rápida
Muestre que se cumple la regla del trapecio
101001
101
00
10
1
22xfxf
hxfxf
xx
dxxfxxxx
xfxxxx
dxxfb
a
b
a
Regla se SimpsonLa regla se Simpson se obtiene suponiendo el segundo polinomios de Lagrange con los nodos x0 = a, x2 = b, x1 = a + h, h = (b – a)/2.
210
21202
101
2101
200
2010
21
43
xfxfxfh
dxxfxxxx
xxxxxf
xxxx
xxxxxf
xxxxxxxx
dxxfb
a
b
a
Donde se han despreciado los términos de error.
La fórmula es exacta para polinomios de hasta tercer grado. x0 = a x2 = b
P3f
x1
Comparación
f(x) x 2̂ x 4̂ 1/(x + 1) sqrt(1 + x2) sen x exp(x)Valuación exacta 2.667 6.400 1.099 2.958 1.416 6.389Trapecio 4.000 16.000 1.333 3.236 0.909 8.389De Simpson 2.667 6.667 1.111 2.964 1.425 6.421
Comparación entre el valor exacto, la regla del trapecio y la regla de Simpson para diferentes funciones en el intervalo [0 , 2].
Regla de Simpson 3/8
Ajustando polinomios de Lagrange de orden 3 usando cuatro puntos se llega a la regla de Simpson de 3/8
3210 338
3xfxfxfxf
hxfI
b
a
También puede expresarse por:
8
33 3210 xfxfxfxfabxfI
b
a
Esta regla es útil cuando el número de puntos es impar.
Integración numérica compuesta
76958.56´432 4204
0 eeedxex
Integrando ex por Simpson en [0,4]
El error es: 53.59815 – 56.76958 = –3.17143
Separando en dos integrales:
86385.53
42431
431
431
4320
43220
4
2
2
0
4
0
eeeee
eeeeee
dxedxedxe xxx
Dividiendo en 4 intervalos
61622.53
424242431
461
461
461
461
4320
4332
20
4
3
3
2
2
1
1
0
4
0
27
25
23
21
27
25
23
21
eeeeeeeee
eeeeee
eeeeee
dxedxedxedxedxe xxxxx
El error es: 53.59815 – 53.61622 = –0.01807
Regla compuesta de Simpson
bfxfxfafh
dxxfn
jj
n
jj
b
a
2/
012
12/
02 42
3
Teorema. Sea f C4[a, b], n par, h = (b – a)/n, y xj = a + jh para cada j = 0, 1, 2, ... n . La regla de Simpson para n subintervalos puede escribirse como:
x0 = a xn = b
y= f(x)
x2 x2j-1 x2j x2j+1
Regla compuesta del trapecio
bfxfafh
dxxfn
jj
b
a
1
1
22
x0 = a xn = b
y= f(x)
x1 xj-1 xj xn–1
Teorema. Sea f C4[a, b], n par, h = (b – a)/n, y xj = a + jh para cada j = 0, 1, 2, ... n . La regla del trapecio para n subintervalos puede escribirse como:
Regla compuesta del punto medio
2/
022
n
jj
b
axfhdxxf
x0 = a xn+1 = b
y= f(x)
x0 xj-1 xj xnx1 xj+1
Teorema. Sea f C4[a, b], n par, h = (b – a)/(n+2), y xj = a + (j+1)h para cada j = –1, 0, 1, 2, ... n+1. La regla de compuesta del punto medio para n subintervalos puede escribirse como:
Datos con espaciamiento irregular
Si los datos están espaciados de forma irregular, como en el caso de datos experimentales, la integración puede llevarse a cabo mediante la aplicación de la regla del trapecio a cada subintervalo.
2
...22
1212
101
nnn
xfxfh
xfxfh
xfxfhI
Donde hi = ancho del segmento i.
Ejemplo
t min 1 2 3.25 4.5 6 7 8 9 9.5 10
V m/s 5 6 5.5 7 8.5 8 6 7 7 5
Determinar la distancia recorrida para los datos siguientes:
t = [1 2 3.25 4.5 6 7 8 9 9.5 10];v = [5 6 5.5 7 8.5 8 6 7 7 5];suma = 0;for i=2:length(t)
suma = suma + (t(i)-t(i-1))*(v(i-1)+v(i))/2;endsuma
ans = 60.3750
Algoritmos Regla del trapecioAlgoritmos para la regla del trapecio de uno solo segmento
function trap(h, f0, f1)
trap = h*(f0+f1)/2
end
Algoritmos para la regla del trapecio de múltiples segmentos
function trap(h, n, f) sum = f0; for i = 1, n–1 sum = sum + 2*fi end sum = sum + fn trap = h*sum/2end
Algoritmos Regla simple de Simpson
Regla de Simpson de 1/3
function simp13(h, f0, f1, f2)
simp13 = 2*h*(f0+4*f1+f2)/6
end
Regla de Simpson de 3/8
function simp38(h, f0, f1, f2, f3)
simp38 = 3*h*(f0+3*f1+3*f2+f3)/8
end
Regla de Simpson 1/3 múltiple
Function simp13m(h, n, f)
sum = f0
for i = 1, n–2, 2
sum = sum+4*fi+2*fi+1
end
sum = sum+4fn-1+fn
simp13m = h*sum/3
end
Algoritmos Regla compuesta de SimpsonRegla de Simpson de número de segmentos pares o impares
function simpint(a, b, n, f) h = (b-a)/n if n=1 then sum=trap() else m = n odd = n/2-int(n/2) if odd>0 and n>1 then sum = sum + simp38(h,fn-3,fn-2,fn-1,fn) m = n-3 end if m>1 then sum = sum + simp13m(h, m, f) end end simpint = sumend
Ejemplo TrapecioSea la siguiente función:
f (x) = 0.2 + 25x – 200x2 + 675x3 – 900x4 + 400x5
Integrada en el intervalo de a = 0 a b = 0.8 con trapecio:
Valor real I = 1.64053333
f (a) = 0.2000 f (b) = 0.2320
I = h (f (b) – f (a) )/2 0.17280000 error = 89.47%
Ejemplo Simpson 1/3Sea la siguiente función:
f (x) = 0.2 + 25x – 200x2 + 675x3 – 900x4 + 400x5
Integrada en el intervalo de a = 0 a b = 0.8 con trapecio:
Valor real I = 1.64053333
f (a) = 0.2 f ((a+b)/2) = 2.456 f (b) = 0.232
I = 0.8 (0.2+4(2.456)+0.232)/6 = 1.36746667 error = 16.6%
Ejemplo Simpson 3/8Sea la siguiente función:
f (x) = 0.2 + 25x – 200x2 + 675x3 – 900x4 + 400x5
Integrada en el intervalo de a = 0 a b = 0.8 con trapecio:Valor real I = 1.64053333 f (0) = 0.2 f (0.26667) = 1.432724f (0.5333) = 3.487177 f (0.8) = 2.232
I = 0.8 (0.2+3(1.432724+3.487177)+ 2.232 )/8 = 1.519170
error = 7.4%
Ejemplo Simpson 1/3 y Simpson 3/8Sea la siguiente función:
f (x) = 0.2 + 25x – 200x2 + 675x3 – 900x4 + 400x5
Integrada en el intervalo de a = 0 a b = 0.8 con 5 segmentos, con trapecio 2 primeros y Simpson los 3 últimos:Valor real I = 1.64053333f (0) = 0.2 f (0.16) = 1.29692 f (0.32) = 1.74339 f (0.48) = 3.18601 f (0.64) = 3.18193 f (0.8) = 0.23200Simpson 1/3: I1/3 = 0.32*(0.2 +4(1.29692)+ 1.74339 )/6 = 0.3803237Simpson 3/8I3/8 = 0.48 (1.74339 +3(3.18601 + 3.18193 )+ 2.232 )/8 = 1.264754I = 1.645077 error = 0.28%
x f(x)0.00 0.2000000.12 1.3097290.22 1.3052410.32 1.7433930.36 2.0749030.40 2.4560000.44 2.8429850.54 3.5072970.64 3.1819290.70 2.3630000.80 0.232000