Cap 1_5 Curso de Simulacion Numérica Avanzada de Yacimientos de Petróleo y Gas
Simulación y Modeloprof.usb.ve/mirodriguez/simulacion/SimulacionyModelo5.pdf · Principio de la...
Transcript of Simulación y Modeloprof.usb.ve/mirodriguez/simulacion/SimulacionyModelo5.pdf · Principio de la...
Simulación de sistemas continuos y a tramos
Universidad Nacional Experimental Politécnica de la Fuerza Armada
Miguel Rodríguez [email protected]
Modelos en el Espacio del EstadoLos modelos dinámicos con parámetros concentrados se representanusualmente por ecuaciones diferenciales ordinarias del primer orden. Se hablade modelos en el espacio del estado.
donde x es el vector de las variables del estado, u es el vector de las entradas yt denota el tiempo, la variable independiente sobre la cual queremos simular.Se necesitan también condiciones iníciales para las variables del estado:
Miguel Rodríguez 2
)),(),(( ttutxfx =
00 )( xttx ==
Principio de la Integración Numérica: Las series de TaylorEl modelo puede simularse usando una serie de Taylor. Conociendo lasolución en un instante, t∗, la solución puede calcularse en otro instante mástarde, t∗ + h usando una expansión de Taylor:
El modelo en el estado se usa en la serie de Taylor reemplazando la primeraderivada:
Los diferentes métodos de integración numérica se distinguen entre sí en susaproximaciones numéricas de las derivadas de f .
Miguel Rodríguez 3
+⋅+⋅+=+!2
)()()()(2
2
*2*** h
dttxdh
dttdxtxhtx ii
ii
+⋅+⋅+=+!2
)()()(2*
** hdt
tdfhftxhtx iiii
Principio de la Integración Numérica: La precisión de la aproximaciónEs cierto que no pueden añadirse todas las contribuciones de la expansión deTaylor. Todos los métodos de la integración numérica solamente aproximan uncierto numero de los términos de la serie de Taylor. Ese numero puede ser fijoo variable.Se habla del orden de la aproximación del método numérico. Un algoritmo queaproxima la serie de Taylor de la manera:
es un algoritmo del tercer orden.El error por truncamiento del método crece proporcional con la cuarta potenciadel paso de integración, h.
Miguel Rodríguez 4
)(!3
)(!2
)()()( 43
2
*22*** hoh
dttfdh
dttdfhftxhtx ii
iii +⋅+⋅+⋅+=+
Principio de la Integración Numérica: La precisión de la aproximaciónError por Redondeo IExiste un segundo tipo de error que resulta de la mantisa finita del ordenador.Los efectos de ese tipo de error pueden ilustrarse fácilmente de forma gráfica:
Error por redondeo en precisión regular
Miguel Rodríguez 5
x(t*)
f(t*).h
!2)( 2* h
dttdf
⋅
!3)( 3
2
*2 hdt
tfd⋅
x(t*+h)
+
+
+
=
Principio de la Integración Numérica: La precisión de la aproximaciónError por Redondeo IIExiste un segundo tipo de error que resulta de la mantisa finita del ordenador.Los efectos de ese tipo de error pueden ilustrarse fácilmente de forma gráfica:
Error por redondeo en doble precisión
Miguel Rodríguez 6
x(t*)
f(t*).h
!2)( 2* h
dttdf
⋅
!3)( 3
2
*2 hdt
tfd⋅
x(t*+h)
+
++
=
Principio de la Integración Numérica: La precisión de la aproximaciónError por Redondeo IIIExiste un segundo tipo de error que resulta de la mantisa finita del ordenador.Los efectos de ese tipo de error pueden ilustrarse fácilmente de forma gráfica:
Error por redondeo en precisión 1.5
Miguel Rodríguez 7
x(t*)
f(t*).h
!2)( 2* h
dttdf
⋅
!3)( 3
2
*2 hdt
tfd⋅
x(t*+h)
+
++
=
Principio de la Integración Numérica: Métodos explicitos de resolución de EDOsLos algoritmos explícitos de resolución de EDOs implican la evaluaciónexplícita de las derivadas y el avance paso a paso en el tiempo sin necesidad derecurrir a procedimientos iterativos. Existen dos métodos muy difundidos yfáciles de usar que utilizan arranque automático. Estos son:
-El Método de Euler-El Método de Runge-Kutta de 4to. Orden
Existen, por otra parte, cientos de algoritmos de esta naturaleza. Muchos deellos son bastante complejos, difíciles de programar y de supervisar. Aquí seprofundizará en los mencionados arriba, ya que son los más utilizados en unagran cantidad de problemas prácticos
Miguel Rodríguez 8
Principio de la Integración Numérica: La integración explicita de Euler IEl método numérico más simple es el método explicito de Euler “ForwardEuler” (FE), un método de primer orden:
Miguel Rodríguez 9
httxftxhtxhtxtxhtx
⋅+≈+
⋅+≈+⇒
)),(()()()()()(
****
***
Principio de la Integración Numérica: La integración explicita de Euler IIUsando métodos explícitos, la simulación no necesita ninguna iteración dentrode un paso si el modelo no contiene bucles algebraicos:
paso 1a:paso 1b:
paso 2a:paso 2b:
paso 3a:paso 3b:
etc.
Miguel Rodríguez 10
)2()2()3()2),2(()2(
)()()2()),(()(
)()()()),(()(
000
000
000
000
000
000
htxhhtxhtxhthtxfhtx
htxhhtxhtxhthtxfhtx
txhtxhtxttxftx
+⋅++=+++=+
+⋅++=+++=+
⋅+=+=
Principio de la Integración Numérica: La integración Implícita de Euler Otro método numérico de primer orden es el método implícito de Euler“Backward Euler” (BE):
Miguel Rodríguez 11
hhthtxftxhtx ⋅+++≈+⇒ )),(()()( ****
Principio de la Integración Numérica: El dominio de la estabilidad numérica IUn sistema lineal, autónomo e invariante con el tiempo puede representarseusando la notación:
con la solución analítica:
La solución es analíticamente estable si.
Miguel Rodríguez 12
00 )(; xttxxx ==×= A
xoetx t )()( ⋅= A
{ } { } 0.0)( <ℜ=ℜ λA eEige
Principio de la Integración Numérica: El dominio de la estabilidad numérica IIUsando el algoritmo FE:
entonces
con
Miguel Rodríguez 13
kk xx ⋅=+ F1
[ ] )()1()()()(
)),(()()(
)(
***
****
kxhkxtxhtxhtx
httxftxhtx
n ⋅⋅+=+⇒
⋅⋅+=+⇒
⋅+=+
AΙA
hn ⋅+= AΙF )(
Principio de la Integración Numérica: El dominio de la estabilidad numérica IIISimulando el sistema lineal escalar:
Usando el algoritmo FE obtenemos
Miguel Rodríguez 14
00 )(; xttxxax ==⋅=
Principio de la Integración Numérica: El dominio de la estabilidad numérica IVCálculo del paso máximo de la integración numérica con FE.Dado un sistema lineal de segundo orden con dos autovalores complejos , λ1 yλ2:
Miguel Rodríguez 15
1max λ
dh =
Principio de la Integración Numérica: El dominio de la estabilidad numérica VUsando el algoritmo BE:
entonces
Miguel Rodríguez 16
[ ][ ]
[ ] 1)(
1)(
**)(
***
)()1(
)()()()()(
−
−
⋅+=
⋅⋅+=+⇒
=+⋅−⇒
+⋅⋅+=+
hF
kxhkx
txhtxhhtxhtxhtx
n
n
n
AΙ
AΙ
AΙA
Principio de la Integración Numérica: El dominio de la estabilidad numérica VISimulando el sistema lineal escalar:
Usando el algoritmo BE obtenemos
Miguel Rodríguez 17
00 )(; xttxxax ==⋅=
Principio de la Integración Numérica: La iteración de NewtonSi estamos usando métodos implícitos para la integración numérica tenemos que iteraren cada paso.Una posible manera de iterar es usando el concepto de una predicción con muchascorrecciones.
Este método se llama la iteración de punto fijo
Miguel Rodríguez 18
Predicción:
kkPk
kkk
xhxxtxfx
⋅+=
=
+1
),(
1ª corrección: Pkk
Ck
kPk
Pk
xhxxtxfx
111
111 ),(
++
+++
⋅+=
=
2ª corrección: 11
21
111
11 ),(
Ckk
Ck
kCk
Ck
xhxxtxfx
++
+++
⋅+=
=
3ª corrección: 21
31
121
21 ),(
Ckk
Ck
kCk
Ck
xhxxtxfx
++
+++
⋅+=
=
Principio de la Integración Numérica: La iteración de Punto Fijo IAplicando la iteración de punto fijo al sistema lineal, obtenemos:
con un número infinito de iteraciones obtenemos:
entonces
con la sustracción
y por eso
Aparentemente se obtiene la misma matriz F que obtuvimos en el caso delalgoritmo BE.
Miguel Rodríguez 19
432)(3
32)(2
2)(1
)(
)()()(
)()(
)(
hhhhhhh
hhh
nC
nC
nC
nP
⋅+⋅+⋅+⋅+=
⋅+⋅+⋅+=
⋅+⋅+=
⋅+=
AAAAIFAAAIF
AAIFAIF
+⋅+⋅+⋅+⋅+= 432)( )()()( hhhhn AAAAIF
+⋅+⋅+⋅+⋅=⋅⋅ 432 )()()()( hhhhh AAAAFA
[ ] )()( nn h IFAI =⋅⋅−
[ ] 1)( −⋅−= hn AIF
Principio de la Integración Numérica: La iteración de Punto Fijo IIDibujamos el dominio de la estabilidad numérica de ese algoritmo:
Aparentemente no nos funcionó muy bien
Miguel Rodríguez 20
[ ] 1)( −⋅−= hn AIF
Principio de la Integración Numérica: La iteración de Punto Fijo III¿Porqué no funcionó?No funcionó porque la serie:
solamente tiene convergencia si todos los autovalores de A·h se encuentrandentro del círculo unitario. Si no es el caso, la sustracción no es válida.
Dentro del círculo unitario el dominio de la estabilidad numérica del método esidéntico con el dominio del algoritmo BE, pero fuera del círculo unitario nohay estabilidad numérica.
Por eso, el algoritmo con iteración de punto fijo no sirve para nada.
Miguel Rodríguez 21
+⋅+⋅+⋅+= 32)( )()( hhhn AAAIF
Principio de la Integración Numérica: Resumen1. En el análisis de algoritmos para la integración numérica de sistemas
dinámicos siempre tiene que considerarse la estabilidad numérica delalgoritmo.
2. La estabilidad numérica de cada algoritmo puede representarse por undominio de estabilidad numérica dibujado en el plano complejo λ · h .
3. El análisis de la estabilidad numérica se hace normalmente para sistemaslineales, autónomos, e invariantes con el tiempo.
4. Existe también una teoría de la estabilidad numérica no lineal, pero esbastante complicada y no es necesario usarla, porque la estabilidadnumérica de un sistema linealizado es la misma que la estabilidadnumérica del sistema original no lineal.
Miguel Rodríguez 22
Principio de la Integración Numérica: Resumen1. En el análisis de algoritmos para la integración numérica de sistemas
dinámicos también tiene que considerarse la precisión del algoritmo.2. La precisión de algoritmos numéricos es influida por varios errores, como
el error por truncamiento, el error por redondeo, y el error poracumulación.
3. El más importante entre ellos es el error por truncamiento que secaracteriza por el orden de aproximación del método.
4. Es importante evaluar el orden de aproximación para sistemas no linealesy vectoriales porque puede pasar que el orden de aproximación de unmétodo es más alto en el caso de un sistema lineal o en el caso de unsistema de primer orden.
Miguel Rodríguez 23
Métodos de Integración Numérica en un Paso: El Algoritmo de HeunComparando las dos aproximaciones de FE y de PC:
puede verse que esas dos aproximaciones pueden combinarse fácilmente con latarea de obtener una aproximación de segundo orden:
es decir
Este método se llama el algoritmo de Heun.
Miguel Rodríguez 24
),(),()1(
),()1(2
kkkkkPC
kkkFE
txfhtxfhxkx
txfhxkx⋅+⋅+≈+
⋅+≈+
))1()1((5.0)1( +++⋅=+ kxkxkx FEPC
predicción:
kkPk
kkk
xhxxtxfx
⋅+=
=
+1
),(
corrección:
)(5.0
),(
11
111Pkkk
Ck
kPk
Pk
xxhxx
txfx
++
+++
+⋅⋅+=
=
Métodos de Integración Numérica en un Paso: Métodos Runge Kutta Explícitos de 2º Orden IPodemos investigar si es posible combinar más de dos aproximacionesdiferentes con la tarea de obtener algoritmos de órdenes más altos.Empezamos con una sola corrección como antes, pero esta vez parametrizada:
Desarrollando en una serie de Taylor como antes se obtiene:
Miguel Rodríguez 25
∂∂
⋅⋅+∂∂⋅⋅⋅⋅++⋅+=+ t
ffxfhfhxx k
kk
kkCk 2212211
2
22211 222
)( βαββββ
predicción:
kkP
kkk
xhxx
txfx
⋅⋅+=
=
11
),(
β
corrección:
)(
),(
22211
1
Pkk
Ck
hkPP
xxhxx
txfx
⋅+⋅⋅+=
=
+
⋅+
ββα
Métodos de Integración Numérica en un Paso: Métodos Runge Kutta Explícitos de 2º Orden IIEsta aproximación:
puede compararse con la expansión de Taylor cortando después del término de2º orden:
de esa forma obtenemos condiciones generales que nos garantizan algoritmosde 2º orden.
Miguel Rodríguez 26
∂∂
⋅⋅+∂∂⋅⋅⋅⋅++⋅+=+ t
ffxfhfhxx k
kk
kkCk 2212211
2
22211 222
)( βαββββ
∂∂
+∂∂
⋅+⋅+≈+ tff
xfhfhxx k
kk
kkk 2
2
1
1212
1
2211
221
2221
=⋅⋅=⋅⋅=+
βββαββ
Métodos de Integración Numérica en un Paso: Métodos Runge Kutta Explícitos de 2º Orden IIIEs cierto que el algoritmo de Heun con:
satisface las tres ecuaciones no lineales en cuatro incógnitas. α2 es el tiempo relativo de lacorrección que siempre debe ser 1 (al final del paso debemos llegar a t∗+h).A veces, los métodos Runge Kutta también se especifican usando una tabla deButcher:
donde la primera fila representa la evaluación de la diferenciación en el tiempo t∗, la segundafila denota la predicción, es decir la primera etapa del algoritmo, mientras la última filaindica la corrección, es decir la aproximación del valor del vector de variables del estado enel tiempo t∗+h. La columna a la izquierda marca los instantes en el tiempo de cada etapamientras las demás columnas dan los valores de los parámetros de cada etapa.
Miguel Rodríguez 27
=
=
5.05.001
;11
βα
0 0 0 1 1 0 x ½ ½
predicción:
kkP
k
kkk
xhxx
txfx
⋅+=
=
+ 2
),(
21
corrección:
)
),(
211
21
21
21
P
kkCk
k
P
k
P
k
xhxx
txfx
++
+++
⋅+=
=
Métodos de Integración Numérica en un Paso: Runge Kutta, Regla explícita del punto medioOtro algoritmo que satisface las tresecuaciones es caracterizado por:
es decir por la tabla de Butcher
Ese algoritmo se llama la regla explícita delpunto medio. El algoritmo puedeimplementarse de la manera siguiente:
Miguel Rodríguez 28
=
=
1005.0
;15.0
βα
0 0 0 ½ ½ 0 x 0 1
Este método es un poco máseconómico que el de Heun,porque su tabla de Butchercontienen un cero más.
Métodos de Integración Numérica en un Paso: Runge Kutta, La familia de los métodos RK explícitoSi permitimos más predicciones(etapas), pueden obtenerse métodosde órdenes más altos:
El más conocido de esa clase dealgoritmos es un método RungeKutta explícito de cuarto orden(RK4) caracterizado por:
Miguel Rodríguez 29
=
=
61
31
31
61
21
21
2121
0100000000
;
11
βα
etapa 0: ),(0
kkP txfx =
etapa j:
),(
11
htxfx
xhxx
jkPjPj
Pij
i jikPj
⋅+=
⋅+= −=∑α
β
última etapa: ∑ =−
+ ⋅⋅+=l
iPi
likk xhxx1
11 β
Métodos de Integración Numérica en un Paso: Runge Kutta, Algoritmo RK4Entonces:
El algoritmo RK4 puedeimplementarse de la formasiguiente:
El error por truncamiento de estemétodo es O(h5), siendo muchomás estable que los anteriores
Miguel Rodríguez 30
0 0 0 0 0 ½ ½ 0 0 0 ½ 0 ½ 0 0 1 0 0 1 0 x 1/6 1/3 1/3 1/6
Se trata de un algoritmoexplícito en un paso decuarto orden en cuatroetapas.
etapa 0: ),( kkk txfx = etapa 1:
),(21
112
1
+=
⋅+=
k
PPk
hk
P
txfx
xxx
etapa 2:
),(21
22
12
2
+=
⋅+=
k
PP
Pk
hk
P
txfx
xxx
etapa 3:
),( 133
23
+=
⋅+=
kPP
Pkk
P
txfx
xhxx
etapa 4: [ ]32161 22 PPP
kh
kk xxxxxx +⋅+⋅+⋅+=+
Métodos de Integración Numérica en un Paso: Runge Kutta, Historia de los Métodos RK Explícitos
Miguel Rodríguez 31
Encontrado por Año Orden EtapasEuler 1768 1 1Runge 1895 4 4Heun 1900 2 2Kutta 1901 5 6Huta 1956 6 8Shanks 1966 7 9Curtis 1970 8 11
Métodos de Integración Numérica en un Paso: Runge Kutta Simpson de 4º orden
Miguel Rodríguez 32
etapa 0: ),( kkk txfx = etapa 1:
),(31
113
1
+=
⋅+=
k
PP
kh
kP
txfx
xxx
etapa 2:
),(32
22
13
2
+=
⋅+⋅−=
k
PP
Pkk
hk
P
txfx
xhxxx
etapa 3:
),( 133
213
+=
⋅+⋅−⋅+=
kPP
Pk
Pkkk
P
txfx
xhxhxhxx
etapa 4: [ ]32181 33 PPP
kh
kk xxxxxx +⋅+⋅+⋅+=+
0 0 0 0 0 1/3 1/3 0 0 0 2/3 -1/3 1 0 0 1 1 -1 1 0 X 1/8 3/8 3/8 1/8
Tabla Butcher
Métodos de Integración Numérica de Paso Variable:Métodos Runge Kutta
Miguel Rodríguez 33
Los métodos del tipo Runge Kutta no tienen forma de evaluar elerror cometido en cada iteración, sin embargo es posiblecombinar dos métodos orden diferente o utilizar un método condos pasos de integración diferentes, para estimar el error y enbase a este, decidir si es necesario o no cambiar el tamaño delpaso de integración (reducirlo o incrementarlo), teniéndoseentonces un método de paso variable
Métodos de Integración Numérica de Paso Variable:Método Runge Kutta Fehlberg de 2º OrdenSe combinan dos métodos de diferente orden , para estimar el error cometido en cadaiteración de la solución. Este método está dada por el siguiente algoritmo:
Donde h’ es el paso variable
Miguel Rodríguez 34
+<=
+>=
+
+
100/)Re('2'
100/)Re(2''
1
1
k
k
xlErrErrorAbsErrorsihh
xlErrErrorAbsErrorsihh
etapa 0: ),( kkk txfx = etapa 1:
),(21
112'1
+=
⋅+=
k
PP
kh
kP
txfx
xxx
etapa 2:
),(
'
122
1256
255256
'2
+
⋅
=
⋅+⋅+=
kPP
Pk
hk
hk
P
txfx
xxxx
etapa 3: 2512
'1256
'255512
'1
PhPhk
hkk xxxxx ⋅+⋅+⋅+= ⋅
+
512)(' 2P
k xxhError −
=
ErrorAbs y ErrRel sonasignados en la exactitudde la integración
Métodos de Integración Numérica de Paso Variable:Método Runge Kutta Fehlberg de 4º Orden ISe utiliza un método de quinto orden para estimar el error cometido por un método decuarto orden y toma decisiones sobre el tamaño del paso de integración:
Miguel Rodríguez 35
etapa 0: ),( kkk txfx = etapa 1:
),(41
114'1
+=
⋅+=
k
PP
kh
kP
txfx
xxx
etapa 2:
),(32
'932
'3
83
22
12
+=
⋅⋅
+⋅⋅
+=
k
PP
Pkkk
P
txfx
xhxhxx
etapa 3:
),(2197
'72962197
'72002197
'1932
1312
33
213
+=
⋅⋅
+⋅⋅
−⋅⋅
+=
k
PP
Pk
Pkkk
P
txfx
xhxhxhxx
etapa 4:
),(4104
'845513
'3680'8216
'439
134
3214
+=
⋅⋅
−⋅⋅
+⋅⋅−⋅⋅
+=
kPP
Pk
Pk
Pkkk
P
txfx
xhxhxhxhxx
Métodos de Integración Numérica de Paso Variable:Método Runge Kutta Fehlberg de 4º Orden IIContinua:
Donde,
con
Miguel Rodríguez 36
etapa 5:
),(40
'114104
'18592565
'3544'227
'8
21
35
43215
+=
⋅⋅
−⋅⋅
+⋅⋅
−⋅⋅+⋅⋅
−=
k
PP
Pk
Pk
Pk
Pkkk
P
txfx
xhxhxhxhxhxx
etapa 6: 432
1 5'1
4104'2197
2565'1408
216'25 PPP
kkk xhxhxhxhxx ⋅⋅
−⋅⋅
+⋅⋅
+⋅⋅
+=+
5432
552
501
752402197
4275128
360PPPPk xxxxxR
++−−=
41
)3(1)4(1
)/(84.0
2'
RTolE
xxhR kk
=
−= ++
δ
Métodos de Integración Numérica de Paso Variable:Método Runge Kutta Fehlberg de 4º Orden IIIsi
Miguel Rodríguez 37
⋅=≤≥
⋅=>≥
⋅=≥≤
⋅=<≤
'1.0')1.0(&)(
'')1.0(&)(
'4')4(&)(
'')4(&)(
hhTolER
hhTolER
hhTolER
hhTolER
δ
δδ
δ
δδ Se calcula el siguientepaso n+1
Se regresa al pasoanterior n
Métodos de Integración Numérica:
La expresión general de los métodos numérica está dada por:
Donde el último valor de t en que se calculó y es tn y el número de valorespasados usados para calcular yn+1 es p+1.Sí b-1=0, yn+1 está expresado con una combinación lineal de valores conocido,las fórmulas con b-1=0 se conocen como fórmulas de integración directas oabiertas.Sí b-1≠0, yn+1 es una función implícita porque necesitamos la derivada de yn+1.Esto se conoce como fórmula de integración implícita. Y hay que realizariteraciones de predicción corrección para hallar la solución.El uso de fórmulas explícitas e implícitas permiten estimar y corregir loserrores por truncamiento local.
Miguel Rodríguez 38
∑∑=
−=
−+ +=p
iini
p
iinin ybhyay
101
Métodos de Integración Numérica:Fórmula directa: Método Adams-BashforthSe conocen también como métodos de predictores de Adams-Bashforth. Los métodosmás usados son los de 2º y 4º orden.
Método de 2º Orden:
Método de 4º Orden:
Se requieren del conocimiento de la derivada evaluada en uno o hasta 3 instantesanteriores respectivamente, Por lo que se debe iniciarse usando un procedimientoRunge-Kutta del mismo orden para obtener la información inicial requerida.
Miguel Rodríguez 39
)(];3[21 3
11 hyyhyy nnnn ο−+ −+=
)(];9375955[241 5
3211 hyyyyhyy nnnnnn ο−−−+ −+−+=
Métodos de Integración Numérica:Fórmulas implícitas: Método Adams-MoultonNo pueden utilizarse solas y se les llaman métodos o correctores de Adams-Moulton.Los métodos más usados son los de 2º y 4º orden.
Método de 2º Orden o Método Trapezoidal Cerrado:
Método de 4º Orden:
Miguel Rodríguez 40
)(];[21 3
11 hyyhyy nnnn ο −+= ++
)(];5199[241 5
2111 hyyyyhyy nnnnnn ο−−++ +−++=
Métodos de Integración Numérica:Métodos Predictor-CorrectorSe utilizan los dos métodos vistos anteriormente, para asegurar la fortaleza de losmétodos implícitos y la simplicidad de los métodos directos.
Método Trapezoidal Modificados (2º orden)Predictor:
Corrector
Miguel Rodríguez 41
),(
];3[21
)0(1
)0(1
1)0(1
htyfy
yyhyy
nnn
nnnn
+=
−+=
++
−+
];[21 )0(
11 nnnn yyhyy ++= ++
Métodos de Integración Numérica:Métodos Predictor-CorrectorMétodo Adams-Bashforth-Moulton (4º orden)Predictor:
Corrector
Miguel Rodríguez 42
),(
];9375955[241
)0(1
)0(1
321)0(1
htyfy
yyyyhyy
nnn
nnnnnn
+=
−+−+=
++
−−−+
];5199[241
21)(1
)1(1 −−+++ +−++= nnn
jnn
jn yyyyhyy
Métodos de Integración Numérica:Métodos Predictor-CorrectorMétodo Milne (4º orden)Predictor:
Corrector
Miguel Rodríguez 43
),(
];22[34
)0(1
)0(1
213)0(1
htyfy
yyyhyy
nnn
nnnnn
+=
+−+=
++
−−−+
];49[31
1)(11
)1(1 −+−++ +++= nn
jnn
jn yyyhyy
Métodos de Integración Numérica:Métodos Predictor-CorrectorMétodo Milne (6º orden)Predictor:
Corrector
Miguel Rodríguez 44
),(
];1114261411[103
)0(1
)0(1
43215)0(1
htyfy
yyyyyhyy
nnn
nnnnnnn
+=
+−+−+=
++
−−−−−+
];73212327[452
321)(13
)1(1 −−−+−++ +++++= nnnn
jnn
jn yyyyyhyy
Métodos de Integración Numérica:Métodos Predictor-CorrectorAlgoritmo de solución:1. Utilizar un algoritmo Runge-Kutta para iniciar la solución y obtener la
información requerida para el método predictor-corrector.2. En cada iteración
Predecir valor de y(0)n+1
Corregir para obtener y(1)n+1
3. Si |y(0)n+1 - y(1)
n+1| < ε y |y(0)n+1 - y(1)
n+1| >δ continuar4. Si |y(0)
n+1 - y(1)n+1| > ε utilizar nuevamente el corrector obteniendo y(1)
n+1 , si en dositeraciones del corrector no se logra la precisión entonces h=h/2. Volver al pasouno para obtener la información requerida.
5. Si |y(0)n+1 - y(1)
n+1| < δ entonces el error cometido es muy pequeño y se puedeacelerar la solución aumentando el paso de integración, volver al paso 1 paraobtener la información requerida.
6. El método continuará doblando o dividiendo el paso de integración de manera demantener el error por truncamiento local dentro de los limites establecidos.
Miguel Rodríguez 45
Métodos de Integración Sistemas RígidosDefinición:Se dice que un sistema es “rígido” cuando presentacaracterísticas dinámicas lentas y rápidas en forma simultánea,esto es que contiene unos elementos dinámicos con constantes detiempo pequeñas y otros con constantes de tiempo grandes,como podría ser el caso de un sistema electromecánico en dondelas constantes de tiempo de los componentes eléctricos, puedenser muy pequeñas en comparación con las constantes de tiempode los componentes mecánicos.
Miguel Rodríguez 46
Métodos de Integración Sistemas RígidosDefinición:La presencia de dinámicas rápidas y lentas dentro del mismosistema de ecuaciones diferenciales introduce dificultades almomento de obtener la integración numérica.Para garantizar la estabilidad y la exactitud de las ecuaciones de laparte dinámica rápida se requiere un paso de integración muypequeño. Pero a la respuestas lentas esto extiende innecesariamentela obtención de la solución de todo el intervalo a integral.Una solución a este problema es utilizar métodos de pasosvariables, los cuales pueden ajustar el paso de integración deacuerdo a las necesidades de las dinámicas del sistema.Para la solución de los sistemas rígidos son preferidos los métodosnuméricos de solución de EDO basado en diferencias retrogradasimplícitas.
Miguel Rodríguez 47
Métodos de Integración Sistemas RígidosEjemplo:Considere el siguiente experimento numérico:Problema 1:
Problema 2:
Solución exacta:
Miguel Rodríguez 48
=
−
+
−
−=
32
)0()0(
,)sin(cos2
sin221
12xy
ttt
xy
dtdxdtdy
=
−
+
−
−=
32
)0()0(
,)sin(cos999
sin299999812
xy
ttt
xy
dtdxdtdy
+
=
−
tt
etxty t
cossin
11
2)()(
Métodos de Integración Sistemas RígidosEjemplo:Simulación 1º problema (Usando RK45), 101 pasos.
Miguel Rodríguez 49
0 1 2 3 4 5 6 7 8 9 10-1
-0.5
0
0.5
1
1.5
2
2.5
31º problema
Métodos de Integración Sistemas RígidosEjemplo:Simulación 2º problema (Usando RK45), 12061 pasos.
Miguel Rodríguez 50
0 1 2 3 4 5 6 7 8 9 10-1.5
-1
-0.5
0
0.5
1
1.5
2
2.5
32º Problema
Métodos de Integración Sistemas RígidosEjemplo:Simulación 2º problema (Usando Trapezoidal), 90 pasos.
Miguel Rodríguez 51
0 1 2 3 4 5 6 7 8 9 10-1
-0.5
0
0.5
1
1.5
2
2.5
32º problema (Trapezoidal)
Métodos de IntegraciónEfecto del paso de integración sobre la exactitud IDado la siguiente ecuaciónUsamos RK de 1º orden
Miguel Rodríguez 52
0)0();cos( ==∂∂ yxxy
Métodos de IntegraciónEfecto del paso de integración sobre la exactitud IIDado la siguiente ecuaciónUsamos RK de 3º orden
Miguel Rodríguez 53
0)0();cos( ==∂∂ yxxy
Métodos de IntegraciónEfecto de errores de precisiónEl error de precisión puede hacer que la simulación falle. Por ejemplo:hallemos la solución numérica de
La respuesta de esta función tiende a Cero, Pero al acercarse a cero, si elintegrador produce un valor negativo aproximado a cero, el sistema se haceinestable.
Miguel Rodríguez 54
1)0(; =−=∂∂ yyxy
Métodos de IntegraciónEfecto de errores de precisión, y valores negativos
Miguel Rodríguez 55
0 5 10 15 20 25 30 35 40-5
-4
-3
-2
-1
0
1Problema de precisión y valores negativos
Métodos de IntegraciónEfecto de errores de precisión, y valores negativosSe puede solucionar estos problemas incluyendo al algoritmo de integración
un algoritmo que evite la solución pueda tener un valor negativo. En Matlab,este algoritmo se activar usando la opción “NonNegative”
Miguel Rodríguez 56
0 5 10 15 20 25 30 35 40-5
-4
-3
-2
-1
0
1
Exact solutionNo constraintsNonnegativity