[已解决] 混沌相图求解报错如下,请大神解答疑惑。

[复制链接]
JL0351 发表于 2022-7-27 13:50:42
主函数:
%系统相图
function f1
tt=2*pi/1;
[t,x]=ode45(@Duffing3,[0:tt/100:10*tt],[0,0,0]);
figure
plot(x(200:end,1),x(200:end,3))
xlabel('x');ylabel('dz/dt')
子函数:
%x与dz/dt之间
function ydot = Duffing3(t, x)
n=1;
a=0.5;%分数阶选择
ydot=zeros(size(x));
ydot(1) = x(3);%x
ydot(2) = factorial(n)/((n-a)*sqrt(pi))*x(1)^(n-a);%y
ydot(3) = 0.042*cos(1*t)-0.5*(ydot(2))+x(1)^3-x(1)^5; %dz/dt,系统振幅取0.042
end


报错:
function f1

错误: 此上下文中不支持函数定义。请在代码文件中创建函数。

最佳答案


20141303 发表于 2022-7-27 14:31:38
仅供参考
  1. %系统相图
  2. function f1
  3. tt=2*pi/1;
  4. [t,x]=ode45(@Duffing3,[0:tt/100:10*tt],[0,0,0]);
  5. figure
  6. plot(x(200:end,1),x(200:end,3))
  7. xlabel('x');ylabel('dz/dt')
  8. end
  9. %x与dz/dt之间
  10. function ydot = Duffing3(t, x)
  11. n=1;
  12. a=0.5;%分数阶选择
  13. ydot=zeros(size(x));
  14. ydot(1) = x(3);%x
  15. ydot(2) = factorial(n)/((n-a)*sqrt(pi))*x(1)^(n-a);%y
  16. ydot(3) = 0.042*cos(1*t)-0.5*(ydot(2))+x(1)^3-x(1)^5; %dz/dt,系统振幅取0.042
  17. end
复制代码
回复此楼

1 条回复


20141303 发表于 2022-7-27 14:31:38
仅供参考
  1. %系统相图
  2. function f1
  3. tt=2*pi/1;
  4. [t,x]=ode45(@Duffing3,[0:tt/100:10*tt],[0,0,0]);
  5. figure
  6. plot(x(200:end,1),x(200:end,3))
  7. xlabel('x');ylabel('dz/dt')
  8. end
  9. %x与dz/dt之间
  10. function ydot = Duffing3(t, x)
  11. n=1;
  12. a=0.5;%分数阶选择
  13. ydot=zeros(size(x));
  14. ydot(1) = x(3);%x
  15. ydot(2) = factorial(n)/((n-a)*sqrt(pi))*x(1)^(n-a);%y
  16. ydot(3) = 0.042*cos(1*t)-0.5*(ydot(2))+x(1)^3-x(1)^5; %dz/dt,系统振幅取0.042
  17. end
复制代码
回复此楼
您需要登录后才可以回帖 登录 | 注册

本版积分规则

相关帖子
相关文章
热门教程
站长推荐
快速回复 返回顶部 返回列表