小六 发表于 2016-5-31 09:56

求时滞系统的分岔图程序

求时滞系统的分岔图程序

christy 发表于 2016-5-31 10:46

参考:http://forum.vibunion.com/thread-67484-1-1.html

Accompany 发表于 2016-5-31 11:00

1)最大值法

   即对系统微分方程(组)进行求解,对求解的结果用getmax函数进行取点,并绘图。

2)Poincare截面法

    对系统参数的每一次取值,绘制其Poincare截面,进而得到其分岔图。

    这种方法需要注意的是,自治系统的Poincare截面是选取一超平面,平面上点的分布即构成一Poincare截面,非自治系统的Poincare截面则是根据系统激励的频率进行取点并绘图。

小六 发表于 2016-6-1 15:52

christy 发表于 2016-5-31 10:46
参考:http://forum.vibunion.com/thread-67484-1-1.html

谢谢,这是一个滞回系统的分岔图,不是时滞系统的

缱绻 发表于 2016-6-1 15:57

d=0:0.0001:0.11;
for j=1:length(n)
=ode45('shiyan',,[-0.001,-0.001,0,0],[],d(j));
    data=y(:,1);
    m=length(data);
    for k=1:m-1
      if 1.588146262064604*y(k,3)+6.968647880967183*10^(-11)*y(k,4)>=0 && 1.588146262064604*y(k+1,3)+6.968647880967183*10^(-11)*y(k+1,4)<0;
      plot(d(j),1.588146262064604*y(k,1)+6.968647880967183*10^(-11)*y(k,2));
      hold on
      else
      end
    end
end

小六 发表于 2016-6-20 19:53

缱绻 发表于 2016-6-1 15:57


能把把前面的方程发出来,谢谢!

缱绻 发表于 2016-6-21 08:45

再试试这个呢

小六 发表于 2016-6-23 16:12

缱绻 发表于 2016-6-21 08:45



Triste 发表于 2016-6-23 16:18

小六 发表于 2016-6-23 16:12


二楼那个不行吗

小六 发表于 2016-6-23 16:28

Triste 发表于 2016-6-23 16:18
二楼那个不行吗

他那个不是时滞系统,都没有时滞量

Triste 发表于 2016-6-23 16:32

找的一个试试吧
function bBifurcation(T0,T1,Tmid,T,x0,y0,z0,a,c,b0,b1,n)
% for the Rossler attractor with varying b
%requirement: bBifurcation(0,600,200,30,1,1,1,0.2,5.7,0.2,2,0.05)
% initial conditions% time interva
l% (a,b,c) parameters of Rossler system
% initial starting point
% Tmid∈
% ===================================================================
% Bifurcation
%===================================================================

function Runingode45(T0,T1,Tmid,T,x0,y0,z0,a,b,c)
% ===================================================================
% Rossler system
% ===================================================================
function dy = Rossler(t,y)

dy(1,1) = - y(2) - y(3); %dx/dt
dy(2,1) = y(1) + a * y(2); %dy/dt
dy(3,1) = b + y(3) * (y(1) - c); %dz/dt
end
% ===================================================================
% Calculate maximum of x(t) over T
% ===================================================================
% ===================================================================
% Step 1
% ===================================================================
if Tmid > 0 = ode45(@Rossler,,);
end
% ===================================================================
% Step 2
% ===================================================================
maxnew=[];
while Tmid + T < T1
= ode45(@Rossler,,y(end,:));
for i = 2:length(y)-1 if y(i,1) > y(i-1,1) & y(i,1) > y(i+1,1)
max = y(i,1); end end Tmid = Tmid + T;
max;
maxnew = ;
end
% ===================================================================
% Plot
% ================================
页: [1]
查看完整版本: 求时滞系统的分岔图程序