You are on page 1of 57

Integracion numerica

1
Contenido
Integracion de ecuaciones diferenciales ordinarias
Metodos de Euler
Metodo trapezoidal
Comparacion de los metodos de Euler y
trapezoidal
Metodo de Heun
Metodo de Euler modificado



2
INTEGRACION DE ECUACIONES
DIFERENCIALES ORDINARIAS
3
Respuesta de un sistema lineal
La investigacin del comportamiento de un sistema
dinamico de tiempo continuo requiere una solucin
de ecuaciones diferenciales

Sin embargo, la solucion analitica puede ser dificil
o, en algunos casos, imposible

4
Necesidad de los metodos
numericos
Puede ser necesario encontrar la solucion para
diferentes funciones de entrada

Caso forzado (Solucion no homogenea)

En ocasiones, solo se dispone de valores
muestreados de las entradas al sistema

La solucion analitica no existe

5
Los metodos numericos permiten
resolver el problema
El problema estandar
Se considera resolver la ecuacion diferencial
(ODE) , y condicion inicial:



Objetivo: Hallar la solucion x(t) en un intervalo
Integracion numerica: implementar un algoritmo
computacional algebraico
6
( )
) , ( x t f
dt
t dx
=
( )
0 0
x t x =
Aplicacin de las ODE en el
modelado
La segunda ley de Newton
7
v
m
c
g
dt
dv
=
Variable dependiente
Variable independiente
Una ecuacion diferencial de orden n puede ser
reducida a ecuaciones diferenciales de primer orden
Aplicacin de las ODE en el
modelado
8
Categorias de los metodos
9
ODE Solver
Categories
Based on step
arrangement
Based on equation
form
Single step Multi-step Explicit Implicit
Los metodos numericos
Primero: discretizar el tiempo




10
k
t
1
t
2
t
1 k
t

0
t A
t A t A
Step size = h
En general, el tamao de paso puede ser
variable
Los metodos numericos
Segundo: representar x(t) usando los valores en t
k
11
1
t
2
t
3
t
k
t
0
3

x 4

x 1

x
2

( )
k
k
x x t
Solucion
aproximada
Solucion
exacta
Los metodos numericos
Tercero: aproximar la derivada usando los valores
discretos


Por ejemplo:
12

k
x
1
( )
k k
k
k
dx t x x
dt t

~
A
Ejemplo
13
v
0

Coeficiente viscoso = c
m
F = m*a v c
dt
dv
m =
( , )
dx
ax f x t
dt
= =
f(x,t) es la pendiente de x(t) en cada punto (t,x)
0
(0) x x =
t
x
(t,x)
( , )
dx
f x t
dt
=
Aprox: usando Taylor
14
v
0

Coeficiente viscoso = c
m
F = m*a
v c
dt
dv
m = ( , )
dx
ax f x t
dt
= =
2
( ) (0) (0, 0) ( ) x h x f h O h = + +
1
( , )
i i i i
x x f x y h
+
= +
Analisis alterno
15
v
0

Coeficiente viscoso = c
m
F = m*a
v c
dt
dv
m = ( , )
dx
ax f x t
dt
= =
Integrar en un pequeo intervalo de tiempo, h
1 0
0
( ) ( , )
h
x h x x f x t dt = = +
}
dx
dt
Analisis alterno
16
1
( ( ), )
i
i
x h
i i
x
x x f x t t dt
+
+
= +
}
El problema es que no conocemos x(t)
Asumiendo h pequeo, f(x,t) es aproximadamente constante.
Usando el metodo de Euler explicito
h y x f y y
i i i i
) , (
1
+ ~
+
El proceso de la integracion
17
S
t
a
t
e

v
s
.

T
i
m
e

1) Original Data 3) Initial Condition 2) Choose Time Step 4) Evaluate Derivative 5) Next State = Initial Condition + Derivative * Time Step Error
Efecto del paso de integracion
18
S
t
a
t
e

v
s
.

T
i
m
e

S
t
a
t
e

v
s
.

T
i
m
e

Nine Time Steps Four Time Steps
METODOS DE EULER
19
Euler, Lonard
1707-1783
El metodo de Euler
Se considera resolver la ecuacion diferencial
(ODE) de una sola variable, y condicion inicial:



Estrategia: aproximar la derivada


