34
78 7. Desarrollo del Identificador Gráfico de Bifurcaciones El objeto de este capítulo es exponer la filosofía utilizada para el desarrollo del identificador Gráfico de Bifurcaciones. El IGB es una herramienta computacional que se presenta como un toolbox para MATLAB. Su objetivo es localizar puntos de bifurcación por métodos indirectos (continuación), e identificar bifurcaciones de codimensión 1 por métodos directos (función de prueba). Los algoritmos utilizados en cada uno de estos métodos se exponen en el capítulo 6. En los capítulos 8 y 9, que son los manuales de referencia y de usuario del IGB, se puede consultar tanto el manejo del software como las características de cada una de las funciones que lo componen. La interfaz del IGB ha sido diseñada de forma que el usuario pueda configurar el sistema en estudio en una sola pantalla. Básicamente la interfaz está constituida por los espacios para la referencia de los archivos donde se encuentran definidas las funciones (campos de texto), los botones de funciones y las opciones del menú. Figura 7.1 – Interfaz del IGB

7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

  • Upload
    buitram

  • View
    228

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

78

7. Desarrollo del Identificador Gráfico de Bifurcaciones

El objeto de este capítulo es exponer la filosofía utilizada para el desarrollo del

identificador Gráfico de Bifurcaciones. El IGB es una herramienta computacional que se

presenta como un toolbox para MATLAB. Su objetivo es localizar puntos de bifurcación por

métodos indirectos (continuación), e identificar bifurcaciones de codimensión 1 por

métodos directos (función de prueba). Los algoritmos utilizados en cada uno de estos

métodos se exponen en el capítulo 6. En los capítulos 8 y 9, que son los manuales de

referencia y de usuario del IGB, se puede consultar tanto el manejo del software como las

características de cada una de las funciones que lo componen.

La interfaz del IGB ha sido diseñada de forma que el usuario pueda configurar el sistema

en estudio en una sola pantalla. Básicamente la interfaz está constituida por los espacios

para la referencia de los archivos donde se encuentran definidas las funciones (campos

de texto), los botones de funciones y las opciones del menú.

Figura 7.1 – Interfaz del IGB

Page 2: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

79

Para entender la forma como ha sido concebido el IGB, es necesario conocer en detalle

las variables involucradas en el análisis de un sistema dinámico y cada uno de los

métodos (directos e indirectos) utilizados para la identificación de bifurcaciones. Esto

desde la perspectiva del programador.

7.1 Variables del IGB

Antes de abordar el estudio de los métodos para la detección e identificación de las

bifurcaciones, es necesario hacer una presentación de las variables utilizadas por el IGB.

Estas variables pueden dividirse en dos tipos: externas e internas.

La variables externas son las que el usuario puede modificar. Hacen parte de la interfaz

del toolbox y se presentan como campos de texto editables. Por otro lado, las variables

internas son variables de control para el correcto funcionamiento del programa. El usuario

puede modificarlas a través de los menús.

Como se observa en la interfaz del IGB (Figura 7.1), las variables externas se localizan

alrededor de la gráfica. A la derecha se están las variables de tipo vector (Figura 7.2), y

debajo las variables tipo función (Figura 7.3).

7.1.1 Variables IGB externas tipo vector Límites de la gráfica PLIM. PLIM especifica los límites de la gráfica donde se van a

mostrar los puntos fijos y los equilibrios. PLIM es una matriz 2x2 o 3x2 que contiene los

límites de cada uno de los ejes, en forma de vectores fila. En el caso de una gráfica 2D,

contendrá los límites de los ejes horizontal y vertical. Para 3D contendrá además los

límites del eje transversal.

PLIM=[h_inf,h_sup; v_inf,v_sup; t_inf,t_sup].

Page 3: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

80

Cada uno de los vectores fila que componen la matriz PLIM, se consignan en su orden en

los campos de texto editables marcados con X, Y y Z. El campo Z solo se habilita cuando

se plotea en 3D.

Figura 7.2 – Variables externas tipo vector

Tamaño de paso S. Permite especificar las distancias para calcular para determinar los

puntos a partir de los cuales se determinarán los equilibrios o puntos fijos. S es un vector

de dos o tres dimensiones cuyos componentes indican las distancias sobre cada uno de

los ejes.

Precisión PREC. Permite especificar el número de cifras significativas después del cero

para la presentación de los datos. Por defecto este número es 4.

Medidas de convergencia DELTA y EPSILON. Como se ha estudiado en el capítulo 5, se

establecen dos medidas que determinan la convergencia del algoritmo, definidas como,

|| |||| ||ηη1+

< δ , ∧, || ( )|||| ( )||f xf x1+

< ε (7.1)

Donde, tal como se explica en el capítulo 5, ||ηj|| es la norma del desplazamiento y || f(xj) ||

es la norma de la función. DELTA es el valor para el criterio de convergencia por tamaño

de paso, y EPSILON criterio por valor de la función.

Page 4: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

81

Número de iteraciones totales ITTOT e iniciales ITINI. En el método de detección de

bifurcaciones por el método de la fuerza bruta (simulación pura), el usuario puede

especificar el número de iteraciones totales que desea ejecutar el sistema a partir de un

punto inicial. Así mismo tiene la posibilidad de no graficar las iteraciones iniciales. Por

defecto estos valor son de 100 para ITTOT y de 50 para ITINI.

Tolerancia TOL. En algunos métodos, como el de Seidel por ejemplo, el criterio de

convergencia se da mediante el tamaño del paso únicamente, tal como se explica en el

capítulo 5. Por defecto este valor TOL es 10^(-5).

Posición de los parámetros independientes PPAR. Este es un vector que contiene la

posición de los parámetros independientes en el vector y = (x, α), en particular las del

vector de entrada Y0. Estas posiciones deben mantenerse en la definición de las

funciones y sus derivadas: FUN, GRADFUN, FUNP, GRADFUNP. Es decir, PPAR no puede

modificarse sin modificar también estos archivos.

Posición de las variables de ploteo PPLT. Este vector contiene las variables (x, α) que

