Time Period of Limit Cycle numerically

jeudi 1 août 2013

1. The problem statement, all variables and given/known data



Consider the system of equations : x' = x-y-x^3 and y'=x+y-y^3

a) Draw a phase plot ( Done numericlly program listed here in matlab)

b) Prove analytically that at-least one stable cycle exists ( Used Poincare Bendixon theorem to prove done)

c) Compute the period of the cycle numerically ( No idea about this >>)



2. Relevant equations



Limitcycle.m



clc;

clear all;

options=[];

timeperiod=[];

phasepoints=[];

xnew =0.01;

ynew =0.01;

% x_start= -0.9:0.1:0.9;

% xstart = 0.9:-0.1:-0.9;

% x_start= [x_start,xstart];

% y_start= -0.9:0.1:0.9;

% ystart= -0.9:0.1:0.9;

% y_start=[y_start,ystart];

%for u=1:size(x_start,2)

[t y]=ode23('cyclefunc',[0 50],[xnew ynew],options);

timeperiod=[timeperiod;t];

phasepoints=[phasepoints;y];

%end

n=0.015;

points=y;

figure(2)

plot(phasepoints(:,1),phasepoints(:,2));

xlabel('X-axis');

ylabel('Y-axis');

% plot3(t,y(:,1),y(:,2));

% xlabel('Time');

% ylabel('Y-axis');

% zlabel('X-axis');

% startingNode=y(4,:);





% filename: cyclefunc.m

function dydt = f(t,y,flag)

dydt = [y(1)-y(2)-y(1)^3;

y(1)+y(2)-y(2)^3];

plot(y(1),y(2));

xlabel('X-axis');

ylabel('Y-axis');

drawnow;

hold on;

axis([-1.3 1.3 -1.3 1.3]);



These programs generate the limit cycle numerically and it is correct



3. The attempt at a solution



Now the attempt is the above program itself. I scoured the internet to search for an algorithm for generating time period numerically . I saw some programs like pplane which do it for you ( I doesnt show how it calculate though)

Any one can tell me a primitive algorithm for calculating this ?? Or if my current matlab program can be modified to calculate the same ?






via Physics Forums RSS Feed http://www.physicsforums.com/showthread.php?t=703914&goto=newpost

0 commentaires:

Enregistrer un commentaire