La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Metodos adaptativos y de paso multiple

Presentaciones similares


Presentación del tema: "Metodos adaptativos y de paso multiple"— Transcripción de la presentación:

1 Metodos adaptativos y de paso multiple
Integracion numerica Metodos adaptativos y de paso multiple

2 Contenido Metodos adaptativos: step halving
Metodos adaptativos embebidos Metodos multi-step

3 Metodos adaptativos: step halving

4 Runge Kutta adaptativos
Proposito Usar un paso de integracion pequeño en regiones de alto gradiente (cambio abrupto) Ajuste automatico del tamaño del paso

5 Runge Kutta adaptativo
Primera aproximacion: Step halving Estimar el error local usando dos tamaños de paso diferentes Resolver dos veces cada paso: una vez con un paso completo y luego con dos ½ pasos

6 Metodo Step Halving x1 – estimacion con un paso completo;
Calcular la solucion dos veces usando el metodo RK de 4to-orden x1 – estimacion con un paso completo; x2 – estimacion con dos medios pasos Correccion del error estimado de 5th-orden

7 Metodo RK4 adaptativo Asumiendo que x(t) es la solucion exacta, con un paso completo h Con dos pasos de h/2 Error con un paso de h Error con dos pasos de h/2

8 Metodo RK4 adaptativo

9 Metodo RK4 adaptativo Para RK4 el errror por truncado es del orden de h5 entonces, Con dos pasos de h/2 Si h pequeño entonces a es aprox. el mismo

10 Metodo RK4 adaptativo Entonces,
Correccion del error estimado de 5th-orden

11 Metodo RK4 adaptativo El error estimado puede ser usado para ajustar el tamaño del paso, usando unos limites de tolerancia

12 Metodos adaptativos embebidos

13 Runge Kutta adaptativos
Segunda aproximacion: RK embebidos (tambien llamados metodos RK-Fehlberg) Estimar el error por truncado usando metodos Runge-Kutta de orden diferente

14 Metodo RK ODE23 Funcion en MATLAB : ODE23
Algoritmo BS23 (Bogacki and Shampine, 1989; Shampine, 1994) Usa simultaneamente los metodos RK de 3ro y 4to orden para resolver la ODE y estimar el error para el ajuste del paso de integracion (step-size)

15 Metodo RK ODE23 Notar: k1 es el mismo k4 del paso anterior
Funcion en MATLAB: ODE23 Error estimado Notar: k1 es el mismo k4 del paso anterior

16 Metodo RK ODE23 Usa solamente tres evaluaciones de la funcion:
(k1, k2, k3) Despues de cada paso se chequea el error para determinar si esta dentro de la tolerancia deseada Si el error es demasiado grande, se reduce el tamaño del paso y se repite hasta que el error estimado sea aceptable

17 Metodo RK ODE23 Usa solamente tres evaluaciones de la funcion:
(k1, k2, k3) Despues de cada paso se chequea el error para determinar si esta dentro de la tolerancia deseada Si el error es demasiado grande, se reduce el tamaño del paso y se repite hasta que el error estimado sea aceptable RelTol: relative tolerance (default = 103) AbsTol: absolute tolerance (default = 106)

18 Metodo RK ODE23 Ejemplo: Usar ode23 para resolver la siguiente ecuacion de t = 0 a 4: function yp = ex21_2(t, y) % Examplo yp = 10*exp(-(t-2)*(t-2)/(2*0.075^2)) - 0.6*y;

19 (a) RelTol = 103 (b) RelTol = 104
Ejemplo: ode23 >> options = odeset('RelTol',1.e-3); >> ode23('ex21_2', [0 4], 0.5, options); >> options = odeset('RelTol',1.e-4); >> ode23('ex21_2', [0 4], 0.5, options); (a) RelTol = 10 (b) RelTol = 104

20 Funciones en Matlab Funcion: ode45 Dormand and Prince (1990)
Utiliza formulas de RK4 y RK5

21 Metodo Runge-Kutta Fehlberg
Se usan RK de 4to oden RK de 5to orden

22 Metodo Runge-Kutta Fehlberg
Coeficientes desarrollados por Cash y Karp (1990). Llamado tambien metodo RK Cash-Karp

23 Metodo Runge-Kutta Fehlberg
Error estimado: Se usan los metodos RK4 y RK5 para estimar el error local Para ambos metodos se usan los mismos coeficientes k1, k2, k3, k4, k5, y k6

24 Algoritmo Calcular yi+1 usando el metodo RK4  (y1)4th
Calcular el error E = (y2)5th - (y1)4th Ajustar el tamaño del paso de acuerdo con el error estimado

25 Control del step-size Ajustar el tamaño del paso de acuerdo con el error estimado Incrementar el tamaño si el error es demasiado pequeño, decrecer si es demasiado grande Para esquemas de 4to-orden

26 Ajuste del step-size Para incrementos del step-size (RK4, n = 4)
Para RK de orden n Para incrementos del step-size (RK4, n = 4) Para decrementos del step-size, h es implicito en new Reducir hnew tambien reduce new

27 Ejemplo entrada Metodo RK-Fehlberg con control adaptativo del tamaño del paso t Step-size pequeño alrededor de t = 2 solucion t

28 Metodos multi-step

29 Los metodos single-Step
Los metodos Runge-Kutta -- metodos de un solo paso -- usan valores intermedios entre ti y ti+1 -- varias evaluaciones de la pendiente por paso

30 Los metodos multi-step
Usan valores en ti , ti-1 , ti-2 etc, para construir un polinomio que aproxime a la funcion derivada -- solo una evaluacion de la derivada por paso

31 Los metodos multi-step
One-step Multistep

32 Los metodos multi-step

33 Los metodos multi-step
Metodos explicitos: b0 = 0 Metodos implicitos: b0 = distinto de cero

34 Caso: polinomio de orden 1
Supongamos que el polinomio es una funcion lineal que pasa por {ti1, f[x(i1)]}, y f[ti,x(i)]. (m = 1) Conocido como metodo Adams-Bashforth de dos pasos (AB-2)

35 Metodo de Adams-Bashforth
Metodo de Adams-Bashforth de tres pasos Metodo de Adams-Bashforth de cuatro pasos

36 Funciones en Matlab Funcion: ode113
Adams-Bashforth-Moulton solver (order 1-12) Metodo predictor-corrector


Descargar ppt "Metodos adaptativos y de paso multiple"

Presentaciones similares


Anuncios Google