Clase Aplicaciones Numéricas en Investigación de Operaciones 09
description
Transcript of Clase Aplicaciones Numéricas en Investigación de Operaciones 09
![Page 1: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/1.jpg)
Aplicaciones Numéricas en Investigación de Operaciones9
Prof. Gonzalo Müller
Postgrado de Investigación de Operaciones
Facultad de Ingeniería
Universidad Central de Venezuela
![Page 2: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/2.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 2
Clase Anterior
� Números Aleatorios
� Generador lineal congruente
� Generador simple multiplicativo congruente
� Generador Estándar Mínimo
� Algoritmo de Bays y Durham
� rand, randi
� Método de transformación.� y = F-1(u)
� F(y) – u = 0 → y
� tabla
![Page 3: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/3.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 3
Clase Anterior
� Método de rechazo
� Monte Carlo
� Simulación
� Muestreo
� Integración por Monte Carlo
![Page 4: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/4.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 4
Recordando
� Métodos de interpolación polinomial:
� 1 paso: Estimación directa.
� Método de Langrage.
� Método de Neville.
� 2 pasos: Calculo de coeficientes y estimación.
� Método de Newton.
� Splines.
� Mínimos cuadrados.
� Evitar la extrapolación.
![Page 5: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/5.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 5
Operaciones Númericas Discretas
� En función de obtener un valor representativo en el mundo real es necesario obtener un valor numérico de las expresiones analíticas que se desarrollen.
� Una operación continua debe ser representada por una serie de operaciones discretas.
Los números pseudoaleatorios son una secuencia “no predecible”
pero reproducible, lo cual es de gran utilidad para experimentos
![Page 6: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/6.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 6
Diferenciación Numérica
� Se debe poseer:
� mecanismo para evaluar la función
� conjunto de puntos discretos que la defina.
� Se aproxima la función por:
� una serie de Taylor.
� una interpolación polinomial y luego se deriva.
� Errores de redondeo debido al computador
� Errores de truncamiento debidos a la interpolación.
![Page 7: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/7.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 7
Diferenciación Numérica
Aproximación por series de Taylor
Partiendo de las series de Taylor, se tiene:
...(x)f!3
h(x)f
!2
h(x)fh f(x)h)f(x
...(x)f!3
h(x)f
!2
h(x)fh f(x)h)f(x
32
32
+′′′−′′+′−=−
+′′′+′′+′+=+
...(x)f12
h(x)fh f(x)2h)f(xh)f(x
...(x)f!3
h(x)fh2h)f(xh)f(x
42
3
+′′′′+′′+=−++
+′′′+′=−−+
![Page 8: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/8.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 8
Diferenciación Numérica
� Se obtiene la diferenciación numérica central:
f´(x) = [f(x + h) – f(x – h)]/[2h] – f´´´(x) h2/6 – ...
f´(x) = [f(x + h) – f(x – h)]/[2h] +O(h2)
O(h2): error de truncamiento
![Page 9: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/9.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 9
Diferenciación Numérica
� Se obtiene la diferenciación numérica central:
f´´(x)=[f(x + h)+f(x – h) – 2f(x)]/h2+f´´´´(x) h2/12 + ...
f´´(x) = [f(x + h) + f(x – h) – 2f(x)]/h2 +O(h2)
O(h2): error de truncamiento
![Page 10: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/10.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 10
Diferenciación Numérica
� Cuando solo se dispone de un conjunto de puntos (x1, x2, ..., xn) que definen la función no es posible emplear la diferenciación numérica central.
Diferenciación numérica adelantada:
f´(x) = [f(x + h) – f(x)]/h – f´´(x) h/2 – f´´´(x) h2/6 – ...
f´(x) = [f(x + h) – f(x)]/h + O(h)
O(h): error de truncamiento
![Page 11: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/11.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 11
Diferenciación Numérica
� Cuando solo se dispone de un conjunto de puntos (x1, x2, ..., xn) que definen la función no es posible emplear la diferenciación numérica central.
Diferenciación numérica atrasada:
f´(x) = [f(x) – f(x – h)]/h + f´´(x) h/2 – f´´´(x) h2/6 – ...
f´(x) = [f(x) – f(x – h)]/h + O(h)
O(h): error de truncamiento
![Page 12: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/12.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 12
Diferenciación Numérica
h
error
error por truncamiento
O(h2)
O(h)
Partiendo de la serie de Taylor es posible desarrollar otras
expresiones para las derivadas con diferentes errores
![Page 13: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/13.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 13
Diferenciación Numérica
h
errorerror por redondeo
f(x) – f(x – h)
f(x + h)+f(x – h)
![Page 14: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/14.jpg)
� Construir las siguientes funciones en Matlab:
� dertayfx1: que calcule la primera derivada.
� dertayfx2: que calcule la segunda derivada.
� Evaluar f ´(x) y f ´´(x) para f(x) = e–x para x = 0.01, x = 0.1, x = 1, x = 10 y comparar con el valor “exacto”, utilizando diferentes h entre 0.5 y 0.0005, graficar los errores
� f(x)
� x
� h
� f ’(x)
![Page 15: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/15.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 15
Extrapolación de Richardson
� Permite agregar un factor de ajuste a la diferenciación numérica que mejora el valor del resultado obtenido.
D: valor real
d(h): aproximación obtenida a partir de h
O(h): error de la aproximación obtenida a partir de h
D = d(h) + O(h)
![Page 16: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/16.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 16
Extrapolación de Richardson
� Si O(h) tiene la forma:
O(hP) = C· hP
� Dado dos evaluaciones de D:
D = d(h1) + C· h1P
D = d(h2) + C· h2P
Se tiene la extrapolación de Richarson:
D = [(h1/h2)P d(h2) – d(h1)]/[(h1/h2)
P – 1]
![Page 17: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/17.jpg)
� Construir las siguientes funciones en Matlab:
� dertayrfx1: que calcule la primera derivada.
� dertayrfx2: que calcule la segunda derivada.
� Evaluar f ´(x) y f ´´(x) para f(x) = e–x para x = 0.01, x = 0.1, x = 1, x = 10 y comparar con el valor “exacto”, utilizando diferentes h entre 0.5 y 0.0005, graficar los errores
� f(x)
� x
� h
� f ’(x)h1=h
h2=h/4
![Page 18: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/18.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 18
Diferenciación Numérica
Aproximación por polinomios
Teorema Fundamental del Calculo de la Diferencias Finitas
1. La n-esima diferencia de un polinomio de grado n es una constante.
2. La (n+1)-esima diferencia es 0.
![Page 19: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/19.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 19
Diferenciación Numérica
Para obtener la diferencia finita de orden n de una función cualquiera es necesario aproximar la misma a través de un polinomio de grado n con n+1coeficientes independientes.
� Problemas:
� A medida que el grado de la diferencia es mayor la propagación por error de truncamiento dada la aproximación por un polinomio es mayor
� Debe evitar polinomios de grado mayor a 6 debido a las oscilaciones.
![Page 20: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/20.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 20
Diferenciación Numérica
Splines Cúbicas.
� Es un buen interpolante global.
f´k, k+1(x) = Ak/6[3·(x – xk+1)2/(xk – xk+1) – (xk – xk+1)] –
Ak+1/6[3· (x – xk)2/(xk – xk+1) – (xk – xk+1)] +
(yk – yk+1)/(xk – xk+1)
f´´k, k+1(x) = Ak(x – xk+1)/(xk – xk+1) –
Ak+1(x – xk)/(xk – xk+1) – (xk – xk+1)
![Page 21: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/21.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 21
Diferenciación Numérica
Mínimos cuadrados.
f (x) = A1+A2x +A3x2
f´(x) = A2 +A3x
f´´(x) = A3
n ∑xk ∑xk2 A1 ∑yk
∑xk ∑xk2 ∑xk
3 A2 ∑xk yk∑xk
2 ∑xk3 ∑xk
4 A3 ∑xk2 yk
![Page 22: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/22.jpg)
� Construir las siguientes funciones en Matlab:
� calpolmc: que calcule los coeficientes A1, A2 y A3.
� derpolmcfx1: que calcule la primera derivada.
� derpolmcfx2: que calcule la segunda derivada.
� Evaluar f ´(x) y f ´´(x) para f(x) = e–x para x = 0.01, x = 0.1, x = 1, x = 10 y comparar con el valor “exacto”, utilizando diferentes h entre 0.5 y 0.0005, graficar los errores
� f(x)
� x
� h
� f ’(x)
![Page 23: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/23.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 23
Diferenciación Numérica
Aproximación Clásica
df(x)/dx = ∆f(x)/∆x
df(x)/dx = [f(x + ∆x) - f(x)]/ ∆x
∆nf(x) = ∆[∆n-1f(x)]
dnf(x)/dxn = [∆n-1f(x + ∆x) - ∆n-1f(x)] /∆xn
dnf(x)/dxn =(dn-1f(x + ∆x)/dxn-1 - dn-1f(x)/dxn-1)/∆x
![Page 24: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/24.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 24
Diferenciación Numérica
f''(x) =(∆f(x +∆x) – ∆f(x))/∆x2
f'''(x) =(∆2 f(x +∆x) – ∆2f(x))/∆x3
xk f(xk) ∆f(xk) ∆2f(x) ∆3f(x) ∆4f(x)
x0 f(x0) f(x1)-f(x0) ∆f(x1)-∆f(x0) ∆2f(x1)-∆2f(x0) ∆3f(x1)-∆
3f(x0)
x1 f(x1) f(x2)-f(x1) ∆f(x2)-∆f(x1) ∆2f(x2)-∆2f(x1) ∆3f(x2)-∆
3f(x1)
x2 f(x2) f(x3)-f(x2) ∆f(x3)-∆f(x2) ∆2f(x3)-∆2f(x2) ∆3f(x3)-∆
3f(x2)
x3 f(x3) f(x4)-f(x3) ∆f(x4)-∆f(x3) ∆2f(x4)-∆2f(x3)
x4 f(x4) f(x5)-f(x4) ∆f(x5)-∆f(x4)
x5 f(x5) f(x6)-f(x5)
x6 f(x6)
∆x = 1
![Page 25: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/25.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 25
Diferenciación Numérica
f''(x) =(f'(x +∆x) – f'(x))/∆x
f'''(x) =(f''(x +∆x) – f''(x))/∆x
xk f(xk) f'(xk) f''(x) f'''(x) f''''(x)
x0 f(x0) f(x1)-f(x0) f'(x1)-f'(x0) f''(x1)-f''(x0) f'''(x1)-f'''(x0)
x1 f(x1) f(x2)-f(x1) f'(x2)-f'(x1) f''(x2)-f''(x1) f'''(x2)-f'''(x1)
x2 f(x2) f(x3)-f(x2) f'(x3)-f'(x2) f''(x3)-f''(x2) f'''(x3)-f'''(x2)
x3 f(x3) f(x4)-f(x3) f'(x4)-f'(x3) f''(x4)-f''(x3)
x4 f(x4) f(x5)-f(x4) f'(x5)-f'(x4)
x5 f(x5) f(x6)-f(x5)
x6 f(x6)
∆x = 1
![Page 26: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/26.jpg)
� Construir las siguientes funciones en Matlab:
� derclasicafx1: que calcule la primera derivada.
� derclasicafx2: que calcule la segunda derivada.
� Evaluar f ´(x) y f ´´ (x) para f(x) = e–x para x = 0.01, x = 0.1, x = 1, x = 10 y comparar con el valor “exacto”, utilizando diferentes h entre 0.5 y 0.0005, graficar los errores
� f(x)
� x
� ∆x
� f ’(x)
Se necesitan n+1 puntos para calcular la n-esima derivada
![Page 27: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/27.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 27
Diferenciación Numérica
� La diferenciación numérica debe ser usada como la última opción.
Debido a los errores presentes en la evaluación:
Dado la limitación en la representación de los números reales que impone el computador:
∆x, f(x + ∆x) - f(x)
x
f(x)-x) f(xlim
dx
df(x)0x ∆
∆+=
→∆
![Page 28: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/28.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 28
Diferenciación Numérica en Matlab
� diff: Calcula diferencias, ∆f(x) ó ∆x.
Ejemplo:
x = [0.8 5 2 6.2 7]
dx = diff(x);
diff(x) Calcula las diferencias sucesivas de los puntos de x. (n – 1 diferencias, teniendo x n puntos)
diff(x,n) Calcula la n-esima diferencia de x ≡ ∆nf(x) (x debe tener al menos n+1 puntos)
![Page 29: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/29.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 29
Integración Numérica
� Es una operación común y estable.
� Básicamente constituye una suma.
� Existen dos tipos de métodos:
� Particionado equidistante del intervalo.
� La evaluación de la función no es cotosa.
� Aproxima f(x) utilizando un polinomio de grado n-1
� El esquema de cuadratura obtiene el valor exacto de la integral si el integrando es un polinomio.
∑∫=
→n
1kkk
b
a
)f(xCf(x)dx
![Page 30: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/30.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 30
Integración Numérica
� Particionado variable del intervalo, en función de mejorar la precisión.
� La evaluación de la función no cotosa.
� Permite la evaluación integrales con singularidades.
![Page 31: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/31.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 31
Integración Numérica
Regla del Trapezoide
� Suma de trapecios
� Partición equidistante del intervalo.
∑∫−
=
+ +∆
=1n
1kk1k
b
a
)f(x)f(x2
xf(x)dx
x
f(x)
xk xk+1
error
I=Área
![Page 32: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/32.jpg)
� Construir la siguiente función en Matlab:
� inttrapfx: que calcule la integral trapezoidal.
� Evaluar para f(x) = e–x para a = 0.01, b = 10 y comparar con el valor “exacto”, utilizando diferentes n entre 5 y 500, graficar los errores
� f(x)
� n
� a, b
� I(f(x))
![Page 33: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/33.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 33
Integración Numérica
Regla de Simpson
� Es superior a Trapezoide.
� Es lo que se conoce como hiper-eficiente.
� Partición equidistante del intervalo.
[ ])f(x)f(x4)f(x3
xf(x)dx 210
x
x
2
0
++∆
=∫
x
f(x)
x0 x2
error
I=Área
x1
parábola
![Page 34: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/34.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 34
Integración Numérica
Regla de Simpson
� Es superior a Trapezoide.
� Es lo que se conoce como hiper-eficiente.
� Partición equidistante del intervalo.
∑ ∫∫=
=
+2-n
1,3,...k
x
x
b
a
2k
k
f(x)dxf(x)dx
x
f(x)
x0 x2
error
I=Área
x1
parábola
![Page 35: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/35.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 35
Integración Numérica
Regla de Bode
� Es superior a Simpson
� Exacto para polinomios de hasta 5º grado.
� Partición equidistante del intervalo.
[ ])f(x14)f(x64)f(x24)f(x64)14f(x45
xf(x)dx 43210
x
x
4
0
++++∆
=∫
![Page 36: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/36.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 36
Integración Numérica
Espaciado arbitrario
Aproximando f(x) con una interpolación polinomialde Lagrange, Wk:
j:0, 1, ..., n-1
k
1-n
0kk
b
a
W)f(xf(x)dx ∑∫=
=
k
1-n
0k
jk
1j1j
Wx1j
ab∑
=
++
=+
−
![Page 37: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/37.jpg)
� Construir la siguiente función en Matlab:
� intfijofx: que calcule la integral por espaciado arbitrario.
� Evaluar para f(x) = e–x para a = 0.01, b = 10 y comparar con el valor “exacto”, utilizando diferentes k entre 5 y 500, graficar los errores
� f(x)
� x =[a, x2,x3, ..., b]� I(f(x))
![Page 38: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/38.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 38
Integración Numérica
Romberg
Es una combinación de la regla trapezoidal y la extrapolación de Richarson
� Se considera uno de los métodos más eficientes.
� Superior a Bode.
El error tiene la forma:
O(h2)= C1 h2 + C2 h
4 + ···
donde dada la partición equidistante de 2k-1 intervalos:
h = (b – a)/2k-1
![Page 39: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/39.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 39
Integración Numérica
� Dado dos evaluaciones de I, se tiene la extrapolación de Richarson:
I = [(h1/h2)P i(h2) – i(h1)]/[(h1/h2)
P – 1] h1P
i(h1): Integración numérica trapezoidal con k = k1, h1
= (b – a)/2k1-1
i(h2): Integración numérica trapezoidal con k = k2, h2
=(b – a)/2k2-1
![Page 40: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/40.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 40
Integración Numérica
� Dado dos evaluaciones de I, se tiene la extrapolación de Richarson:
I = [2 (k2-k1)P ik2 – ik1]/[2(k2-k1)P – 1]
![Page 41: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/41.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 41
Integración Numérica
� Dado dos evaluaciones de I, se tiene la extrapolación de Richarson:
k2 – k1= 1
Ik2 = [2P ik2 – ik2-1]/[2P – 1]
![Page 42: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/42.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 42
Integración Numérica
� Dado más de dos evaluaciones de I, se tiene la extrapolación de Richarson:
k2 – k1= 1
Ik2 = [22 ik2 – ik2-1]/[22 – 1]
i1i2 I2,2i3 I3,2i4 I4,2i5 I5,2… …
![Page 43: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/43.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 43
Integración Numérica
� Dado más de dos evaluaciones de I, se tiene la extrapolación de Richarson:
k2 – k1= 1
Ik2,2 = [22 ik2 – ik2-1]/[22 – 1]
i1i2 I2,2i3 I3,2i4 I4,2i5 I5,2… …
![Page 44: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/44.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 44
Integración Numérica
� Dado más de dos evaluaciones de I, se tiene la extrapolación de Richarson:
k2 – k1= 1
Ik2,P = [2P Ik2,P–2 – Ik2-1,P–2]/[2P – 1]
i1i2 I2,2i3 I3,2 I3,4i4 I4,2 I4,4 I4,6i5 I5,2 I5,4 I5,6 I5,8… … … … …
![Page 45: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/45.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 45
Integración Numérica
� Dado más de dos evaluaciones de I, se tiene la extrapolación de Richarson:
Ik,p = [2P Ik,P–2 – Ik-1,P–2]/[2P – 1]
i1i2 I2,2i3 I3,2 I3,4i4 I4,2 I4,4 I4,6i5 I5,2 I5,4 I5,6 I5,8… … … … …
![Page 46: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/46.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 46
Integración Numérica
� Dado más de dos evaluaciones de I, se tiene la extrapolación de Richarson:
Ik,p = [2P Ik,P–2 – Ik-1,P–2]/[2P – 1]
i1i2 I2,2i3 I3,2 I3,4i4 I4,2 I4,4 I4,6i5 I5,2 I5,4 I5,6 I5,8… … … … …
Mejor integral que se puede estimar partiendo de tres evaluaciones
![Page 47: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/47.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 47
Integración Numérica
� Dado más de dos evaluaciones de I, se tiene la extrapolación de Richarson:
Ik,p = [2P Ik,P–2 – Ik-1,P–2]/[2P – 1]
i1i2 I2,2i3 I3,2 I3,4i4 I4,2 I4,4 I4,6i5 I5,2 I5,4 I5,6 I5,8… … … … …
Se puede repetir el proceso hasta que la diferencia entre estimaciones sucesivas sea menor que un error dado
![Page 48: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/48.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 48
Integración Numérica
� Dado más de dos evaluaciones de I, se tiene la extrapolación de Richarson:
Ejemplo:
I2,2 = [22 i2 – i1]/[22 – 1]
I3,2 = [22 i3 – i2]/[22 – 1]
I3,4 = [24 I3,2 – I2,2]/[24 – 1]
i1i2 I2,2i3 I3,2 I3,4
![Page 49: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/49.jpg)
� Construir la siguiente función en Matlab:
� intrombfx: que calcule la integral por romberg.
� Evaluar para f(x) = e–x para a = 0.01, b = 10 y comparar con el valor “exacto”, utilizando diferentes k entre 5 y 500, graficar los errores
� f(x)
� k
� a, b
� I(f(x))
![Page 50: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/50.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 50
Integración Numérica
Esquema de Gauss
� Selecciona:
� los pesos Wk.
� los n apropiados puntos.
� Es empleado para la solución de:
w(x) es la función de peso, que puede contener singularidades pero es integrables
∫b
a
w(x)f(x)dx
![Page 51: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/51.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 51
Integración Numérica
� Si se aproxima f(x) con una interpolación polinomial:
I = ∑Wkf(xk)
los coeficientes y los puntos pueden ser determinados utilizando:
j:0,1, ..., 2n -1
∑∫=
=n
1k
jkk
b
a
j xWdxw(x)x
![Page 52: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/52.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 52
Integración Numérica
� Establecer estos valores es un proceso complejo, por lo que existen w(x) clásicas con xk y Wk predefinidos:
Nombre w(x) a b
Legendre 1 -1 1
Laguerre e-x 0 ∞
Hermite e-x2 -∞ ∞
Chebyshev (1 – x2)-1/2 -1 1
![Page 53: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/53.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 53
Integración Numérica en Matlab
� trapz: Calcula la integral de una función aplicando la regla trapezoidal con ∆x = 1.
quad(f(xk))
Ejemplo: integral del seno entre 0,5 y 3,1 con un error de 1e-8,
fx = sin(0.5:0.5e-8:3.1);
isen = 0.5e-8*trapz(fx);
∑∫−
=
+ +=1n
1kk1k
b
a
)f(x)f(x2
1f(x)dx
![Page 54: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/54.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 54
Integración Numérica en Matlab
� quad: Calcula una integral definida.
quad(función, limite inferior, limite
superior, error)
Ejemplo: integral del seno entre 0,5 y 3,1 con un error de 1e-8,
isen = quad(@sin, 0.5, 3.1, 1e-8);
![Page 55: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/55.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 55
Se define una g(x) > f(x), x є [a, b], cuya área es conocida.
Se comienza un proceso de ensayo, Y y X, donde la probabilidad de obtener puntos que pertenezcan al área bajo la curva es proporcional a la fracción de área ocupada por f(x) de g(x)
Integración por Monte Carlo
f(x)
a b
g(x)
![Page 56: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/56.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 56
Si g(x) = C
Integración por Monte Carlo
a)C-p(bdxf(x)b
a
=∫
f(x)
a b
g(x)C
![Page 57: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/57.jpg)
� Construir la siguiente función en Matlab:
� intmcarlofx: que calcule la integral por Monte Carlo.
� Evaluar para f(x) = e–x para a = 0.01, b = 10 y comparar con el valor “exacto”, utilizando diferentes nentre 5 y 5000, graficar los errores
� f(x)
� n
� a, b
� I(f(x))
![Page 58: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/58.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 58
Resumen
� Diferenciación Numérica
� Aproximación por series de Taylor
� Extrapolación de Richardson
� Aproximación por polinomios: Splines Cúbicas, Mínimos cuadrados
� Aproximación Clásica.
� Diferenciación Numérica en Matlab: diff.
![Page 59: Clase Aplicaciones Numéricas en Investigación de Operaciones 09](https://reader033.fdocumento.com/reader033/viewer/2022050808/546b01b1b4af9f752c8b49be/html5/thumbnails/59.jpg)
Aplicaciones Numéricas en Investigación de Operaciones – Prof. Gonzalo Müller – Clase 9 – GM – 59
Resumen
� Integración Numérica
� Regla del Trapezoide
� Regla de Simpson
� Regla de Bode
� Espaciado arbitrario
� Romberg
� Esquema de Gauss
� Integración Numérica en Matlab: trapz,quad
� Integración por Monte Carlo