20
( )
) , ( x t f
dt
t dx
=
( )
0 0
x t x =
t t t
t x t t x
dt
dx
t
A +
A +
~
) (
) ( ) (
El metodo de Euler explicito
El valor de f(x) se evalua en el valor conocido de
x o en x
k




21
t
x x
dt
dx
k k
t
k
A

~
+1
) (
k
k k
x f
t
x x
=
A

+1
El metodo de Euler explicito
El valor de f(x) se evalua y se usa para estimar el
el valor de x(t+At)



22
) (
k k k
x f t x x A + =
+1
Notese que el lado derecho de la expresion
contiene valores conocidos, por lo tanto se puede
resolver explicitamente
Step size = h
Suposiciones y simplificaciones
Se asume que la funcion f es continua y
diferenciable, es decir, existe una solucion unica.

Por simplicidad se considera el caso lineal,
23

=
=
0 0
) (
) (
) (
x t x
t Ax
dt
t dx
Aproximacion con el metodo de
Euler explicito
24
l
t
1 l
t
+
t
x
A
1
( ) ( )
slope
l l
x t x t
t
+

=
A
slope ( )
l
d
x t
dt
=
( )
1
( ) ( ) ( )
l l l
x t x t t Ax t
+
A = + A
1
1
( ) ( )
( ) ( )
or
( ) ( ) ( )
l l
l l
l l l
x t x t d
x t Ax t
dt t
x t x t t Ax t
+
+

= ~
A
~ + A
Aproximacion con el metodo de
Euler explicito
25
1
t
2
t
t
x
(0) tAx A
3
t
1
tAx A
1 1
1 1 2
2
1
1
) (
) (
) 0 ( ) 0 ( ) (

A + = ~
A + = ~
A + = ~
L L L
L
tAx x x t x
tAx x x t x
tAx x x t x

Metodo de Euler implicito


Este metodo difiere del metodo implicito en que el
valor de f(x) se evalua en el valor desconocido de
x en x
k+1

26
) (
1
1
+
+
=
A

k
k k
x f
t
x x
) (
1 1 + +
A + =
k k k
x f t x x
La ecuacion is implicita in x
k+1
. Dependiendo
de la no linealidad de f(x), puede requerirse una
solucion iterativa
Aproximacion con el metodo de
Euler implicito
27
l
t
1 l
t
+
t
x
1
slope ( )
l
d
x t
dt
+
=
1
( ) ( )
slope
l l
x t x t
t
+

=
A
( )
1 1
( ) ( ) ( )
l l l
x t x t t Ax t
+ +
A = + A
1
1 1
1 1
( ) ( )
( ) ( )
or
( ) ( ) ( )
l l
l l
l l l
x t x t d
x t Ax t
dt t
x t x t t Ax t
+
+ +
+ +

= ~
A
~ + A
A
Aproximacion con el metodo de
Euler implicito
28
1
t
2
t
t
x
1
tAx A
2
tAx A
Resolver con eliminacion Gausiana
1 1
1 1 2
2
1
1 1
1
] [ ) (
] [ ) (
) 0 ( ] [
) 0 ( ) (

A = ~
A = ~
= A
A + = ~
L L
L
x tA I x t x
x tA I x t x
x x tA I
tAx x x t x

Ejemplo: y = y + 1
Use el metodo de Euler para resolver



En este caso, el metodo de Euler explicito da:

29
1 + = y
dt
dy
0 ) 0 ( = y
) 1 (
1
+ A + =
+ n n n
y t y y
Ejemplo: y = y + 1
30
n t
n
y
n
f
n
= -

y
n
+1 y
n+1
= y
n
+At f
n
0 0 0.000 1.000 0.100
1 0.1 0.100 0.900 0.190
2 0.2 0.190 0.810 0.271
3 0.3 0.271 0.729 0.344
4 0.4 0.344 0.656 0.410
5 0.5 0.410 0.590 0.469
6 0.6 0.469 0.531 0.522
7 0.7 0.522 0.478 0.570
8 0.8 0.570 0.430 0.613
9 0.9 0.613 0.387 0.651
Ejemplo: y = y + 1
31
0
0.2
0.4
0.6
0.8
0
0
.
2
5
0
.
5
0
.
7
5 1
1
.
2
5
t
Exact
Numerical
y
t
e y

=1
Solucion analitica
Ejercicio
Usando el metodo de Euler resolver:




32
t
e
dt
dx

=
Para 0 < x < 10, con x(0) = 0;

a) At = 2 b) At = 1
c) At = 0.5 d) At = 0.1

