64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

64
/64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1

Transcript of 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

Page 1: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Simulacion de sistemas dinamicos

Principios básicos de la integración numérica

1

Page 2: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Contenido

Solucion numerica a ecuaciones diferenciales

La exactitud de la aproximación

Los metodos de Euler

2

Page 3: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

SOLUCION NUMERICA A ECUACIONES DIFERENCIALES

3

Page 4: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Los modelos en espacio de estado

4

Los modelos de sistemas dinámicos con parámetros concentrados pueden ser representados usando un conjunto de ecuaciones diferenciales ordinarias (ODEs)

donde x es el vector de estado, u es el vector de entrada, y t denota el tiempo, la variable independiente a través de la cual se desea estimular

Llamado modelo en espacio de estado

Page 5: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

La trayectoria del estado

La investigación del comportamiento de un sistema dinamico de tiempo continuo requiere una solución de ecuaciones diferenciales

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

Esta situacion plantea la necesidad de los metodos numericos

5

Page 6: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Un modelo simple

6

v0

Coeficiente viscoso = cm0(0)x x

F = m*a vcdt

dvm ( , )

dxax f x t

dt

Los metodos numericos aprovechan el conocimiento de la pendiente para estimar la trayectoria del estado

f(x,t) es la pendiente de x(t) en cada punto (t,x)

t

x

(t,x) ( , )dx

f x tdt

Page 7: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El problema estandar

Se considera entonces resolver la ecuacion diferencial (ODE) , con condicion inicial:

7

),( xtf

dttdx 00 xtx

Objetivo: Hallar la solucion x(t) en un intervalo

Solucion numerica: implementar un algoritmo computacional algebraico

Page 8: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Solución numérica

8

El modelo puede ser simulado usando una expansión en series de Taylor

Si se conoce el vector de estado en un instante de tiempo t*, el vector del estado puede calcularse en el instante de tiempo t*+ h,

Los diferentes métodos de integración numérica difieren en la forma de aproximar las derivadas de mayor orden de f

funcion conocida(derivada del estado)

Page 9: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Pasos de los metodos numericos

Primero: discretizar el tiempo

Segundo: representar x(t) usando solo los valores discretos del tiempo, ti

9

nt T1t 2t 1nt 0

t t t

Step size = h

En general, el tamaño de paso puede ser variable

ix

Page 10: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Pasos de los metodos numericos

Tercero: estimar el siguiente valor del estado aproximando la derivada, usando los valores discretos

Cuarto: iterar el proceso hasta el tiempo final

10

1i i ix x h

Calculada a partir de f(x,t), y la aproximación de sus derivadas de mayor orden

Page 11: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El proceso de la integracion

Stat

e vs

. Tim

e

1) Original Data3) Initial Condition 2) Choose Time Step4) Evaluate Derivative5) Next State = Initial Condition + Derivative * Time StepError

11

Trayectoria del estado exacta

Page 12: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Efecto del paso de integracionSt

ate

vs. T

ime

Stat

e vs

. Tim

e

Nine Time StepsFour Time Steps

12

Efecto del tamaño del paso de integración en la trayectoria estimada

Page 13: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

LA EXACTITUD DE LA APROXIMACIÓN

13

Page 14: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

LA EXACTITUD DE LA APROXIMACIÓN

14

•Error por truncado de la serie de Taylor

Page 15: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

La serie de Taylor

15

'' (3) ( )' 2 3

1 2! 3! !

ni i i n

i i i

f x f x f xf x f x f x h h h h

n

Page 16: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El error por truncado de la serie

16

La expansión de Taylor de orden n es exacta para un

polinomio de orden n

En otro caso:

'' (3) ( )' 2 3

1 2! 3! !

ni i i n

i i i

f x f x f xf x f x f x h h h h

n

Más términos de la serie implica error menor

Menor valor de h, implica menor error para un número dado de términos

Page 17: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El error por truncado de la serie

17

Es imposible considerar todos los términos en la serie de Taylor

Todos los métodos de integración numérica sólo aproximan un cierto número de términos de la serie. Este número puede ser fijo o variable