se van a graficar en su respectivo orden x, y, z. Debe anotarse que el programa sólo

reconoce 2 o 3 dimensiones para graficar (Ver Manual de Referencia).

7.1.2 Variables IGB externas tipo función

Figura 7.3 – Variables externas tipo función

Función continua FUN. Archivo de la función continua. Describe la función de estudio de

la forma &x = f(y). Su sintaxis es

XP=FUN(Y)

Page 5: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

82

donde el vector de entrada y = (x, α) contiene las variables de estado x = [x1, x2, ...., xn], y

los parámetros independientes α = [α1, α2, ..., αm].

y = [y1, y2, ..., yn+m]

y = [x1, x2, ..., xn, α1, α2, ..., αm]

El vector de entrada y es de dimensión n + m, y contiene n variables de estado y m

parámetros independientes, donde n = 1, 2, ... y m = 0, 1, 2, ....

El vector de respuesta &x es de dimensión n, y contiene el estado de las n variables de

estado.

x& = [ 1x& , 2x& , ..., nx& ].

Tal como se explica en los capítulos 5 y 6, la definición de esta función FUN, es aplicable a

sistemas dinámicos continuos y discretos. Veamos por ejemplo el siguiente sistema

dinámico continuo definido como un archivo .m para MATLAB.

Función 7.1 – Función FOLD function yp=fold(y) x=y(1);alfa=y(2); yp=alfa + x^2;

La información sobre el procedimiento para generar un archivo FUN, se encuentra en el

Manual del Usuario y también puede consultarse en el código mismo de la función.

Jacobiano continuo GRADFUN. Archivo del Jacobiano de la función continua. Este archivo

contiene el Jacobiano de la función FUN. Su sintaxis es,

[J,ValPr,z]=GRADFUN(Y)

El vector de entrada y = (x, α), tal como se describió anteriormente, contiene las variables

de estado x = [x1, x2, ...., xn], y los parámetros independientes α = [α1, α2, ..., αm]. El vector

de entrada y es de dimensión n + m.

Page 6: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

83

y = [y1, y2, ..., yn+m]

y = [x1, x2, ..., xn, α1, α2, ..., αm]

El Jacobiano J es una matriz n x n que evalúa las derivadas de las funciones del vector de

funciones descrito en FUN, respecto a la n variables de estado.

J =

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

n

nnn

n

n

dxxd

dxxd

dxxd

dxxd

dxxd

dxxd

dxxd

dxxd

dxxd

&L

&&

MOMM

&L

&&

&L

&&

21

2

2

2

1

2

1

2

1

1

1

Finalmente, ValPr consigna los valores propios de J evaluados en y, y la matriz Z

consigna las derivadas de la función FUN respecto a los parámetros independientes.

z =

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

m

nnn

m

m

dxd

dxd

dxd

dxd

dxd

dxd

dxd

dxd

dxd

ααα

ααα

ααα

&L

&&

MOMM

&L

&&

&L

&&

21

2

2

2

1

2

1

2

1

1

1

Por ejemplo,

Función 7.2 – Jacobiano de la función FOLD – FOLDJ function [J,ValPr,z]=foldj(y) x=y(1); alfa=y(2); J=2*x; ValPr=eig(J); z=1;

Page 7: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

84

Función parametrizada FUNP. Este archivo contiene la función continua de estudio en

forma parametrizada px& = F(y). Su sintaxis es

XPP=FUNP(Y)

El vector de entrada y es de dimensión 2n + 2m + 1. Contiene n variables de estado, m

parámetros independientes, n condiciones iniciales de las variables de estado, m

condiciones iniciales de los parámetros independientes y un parámetro adicional s que es

la longitud de arco. Es decir,

y = [y1, y2, ..., y2n+2m+1]

y = [x1, x2, ..., xn, α1, α2, ..., αm, x01, x02, ..., x0n, α01, α02, ..., α0m, s]

El vector de respuesta px& es de dimensión n + m, y contiene el estado de las n variables

de estado más m funciones adicionales que parametrizan la función respecto a la longitud

de arco s. Tal como se ha explicado en el capítulo 6, para la parametrización por longitud

de arco, se agrega a la función continua un polinomio p. En el caso de una función de k

parámetros independientes, se agregarán k polinomios.

0 = pk(x, α, s) = ∑

=

−n

iii xx

1