Solucion
33
0 2 4 6 8 10
0
0.5
1
1.5
2
2.5
3
0 2 4 6 8 10
0
0.5
1
1.5
2
2.5
3
Solucion exacta x(t) = 1- e
-t

0 2 4 6 8 10
0
0.5
1
1.5
2
2.5
3
0 2 4 6 8 10
0
0.5
1
1.5
2
2.5
3
At = 2
At = 1
At = 0.5
At = 0.1
Solucion aproximada usando Euler
x(t)
t
METODO TRAPEZOIDAL
34
Metodo trapezoidal
35
| |
0 1
( ) ( ) ( )
2
b
a
h
f t dt f t f t ~ +
}
t
0
t
1

t
f(t)
L(t)
Aproximacion trapezoidal
36
t
x
1
( ) ( )
slope
l l
x t x t
t
+

=
A
slope ( )
l
d
x t
dt
=
1
slope ( )
l
d
x t
dt
+
=
1 1
1 1
( ( ) ( )) ( ( ) ( ))
2 2
l l l l
x t tAx t x t tAx t
+ +
A = A + A
A
)) ( ) ( (
2
1
) ( ) (
) ( ) (
)) ( ) ( (
2
1
)) ( ) ( (
2
1
1 1
1
1
1
l l l l
l l
l l
l l
t x t x tA t x t x
t
t x t x
t Ax t Ax
t x
dt
d
t x
dt
d
+ A + =
A

~
+ =
+
+ +
+
+
+
Aproximacion trapezoidal
37
1
t
2
t
t
x
Resolver con eliminacion Gausiana
1
2
1
2
1
2
1
2
2
2
2
1
2
1
2
1
1
1
] [ ] [ ) (
] [ ] [ ) (
) 0 ( ] [ ] [
) ) 0 ( ( ) 0 ( ) (

A
A

A
A A
+ = ~
+ = ~
+ =
+ A + = ~
L
t t
L
L
t t
t t
x A I A I x t x
x A I A I x t x
x A I x A I
Ax Ax t x x t x

Modelo trapezoidal de un capacitor


38
2
( ) ( ) ( ( ) ( ))
t
C
v t t v t i t i t t
A
+ A ~ + + + A
+
C

-
+
-
( ) v t t + A
( ) i t t + A
( ) i t t + A
2C
eq t
G
A
=
( ) v t t + A
+
-
2
( ) ( )
C
eq t
I v t i t
A
= +
2 2
( ) ( ) ( ) ( )
C C
t t
i t t v t t v t i t
A A
+ A ~ + A
Modelo trapezoidal de una
inductancia
39
2
( ) ( ) ( ( ) ( ))
t
L
i t t i t v t v t t
A
+ A ~ + + + A
+
L

-
+
-
( ) v t t + A
( ) i t t + A
( ) i t t + A
2L
eq t
R
A
=
( ) v t t + A
+
-
2
( ) ( )
L
eq t
V i t v t
A
= +
2 2
( ) ( ) ( ) ( )
L L
t t
v t t i t t i t v t
A A
+ A ~ + A
Ejercicio
Usando el metodo Trapezoidal resolver:




40
2t
dx
e
dt

=
Para 0 < x < 10, con x(0) = 0;

a) At = 2 b) At = 1
c) At = 0.5 d) At = 0.1

COMPARACION DE LOS METODOS
DE EULER Y TRAPEZOIDAL
41
Comparacion de los metodos
42
1
1
( ) ( ( ) ) ) ) ( (
l
l
t
l l
t
d
x t x t x t A d x t x A
dt
t t
+
+
= + =
}
l
t
1 l
t
+
1
( )
l
l
t
t
Ax d t t
+
~
}
1
( )
l
tAx t
+
A
E imp
( )
l
tAx t A
E exp
( )
1
( ) ( )
2
l l
t
Ax t Ax t
+
A
+
Trap
Resumen de conceptos basicos
Los metodos de Euler y trapezoidal son todos
metodos de un solo paso:


El metodo de Euler explicito es el mas simple

