análisis numérico para ingeniería - mdp · clase nro. 4. mg. ing. francisco a. lizarralde...
TRANSCRIPT
Análisis Numérico para Ingeniería
Clase Nro. 4
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 2
Ecuaciones Diferenciales Ordinarias
Sistemas de EDOs de 1er. Orden.
Transformación de EDOs de orden n.
Resolución de Sistemas de 1er. Orden.
Estabilidad del método de Runge-Kutta (4to.)
Estrategias de ajuste del paso h.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 3
Sistemas de EDOs de 1er. orden
Infinidad de problemas de diversas áreas del conocimiento como la física, la química, la biología, la economía, la ingeniería, etc. se expresan a menudo en términos de ecuaciones diferenciales ordinarias.
Estas ecuaciones pueden estar relacionadas entre sí, por lo que conforman sistemas de ecuaciones diferenciales.
Las ecuaciones diferenciales de orden n, pueden transformarse en sistemas de ecuaciones de primer orden, para su resolución.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 4
Ejemplo de Sistemas de EDOs
El modelo SIR, desarrollado por el químico escocés William Ogilvy Kernack y el matemático A.G. McKendrick , modela la evolución de una enfermedad infecto-contagiosa.
dSdt
=−⋅I⋅S
dIdt
=⋅I⋅S−v⋅I
dRdt
=v⋅I
MODELO SIREl modelo divide a la población en individuos suceptibles de ser infectados, individuos infectados e individuos recuperados de la enfermedad.
SUCEPTIBLE
RECUPERADO
INFECTADO
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 5
Ejemplo de Sistemas de EDOs
En el año 1978 en la revista científica British Medical Journal se publicaron los datos de un brote de gripe en un internado del norte de Inglaterra que se extendio del 22 de enero al 4 de febrero, infectando a 512 de las 763 personas que allí estudiaban.
Debido a que en este caso concreto se cuenta con datos reales y la cantidad de individuos permanece constante, es un escenario ideal para corroborar la exactitud del modelo SIR para predecir la evolución de la infección.
Precisamente para este caso en particular se han determinado los siguientes valores: v = 0.4477 y β = 0.0022.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 6
Ejemplo de Sistemas de EDOsEn este caso los valores iniciales son:Individuos Infectados: I
0 = 1,
Individuos Suceptibles: S0 = 762,
Individuos Recuperados: R0
= 0
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 7
EDOs de orden n
dn y
dxn =f x , y ,dydx
,d2 y
dx2, ,dn−1 y
dxn−1
y∣x=x0= y0
dydx ∣
x=x0
= y ' 0
d(2) y
dx2 ∣x=x0
= y ' '0
………………
d(n−1) y
dxn−1 ∣x=x0
= y0(n−1)
Una EDO de orden n puede transformarse en un sistema de n ecuaciones de primer orden.
CONDICIONESINICIALES
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 8
dn y
dxn =f x , y ,dydx
,d2 y
dx2, ,dn−1 y
dxn−1 =f x , y , p , q , , w
dydx
= y '= p
d2 y
dx2 = y ' '=p '= q
dn−1 y
dxn−1=z '= w
Las EDOs de orden n se transforman en sistemas de n ecuaciones de primer orden para poder resolverlas con los métodos ya vistos.
Sustituimos cada derivada por una nueva variable.
Algoritmo de transformación
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 9
y ' ' 'x⋅y ' '−x⋅y '−2⋅y=xx0=0 ; y x0
= y ' ' x0=0 ; y ' x0
=1
y '= pp '= qq '= x−x⋅qx⋅p2⋅y
Sustituimos cada derivada por una nueva variable.
Ecuación diferencial de orden 3
Sistema de 3 ecuaciones diferenciales de 1er. orden
Ejemplo (I)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 10
Ejemplo (II)
La fuerza de atracción gravitatoria que experimenta un cuerpo que se mueve en el espacio rodeado por otros cuerpos, puede describirse por medio de la siguiente ecuación diferencial de segundo orden.
mi⋅∂
2qi
∂ t 2 =∑i=1i≠ j
n −G⋅mi⋅m j⋅(qi−q j)
r i , j3
r i , j=∥qi−q j∥
Siendo :
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 11
Ejemplo de aplicación
Calcular la trayectoria de un cometa que se desplaza en la proximidad de un planeta, considerando la siguiente ecuación diferencial, que considera despreciables a las fuerzas inducidas por otros cuerpos más lejanos ó con masas mucho más pequeñas.
m2⋅∂
2 qi
∂ t2 =−G⋅m1⋅m2⋅(q1−q2)
r1,23
Este modelo es particularmente interesante, ya que en el caso de 3 ó más cuerpos, que interactúan gravitatoriamente entre sí, no es posible calcular, en forma analítica, la solución a este problema.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 12
Trayectoria del CometaEn este caso, la posición del planeta no permanece fija, sino que posee un leve desplazamiento circular.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 13
M 1⋅y ' '1+B1⋅y '1+k1⋅y1−B1⋅y '2−k 2⋅y2=F1(t)−B1⋅y '1−k1⋅y1+M 2⋅y ' '2+B1⋅y '2+(k1+k2)⋅y2=0
Sistema de 2 ecuaciones diferenciales de orden 2
Sistema Masa – Resorte - Amortiguador
Resolución completa de un problema
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 14
M 1⋅y ' '1B1⋅y '1k1⋅y1−B1⋅y '2−k2⋅y2=F1t −B1⋅y '1−k1⋅y1M 2⋅y ' '2B1⋅y '2k1k2⋅y2=0
y1 '= v1
v1 '=F1 t −B1⋅v1B1⋅v2−k1⋅y1k2⋅y2
M1
y2 '= v2
v2 '=B1⋅v1k1⋅y1−B1⋅v2− k1k2⋅y2
M2
Sistema de 2 ecuaciones diferenciales de orden 2
Sistema de 4 ecuaciones diferenciales de 1er. orden
Transformación del Ejemplo (II)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 15
1
v = t y1
v1
y2
v2
v(0) v(1) v(2) v(3) v(4)
vp = y'1
v'1
y'2
v'2
vp(0) vp(1) vp(2) vp(3) vp(4)
Vector de variables
Vector de derivadas
La utilización de vectores simplifica notablemente la implementación de los métodos para resolver sistemas de ecuaciones diferenciales.
Implementación con vectores
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 16
1
v = t y1
v1
y2
v2
v(0) v(1) v(2) v(3) v(4)
vp = y'1
v'1
y'2
v'2
vp(0) vp(1) vp(2) vp(3) vp(4)
Vector de variables
Vector de derivadas
y1 '= v1
v1 '=F1 t −B1⋅v1B1⋅v2−k1⋅y1k2⋅y2
M1
y2 '= v2
v2 '=B1⋅v1k1⋅y1−B1⋅v2− k1k2⋅y2
M2
Implementación con vectores (II)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 17
1
v = t y1
v1
y2
v2
v(0) v(1) v(2) v(3) v(4)
vp = y'1
v'1
y'2
v'2
vp(0) vp(1) vp(2) vp(3) vp(4)
Vector de variables
Vector de derivadas
vp(1)= v (2)
vp(2)=F1(v (0))−B1⋅v (2)+B1⋅v (4)−k1⋅v (1)+ k2⋅v (3)
M1
vp(3)= v (4)
vp(4)=B1⋅v (2)+k1⋅v (1)−B1⋅v (4)−(k1+k2)⋅v (3)
M 2
Implementación con vectores (III)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 18
Definición de la Función Derivada
MODULE sistema_MRA! Cantidad de Ecuaciones del SistemaINTEGER, PARAMETER :: cant_ec = 4
CONTAINS
FUNCTION v_prima(v)! Definición del Sistema de Ecuaciones DiferencialesREAL(8), PARAMETER :: m1=1.0, m2=0.05, k1=5.0, k2=5.0, b1=1.0REAL(8), DIMENSION(0:cant_ec) :: v, v_prima
v_prima(0) = 1.0 v_prima(1) = v(2) v_prima(2) = (-b1*v(2)+b1*v(4)-k1*v(1)+k2*v(3))/m1 v_prima(3) = v(4) v_prima(4) = (-b1*v(4)+b1*v(2)-k1*v(3)+k1*v(1)-k2*v(3))/m2 END FUNCTION v_prima
END MODULE
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 20
Solución Euler Simple (h=0.1)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 22
Solución Euler Modificado (h=0.1)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 24
Solución Runge-Kutta 4to. Orden (h=0.1)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 26
Runge-Kutta-Fehlberg (h=0.1)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 27
Estabilidad en Runge Kutta (4to.Orden)
Para analizar la estabilidad del método de Runge-Kutta de 4to. orden, consideremos por ejemplo, la siguiente ecuación diferencial:
y '=α⋅y
y t = y0⋅e⋅t Cuya solución analítica es:
Donde α < 0
yn1= yn⋅e⋅hSiendo el valor exacto de yn+1
:
Por lo tanto el valor de | yn+1
| decrece a medida que aumenta n.
[2]
[1]
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 28
k1=α⋅h⋅yn
k2=α⋅h⋅( yn+k1
2) =α⋅h⋅(1+
α⋅h2
)⋅yn
k3=α⋅h⋅( yn+k2
2) =α⋅h⋅(1+
α⋅h2
⋅(1+α⋅h2
))⋅yn
k4=α⋅h⋅( yn+k3) =α⋅h⋅(1+α⋅h2
⋅(1+α⋅h2
⋅(1+α⋅h2
)))⋅yn
yn+1=[1+α⋅h+12⋅(α⋅h)2+
16⋅(α⋅h)3+
124
⋅(α⋅h)4]⋅yn
La solución numérica de la ecuación diferencial , obtenida por medio del método de Runge-Kutta de 4to. Orden se puede expresar como:
y '=α⋅y
[3]
Estabilidad en Runge Kutta (4to.Orden)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 29
La ecuación [3], expresada en la página anterior es igual a los primeros términos del desarrollo de Taylor para el lado derecho de la ecuación [2].
Así podemos considerar que el factor:
δ=[1+α⋅h+12⋅(α⋅h)
2+
16⋅(α⋅h)
3+
124
⋅(α⋅h)4] [4]
aproxima a de la ecuación [2], por lo que en esta aproximación se originan tanto el error de truncamiento, como la inestabilidad de la ecuación [3].
eα⋅h
Estabilidad en Runge Kutta (4to.Orden)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 30
Runge Kutta (h=0.05)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 31
Runge-Kutta (h=0.1)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 32
Runge-Kutta (h=0.15)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 33
Runge-Kutta (h=0.2)
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 34
Runge-Kutta (h=0.2) Intervalo [0, 1]
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 35
M 1⋅y ' '1+B1⋅y '1+k1⋅y1−B1⋅y '2−k 2⋅y2=F1(t)−B1⋅y '1−k1⋅y1+M 2⋅y ' '2+B1⋅y '2+(k1+k2)⋅y2=0
Sistema de 2 ecuaciones diferenciales de orden 2
Sistema Masa – Resorte - Amortiguador
Analicemos otro ejemplo
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 36
Estabilidad en Runge-KuttaLa solución obtenida con h=0.14 es bastante satisfactoria.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 37
Estabilidad en Runge-KuttaEn la solución obtenida con h=0.16 se observa un principio de inestabilidad en los valores de la velocidad de la Masa 2.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 38
Estabilidad en Runge-KuttaEn la solución obtenida con h=0.18 la inestabilidad en los valores de la velocidad de la Masa 2, se hace más evidente.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 39
Estabilidad en Runge-KuttaEn la solución obtenida con h=0.19 la inestabilidad en los valores de la velocidad de la Masa 2, se hace más evidente.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 40
Estabilidad en Runge-KuttaEn la solución obtenida con h=0.195 la inestabilidad en los valores de la velocidad de la Masa 2, está presente en todo el intervalo.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 41
Estabilidad en Runge-KuttaEn la solución obtenida con h=0.197 la inestabilidad hace que los valores de la velocidad de la Masa 2 crezcan incontrolablemente.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 42
Estrategias de ajuste del paso h
La exactitud de los métodos numéricos de resolución de ecuaciones diferenciales depende fuertemente del paso h elegido.
Existen diferentes estrategias para ajustar automáticamente el paso h y de esta forma mantener el error de la solución por debajo de una cierta tolerancia establecida.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 43
Estimación del Error
ERRORESTIMADO
x1
xn
yn+1
yn
h
y*n+1
h/2 h/2
Valor calculado en un solo paso h.
Valor calculado en dos pasos h/2.
En aquellos métodos que no tienen una fórmula específica para la estimación del error, es posible estimarlo por medio de la diferencia del valor calculados con un paso de avance h y del obtenido al avanzar dos pasos h/2.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 44
Estrategia de ajuste 1
Se calcula el valor yn+1
utilizando un paso de avance h.
Se calcula el valor y*n+1
utilizando dos pasos de avance h/2.
Si el valor absoluto de la diferencia entre ambos valores es mayor a la tolerancia establecida, entonces se establece h/2 como nuevo valor de h y se vuelve al paso 1.
Si el valor absoluto de la diferencia entre ambos valores es menor a la mitad de la tolerancia establecida, entonces se establece 2*h como nuevo valor de h y se vuelve al paso 1.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 45
Diagrama de Flujo de la estrategia 1
CALCULAR YN+1
CON UN PASO h
CALCULAR Y*N+1
CON DOS PASOS h/2
|YN+1
– Y*N+1
| > tol
|YN+1
– Y*N+1
| < (tol / 2)
HACER h=h/2
HACER h=2*h
SI
NO
SI
NO
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 47
Variación del error con la Estrategia 1El paso se reduce de ser necesario, pero nunca se aumenta.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 48
Variación del paso h con la Estrategia 1El paso se reduce de ser necesario, pero nunca se aumenta.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 49
Variación del error con la Estrategia 1El paso se reduce o se aumenta para lograr la cota de error deseada.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 50
Variación del paso h con la Estrategia 1El paso se reduce o se aumenta para lograr la cota de error deseada.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 51
Estrategia de ajuste 2
A partir de una estimación del error obtenida por medio de un método como por ejemplo Runge-Kutta-Fehlberg, podemos ajustar el valor de h, en cada paso.
hnuevo=hactual⋅∣tol problema
RKF∣
El valor de α se ajusta en base a la relación entre el valor estimado del error y la tolerancia establecida.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 52
Diagrama de la estrategia 2
tol >= errorRKF
SI
NOHACER α=0.2
HACER α=0.22
h=h∗∣tol
error RKF
∣
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 53
Variación del error con la Estrategia 2El paso se ajusta de acuerdo al valor de error calculado.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 54
Variación del paso h con la Estrategia 2El paso se ajusta de acuerdo al valor de error calculado.
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 55
Comparación de ambas estrategias
Mg. Ing. Francisco A. Lizarralde Facultad de Ingeniería - UNMDP - 2017 58
PREGUNTAS ...