Ejemplo: un algoritmo de orden tres

El error por truncado del método crece proporcionalmente con la cuarta potencia del tamaño del

paso de integración h

Page 18: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Características del orden de integración

Método de integración de orden alto

» Mayor precisión

» Mayor costo computacional

» Tamaño del paso grande

Método de integración de bajo orden

» Menor precisión

» Menor costo computacional

» Tamaño del paso pequeño

18

Cual selección es la más económica en una situación dada depende de varios factores

Page 19: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Selección del orden del algoritmo de integración

19

Regla práctica

Si el mayor error tolerado en un paso de integración es 10- n, entonces la mejor selección es al menos un algoritmo de orden n para la integración numérica

Precisión relativa local = 0.0001

Orden del algoritmo = 4

Page 20: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

LA EXACTITUD DE LA APROXIMACIÓN

20

•Error por redondeo y error por chopping

Page 21: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Redondeo y chopping

21

Sólo puede ser representado un numero finito de cantidades, y dentro de un rango limitado

Redondeo y chopping:Importantes en el comportamiento numerico de los algoritmos

Page 22: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Representación en punto fijo

22

Scientific 22 21 20 . 2-1 2-2 2-3

Fractions . ½ ¼ ⅛Decimal 4 2 1 . .5 .25 .125

1 0 1 . 1 0 1

Representación en punto fijo de un número binario real

Page 23: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Valor de un número binario real

23

Scientific 22 21 20 . 2-1 2-2 2-3

Fractions . ½ ¼ ⅛Decimal 4 2 1 . .5 .25 .125

1 0 1 . 1 0 1101.101 = 4 + 1 + 1/2 + 1/8

= 4 + 1 + .5 +.125 = 5.625

= 5 ⅝

Valor del número binario en base 10

Page 24: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Notación exponencial

24

El punto decimal “flota”, de acuerdo con la selección del valor del exponente

123,400.0 x 10-2

12,340.0 x 10-1

1,234.0 x 100

123.4 x 101

12.34 x 102

1.234 x 103

0.1234 x 104

Las siguientes son representaciones equivalentes de 1.234

Page 25: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Partes de un número de punto flotante

25

-0.9876 x 10-3

Signo de lamantisa

Localizacion delpunto decimal Mantisa

Exponente

Signo delexponente

Base

Representacion normalizada

Page 26: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Formato de Simple Precisión

26

32 bits

Mantisa (23 bits)

Exponente (8 bits)

Signo de la mantisa (1 bit)

Page 27: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Normalización de la mantisa

27

La mantisa está normalizada, es decir el número a la izquierda del punto decimal es SIEMPRE “1“

El número “1“ no se escribe en la mantisa

Ejemplo

101 0000 0000 0000 0000 0000

1.1012 = 1.62510

Mantisa

Representación

1<= mantisa < 2

La separacion cada cuatro ceros para mayor claridad

“uno” fantasma

Page 28: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Normalización de la mantisa

28

La mantisa está normalizada, es decir el número a la izquierda del punto decimal es SIEMPRE “1“

El número “1“ no se escribe en la mantisa. Se asume. En cierto modo la mantisa tiene 24 bits

El menor valor

000 0000 0000 0000 0000 0001

1 + 2-23 ≈ 1 + 10-7

Mantisa

Representación en base 10

1<= mantisa < 2

Aproximadamente seis digitos significativos

Page 29: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El exponente

29

Los siguientes ocho bits especifican el exponente, en la forma de exceso-n

Para simple precisión el exceso es 127

El valor del exponente es más grande en n que el exponente real

Ejemplo

1000 0111

135 - 127 = 8 (valor real)

Exponente

Representación

- 127<= exponente <= 128

Page 30: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Ejemplo de un número en simple precisión

30

0 1000 0010 110 0000 0000 0000 0000 0000

1.112 = 1.7510

130 – 127 = 3

0 = mantisa positiva

+ 1.75 23 = 14.0

Page 31: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El valor mas pequeño en simple precisión

31

0 0000 0000 000 0000 0000 0000 0000 0000

