我的分岔程序无法运行(别人的可以),请大家看一下
别人的function xdot=dddd(t,x,flag,omega)
eta=0.1 ;
a= -48.704;
b= 24.35e4;
gamma= 1;
xdot=;
%%%%%%%%%%%%%%%%%%%%%%%%
clear;
clc;
close all;
omega=0.01:0.01:1;
for h=1:length(omega)
% omega(h)
T=2*pi/omega(h);
=ode45('dddd',,,[],omega(h));
plot(omega(h),x(10000:100:end,2),'k.');hold on
end
可以运行,有结果
我的
function uu=fangcheng_x1(t,u,flag,omega);
m1=170;
m2=90;
e=0.0001;
r=0.0006;
k2=1154744;
omega0=15;
phi0=0.6/180*pi;
theta0=0.4/180*pi;
xi=0.14;
phi=omega*2*pi*t+phi0;
theta=omega*2*pi*t+theta0;
M=m1+m2;
A1=m1*e*omega^2*cos(phi);
A2=m2*r*omega.^2*cos(theta);
A3=k2*r*cos(theta);
B1=m1*e*omega.^2*sin(phi);
B2=m2*r*omega.^2*sin(theta);
B3=k2*r*sin(theta);
uu=zeros(4,1);
uu(1)=u(2);
uu(2)=(A1+A2-A3)./M-2*xi*omega0*u(2)-omega0.^2*u(1);
uu(3)=u(4);
uu(4)=(B1+B2-B3)./M-2*xi*omega0*u(4)-omega0.^2*u(3);
%%%%%%%%%%%%%%%%%%%
omega=5:40;
y0=;
for i=1:length(omega)
period=1./omega(i);
tspan=;
=ode45(@fangcheng_x1,tspan,y0,[],omega(i));
y0=u(end,:);
plot(omega(i),u(4000:100:end,1),'b.','markersize',2);
hold on;
end
运行之后
Input argument "omega" is undefined.
Error in ==> fangcheng_x1 at 20
phi=omega*2*pi*t+phi0;
Error in ==> funfun\private\odearguments at 110
f0 = feval(ode,t0,y0,args{:}); % ODE15I sets args{1} to yp0.
真不知道是什么原因,觉得方程没有问题。因为单独赋予omega数值时,可以求得结果。但在这里不行。请大家给解释一下为什么,困扰我好久了! 我也不知道为什么,改为:
omega=5:40;
y0=;
for i=1:length(omega)
period=1./omega(i);
tspan=;
=ode45('fangcheng_x1',tspan,y0,[],omega(i));
y0=u(end,:);
plot(omega(i),u(4000:100:end,1),'b.','markersize',2);
hold on;
end
这样子就可以运行了 谢谢无水的回答。但是还是搞不懂,@和' '有什么区别吗?
不过能运行就是好的。 另外,还有一个问题请教。在针对非自治系统的Poincare图上,如果周期为T,步长分为T/120(没有用100或者10之类的),那么在选取映射点时是否首先要过滤掉瞬态响应,也就是前面的N个周期不要,从第N+1个开始;并且映射点的选取要以整周期为间隔划分。
比如:
%%%% 庞加莱图
m=[];
n=[];
for i=100:500
m(i,1)=u(120*i,1);
n(i,1)=u(120*i,2);
end
plot(m,n,'b.','markersize',2)
而不是随意的100*i或者80*i,我说的对吗? 并且映射点的选取要以整周期为间隔划分。???
你的意思是去掉瞬态之后,要从一个整周期开始画图吗?
这个市没有必要的 哦,我的意思是去掉瞬态后随意选取一个点,而之后的点以整周期的形式出现。
比如画图的首点选取为第4000个点,而后的点选取第4120,第4240,第4360,第4480......到终止(如果周期T被分为120个步长的话)。
这样理解应该没有问题吧。 向高手致敬{:{39}:} 非自治系统的Poincare图,是一个周期取一个点的,你的理解是正确的
页:
[1]