clase6-rungekutta
clase6-rungekutta
25 de marzo de 2023
1
Contenidos
2
Limitaciones del método de Euler
Problemas con el método de Euler
1. Lenta convergencia.
2. No es siempre estable.
3
Ejemplo
1
correcta
0
h=1
−1 h=0.5
−2
−3
−4
0 1 2 3 4 5
4
Modelos oscilatorios
u ′′ (t) + ω 2 u(t) = 0
Ejemplo
Por ejemplo sea x (t) una función que modela la posición de un
cuerpo de masa m atado a un resorte. Supongamos que x = 0 es
la posición de equilibrio del cuerpo. Si estiramos o comprimimos
el resorte a una posición x (t) la ley de Hooke dice que la fuerza
es F (t) = −kx (t) donde k es una constante. Por la ley de
Newton la función x (t) es solución de
x (0) = X0 , X ′ (0) = 0
Solución Numérica
Para la solución numérica definimos dos nuevas funciones
u(t) = x (t), v (t) = x ′ (t). Tenemos entonces el sistema
u ′ (t) = v (t)
v ′ (t) = −ω 2 u(t)
6
Método de Euler
En el método de Euler se usa
un+1 = un + hvn
vn+1 = vn − hω 2 un
7
K = 3, N = 20
numerica
30 exacto
20
10
−10
−20
0 2 4 6 8
t
8
K = 3, N = 60
numerica
exacto
4
−2
−4
0 2 4 6 8
t
9
K = 3, N = 120
numerica
exacto
3
−1
−2
−3
0 2 4 6 8
t
10
Idea
11
Idea
un+1 = un + hvn
11
Idea
un+1 = un + hvn
vn+1 = vn − hω 2 un+1
11
K = 3 y N = 20
numerica
2.0 exacto
1.5
1.0
0.5
0.0
−0.5
−1.0
−1.5
−2.0
0 2 4 6 8
t
12
K = 100 y N = 20
numerica
2.0 exacto
1.5
1.0
0.5
0.0
−0.5
−1.0
−1.5
−2.0
Idea
La idea del método de Euler es usar la fórmula de Taylor de
orden 1
y (t + h) ≈ y (t) + hy ′ (t)
Teorema de Taylor
Sea y de clase C n entonces
∑
n
y (k) (t)
y (t + h) = y (t) + hk + O(h)n+1
k!
k=1
14
Teorema
Si la solución verdadera del sistema es de clase C n+1 , entonces
|ek | = O(hn )
|ϵk | = O(hn+1 )
|E | = O(hn )
15
Orden 2
1. Calcular
( )
′ d ∂ ∂ d ∂ ∂
f = f (t, y (t)) = f + f y= f + f f
dt ∂t ∂y dt ∂t ∂y
16
Orden 2
1. Calcular
( )
′ d ∂ ∂ d ∂ ∂
f = f (t, y (t)) = f + f y= f + f f
dt ∂t ∂y dt ∂t ∂y
16
Orden 2
1. Calcular
( )
′ d ∂ ∂ d ∂ ∂
f = f (t, y (t)) = f + f y= f + f f
dt ∂t ∂y dt ∂t ∂y
entonces tk+1 = tk + h.
16
4. Definir recursivamente
h2 ′
yk+1 = yk + hf (tk , yk ) + f (tk , yk )
2
17
4. Definir recursivamente
h2 ′
yk+1 = yk + hf (tk , yk ) + f (tk , yk )
2
5. Tomar la poligonal que pasa por puntos (tk , yk ).
17
4. Definir recursivamente
h2 ′
yk+1 = yk + hf (tk , yk ) + f (tk , yk )
2
5. Tomar la poligonal que pasa por puntos (tk , yk ).
6. Esta poligonal está definida por una función ỹ (t) que es la
solución aproximada.
17
Oscilador
u′ = v
v ′ = −ω 2 u
Derivando obtenemos
u ′′ = v ′ = −ω 2 u
v ′′ = −ω 2 u ′ = −ω 2 v
18
Esto lleva a la aproximación
h2 2
u(t + h) = u(t) + hv (t) − ω u(t)
2
h2
v (t + h) = v (t) − hω 2 u(t) − v (t)
2
Discretizamos y obtenemos
h2 2
un+1 = un + hvn − ω un
2
h2
vn+1 = vn − h2 ω 2 un − ω 2 vn
2
19
K = 3, N = 20
numerica
exacto
2
−1
−2
0 2 4 6 8
t
20
K = 3, N = 60
numerica
2.0 exacto
1.5
1.0
0.5
0.0
−0.5
−1.0
−1.5
−2.0
0 2 4 6 8
t
21
K = 3, N = 120
numerica
2.0 exacto
1.5
1.0
0.5
0.0
−0.5
−1.0
−1.5
−2.0
0 2 4 6 8
t
22
Comparación K = 3 N = 60
numerica numerica
exacto 2.0 exacto
4 1.5
1.0
2
0.5
0.0
0
−0.5
−2 −1.0
−1.5
−4
−2.0
0 2 4 6 8 0 2 4 6 8
t t
23
Limitaciones del método
numerica
2.0 exacto
1.5
1.0
0.5
0.0
−0.5
−1.0
−1.5
−2.0
25
Idea
25
Idea
25
Métodos de orden 2
Idea básica
El método de Runge Kutta de orden 2 sale de tomar yn = y (tn )
k1 = hf (tn , yn )
k2 = hf (tn + ph, yn + qk1 )
y
yn+1 = yn + ak1 + bk2
26
Determinación de los coeficientes
h2 ′′
y (t + h) = y (t) + hy ′ (t) + y (t)
2
h2 d
= y (t) + hf (t, y (t)) + f (t, y (t))
2 dt
h2 ∂
= y (t) + hf (t, y (t)) + ( f (t, y (t))
2 ∂t
∂
+ f (t, y (t))f (t, y (t)))
∂y
27
Por la fórmula de Taylor en varias variables (con y = y (t)) vale que
∂ ∂
f (t + ph, y + qk1 ) = f (t, y ) + f (t, y)ph + f (t, y)qk1
∂t ∂y
Juntando todo sale que se debe cumplir
a + b = 1, aq = 0.5, bq = 0.5
28
Elecciones usuales
Métodos usuales
Hay tres métodos usuales.
29
K = 10 y N = 20
numerical
exact
2
−1
−2
0 5 10 15 20 25 30
t
30
K = 10 y N = 60
numerical
2.0 exact
1.5
1.0
0.5
0.0
−0.5
−1.0
−1.5
−2.0
0 5 10 15 20 25 30
t
31