1.002 = 1.0010

000 – 127 = – 127

0 = mantisa positiva

+ 1.00 2 – 127 ≈ 10 – 38

Page 32: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El valor más grande en simple precisión

32

0 1111 1111 111 1111 1111 1111 1111 1111

1.002 = 1.0010

255 – 127 = + 128

0/1 = mantisa pos/neg

± 2.00 2 + 128 = ± NaN ≈ ± 10 + 38

Page 33: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Rango de los numeros

33

El rango de los numeros esta definido como:

0 0000 0001 000 0000 0000 0000 0000 0000 +2-126× (1+0) = 2-126

0 1111 1110 11 1 1111 1111 1111 1111 1111 +2127× (2-2-23)

smallest

largest

0 2-126 2127(2-2-23)

Positive underflow Positive overflow

Page 34: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Implicación de la representación en punto flotante

34

Afectan la exactitud de la representación de un número real en un computador

Redondeo y chopping:Importantes en el comportamiento numerico de los algoritmos

Page 35: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El error por redondeo

35

z : un número real que se quiere representar en un computador

fl(z) : la representación de z en el computador

Sea

1( ) 12

2nz fl z

z

Un número real en simple precisión tiene aproximadamente de seis decimales significativos

22 72 10roundoff

1( )2 nz fl z

z

Error por chopping Error por redondeo

Simple precisión n = 23:

Page 36: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Simple precisión

Épsilon de la máquina

36

El épsilon de la máquina, eps, es el número más pequeño tal que

1 1eps

épsilon de la máquina

23 7 2 1.19 10=

epsilon = 1;while (1 + epsilon > 1) epsilon = epsilon / 2; epsilon = epsilon * 2;end

Page 37: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El error por redondeo en la integración numérica

37

Asumamos que se emplea un algoritmo de orden tres

Asumamos: h = 0.001

Page 38: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Efecto del error por redondeo

38

El error por redondeo es importante en la integración numérica porque números pequeños son sumados a números muy grandes

El término de segundo orden no contribuye en forma significativa

seis digitos

Page 39: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Efecto del error por redondeo

39

En consecuencia, el uso de simple precisión en una máquina de 32 bits para algoritmos de integración de orden mayor que dos puede ser un problema

En realidad el efecto no es tan pronunciado ya que los algoritmos de orden alto permiten tamaños del paso

mayores

No es una buena razón usar simple precisión en un algoritmo de integración,

excepto en Euler

Page 40: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Formato de Doble Precisión

40

64 bits

Mantisa (52 bits)

Exponente (11 bits)

Signo de la mantisa (1 bit)

Doble Precisión

Page 41: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El estándar IEEE 754

41

Precision Single (32 bit)

Double (64 bit)

Sign 1 bit 1 bit

Exponent 8 bits 11 bits

Notation Excess-127 Excess-1023

Range 2-126 to 2127 2-1022 to 21023

Mantissa 23 52

Decimal digits 7 15

Value range 10-38 to 1038 10-300 to 10300

Page 42: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Codificación del formato IEEE 754

42

Single Precision Double Precision Represented Object

Exponent Fraction Exponent Fraction

0 0 0 0 0

0 non-zero 0 non-zero+/- denormalized number

1~254 anything 1~2046 anything+/- floating-point numbers

255 0 2047 0 +/- infinity

255 non-zero 2047 non-zeroNaN (Not a Number)

Page 43: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El error por redondeo en doble precisión

43

Una representación en doble precisión en una máquina de 32 bits proporciona aproximadamente 14 dígitos significativos

Desafortunadamente, las operaciones son más costosas computacionamente

catorce digitos

Page 44: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

LA EXACTITUD DE LA APROXIMACIÓN

44

•Error combinado total

Page 45: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Error numérico total

45

Asumiendo una expansión de Taylor de primer orden, el error numérico total es la suma de los error de truncado y de redondeo

E = | Error Total | + ''1

2f 2 if x

h

1i ix x

Page 46: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Otros errores

46

Otro tipo de error a tener en cuenta en la etapa de simulación es el error por acumulación, que se considerara a continuación

