Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Resolvedores Edos Matlab Msa
Resolvedores Edos Matlab Msa
APLICADA
Utilizacin de Resolvedores de MATLAB
para
Ecuaciones Diferenciales Ordinarias
Universidad Tecnolgica Nacional Facultad Regional Rosario
Dr. Alejandro S. M. Santa Cruz
dxn
x'n t
f n t , x1 , x2 , ..., xn
dt
o, en forma compacta:
dx
f t , x1 , x2 , ...,xn f t , x
dt
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
2
UTN - FRRo
3
UTN - FRRo
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
4
UTN - FRRo
MaxStep
InitialStep
23/11/2009
Descripcin
5
UTN - FRRo
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
6
UTN - FRRo
Sentencia
ode45
ode23
ode113
ode15s
ode23s
ode23tb
23/11/2009
Tipo
de
mtodo
Explcito
Explcito
Explcito
Implcito
Implcito
Implcito
Tipo
de
problema
Orden
de
exactitud
Cuando se usa
No stiff
4to. Orden;
En general, ode45 es el mejor mtodo
exactitud me- para aplicar como primer intento para la
dia
resolucin de muchos problemas.
No stiff
2do./3er. Or- Ante bajas tolerancias de error o resoluden; exactitud cin de problemas moderadamente stiff.
baja
No stiff
13er. Orden;
Baja a alta
Stiff
Stiff
Stiff
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
7
UTN - FRRo
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
8
UTN - FRRo
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
9
UTN - FRRo
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
10
UTN - FRRo
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
11
UTN - FRRo
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
12
UTN - FRRo
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
13
UTN - FRRo
d x1 1 1 x1
x
x
dt 2 1 2 2
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
x1 1
x
2 1
14
UTN - FRRo
Ejemplo 01
Archivo de Comandos de MATLAB:
Ejemplo_01_ode45.m: Archivo de comandos que
llama al solver ode45.m.
Funcin:
TestFunction.m: Funcin que implementa en forma
matricial las derivadas del sistema de EDOs.
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
15
UTN - FRRo
Archivo de Comandos
clear all
clc
% Example 01
% A simple example to solve ODE's
% Uses ode45 to solve
% dx_dt(1) = -1*x(1)-1*x(2)
% dx_dt(2) = 1*x(1) -2*x(2)
% set an error
options=odeset('RelTol',1e-6);
% initial conditions
Xo = [1;1];
%timespan
tspan = [0,5];
%call the solver
[t,X] = ode45(@TestFunction,tspan,Xo,options);
%plot the results
figure
hold on
plot(t,X(:,1));plot(t,X(:,2),'r:')
legend('x1','x2');
ylabel('x');
xlabel('t')
23/11/2009
16
Funcin
23/11/2009
17
Grfica de la Solucin
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
18
UTN - FRRo
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
19
UTN - FRRo
x1 1
x
2 1
1 x1
d x1 1
x
x
dt 2 1 5000 2
Los autovalores de la matriz son:
1 5000
2 1.002
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
Problema Stiff!!
20
UTN - FRRo
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
21
UTN - FRRo
clear all
clc
%Example 02: Stiff Problem
% A simple example to solve ODE's
% Uses ODE45 to solve
% dx_dt(1) = -1*x(1)-1*x(2)
% dx_dt(2) = 1*x(1) -5000*x(2)
%set an error
options=odeset('RelTol',1e-6,'Stats','on');
%initial conditions
Xo = [1;1];
%timespan
tspan = [0,5];
%call the solver
tic
[t,X] = ode45(@TestFunction,tspan,Xo,options);
toc
%plot the results
figure;hold on
plot(t,X(:,1));plot(t,X(:,2),':')
legend('x1','x2'); ylabel('x');xlabel('t')
23/11/2009
22
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
23
UTN - FRRo
Grfica de la Solucin
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
24
UTN - FRRo
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
25
UTN - FRRo
23/11/2009
26
UTN - FRRo
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
27
UTN - FRRo
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
28
UTN - FRRo
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
29
UTN - FRRo
options = odeset('RelTol',1e-6,'Stats','on','Jac',J);
El cdigo ahora corre ms rpido dado que el Jacobiano no
necesita ms ser evaluado (an cuando la ganancia sea muy
pequea cuando el Jacobiano es constante, lo cual es detectado por
el solver, por lo que el Jacobiano no ser actualizado despus de la
primera evaluacin)
23/11/2009
Matem
Matemtica Superior Aplicada
Dr. Alejandro S. M. Santa Cruz
30
UTN - FRRo