2. Pr 2 - Derivación numérica de EDO’s: Runge-Kutta
Resumen
La convergencia lenta del método de Euler y lo restringido de su región de
estabilidad absoluta nos lleva a considerar métodos de orden de convergencia
mayor. En clase mencionamos que en cada paso el método de Euler se mueve a lo
largo de la tangente de una cierta curva que esta "cerca" a la curva desconocida o
buscada. Los métodos Runge-Kutta extienden esta idea geométrica al utilizar
varias derivadas o tangentes intermedias, en lugar de solo una, para aproximar la
función desconocida. Los métodos Runge-Kutta más simples se obtienen usando
dos de estas derivadas intermedias.
Código empleado
A continuación, se describirá el código empleado para la obtención de
soluciones para ecuaciones diferenciales ordinarias a partir del método de Runge-
Kutta.
Para la realización de este ejercicio se programaron dos códigos. El primero,
edosrungekutta.m, se empleó para facilitar la obtención de gráficas, mientras que
mirungekutta.m se utilizó para la obtención de los resultados de la EDO.
En el primero de los dos, al principio del código, se incluye entre
comentarios una posible ejecución. Posteriormente se solicita al usuario que
introduzca los datos necesarios para le ejecución y se procede a calcular el paso. Al
código se le ha añadido la peculiaridad de poder obtener gráficas para distintas
condiciones iniciales. El código lo podemos dividir en cuatro bloques. El primero es
la introducción de parámetros, el segundo se emplea para obtener gráficas en
función de distintas anti-imágenes de condiciones iniciales, el tercero tiene la
misma finalidad que el anterior pero en este caso para las imágenes y el cuarto
para combinar los dos últimos.
Para representar los resultados para distintas condiciones iniciales a se
necesita hacer una comprobación primero para saber si se desea una única
condición inicial o más. Posteriormente se representa empleando para ello
mirungekutta y plot. De igual modo se actúa para las imágenes de las condiciones
iniciales. Finalmente, en el último bloque se procede a combinar los resultados. En
éste se realizan tres comprobaciones para representar correctamente.
La función mirungekutta permite calcular las soluciones a la ecuación
diferencial. El detalle más interesante está dentro del bucle donde se emplea el
siguiente código: k(i,1)=h*feval(f,tj+h*M(i-1,1),yj+M(i-1,:)*k).
Una vez mostrado el código se mostrarán unos resultados obtenidos para la
función f.m
Jaime Martínez Verdú Página 2
3. Pr 2 - Derivación numérica de EDO’s: Runge-Kutta
edosrungekutta.m
%Ejemplo de datos
%M=[0 0 0 0 0;1/2 1/2 0 0 0;1/2 0 1/2 0 0;1 0 0 1 0;0 1/6 2/6 2/6 1/6];
%a=0;%ya=0;%b=10;%m=10;%k=20;%l=1;%u=20;%v=40;
M=input('Introduzca la matriz del método:');
a=input('Introduzca el punto inicial:');
b=input('Introduzca el punto final:');
ya=input('Introduzca la primera condición inicial:');
m=input('Introduzca el número de pasos:');
k=input('Introduzca el número de condiciones iniciales anti-
imágenes:');
l=input('Introduzca el paso entre cada condición inicial:');
u=input('Introduzca el número de diferentes imágenes:');
v=input('Introduzca el paso entre cada imagen:');
h=(b-a)/m;
figure;
if k==0
[TVEC1,YVEC1]=mirungekutta('f',M,a,ya,h,m);
plot(YVEC1,TVEC1);
title('Solución')
xlabel('t');ylabel('y(t)');
else
TVEC1=zeros(k,m+1);
YVEC1=zeros(k,m+1);
for i=0:1:k
[TVEC1(i+1,:),YVEC1(i+1,:)]=mirungekutta('f',M,a+i*l,ya,h,m);
end
for i=0:1:k
plot(YVEC1(i+1,:),TVEC1(i+1,:));
hold on;
end
title('Solución para distintos y(a)')
xlabel('t');ylabel('y(t)');
end
figure;
if u==0
[TVEC2,YVEC2]=mirungekutta('f',M,a,ya,h,m);
plot(YVEC2,TVEC2);
title('Solución')
xlabel('t');ylabel('y(t)');
else
TVEC2=zeros(u,m+1);
YVEC2=zeros(u,m+1);
for i=0:1:u
[TVEC2(i+1,:),YVEC2(i+1,:)]=mirungekutta('f',M,a,ya+i*v,h,m);
end
for i=0:1:u
plot(YVEC2(i+1,:),TVEC2(i+1,:));
hold on;
end
title('Solución para distintos a')
xlabel('t');ylabel('y(t)');
end
Jaime Martínez Verdú Página 3
4. Pr 2 - Derivación numérica de EDO’s: Runge-Kutta
if (k==0&&u~=0)
figure;
plot(YVEC1,TVEC1);
for i=0:1:u
plot(YVEC2(i+1,:),TVEC2(i+1,:));
hold on;
end
title('Solución para distintos a');
xlabel('t');ylabel('y(t)');
return
elseif (k~=0&&u==0)
figure;
for i=0:1:k
plot(YVEC1(i+1,:),TVEC1(i+1,:));
hold on;
end
plot(YVEC2,TVEC2);
title('Solución para distintos y(a)')
xlabel('t');ylabel('y(t)');
else
figure;
for i=0:1:k
plot(YVEC1(i+1,:),TVEC1(i+1,:));
hold on;
end
for i=0:1:u
plot(YVEC2(i+1,:),TVEC2(i+1,:));
hold on;
end
title('Solución para distintos a e y(a)')
xlabel('t');ylabel('y(t)');
end
return
f.m
function z = f(t,y)
z=t^2-y;
end
Jaime Martínez Verdú Página 4
5. Pr 2 - Derivación numérica de EDO’s: Runge-Kutta
function [T,Y] = mirungekutta(f,M,a,ya,h,m)
%---------------------------------------------------------------------
%RK4 Runge-Kutta solution for y' = f(t,y) with y(a) = ya.
% Sample call
% [T,Y] = rk4('f',a,b,ya,m)
% Inputs
% f name of the function
% a left endpoint of [a,b]
% b right endpoint of [a,b]
% ya initial value
% m number of steps
% Return
% T solution: vector of abscissas
% Y solution: vector of ordinates
%
% NUMERICAL METHODS: MATLAB Programs, (c) John H. Mathews 1995
% To accompany the text:
% NUMERICAL METHODS for Mathematics, Science and Engineering, 2nd Ed,
1992
% Prentice Hall, Englewood Cliffs, New Jersey, 07632, U.S.A.
% Prentice Hall, Inc.; USA, Canada, Mexico ISBN 0-13-624990-6
% Prentice Hall, International Editions: ISBN 0-13-625047-5
% This free software is compliments of the author.
% E-mail address: in%"mathews@fullerton.edu"
%
% Algorithm 9.4 (Runge-Kutta Method of Order 4).
% Section 9.5, Runge-Kutta Methods, Page 460
%---------------------------------------------------------------------
b = h*m + a;
T = zeros(1,m+1);
Y = zeros(1,m+1);
[fil,col]=size(M);
T(1) = a;
Y(1) = ya;
k=zeros(fil,1)
for j=1:m
tj = T(j)
yj = Y(j)
i=3
while i<=fil
k(2,1)=h*feval(f,T(j),Y(j))
k(i,1)=h*feval(f,tj+h*M(i-1,1),yj+M(i-1,:)*k)
i=i+1;
end
T(j+1) = a + h*j
Y(j+1) = yj + M(fil,:)*k;
end
figure;
plot(Y,T);
return;
Jaime Martínez Verdú Página 5
6. Pr 2 - Derivación numérica de EDO’s: Runge-Kutta
Solución para distintos y(a)
30
25
20
15
y(t)
10
5
0
0 100 200 300 400 500 600 700 800 900
t
Ilustración A. Resultados para varios valores de y(a).
Jaime Martínez Verdú Página 6
7. Pr 2 - Derivación numérica de EDO’s: Runge-Kutta
Solución para distintos a
10
9
8
7
6
5
y(t)
4
3
2
1
0
0 100 200 300 400 500 600 700 800
t
Ilustración B. Resultados para varios valores de a.
Jaime Martínez Verdú Página 7
8. Pr 2 - Derivación numérica de EDO’s: Runge-Kutta
Solución para distintos a e y(a)
30
25
20
15
y(t)
10
5
0
0 100 200 300 400 500 600 700 800 900
t
Ilustración C. Resultados para varios valores de a e y(a).
Jaime Martínez Verdú Página 8
9. Pr 2 - Derivación numérica de EDO’s: Circuito de Chua
CIRCUITO DE CHUA.
Jaime Martínez Verdú Página 9
10. Pr 2 - Derivación numérica de EDO’s: Circuito de Chua
Resumen
El circuito de Chua es el sistema físico más simple que puede ser utilizado
para estudiar la dinámica no lineal en circuitos eléctricos. Este circuito tiene
también una ventaja desde el punto de vista didáctico, ya que manifiesta una rica
variedad de las características comunes a otros sistemas no lineales, tales como la
bifurcación y el caos. En este trabajo se presenta un estudio básico de la dinámica
no lineal de sistemas físicos tomando como prototipo el circuito de Chua. Se
muestran resultados experimentales y se comparan con simulaciones numéricas de
las ecuaciones que describen el circuito. En particular se discute el régimen
hiperbólico y la existencia de órbitas periódicas.
Introducción.
¿Qué es el Caos? Cuando un ingenier@ se tropieza con un caso relacionado
con el Mundo del Caos, generalmente este hecho implica que un sistema de
carácter dinámico, aparentemente viable y predecible, pueda dar lugar a resultados
impredecibles y que carecen de sentido. El modo más sencillo de observar un
comportamiento caótico es fijarse en la ciencia que estudia los circuitos
electrónicos. Esto es debido a la simplicidad con la cual se lleva a cabo el estudio de
un circuito electrónico, lo económico que supone su análisis y por los grandes
conocimientos adquiridos en la rama de la electrónica analógica y digital a día de
hoy.
El circuito de Chua es un ejemplo muy conocido de circuito caótico. No
obstante, este circuito va más allá de un mero ejemplo para el estudio del caos
debido a su simplicidad y universalidad. De hecho, este circuito puede aportar
interesantes resultados que pueden contestar numerosas cuestiones físicas.
En concreto, en este informe se estudiarán diferentes situaciones para el
circuito de Chua, incluyendo experimentos para diversos valores iniciales y,
también, para diferentes valores de los componentes electrónicos que lo integran.
Primeramente, se procederá a realizar una breve inspección en la historia
de la teoría del Caos. Posteriormente, se realizará una descripción física del circuito
de Chua donde se describirán las ecuaciones diferencias del sistema físico de
manera que se consiga entender perfectamente el comportamiento y
funcionamiento del circuito electrónico. Posteriormente, se procederá a llevar a
cabo las consiguientes pruebas experimentales para testear la dinámica del
sistema. En efecto, lo que se pretende es estudiar numéricamente distintas
soluciones al sistema de ecuaciones diferenciales, variando tanto los parámetros del
sistema físico como las condiciones iniciales.
Jaime Martínez Verdú Página 10
11. Pr 2 - Derivación numérica de EDO’s: Circuito de Chua
Historia del Caos.
La primera vez que se encontraron indicios de la existencia del caos fue en el
año 1885 en Suecia. El Rey Oscar II estaba profundamente interesado por el
problema de los tres cuerpos:
El problema de los tres cuerpos consiste en determinar en
cualquier instante las posiciones y velocidades de tres cuerpos, de cualquier
masa, sometidos a su atracción mutua y partiendo de unas posiciones y
velocidades dadas (sus condiciones iniciales son 18 valores). (wikipedia.es)
Ilustración 1. Esquema tridimensional del problema de los tres cuerpos.
En concreto el problema planteado por el Rey era el de, considerando tres
planetas en el espacio, obtener la ley de comportamiento de los planetas cuyo
movimiento venía determinado por el efecto gravitatorio generado de forma mutua
por cada planeta. Era tal el deseo por el Rey sueco por encontrar la solución al
problema que tomó la decisión de otorgar un premio a aquella persona que
resolviera este dilema físico.
Dicha cuestión fue resuelta años después por Sir Isaac newton pero, eso sí,
para el caso que contemplaba en el sistema únicamente dos planetas. Mientras que
el problema de los dos cuerpos tiene solución mediante el método de las
cuadraturas integrales, el problema de tres cuerpos no tiene solución general por
dicho método y en algunos casos su solución puede ser caótica en el sentido físico
del término, que significa que pequeñas variaciones en las condiciones iniciales
pueden llevar a destinos totalmente diferentes.
Un matemático llamado Henri Poincaré envió un manuscrito en el cual se
deja entrever que había dado con la respuesta al problema. Inmediatamente
después a su publicación rectifica y asegura haber cometido un error dando como
explicación que el problema, de alguna manera, era irresoluble. La razón de ello
era ante pequeñas diferencias en la posición o velocidad inicial podían traducirse
en enormes diferencias en el resultado final. Con esta conclusión, Poincaré concibió
el Principio del Caos.
Si tiene curiosidad por observar el problema para n cuerpos utilice el
siguiente enlace: http://solar.cranf.net/.
Jaime Martínez Verdú Página 11
12. Pr 2 - Derivación numérica de EDO’s: Circuito de Chua
Edward Lorenz también ha tenido un lugar importante dentro de la historia
del Caos. Durante los años sesenta Lorenz dedicó gran parte de su tiempo al
desarrollo de modelos computarizados, uno de los cuales, trataba de representar la
atmósfera terrestre en el hemisferio norte. Al principio de su trabajo llevaba a cabo
todas las operaciones de cálculo con seis decimales hasta que decidió eliminar los
tres decimales menos significativos. Cuando Lorenz llevo a cabo este redondeo el
resultado obtenido fue asombroso.
Al principio de las comprobaciones, tanto los resultados nuevos como los
antiguos coincidían pero a partir de cierto tiempo, los resultados comenzaron a
divergir unos de otros dando resultados finales completamente distintos. Como
conclusión, Lorenz dedujo que los resultados finales de los cálculos estaban
fuertemente ligados a las condiciones iniciales del problema. De hecho, un pequeño
cambio en la posición inicial puede llevar a grandes diferencias en el resultado
final. Al repetir el proceso en varias ocasiones, empleando para ello diferentes
estados iniciales, se obtuvieron como resultado gráficas tridimensionales con la
curiosa forma de una mariposa (también conocido como atractor de Lorenz).
Ilustración 2. Resultados finales del atractor de Lorenz.
Con respeto a la electrónica, las primeras observaciones de caos en circuitos
electrónicos empezaron a ser notificadas en el año 1927 por Van der Pol y Van der
Mark que pudieron percibirlas al analizar osciladores no lineales. En 1980, Ueda y
Akamatsu encontraron situaciones de caos en osciladores de resistencia negativa.
El circuito de Chua, datado en el año 1993, por su simplicidad y universalidad, va
un poco más allá que el resto siendo empleado en experimentos para el control del
Caos.
Jaime Martínez Verdú Página 12
13. Pr 2 - Derivación numérica de EDO’s: Circuito de Chua
Fundamentos físicos del circuito de Chua.
En los últimos años se ha intensificado el estudio de los sistemas dinámicos
debido a su interés intrínseco y a sus potenciales aplicaciones en la ciencia y
técnica [1]. Algunas características de los sistemas dinámicos pueden ser
analizadas con circuitos eléctricos y uno de los más estudiados (tal y como ya se
mencionó anteriormente), debido a su simplicidad, es el circuito de Chua [2,3].
Este circuito consta de un inductor, una resistencia, dos capacitares y un
elemento no lineal como se muestra en la Ilustración 3. El elemento no lineal tiene
una función de respuesta como se muestra en la Ilustración 4.
Ilustración 3. Esquema eléctrico del circuito de Chua.
Ilustración 4. Función de respuesta del elemento no lineal.
Al aplicar las leyes de Kirchoff al circuito de Chua se obtienen las siguientes
ecuaciones que describen su comportamiento:
Ecuación 1
Ecuación 2
Ecuación 3
Ecuación 4
Donde es la función de respuesta del elemento no lineal.
Jaime Martínez Verdú Página 13
14. Pr 2 - Derivación numérica de EDO’s: Circuito de Chua
Las variables que surgen en las ecuaciones son la tensión V1 que aparece en
bornes del condensador de la derecha, la tensión V2 que aparece en bornes del
condensador izquierdo e iL que se trata de la intensidad que circula por la bobina.
Las constantes que aparecen en el sistema de ecuaciones diferenciales son las
capacitancias C1 y C2 de los dos condensadores, la inductancia L de la bobina, la
resistencia interna r0 de la bobina y la resistencia variable R del potenciómetro.
Además, el valor de la resistencia negativa NR depende de la función que a su
vez depende de las variables , que vienen explicados en la Ilustración 4.
Un análisis de las ecuaciones muestra que el sistema tiene tres puntos fijos
[3] que definen tres regiones en el espacio que permiten clasificar las soluciones de
la dinámica del circuito. El comportamiento de las soluciones en la vecindad de los
puntos fijos muestra que las soluciones pueden ser tipo foco, sumideros y fuentes.
En las simulaciones numéricas se procederá a trabajar con la forma adimensional
del sistema de ecuaciones; se obtiene con los cambios de variables:
Para la Ecuación 1 se realizan los siguientes pasos:
Jaime Martínez Verdú Página 14
15. Pr 2 - Derivación numérica de EDO’s: Circuito de Chua
Para la Ecuación 2 se realizan los siguientes pasos:
Para la Ecuación 3 se realizan los siguientes pasos:
Jaime Martínez Verdú Página 15
16. Pr 2 - Derivación numérica de EDO’s: Circuito de Chua
En definitiva, se simulará el siguiente sistema de ecuaciones:
Ecuación 5
Ecuación 6
Ecuación 7
Cuyos valores vienen determinados por las siguientes expresiones:
Resultados Experimentales
Existen dos tipos de bifurcaciones que se pueden estudiar con el circuito de Chua,
las cuales se presentan si se mantienen fijos todos los elementos del circuito excepto uno de
ellos que se varía. En un esquema de bifurcación el elemento variable es el resistor R
(Fig.1), y en el otro esquema el elemento variable es el condensador C 2. En esta sección se
presenta una secuencia de los resultados experimentales y numéricos del esquema de
bifurcación cuando se varía el resistor R. Experimentalmente se utilizaron los valores que
aparecen en la tabla 1. Los valores de las pendientes del resistor no lineal fueron m 0=-
0.4167 mS (mili-Siemens) y m1=-0.8 mS. En las simulaciones numéricas se trabajó con la
forma adimensional del sistema de ecuaciones (1); esta se obtiene haciendo los cambios de
variables: x = VC1/Bv, y = VC2/Bv, z = i/(Bv G), t = t/(G/C2). Los valores utilizados en las
simulaciones numéricas fueron m0=-0.4167, m1=-0.8, C1=10, C2=100, L=18, los cuales se
mantuvieron fijos y el valor de la resistencia R que se utilizó para cada región se citan en
cada figura.
Parámetros f01 f02 f03 f1 f2 f3 f4
R( ) 0 2.500 2.200 2.200 2.200
C1 (nF) 10,0 10,0 9,0 11,0
C2 (nF) 100,0 100,0 90,0 110,0
L (mH) 22,0 16,7 14,4 19,1
r0 ( ) 10,0 10,0 9,9 10,1
Ga (mS) -0,757 -0,474 -0,460 -0,489
Gb (mS) -0,410 -0,255 -0,247 -0,264
BP (V) 1.70 1.80 1.63 1.98
Parámetros f01 f02 f03 f1 f2 f3 f4
9 3 9 10 10 10 10
100/7 100/7 100/7 0 28,409 28,982 30,250 27,874
0 0 0 0 0,114 0,132 0,136 0,128
a 8/7 8/7 8/7 0 -1,892 -1,042 -1,012 -1,076
b 57 57 57 0 -1,025 -0,561 -0,543 -0,581
Jaime Martínez Verdú Página 16
17. -
4 4
3 3
2 2
1 1
Z
Z
0 0
-1 -1
-2 -2
-3 -3
-4 -4
-3 -2 -1 0 1 2 3 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4
X Y
0.4
0.3
0.4
0.2
0.2
0.1
0
Z
Y
0
-0.2
-0.1
-0.2 -0.4
4
2 4
-0.3 2
0
0
-2 -2
-0.4
-3 -2 -1 0 1 2 3 Y -4 -4
X
X
Ilustración 5. Resultados I obtenidos para la combinación de parámetros f01.
Jaime Martínez Verdú Página 17
18. -
2.5 0.4
2
0.3
1.5
0.2
1
0.1
0.5
X
Y
0 0
-0.5
-0.1
-1
-0.2
-1.5
-0.3
-2
-2.5 -0.4
0 20 40 60 80 100 0 20 40 60 80 100
T T
4 4
X
3 3 Y
Z
2 2
1 1
Z
0 0
XYZ
-1 -1
-2 -2
-3 -3
-4 -4
0 20 40 60 80 100 0 20 40 60 80 100
T T
Ilustración 6. Resultados II obtenidos para la combinación de parámetros f01.
Jaime Martínez Verdú Página 18
19. -
1 1
0.5 0.5
0 0
Z
Z
-0.5 -0.5
-1 -1
-1.5 -1.5
-2 -2
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 -0.1 -0.05 0 0.05 0.1 0.15
X Y
0.15
0.1 0.15
0.1
0.05 0.05
Z
Y
0
0
-0.05
-0.1
1
-0.05
2
0
1.5
-1 1
-0.1 0.5
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 Y -2 0
X
X
Ilustración 7. Resultados I obtenidos para la combinación de parámetros f02.
Jaime Martínez Verdú Página 19
20. -
1.6 0.15
1.4
0.1
1.2
1
0.05
X
Y
0.8
0
0.6
0.4
-0.05
0.2
0 -0.1
0 20 40 60 80 100 0 20 40 60 80 100
T T
1 2
X
1.5 Y
0.5 Z
1
0
0.5
Z
-0.5 0
XYZ
-0.5
-1
-1
-1.5
-1.5
-2 -2
0 20 40 60 80 100 0 20 40 60 80 100
T T
Ilustración 8. Resultados II obtenidos para la combinación de parámetros f02.
Jaime Martínez Verdú Página 20
21. -
10 10
x 10 x 10
4 4
3 3
2 2
1 1
Z
Z
0 0
-1 -1
-2 -2
-3 -3
-2 -1.5 -1 -0.5 0 0.5 1 1.5 -8 -6 -4 -2 0 2 4 6
X 10 Y 9
x 10 x 10
9
x 10
6
10
x 10
4
1
2
0.5
0
Z 0
Y
-2
-0.5
-4 -1
4
-6 2 2
10 0 1
x 10 0 10
-2 -1 x 10
-8
-2 -1.5 -1 -0.5 0 0.5 1 1.5 Y -4 -2
10
X
X
x 10
Ilustración 9. Resultados I obtenidos para la combinación de parámetros f03.
Jaime Martínez Verdú Página 21
22. -
10 9
x 10 x 10
1.5 6
1 4
0.5 2
0 0
X
Y
-0.5 -2
-1 -4
-1.5 -6
-2 -8
0 20 40 60 80 100 0 20 40 60 80 100
T T
10 10
x 10 x 10
4 4
X
Y
3 3
Z
2 2
1 1
Z
XYZ
0 0
-1 -1
-2 -2
-3 -3
0 20 40 60 80 100 0 20 40 60 80 100
T T
Ilustración 10. Resultados II obtenidos para la combinación de parámetros f03.
Jaime Martínez Verdú Página 22