Los errores examinados en esta sección no consideran los errores propios del modelado:

Errores en el modelo conceptual

Errores paramédicos

Page 47: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El error por acumulación

47

Debido al redondeo y truncado x(t* + h) no puede ser conocido con exactitud

Este error será heredado en el siguiente paso de integración como un error en la condición inicial

Stat

e vs

. Tim

e

Four Time Steps

El error se acumula cuando la integración numérica se ejecuta

Page 48: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El error por acumulación

48

Si el sistema es estable, el error en las condiciones iniciales decae a cero con el tiempo

Indica que el error en las condiciones iniciales en un paso de integración no afecta demasiado a la

simulación total

No se puede asumir que el error de integración global es proporcional al error de integración por paso

Para sistemas analíticamente inestables la situación es diferente

Page 49: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Error local vs. Error global

49

Asumiendo un paso de integración constante h

Para n pasos en una simulación

El error relativo global es entonces

0( ) /fh t t n

0 1* *fp p pt tn O h O h O h

h

“error relativo local”

Error relativo local = 0.0001 Error relativo global = 0.001

Page 50: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Verificación de la simulación

50

Asumiendo que el modelo conceptual refleja la realidad suficientemente,

se debe verificar que la simulación numérica replica las trayectorias analíticas dentro de ciertas tolerancias

Este proceso es denominado verificación de la simulación

En conclusion:

Page 51: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

LOS METODOS DE EULER

51

Euler, Léonard1707-1783

Page 52: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El metodo de Euler explicito

52

1 ( )k k kx x h f x

t

xx

dt

dx kk

tk

1

it 1it

f(x(t))

Todos los valores de la derecha

conocidos

Page 53: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El metodo de Euler explicito

53

Estimación del próximo valor del estado en el método de Euler explícito

Page 54: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El metodo de Euler explicito

54

Algoritmo

La simulación no requiere ninguna integración dentro de un paso de integración

Page 55: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Ejemplo

Use el metodo de Euler para resolver

En este caso, el metodo de Euler explicito da:

55

1 ydt

dy0)0( y

)1(1 nnn ytyy

Page 56: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Ejemplo

56

n tn yn fn= - yn+1 yn+1= yn+Dt fn

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

)1(1 nnn ytyy

Page 57: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Ejemplo

57

0

0.2

0.4

0.6

0.8

0

0.25 0.5

0.75

1

1.25

t

Exact

Numerical

y

1 ydt

dy

0)0( y

tey 1

Solucion analitica

Page 58: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Ejercicio

58

Usando el metodo de Euler resolver

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

a) Dt = 2 b) Dt = 1

c) Dt = 0.5 d) Dt = 0.1

tedt

dx

Page 59: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Ejercicio

59

Solucion exacta x(t) = 1- e-t Solucion aproximada usando Euler explícito

0 2 4 6 8 100

0.5

1

1.5

2

2.5

3

0 2 4 6 8 100

0.5

1

1.5

2

2.5

3

0 2 4 6 8 100

0.5

1

1.5

2

2.5

3

0 2 4 6 8 100

0.5

1

1.5

2

2.5

3

Dt = 2

Dt = 1

Dt = 0.5 Dt = 0.1

x(t)

t

Page 60: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El metodo de Euler implicito

60

1 1( )k k kx x h f x

it 1it

f(x(t))

La ecuacion es implicita in xk+1 .

Page 61: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

El metodo de Euler explicito

61

Estimación del próximo valor del estado en el método de Euler implícito

Page 62: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Lazo algebraico

62

1

Gain2

h.f(x(k+1))

Gain1

1

Gainkx 1kx

En el método de Euler de implícito es necesario resolver la presencia de un lazo algebraico

Este tipo de algoritmos son referidos como técnicas de integración implícita

Ejemplo: PSpice

Page 63: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

Fuentes

Cellier, F.E. and E. Kofman (2006), Continuous System Simulation, Springer-Verlag, New York

63

Page 64: 64 Simulacion de sistemas dinamicos Principios básicos de la integración numérica 1.

/64

FIN

64