El metodo trapezoidal puede ser mas preciso


43
1 2 3 4
se calcula usando solo , no , , , etc.
l l l l l
x x x x x

La solucion de la ecuacion en cada paso
usa un metodo implicito
METODO DE HEUN
44
Limitacion del metodo de Euler
El metodo de Euler es popular en gran medida
debido a su simplicidad. Asume que la derivada
permanece constante en el intervalo de
integracion:

Al principio, en el metodo explicito
Al final, en el metodo implicito

Si el estado cambia rapidamente esta suposicion
no es valida
45
Limitacion del metodo de Euler
La limitacion propia de los metodos de Euler puede
enfrentarse simplemente disminuyendo el paso de
integracion (step size).

Esto puede no ser practico (mas tiempo de
computo)

El metodo de Heun usa el promedio de la derivada
en el intervalo de integracion

46
Ilustracion del metodo de Heun
47
Metodo de Heun
Es un metodo predictor-corrector
48
Predictor
Corrector
( ) ( ) ( )
( ) ( )
1
1
,

1
A
A A
L f x n u n
x n x n h L
=
+ = +
( ) ( ) ( )
( ) ( ) | |
2
1 2

1 , 1
1
2
A
A A
L f x n u n
h
x n x n L L
= + +
+ = + +
Metodo de Heun con iteracion del
corrector
Iterar el corrector del metodo de Heun para
obtener un mejor estimado
49
( ) | |
1 2
2
A
h
x n L L + + ( )
1
j
A
x n+
( ) ( )
( )
1
2

1 , 1
j
A
L f x n u n

= + +
Comparacion de los metodos
50
Eulers
Heuns
with 5
iterations
Exact
Heuns
method
1 0 y t y
dt
dy
= + = ) ( ; ) sin(
t
METODO DE EULER MODIFICADO
51
Limitacion del metodo de Euler
El metodo de Euler es popular en gran medida
debido a su simplicidad. Asume que la derivada
permanece constante en el intervalo de
integracion:

A menudo es mejor usar la pendiente en otros
puntos de la curva.

52
Metodo de Euler modificado
53
x(t)
t t
i
t
i+1

At
Line with
slope f(x
i
,t
i
)
Predicted value of x(t
i+1
)
Actual value of x(t
i+1
)
Error in
Eulers method
54
El metodo de Euler modificado predice el valor de x
i+1
con la
pendiente en el punto (t
i+1/2
, x
i+1/2
) , esto es, el punto medio
entre (t
i
, x
i
) y (t
i+1
, x
i+1
)
Predicted value of x(t
i+1
) using
Eulers method
x(t)
t t
i
t
i+1

At/2
Actual value of x(t
i+1
)
At/2
Line with
slope f(x
i
,t
i
)
t
i+1/2

Predicted value of x
i+1/2
Predicted value of x(t
i+1
) using
Midpoint method
Line with
slope f(x
i+1/2
,t
i+1/2
)
Metodo de Euler modificado o del punto medio
En el metodo del punto medio:

Predecir el valor de x
i+1/2
usando el metoo de Euler



Predecir el valor de x
i+1
con la pendiente f(t
i+1/2
, x
i+1/2
). El
valor de x
i+1/2
se obtiene del paso anterior
55
2
) , (
2 / 1
t
x t f x x
i i i i
A
+ =
+
t x t f x x
i i i i
A + =
+ + +
) , (
2 / 1 2 / 1 1
Ejercicio
Usando el metodo de Euler modificado resolver:




56
Para 0 < x < 10, con x(0) = 0;

a) At = 2 b) At = 1
c) At = 0.5 d) At = 0.1

t
e x
dt
dx

+ = 2 1
Comparar con el metodo de Euler
Fuentes
Lewis Andrew, A Mathematical Introduction to Feedback
Control. Queens University. Kingston, Canada. Abril, 2003.
Tsakalis Kostas, System properties, A Collection of Class
Notes. http://www.eas.asu.edu/~tsakalis. December, 2003
Roberts Clive, Fundamentals of Signals and Systems.
University of Birmingham. 2003.
Olver Peter J. and Shakiban Chehrzad, Applied Mathematics.
School of Mathematics, University of Minnesota and
Department of Mathematics, University of St. Thomas. 1999.
57

You might also like