Code covered by the BSD License  

Highlights from
toolbox for analysis of complex system using fixed points

image thumbnail
from toolbox for analysis of complex system using fixed points by Edgar Bernal-Flores
Coweb theorem of the value of derivation fied points in the system

puntofijos.m
% PROGRAMA PARA ENCONTRAR LOS PUTNOS FIJOS DE UNA FUNCION
% VERSION 1.0
% AUTOR:EDGAR BERNAL FLORES
% 01032009
%email:tecualoya@hotmail.com

function[puntosfijos evaluacion tipos]=puntofijos(funcion,varsyms)

% ENTRADAS DEL PROGRAMA:
%         FUNCION -> RECIBE UN ARREGLO DE MANEJADORES DE FUNCION
%         
% SALIDAS:
%         PUNTOSFIJOS -> DA COMO RESULTADO UN ARREGLO DE PUNTO FIJOS CORRESOPNDIETES A CADA FUNCION EVALUDA
%         TIPO -> DA EL TIPO DE PUTNO FIJO QUE ES PARA LA FUNCION DE ACUERDO AL CRITERIO DE LA PRIMERA DERIVADA
% 
% PORCEDIMIENTO:
% 
%         LOS PUNTOS FIJOS LOS CALCULAMOS DE ACUERDO A LA EXPRESION F(X)-X=0
%         EL TIPO DE PUNTO FIJO ESTA DETERMINADO POR |F'(X0)|<=>1

% DEFINICION DE VARIABLES SIMBOLICAS PARA PODER ANALIXAR LAS FUNCIONES

close all
clc
    syms(varsyms);


% CALCULAMOS LOS PUNTOS FIJOS PARA CADA ECUACION DEL ARREGLO DE FUNCIONES 
for i2=1:length(funcion(:,1))
    ecuacionpf=strcat(funcion(i2,:),'-x=0');
    puntosfijos(i2,:)=double(solve(ecuacionpf));
    [eval tipo]=criterioderivada(funcion(i2,:),puntosfijos(i2,:),varsyms);
    tipos(i2,:)=tipo;
    evaluacion(i2,:)=eval;
end

%GRAFICAMOS LAS FUNCIONES Y LOCALIZAMOS LOS PUTNOS FIJOS Y DESPLEGAMOS SU
%TIPO
grid
axis('normal');
xlabel('X')
ylabel('F(X)')
title('analisis de puntos fijos')
hold on
for  i3=1:length(funcion(:,1))
    ezplot(funcion(i2,:));
    ezplot('x');
    for i4=1:length(puntosfijos(i3,:))
        if(tipo(i3,i4)<0)
        text(puntosfijos(i4),puntosfijos(i4),['P.F. \leftarrow atractor (',num2str(puntosfijos(i4)),')'] ,'HorizontalAlignment','left','FontSize',8);
        elseif(tipo(i3,i4)>0)
            text(puntosfijos(i4),puntosfijos(i4),['P.F. \leftarrow repulsor (',num2str(puntosfijos(i4)),')'] ,'HorizontalAlignment','left','FontSize',8);
        else
           text(puntosfijos(i4),puntosfijos(i4),['P.F. \leftarrow neutro (',num2str(puntosfijos(i4)),')'] ,'HorizontalAlignment','left','FontSize',8); 
        end
    end
end

Contact us at files@mathworks.com