20 )( + (αk – α0k)2 − s, k = 1, 2, ..., m (7.2)

Tal como se explica en el capítulo 6, la función queda extendida así,

px& = F(x, α, s) = ⎥

⎤⎢⎣

⎡),,(

),(sxp

xf

k αα

= 0, k = 1, 2, ..., m (7.3)

Por ejemplo,

Función 7.3 – Función FOLD parametrizada – FOLDP function ypp=foldp(y) x=y(1); alfa=y(2); x0=y(3); alfa0=y(4); h=y(5); ypp=[alfa + x^2;(x-x0)^2 + (alfa-alfa0)^2 - h^2];

Page 8: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

85

Jacobiano parametrizado GRADFUNP. Este archivo consigna el Jacobiano de la función

parametrizada FUNP, de la misma forma en que GRADFUN consigna el Jacobiano de la

función continua FUN. Su sintaxis es

JP=GRADFUNP(Y)

El vector de entrada y es de dimensión 2n + 2m + 1. Contiene n variables de estado, m

parámetros independientes, n condiciones iniciales de las variables de estado, m

condiciones iniciales de los parámetros independientes y un parámetro adicional s que es

la longitud de arco. Es decir,

y = [y1, y2, ..., y2n+2m+1]

y = [x1, x2, ..., xn, α1, α2, ..., αm, x01, x02, ..., x0n, α01, α02, ..., α0m, s]

El Jacobiano de la función parametrizada Jp es una matriz (n+m) x (n+m) que evalúa las

derivadas de las funciones del vector de funciones descrito en FUNP, respecto a la n

variables de estado y a los m parámetros independientes.

Jp = ⎥

⎤⎢⎣

⎡dP

zJ | (7.4)

Donde el Jacobiano J es una matriz n x n que evalúa las derivadas de las funciones del

vector de funciones descrito en FUN, respecto a la n variables de estado.

J =

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

n

nnn

n

n

dxxd

dxxd

dxxd

dxxd

dxxd

dxxd

dxxd

dxxd

dxxd

&L

&&

MOMM

&L

&&

&L

&&

21

2

2

2

1

2

1

2

1

1

1

La matriz z consigna las derivadas de la función FUN respecto a los parámetros

independientes.

Page 9: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

86

z =

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

m

nnn

m

m

dxd

dxd

dxd

dxd

dxd

dxd

dxd

dxd

dxd

ααα

ααα

ααα

&L

&&

MOMM

&L

&&

&L

&&

21

2

2

2

1

2

1

2

1

1

1

Y la matriz dP evalúa las derivadas de la matriz de los m polinomios de parametrización de

la función parametrizada FUNP.

dP =

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

m

mmm

n

mmm

mn

mn

ddp

ddp

ddp

dxdp

dxdp

dxdp

ddp

ddp

ddp

dxdp

dxdp

dxdp

ddp

ddp

ddp

dxdp

dxdp

dxdp

ααα

ααα

ααα

LL

MOMMMOMM

LL

LL

2121

2

2

2

1

22

2

2

1

2

1

2

1

1

11

2

1

1

1

Por ejemplo,

Función 7.4 – Jacobiano de la función FOLD parametrizada – FOLDJP

function Jp=foldjp(y) x=y(1); alfa=y(2); x0=y(3); alfa0=y(4); h=y(5); J=foldj(y); z=1; dP=[2*(x-x0),2*(alfa-alfa0)]; Jp=[J,Z;dP];

Función discreta FUND. Este archivo contiene la función discreta yk+1a g(yk). La sintaxis

de la función es,

YP=FUND(Y)

Page 10: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

87

El vector de entrada yk es de dimensión n + m, y contiene n variables de estado y m

parámetros independientes. Es decir,

yk = [y1, y2, ..., y2n+2m+1]

yk = [x1, x2, ..., xn, α1, α2, ..., αm, x01, x02, ..., x0n, α01, α02, ..., α0m, s]

El vector de respuesta yk+1 es de dimensión n, y contiene el estado de las n variables de

estado.

yk+1 = [x1, x2, ..., xn]

Por ejemplo,

Función 7.5 – Función FOLD discreta – FOLDD function yp=foldd(y) x=y(1); alfa=y(2); yp=alfa+x+x^2;

Jacobiano discreto GRADFUND. Archivo del Jacobiano de la función discreta. Este archivo

contiene el Jacobiano de la función FUND. Su sintaxis es,

[J,ValPr] = GRADFUND(Y)

El vector de entrada y = (x, α), tal como se describió anteriormente, contiene las variables

de estado x = [x1, x2, ...., xn], y los parámetros independientes α = [α1, α2, ..., αm]. El vector

de entrada y es de dimensión n + m.

y = [y1, y2, ..., yn+m]

y = [x1, x2, ..., xn, α1, α2, ..., αm]

El Jacobiano J es una matriz n x n que evalúa las derivadas de las funciones del vector de

funciones descrito en FUND, respecto a la n variables de estado.

Page 11: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

88

J =

⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢

n

nnn

n

n

dxxd

dxxd

dxxd

dxxd

dxxd

dxxd

dxxd

dxxd

dxxd

&L

&&

MOMM

&L

&&

&L

&&

21

2

2

2

1

2

1

2

1

1

1

ValPr consigna los valores propios de J evaluados en y. Por ejemplo,

Función 7.6 – Jacobiano de la función FOLD discreta – FOLDJP

function [J,ValPr]=foldjd(y) x=y(1); alfa=y(2); J=1+2*x; ValPr=eig(J);

Funciones de prueba TFUN y TFUND. Hay dos archivos de funciones de prueba que viene

con el IGB, TFUN para sistemas dinámicos continuos y TFUND para sistemas dinámicos

discretos. La sintaxis de estos archivos es:

tf=TFUN(eig1,eig2)

tf=TFUND(eig1,eig2)

Los argumentos de entrada eig1, ieg2 son los valores propios (o multiplicadores) del

equilibrio o punto (o punto fijo) de los dos puntos en medio de los cuales se quiere

verificar la aparición de una bifurcación. El método directo basado en la función de

prueba, tal como se expone en el capítulo 6, solo requiere de estos dos vectores de

entrada. El archivo de la función de prueba retorna tf, un flag que indica:

tf Significado Tf Significado

0 No hay bifurcación 4 Bifurcación flip

1 Bifurcación fold en sistema continuo 5 Bifurcación de

Neimarck – Sacker

2 Bifurcación Hopf 6 Bifurcación desconocida

3 Bifurcación fold en sistema discreto

Page 12: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

89

Por ejemplo, en el IGB se han implementado por defecto las siguientes,

Función 7.7 – Función de prueba TFUN function tf=tfun(eig1,eig2) tf=0; if isreal(eig1) & isreal(eig2) if (eig1*eig2)<=0 tf=1; %Bifurcación FOLD end else if (sum(real(eig1))*sum(real(eig2)))<=0 tf=2; %Bifurcación HOPF end end

Función 7.8 – Función de prueba TFUND function tf=tfund(eig1,eig2)

if ~prod(size(eig1)==size(eig2)) tf=6; %bifurcación DESCONOCIDA else if (norm(eig1(1))<1 & norm(eig2(1))>=1) | ... (norm(eig1(1))>=1 & norm(eig2(1))<1) if isreal(eig1) & isreal(eig2) if eig1>0 & eig2>0 tf=3; %Bifurcación FOLD dis elseif eig1>0 & eig2>0 tf=4; %Bifurcación FLIP else tf=6; %Bifurcación DESCONOCIDA end elseif ~isreal(eig1) & ~isreal(eig2) tf=5; %Bifurcación de NEIMARK-SACKER else tf=6; %Bifurcación desconocida end end end

Page 13: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

90

7.1.3 Variables IGB internas

Las variables se utilizan para llevar un control sobre las opciones que el usuario

selecciona en los menús del IGB.

Figura 7.4 – Menú Configuración

Variable del tipo de sistema FLAG_SIS. Esta variable toma su valor de acuerdo a la

selección en el menú Sistema del IGB. Los valores de FLAG_SIS son:

FLAG_SIS Significado

1 Sistema continuo

2 Sistema discreto

Variable del tipo de simulación FLAG_SIM. Esta variable toma su valor de acuerdo a la

selección en el menú Simulación del IGB. Los valores de IG_SIM son:

FLAG_SIM Significado

1 Retrato de fase

2 Diagrama de bifurcación

3 Gráfica de tiempo

Variable del método indirecto FLAG_MET. Esta variable toma su valor de acuerdo a la

selección en el menú Método del IGB.

Page 14: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

91

Figura 7.5 – Menú Método

Los valores que toma esta variable son:

FLAG_MET Significado FLAG_MET Significado

1 Método de la simulación o de fuerza bruta

6 Continuación con predictor secante sin parametrización

2 Continuación basada en el método de Newton – Raphson o unipunto

7 Continuación con predictor secante con parametrización

3 Método de Newton – Raphson con múltiples puntos o multipunto

8 Continuación con predictor tangente sin parametrización

4 Continuación basada en el método secante

9 Continuación con predictor Tangente con parametrización

5 Continuación basada en el método de Seidel

Variable del método directo o función de prueba FLAG_TFUN. Esta variable cambia de

valor cada vez que he hace clic sobre la opción Función de Prueba del menú Método

(Figura 7.5). Los valores de FLAG_TFUN son:

FLAG_TFUN Significado

0 Sin función de prueba

1 Con función de prueba

Page 15: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

92

Además de estas, existen otras variables internas relacionadas con la presentación de

resultados en pantalla, en particular con la gráfica. Estas variables pueden estudiarse con

detalle en el Manual del Usuario.

7.2 El Método de la fuerza bruta

El método de la fuerza bruta consiste en la localización de un número determinado de

puntos del sistema, mediante la ejecución de la función que lo describe. Este método

también es conocido como el método de la simulación.

La sintaxis para la simulación es:

yp=feval(FUN,y0);

Las variables involucradas son:

Variable de entrada Significado

FUN Archivo de la función

y0 Vector inicial

Variable de retorno Significado

yp Imagen del punto de entrada y0

Si el sistema es continuo, el siguiente punto inicial se calcula así:

y0=y0+s*yp;

Si el sistemas es discreto, se procede simplemente así:

y0=yp;

Cuando este método es utilizado para la detección de bifurcaciones en una región

definida por los límites de la gráfica, la sintaxis es la siguiente:

Page 16: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

93

flag_stop=fbruta(PLIM,FUN,y0,PPLT,PPAR,s,ITTOT,ITINI,PREC,flag_sis)

Las variables involucradas son:

Variable de entrada Significado

PLIM Matriz con los límites de la gráfica

FUN Archivo de la función continua

Y0 Vector inicial (X,ALPHA)

PPLT Vector de las variables de ploteo

PPAR Vector con las posiciones de los parámetros independientes

s Tamaño de paso

ITTOT Iteraciones totales

ITINI Iteraciones iniciales

PREC Número de decimales significativos

flag_sis Tipo de sistema. 1-continuo, 2-discreto.

Variable de retorno Significado

flag_stop Booleano que indica la detención del ploteo

Mediante este método se calculan ITTOT puntos a partir del punto inicial. Los primeros

ITINI puntos no son tomados en cuenta ni para el ploteo ni su registro. Cuando se han

hecho las iteraciones establecidas por el usuario, el la componente del eje horizontal en la

gráfica da un salto s y se calcula así un nuevo valor inicial. Observe que el vector s juega

un doble papel en los sistemas dinámicos continuos.

Este método permite la localización de equilibrios y ciclos estables. A diferencia de los

otros métodos para la detección de bifurcaciones, no es posible identificar la estabilidad

de los equilibrios. Para la localización de equilibrios y ciclos inestables, es necesario

transformar la definición del sistema, tal como se explica en el capítulo 5. Es decir, para

sistemas continuos se debe cambiar el signo del tiempo, y en los sistemas discretos se

debe invertir la función.

Page 17: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

94

7.3 El Método de Newton – Raphson

Para la localización de equilibrios en sistemas dinámicos continuos y discretos de la forma

&x = f (x), x ∈ Rn (7.5)

Se ha implementado en el IGB el método de Newton – Raphson. Este método se

encuentra descrito en el Manual de Referencia bajo la función NEWTON. Sin embargo, para

la identificación de bifurcaciones en sistemas multiparamétricos, este sistema ha sido

adecuado de la forma presentada por la función NEWTONMP.

A continuación se presenta una descripción de los métodos basados en el método de

Newton – Raphson para la localización de equilibrios (y puntos fijos) para la posterior

detección de bifurcaciones.

7.3.1 Cálculo de la primera solución

El problema de la identificación de bifurcaciones, se inicia calculando el primer equilibrio,

es decir, la primera solución (x1, α1) del sistema

f (x, α) = 0, x ∈ Rn, α ∈ Rm (7.6)

Para esto se ha implementado un método basado en el Método de Newton – Raphson,

expuesto en el capítulo 5. Este método, denominado Método de Newton – Raphson

Multiparamétrico se presenta en detalle en el Manual de Referencia, bajo el nombre de

NEWTONMP.

La sintaxis de esta función es la siguiente,

[X,F,k,cond]=newtonmp(FUN,GRADFUN,Y0,PPAR,DELTA,EPSILON)

Las variables involucradas son:

Page 18: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

95

Variable de entrada Significado

FUN Archivo de la función continua

GRADFUN Archivo del Jacobiano de FUN

Y0 Vector inicial (X,ALPHA)

PPAR Vector con las posiciones de los parámetros independientes

DELTA Criterio de convergencia por tamaño de paso

EPSILON Criterio de convergencia por valor de la función

Variable de retorno Significado

X Equilibrio encontrado

F Valor de la función evaluada en el equilibrio X

k Número de iteraciones

cond Condición de la salida. (Ver Manual del Referencia)

Para determinar el resto de los equilibrios (o puntos fijos), utilizando el método de Newton

– Raphson, en el IGB se han implementado dos alternativas: único punto y múltiples

puntos.

7.3.2 Soluciones a partir de un único punto

Una vez se ha calculado el primer equilibrio o punto fijo por el método de Newton -

Raphson, se procede a calcular las demás soluciones. Para esto el IGB cuenta las

funciones PUNI para sistemas dinámicos continuos, y PUNID para sistemas dinámico

discretos, cuyas descripciones se encuentran en el Manual de Referencia. La sintaxis de

estas funciones es:

flag_stop=puni(PLIM,FUN,GRADFUN,TFUN,Y0,PPLT,PPAR,s,...

DELTA,EPSILON,PREC)

flag_stop=punid(PLIM,FUN,GRADFUN,GRADFUND,TFUN,y0,PPLT,PPAR,... s,DELTA,EPSILON,PREC)

Page 19: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

96

Variable de entrada Significado

PLIM Matriz con los límites de la gráfica

FUN Archivo de la función continua

GRADFUN Archivo del Jacobiano de FUN

GRADFUND Archivo del Jacobiano de FUND. Solo para PUNID, se utiliza junto con TFUN.

TFUN Archivo de la función de prueba. De uso opcional.

Y0 Vector inicial (X,ALPHA)

PPLT Vector de las variables de ploteo

PPAR Vector con las posiciones de los parámetros independientes

S Tamaño de paso

DELTA Criterio de convergencia por tamaño de paso

EPSILON Criterio de convergencia por valor de la función

PREC Número de decimales significativos

Variable de retorno Significado

flag_stop Booleano que indica la detención del ploteo

Esta función calcula la primera solución a partir del punto inicial Y0, y a partir de este

punto aproxima la siguiente dando un salto S. Este es un procedimiento de continuación

en el que se obtienen todos los equilibrios (o puntos fijos) sobre un ramal.

El programa retorna la última solución calculada Y, y el booleano flag_stop que indica si

se debe continuar y detener el ploteo. El proceso de ploteo se detiene cuando no es

posible encontrar una solución del sistema descrito en FUN, o cuando se ha producido

algún error durante su localización.

La diferencia entre estas dos funciones radica en la forma de interpretar la estabilidad de

la solución encontrada. En PUNI se comprueba si los valores propios de la solución

pertenecen al semiplano negativo (equilibrio estable), mientras que en PUNID se

comprueba si pertenecen al círculo unitario (punto fijo estable).

Page 20: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

97

7.3.3 Soluciones a partir de múltiples puntos

El método de único punto y cualquier otro procedimiento que implique continuación, solo

puede localizar los equilibrios o puntos fijos que pertenecen a la misma rama. Por esta

razón se han implementado métodos de múltiples puntos para localizar todas las

soluciones a partir múltiples puntos. Para el estudio de bifurcaciones en sistemas

continuos está la función PMUL, y para sistemas discretos la función PMULD. Estas

funciones se encuentran expuestas con detalle en el Manual de Referencia. La sintaxis de

estas funciones es:

flag_stop=pmul(PLIM,FUN,GRADFUN,Y0,PPLT,PPAR,s,DELTA,EPSILON,PREC)

flag_stop=pmuld(PLIM,FUN,GRADFUN,GRADFUND,Y0,PPLT,PPAR,...

s,DELTA,EPSILON,PREC)

Las variables involucradas en esta función son:

Variable de entrada Significado

PLIM Matriz con los límites de la gráfica

FUN Archivo de la función continua

GRADFUN Archivo del Jacobiano de FUN

GRADFUND Archivo del Jacobiano de FUND. Solo para PUNID, se utiliza junto con TFUN.

Y0 Vector inicial (X,ALPHA)

PPLT Vector de las variables de ploteo

PPAR Vector con las posiciones de los parámetros independientes

s Tamaño de paso

DELTA Criterio de convergencia por tamaño de paso

EPSILON Criterio de convergencia por valor de la función

PREC Número de decimales significativos

Variable de retorno Significado

flag_stop Booleano que indica la detención del ploteo

Page 21: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

98

El principio de operación es la ubicación de puntos de inicio para el método de Newton –

Raphson en todo el espacio de la gráfica, en dos o tres dimensiones. Luego, a partir de

cada punto, intenta localizar un equilibrio cercano.

Esta función es útil cuando los equilibrios ubicados en el espacio, conforman ramales

complejos que no podrían ser identificados con los métodos de continuación. Por su

carácter, es un método lento que consume muchos recursos computacionales. Además,

con este método, no es posible utilizar una función de prueba para identificar directamente

una bifurcación.

7.4 Método Secante

Como alternativa al método de Newton, el IGB ha implementado el método secante para

la determinación de puntos de equilibrio. Tal como se explica en el capítulo 5, mientras

que el método de Newton – Raphson requiere de la evaluación de dos funciones: la

función del sistema y su Jacobiano, el método secante solo necesita la función del

sistema para determinar sus raíces.

Como en el caso del método de Newton – Raphson, en el IGB se ha implementado como

herramienta el método secante clásico para resolver sistemas de la forma (7.5). Este

método se encuentra bajo la función de nombre SECANT, y puede estudiarse con detalle

en el Manual de Referencia. Sin embargo, la determinación de los equilibrios del sistema

(7.6) ha requerido el desarrollo del método del sistema secante multiparamétrico. Este

método se encuentra bajo la función SECANTMP, y que también puede estudiarse en el

Manual de Referencia.

La sintaxis de esta función es

[X,F,k,cond]=secantmp(FUN,Y0,PPAR,S,DELTA,EPSILON)

Las variables involucradas en esta función son:

Page 22: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

99

Variable de entrada Significado

FUN Archivo de la función continua

GRADFUN Archivo del Jacobiano de FUN

Y0 Vector inicial [X,ALPHA)

PPAR Vector con las posiciones de los parámetros independientes

S Tamaño de paso

DELTA Criterio de convergencia por tamaño de paso

EPSILON Criterio de convergencia por valor de la función

Variable de retorno Significado

X Equilibrio encontrado

F Valor de la función evaluada en el equilibrio X

k Número de iteraciones

cond Condición de la salida. (Ver Manual del Referencia)

La principal limitante del método secante, es que su uso se restringe a sistemas

dinámicos de dos dimensiones.

Cuando el método secante se utiliza para la identificación de los equilibrios a lo largo de

un ramal (continuación) en un sistema dinámico continuo, la función utilizada es PSECANT

y en sistemas discretos es PSECANTD (Manual de Referencia). La sintaxis de estas

funciones son:

flag_stop=psecant(PLIM,FUN,GRADFUN,TFUN,Y0,PPLT,PPAR,s,... DELTA,EPSILON,PREC)

flag_stop=psecantd(PLIM,FUN,GRADFUND,TFUN,Y0,PPLT,PPAR,s,...

DELTA,EPSILON,PREC)

Las variables involucradas en estas dos funciones son:

Page 23: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

100

Variable de entrada Significado

PLIM Matriz con los límites de la gráfica

FUN Archivo de la función continua

GRADFUN Archivo del Jacobiano de FUN

GRADFUND Archivo del Jacobiano de FUND

TFUN Archivo de la función de prueba

Y0 Vector inicial (X,ALPHA)

PPLT Vector de las variables de ploteo

PPAR Vector con las posiciones de los parámetros independientes

s Tamaño de paso

DELTA Criterio de convergencia por tamaño de paso

EPSILON Criterio de convergencia por valor de la función

PREC Número de decimales significativos

Variable de retorno Significado

flag_stop Booleano que indica la detención del ploteo

Los archivos de los Jacobianos GRADFUN y GRADFUND se utilizan para evaluar la naturaleza

del equilibrio o punto fijo y no para calcularlo, por lo cual su uso es opcional. Si se utiliza

función de prueba TFUN, cuyo uso es también opcional, si es necesario usar GRADFUN y

GRADFUND.

7.5 Método de Seidel

Tal como se explica en el capítulo 5, la forma para localizar puntos fijos en sistemas

dinámicos discretos, sin cambiar la definición del sistema, es mediante el método de

Seidel. En el IGB se han implementado dos métodos numéricos. El primero es el método

de Seidel clásico, que se emplea como herramienta para la localización de equilibrios en

sistemas dinámicos discretos de la forma

x a g(x), x ∈ R n (7.7)

Page 24: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

101

Este método se encuentra bajo el nombre de SEIDEL, y puede estudiarse en el Manual de

Referencia. Al igual que en los casos anteriores, para la detección de bifurcaciones ha

sido necesario desarrollar un método de Seidel multiparamétrico que pueda resolver

sistemas de la forma

x a g(x, α), x ∈ R n, α ∈ Rm (7.8)

Este método se encuentra implementado en la función SEIDELMP (Manual de Referencia).

Así mismo es el método adecuado para la localización de puntos fijos en sistemas

multiparamétricos. Su sintaxis es:

[X,F,k,cond]=seidelmp(FUN,X,PPAR,TOL)

Las variables involucrada son:

Variable de entrada Significado

FUN Archivo de la función continua

Y0 Vector inicial [X,ALPHA)

PPAR Vector con las posiciones de los parámetros independientes

TOL Criterio de convergencia por tolerancia

Variable de retorno Significado

X Equilibrio encontrado

F Valor de la función evaluada en el equilibrio X

k Número de iteraciones

cond Condición de la salida. (Ver Manual del Referencia)

Cuando este método es usado para la localización de puntos de bifurcación, la función

utilizada es

Page 25: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

102

flag_stop=pseidel(PLIM,FUND,GRADFUND,TFUN,Y0,PPLT,PPAR,s,TOL,PREC)

Las variables involucradas son:

Variable de entrada Significado

PLIM Matriz con los límites de la gráfica

FUND Archivo de la función discreta

GRADFUND Archivo del Jacobiano de FUND

TFUN Archivo de la función de prueba

Y0 Vector inicial (X,ALPHA)

PPLT Vector de las variables de ploteo

PPAR Vector con las posiciones de los parámetros independientes

s Tamaño de paso

TOL Criterio de convergencia por tolerancia

PREC Número de decimales significativos

Variable de retorno Significado

flag_stop Booleano que indica la detención del ploteo

El método de Seidel solo se utiliza para sistemas dinámicos discretos y solo puede

detectar puntos fijos estables. Para la detección de puntos fijos inestables, se debe invertir

la función que define el sistema discreto.

7.6 Métodos de Continuación

Se puede utilizar el mismo Método de Newton para el cálculo de las demás soluciones,

pero en los puntos de bifurcación el Jacobiano de la función es singular y no es posible

hallar más soluciones a partir de este punto.

Tal como se anota en el capítulo 6, los métodos de continuación desarrollados en el

presente trabajo son los basados en los métodos de predictor – corrector sobre el sistema

dinámico continuo,

Page 26: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

103

f (x, α) = 0, x ∈ Rn, α ∈ R (7.9)

que como se ha visto anteriormente, es una ecuación genérica aplicable también a

sistemas dinámicos discretos. En el IGB se han implementado los métodos de

continuación con predictor secante y predictor tangente, con y sin parametrización. Para

la corrección se utiliza en todos los casos el método de Newton – Raphson

multiparamétrico.

Tal como se ha estudiado en el capítulo 6, la parametrización permite la definición de una

métrica sobre el ramal de equilibrios (o puntos fijos), y de esta forma es posible pasar

sobre las singularidades de los puntos de bifurcación de una manera limpia y rápida.

La parametrización se realiza por longitud de arco, aunque cabe la posibilidad de usar

cualquier otro tipo de parametrización. Así mismo, en estos métodos de continuación se

ha implementado un algoritmo para el control de paso entre equilibrio y equilibrio del

mismo ramal. De esta forma, cuando el equilibrio que se predice está cerca del siguiente

equilibrio (pocas iteraciones para la corrección) el tamaño de paso se aumenta, y lo

contrario. Estos métodos se describen a continuación y se detallan en el Manual de

Usuario.

7.6.1 Predictor secante

En el caso de continuación con predictor secante a partir de un punto inicial y0, es

necesario calcular una segunda solución y2. Esta segunda solución se calcula sumando

un paso s al punto inicial:

y1 = y0 + s

El paso s es un vector del mismo tamaño de y0 y y1. La función que implementa el método

de continuación con predictor secante y corrector basado en el método de Newton –

Raphson multiparamétrico es CSC en el caso de los sistemas dinámicos continuos, y CSCD

en el caso de los discretos (Manual de Referencia). Las sintaxis son:

Page 27: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

104

flag_stop=csc(PLIM,FUN,GRADFUN,TFUN,Y0,PPLT,PPAR,s,DELTA,EPSILON,PREC)

flag_stop=cscd(PLIM,FUN,GRADFUN,GRADFUND,TFUN,Y0,PPLT,PPAR,s,... DELTA,EPSILON,PREC)

Las variables involucradas en estas dos funciones son las siguientes:

Variable de entrada Significado

PLIM Matriz con los límites de la gráfica

FUN Archivo de la función continua

GRADFUN Archivo del Jacobiano de FUN

GRADFUND Archivo del Jacobiano de FUND

TFUN Archivo de la función de prueba

Y0 Vector inicial (X,ALPHA)

PPLT Vector de las variables de ploteo

PPAR Vector con las posiciones de los parámetros independientes

s Tamaño de paso

DELTA Criterio de convergencia por tamaño de paso

EPSILON Criterio de convergencia por valor de la función

PREC Número de decimales significativos

Variable de retorno Significado

flag_stop Booleano que indica la detención del ploteo

Con un tamaño de paso adecuado, el método de continuación con predictor secante

puede seguir cualquier trayectoria en un ramal de equilibrios y puntos fijos.

7.6.2 Predictor secante con parametrización

Una forma de optimizar el desempeño del método de continuación con predictor secante,

es agregando una ecuación adicional que parametrice el sistema. Para esto es necesario

que el usuario agregue dos funciones adicionales FUNP y GRADFUNP. En la primera función

Page 28: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

105

debe agregar el polinomio de parametrización. Aunque se puede utilizar cualquiera de los

métodos descritos en el capítulo 6, se recomienda la parametrización por longitud de arco,

con la cual se evita cualquier posible singularidad en los puntos de bifurcación.

Este método se ha implementado en la función CSCP para sistemas continuos, y CSCPD

para sistemas discretos. Las sintaxis son:

flag_stop=cscp(PLIM,FUN,GRADFUN,FUNP,GRADFUNP,TFUN,Y0,PPLT,PPAR,s,...

DELTA,EPSILON,PREC)

flag_stop=cscpd(PLIM,FUN,GRADFUN,FUNP,GRADFUNP,GRADFUND,TFUN,Y0,PPLT,... PPAR,s,DELTA,EPSILON,PREC)

Las variables involucradas en estas dos funciones son las siguientes:

Variable de entrada Significado

PLIM Matriz con los límites de la gráfica

FUN Archivo de la función continua

GRADFUN Archivo del Jacobiano de FUN

FUNP Archivo de la función continua parametrizada

GRADFUNP Archivo del Jacobiano de FUNP

GRADFUND Archivo del Jacobiano de FUND

TFUN Archivo de la función de prueba

Y0 Vector inicial (X,ALPHA)

PPLT Vector de las variables de ploteo

PPAR Vector con las posiciones de los parámetros independientes

s Tamaño de paso

DELTA Criterio de convergencia por tamaño de paso

EPSILON Criterio de convergencia por valor de la función

PREC Número de decimales significativos

Variable de retorno Significado

flag_stop Booleano que indica la detención del ploteo

Page 29: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

106

7.6.3 Predictor tangente

En el método de continuación con predictor tangente, sólo es necesario calcular la

primera solución y0. La solución siguientes se estiman a una distancia s sobre una línea

tangente al ramal en el punto y0,

y1 = y0 + s⋅ h

donde h es el vector tangente al ramal en y0. La función que implementa el método de

continuación con predictor tangente y corrector basado en el método de Newton –

Raphson multiparamétrico es CTC en el caso de los sistemas dinámicos continuos, y CTCD

en el caso de los discretos (Manual de Referencia). Las sintaxis son:

flag_stop=ctc(PLIM,FUN,GRADFUN,TFUN,y0,PPLT,PPAR,s,DELTA,EPSILON,PREC)

flag_stop=ctcd(PLIM,FUN,GRADFUN,GRADFUND,TFUN,y0,PPLT,PPAR,s,... DELTA,EPSILON,PREC)

Las variables involucradas en estas dos funciones son:

Variable de entrada Significado

PLIM Matriz con los límites de la gráfica

FUN Archivo de la función continua

GRADFUN Archivo del Jacobiano de FUN

FUNP Archivo de la función continua parametrizada

GRADFUNP Archivo del Jacobiano de FUNP

GRADFUND Archivo del Jacobiano de FUND

TFUN Archivo de la función de prueba

Y0 Vector inicial (X,ALPHA)

PPLT Vector de las variables de ploteo

PPAR Vector con las posiciones de los parámetros independientes

s Tamaño de paso

DELTA Criterio de convergencia por tamaño de paso

EPSILON Criterio de convergencia por valor de la función

PREC Número de decimales significativos

Page 30: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

107

Variable de retorno Significado

flag_stop Booleano que indica la detención del ploteo

Con este método se pueden identificar todos los puntos de equilibrio en un ramal, siempre

que la pendiente de la recta tangente no pase por infinito.

7.6.4 Predictor tangente con parametrización

Una forma de optimizar el desempeño del método de continuación con predictor tangente,

es con la parametrización del sistema. Para esto se agrega a la función del sistema un

polinomio o función de parametrización en un archivo FUNP. Además el método requiere

del Jacobiano de este nuevo archivo GRADFUNP.

Cuando se analiza un sistema dinámico continuo, el IGB utiliza la función CTCP, en los

sistemas discretos es la función CCTPD. Las sintaxis de estas funciones son:

flag_stop=ctcp(PLIM,FUN,GRADFUN,FUNP,GRADFUNP,TFUN,y0,PPLT,PPAR,s,...

DELTA,EPSILON,PREC)

flag_stop=ctcpd(PLIM,FUN,GRADFUN,FUNP,GRADFUNP,GRADFUND,TFUN,y0,PPLT,... PPAR,s,DELTA,EPSILON,PREC)

Las variables involucradas son las siguientes:

Variable de entrada Significado

PLIM Matriz con los límites de la gráfica

FUN Archivo de la función continua

GRADFUN Archivo del Jacobiano de FUN

FUNP Archivo de la función continua parametrizada

GRADFUNP Archivo del Jacobiano de FUNP

GRADFUND Archivo del Jacobiano de FUND

TFUN Archivo de la función de prueba

Page 31: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

108

Y0 Vector inicial (X,ALPHA)

PPLT Vector de las variables de ploteo

PPAR Vector con las posiciones de los parámetros independientes

s Tamaño de paso

DELTA Criterio de convergencia por tamaño de paso

EPSILON Criterio de convergencia por valor de la función

PREC Número de decimales significativos

Variable de retorno Significado

flag_stop Booleano que indica la detención del ploteo

7.7 Función de prueba

El IGB permite la utilización de una función de prueba para la localización directa de las

bifurcaciones. Este método directo, actúa junto con alguno de los métodos indirectos de

continuación. Para cada tipo de sistema se ha desarrollado una función de prueba. En el

los sistemas continuos es la función TFUN, y en los discretos es la función TFUND. La

sintaxis de estas funciones es:

tf=tfun(eig1,eig2); tf=tfund(eig1,eig2)

Las variables involucradas son:

Variable de entrada Significado

eig1 Valor propio de un equilibrio o punto fijo

eig2 Valor propio de otro equilibrio o punto fijo

Variable de retorno Significado

tf Identificados del tipo de bifurcación.

Page 32: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

109

tf Significado

0 no hay bifurcación

1 bifurcación FOLD en sistemas continuos

2 bifurcación HOPF

3 bifurcación FOLD en sistemas discretos

4 bifurcación FLIP

5 bifurcación NEIMARK-SACKER

6 bifurcación DESCONOCIDA

Estas funciones de prueba reciben los equilibrios (o puntos fijos), determinados mediante

alguno de los métodos implementados en el IGB, y verifica si en medio de estos dos se

presenta alguna bifurcación. En el caso de los sistemas continuos verifica si uno se

encuentra a la derecha y otro a la izquierda del eje imaginario, y en el caso discreto si uno

se encuentra dentro y otro fuera del círculo unitario. Dependiendo del lugar en el plano R

– I por donde se haya atravesado, se determina el tipo de bifurcación, tal como se explica

en los capítulos 3 y 4.

El usuario puede cambiar la forma de hacer la detección, pero debe conservar las

variables de entrada y los valores de la variable de retorno tf.

7.8 Retrato de fase

Además de las herramientas para detección de bifurcaciones, el IGB ofrece la posibilidad

de simular el comportamiento del sistema dinámico continuo o discreto. La sintaxis de

esta función, denominada rfase, es:

flag_stop=rfase(PLIM,FUN,Y0,PPLT,PPAR,s,TOL,PREC,flag_sis)

Las variables involucradas son:

Variable de entrada Significado

PLIM Matriz con los límites de la gráfica

Page 33: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

110

FUN Archivo de la función continua

Y0 Vector inicial (X,ALPHA)

PPLT Vector de las variables de ploteo

PPAR Vector con las posiciones de los parámetros independientes

s Tamaño de paso

TOL Criterio de convergencia por tolerancia

PREC Número de decimales significativos

flag_sis Tipo de sistema. 1-continuo, 2-discreto.

Variable de retorno Significado

flag_stop Booleano que indica la detención del ploteo

Esta simulación puede apreciarse punto a punto. El usuario es libre de variar la velocidad

de simulación (en el caso de los sistemas dinámicos), y el punto inicial.

7.9 Gráficas de tiempo

Una de las necesidades (o curiosidades) cuando se simula el comportamiento del sistema

en su espacio de estados y parámetros, es el comportamiento de estas mismas variables

en función del tiempo. Por este motivo, a partir de la versión 5 del IGB, se cuenta con la

opción de hacer gráficas de tiempo.

La sintaxis de esta función, denominada xvst, es:

flag_stop=xvst(PLIM,FUN,y0,PPLT,PPAR,s,TOL,PREC,flag_sis)

Las variables involucradas son:

Variable de entrada Significado

PLIM Matriz con los límites de la gráfica

FUN Archivo de la función continua

Y0 Vector inicial (X,ALPHA)

Page 34: 7. Desarrollo del Identificador Gráfico de Bifurcaciones del IGB.pdf · se plotea en 3D. Figura 7.2 – Variables externas tipo vector Tamaño de paso S. ... Posición de las variables

111

PPLT Vector de las variables de ploteo

PPAR Vector con las posiciones de los parámetros independientes

s Tamaño de paso

TOL Criterio de convergencia por tolerancia

PREC Número de decimales significativos

flag_sis Tipo de sistema. 1-continuo, 2-discreto.

Variable de retorno Significado

flag_stop Booleano que indica la detención del ploteo

Esta simulación puede apreciarse punto a punto. El usuario es libre de variar la velocidad

de simulación (en el caso de los sistemas dinámicos), el tiempo (en sistemas continuo) o

número de iteraciones (en sistemas discretos), así como el punto inicial.

En el Manual de Referencia, que se expone en el capítulo siguiente, se describe con

detalle cada una de las funciones del IGB. Dentro de éstas muchas funciones se

encuentran, por supuesto, las referidas en este capítulo, además de otras que pueden

considerarse como recurrentes (o fundamentales). Incluso el IGB cuenta con funciones

que por alguna razón no son utilizadas en la detección de bifurcaciones pero que son de

utilidad en el momento de identificar características del sistema en estudio.