Professional Documents
Culture Documents
Motivación
● Problema del paracaidista
dv c
= g− v t
dt m
● v: variable dependiente
(incógnita)
● t: variable independiente (dato)
● EDOs:
dv c
De primer orden = g− v t
●
dt m
2
● De segundo orden m x c d x k x =0
d
d t2 dt
EDOs de segundo orden
● Se transforman en un sistema de EDOs de
primer orden con una sustitución:
2
dx dy d x
y= ⇒ = 2
dt d x dt
● reemplazando
dy dy c y k x
m c y k x= 0 ⇒ =−
dt dt m
● El sistema,
dx
=y
dt
dy c y k x
=−
dt m
Solución de EDOs sin computadora
● En algunos casos se obtiene por integración
indefinida:
c
dv c c
gm − t
= g− v t ⇒ v=∫ g− v t d t ⇒ v t = 1− e m
dt m m c
● Técnica habitual: linealización
● Ejemplo: péndulo
● EDO original (no lineal)
2
d g
sin = 0
dt 2
l
● Si θ es pequeño (EDO lineal)
2
d g
=0
dt 2
l
Ejemplos de EDOs en Ingeniería
● Segunda ley de Newton del movimiento:
dv F
=
dt m
● Ley del calor de Fourier:
dT
q=−k
dx
● Ley de difusión de Fick:
dC
J =− D
dx
● Ley de Faraday:
di
V=L
dt
Solución de problemas
Antecedentes matemáticos
● Solución de una EDO: función de la v.i. Y de las
condiciones iniciales.
● Supongamos
4 3 2
y=−0.5 x 4 x −10 x 8.5 x1
● Derivando,
dy 3 2
=−2 x 12 x −20 x8.5
dx
● Graficando,
Antecedentes matemáticos
Antecedentes matemáticos
● Ahora suponemos que debemos resolver la
EDO:
dy 3 2
=−2 x 12 x −20 x8.5
dx
● Integrando,
y i1 = y i h
dy
= .... donde??
dx
Método de Euler
● La pendiente se estima como:
= f xi , yi
● Por lo tanto,
y i1 = y i f x i , y i h
Ejemplo 25.1 pag. 720
● Resolver, para x entre 0 y 4 con h = 0.5,
dy 3 2
=−2 x 12 x −20 x8.5 , y 0=1
dx
● solución exacta: y=−0.5 x 44 x 3−10 x 28.5 x1
● Solución. En el primer paso,
y 0.5= y 0 f 0,1× 0.5=1.08.5×0.5=5.25
● La solución verdadera es
4 3 2
y 0.5=−0.5× 0.5 4× 0.5 −10× 0.5 8.5× 0.5 1= 3.21875
● El error E t =3.21875−5.25=−2.03125
t =−63.1 %
Ejemplo 25.1 pag. 720
● Solución completa: 25_1.ods
Análisis del error en el método de
Euler
● Errores de
● Truncamiento
– Local
– Global
● Redondeo
● Serie de Taylor
III n
y ' ' i 2 yi 3 yi n
y i 1 = y i y ' i h h h ... h Rn
2! 3! n!
● Es decir
f ' xi , yi 2 2
y i 1 =
y i f x i , yi h h ... ⇒ E a =O h
2!
Euler Error local
error
Ejemplo 25.2
● Calcular el error del método de Euler en el
primer paso del ejemplo 25.1
f ' x i , y i 2 f ' ' x i , y i 3 f III x i , y i 4
● Solución Et= h h h
2! 3! 4!
● donde
2
f ' x i , y i =−6 x 24 x − 20 ⇒ f ' 0,1=−20
f ' ' x i , y i =−12 x 24 ⇒ f ' ' 0,1= 24
III
f x i , y i =−12
● luego
20 2 24 3 12 4
E t =− 0.5 0.5 − 0.5 =−2.5 0.5−0.03125=−2.03125
2 6 24
Análisis del error en el método de
Euler
● Error local O(h²) --> error global O(h)
● El error se reduce reduciendo h
● El método es exacto para y lineal (f' = 0)
Ejemplo 25.3
● Repita el ejemplo 25.1
con h = 0.25
● Solución: 25_3.ods
Algoritmo del método de Euler
● Código en Octave: euler.m
Ejemplo 25.4
● Resolver el problema del paracaidista
dv c
= g− v t lineal
dt m
[ ]
b
dv c v
= g− va No lineal
dt m v max
● Datos: m = 68.1 kg ; c = 12.5 kg/s; v = 0 en t = 0
● Donde: a = 8.3 , b = 2.2 y v max = 46 son
constantes empíricas
● Código en Octave: p25_4.m
Método de Heun
● Se predice por Euler:
0
y i1 = yi f x i , y i h
predictor
● Para estimar
0
y ' i 1= f x i1 , y i1
● Que sirve para calcular
y ' i y ' i 1
y i1 = y i h
2 corrector
0
f x i , y i f x i 1 , y i 1
y i 1= y i h
2
Método de Heun
● Se puede plantear el
esquema predictor –
corrector en forma
iterativa, hasta que
∣ y ij1− y i1
∣
j−1
∣ t∣= j
100% s
y i1
Ejemplo 25.5
● Resolver, con h = 1
0.8 x
y ' =4 e −0.5 y , 0≤ x ≤4 , y 0=2
● Solución analítica: 4 0.8 x −0.5 x
y= e −e 2 e −0.5 x
1.3
0
● Primer paso: y ' 0=4 e −0.5×2=3
0
predictor y =23×1=5
1
corrector 3 6.402164
y 1=2 ×1=6.701082
2
● Solución completa: 25_5.ods
Error del método de Heun
● Supongamos que y' = f(x,y) = f(x) entonces
f x i f x i 1
y i 1= y i h
2
regla del trapecio
y i 1 x i1 x i1
dy
dx
= f x ⇒ ∫ d y=∫ f x d x ⇒ y i 1− y i = ∫ f x d x
yi xi xi
f x i f x i 1
y i 1= y i hO h3 Error local
2 --> error global O(h²)
Error del método de Heun
dy 3 2
Solución de =−2 x 12 x −20 x8.5
dx
Método del punto medio
● Se calcula
h
y i1 / 2= y i f x i , y i
2
y ' i 1/ 2= f x i 1/ 2 , y i1/ 2
∫ f x d x=h f x i1 / 2
xi
Error local: O(h³)
Error global: O(h²)
Algoritmos de los métodos de Heun
y del punto medio
● Se resuelve el problema
y ' =−2 x − y , y 0=1 , 0≤ x ≤1
● Códigos en Octave:
● heun.m
● puntomedio.m
Métodos de Runge - Kutta
● Forma general y i1 = y i
x i , y i , h h
funcion incremento
=a 1 k 1a 2 k 2...a n k n
k 1= f x i , y i
k 2= f x i p1 h , y i q11 k 1 h
k 3= f x i p2 h , y i q 21 k 1 hq 22 k 2 h
...
n−1
k n = f x i p n−1 h , y i ∑ q n−1, j k j h
j=1
Métodos de Runge – Kutta de
segundo orden
● Forma general
y i1 = y i a 1 k 1a 2 k 2 h
k 1= f x i , y i
k 2= f x i p1 h , y i q11 k 1 h
f ' x i , yi 2
● De la serie de Taylor, y i 1 = y i f x i , y i h 2! h
∂ f x i , yi ∂ f xi , y i d y
f ' x i , y i = Regla de la cadena
∂x ∂y dx
2
● reemplazando,
y i 1 = y i f x i , y i h
∂f ∂f
∂x ∂y
f
h
2!
∂g ∂g
● De la serie de Taylor, g x r , y s= g x , y r
∂x
s
∂y
...
Métodos de Runge – Kutta de
segundo orden
● Se tiene,
∂f ∂f 2
f x i p1 h , y i q 11 k 1 h= f x i , y i p1 h q 11 k 1 h O h
∂x ∂y
● reemplazando,
2 ∂f 2 ∂f 3
y i 1 = y i a 1 h f x i , y i a 2 p1 h a 2 q 11 h f x i , y i O h
∂x ∂y
● reordenando,
[
y i 1 = y i a 1 a 2 f x i , y i h a 2 p1
∂f
∂x
a 2 q 11 f x i , y i
]
∂f 2
∂y
3
h O h
● comparando, a1a 2 =1 , a 2 p1 =
1
, a 2 q 11=
1
2 2
1
● Es decir a1 =1−a 2 , p1 =q 11 =
2 a2
Métodos de Runge – Kutta de
segundo orden
● 1 1
Si a 2 = ⇒ a 1= ⇒ p1 = q11=1
2 2
se tiene y i 1= y i 1 k 1 1 k 2 h
2 2
con k 1 = f x i , y i , k 2 = f x i h , y i k 1 h Método de Heun
● Si a 2 =1 ⇒ a 1= 0 ⇒ p1= q 11= 1
2
se tiene y i 1= y i k 2 h
1
2
1
k 2= f x i h , y i k 1 h
2
k 3= f x i h , y i −k 1 h2 k 2 h
● Si f = f(x) se transforma en la Regla 1/3 de
Simpson --> error local O(h4) y error global
O(h³)
Métodos de Runge-Kutta de cuarto
orden
● Una versión común es
1
y i1 = y i k 12 k 2 2 k 3 k 4 h
6
● donde
k 1= f x i , y i
1
2
1
k 2= f x i h , y i k 1 h
2
1
k 3= f x i h , y i k 2 h
2
1
2
k 4 = f x i h , y i k 3 h
Ejemplo 25.7 pag. 747
● Resolver, con h = 0.5
dy 3 2
=−2 x 12 x −20 x8.5 , y 0=1
dx
● Se calculan (...):
k 1=8.5 , k 2 =4.21875 , k 3 =4.21875 , k 4 =1.25
● reemplazando:
1
y 0.5=1 8.5 2× 4.21875 2× 4.218751.25 0.5= 3.21875
6 Solución exacta
Ejemplo 25.7 pag. 747
● Resolver, con h = 0.5
0.8 x
y ' =4 e −0.5 y , 0≤ x ≤0.5 , y 0=2
● Solución.
0.8×0
k 1 = f 0,2= 4 e − 0.5× 2= 3 ⇒ y 0.25= 2 3× 0.25= 2.75
0.8×0.25
k 2 = f 0.25,2.75= 4 e −0.5× 2.75= 3.510611
y 0.25= 2 3.510611× 0.25= 2.877653
0.8× 0.25
k 3 = f 0.25,2.877653= 4 e − 0.5× 2.877653= 3.446785
y 0.5= 2 3.446785× 0.5= 3.723392
0.8×0.5
k 4 = f 0.5,3.723392= 4 e −0.5× 3.723392= 4.105603
1
= [ 3 2× 3.510611 2× 3.446785 4.105603 ] = 3.503399
6
y 0.5=23.503399×0.5=3.751669 Exacta : 3.751521
Métodos de Runge-Kutta de orden superior
● Método RK de quinto orden de Butcher:
1
y i1 = y i 7 k 1 32 k 312 k 4 32 k 5 7 k 6 h
90
● con k 1 = f x i , y i
k 2= f 1
xi h , yi k1 h
4
1
4
k 3= f 1 1 1
x i h , y i k 1 h k 2 h
4 8 8
k 4= f 1 1
x i h , y i − k 2 h k 3 h
2 2
k 5= f 3 3 9
x i h , y i k 1 h k 4 h
4 16 16
k 6= f 3 2 12 12 8
x i h , y i − k 1 h k 2 h k 3 h− k 4 h k 5 h
7 7 7 7 7
Algoritmo de los métodos de
Runge-Kutta
● Código en Octave para el método de RK de 4to
orden
● rk4.m
Sistemas de ecuaciones
d y1
= f 1 x , y 1, y 2, ... , y n
dx
d y2
= f 2 x , y 1, y 2, ... , y n
dx
...
d yn
= f n x , y 1, y 2, ... , y n
dx