matlab 生成 Mackey-Glass 混沌时间序列

本文介绍了Mackey-Glass方程的详细实现,包括其数学表达式、典型参数以及使用Matlab函数进行模拟。通过MackeyGlass函数和Df函数的演示,展示了如何解决混沌延迟问题在实际应用中的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

X ˙ ( t ) = a X ( t − τ ) 1 + [ X ( t − τ ) ] c − b X ( t ) \dot{X}(t) = \frac{aX(t-\tau)}{1+[X(t-\tau)]^c} - bX(t) X˙(t)=1+[X(tτ)]caX(tτ)bX(t)
典型参数: a = 0.2 , b = 0.1 , c = 10 a=0.2, b=0.1,c=10 a=0.2,b=0.1,c=10

function [x,t]=MackeyGlass(N,tau)
% Mackey-Glass混沌延迟微分方程 
%
% N为输出点数,tau为延迟时间
% x为序列返回值,t为时间返回值,h为采样间隔

t=zeros(N,1);
x=zeros(N,1);  
x(1)=1.2; t(1)=0; 
a=0.2;
b=0.1;
c=10;
h=0.1;
for k=1:N-1
  t(k+1)=t(k)+h; 
  if t(k)<tau
      k1=-b*x(k); 
      k2=-b*(x(k)+h*k1/2); 
      k3=-b*(x(k)+k2*h/2); 
      k4=-b*(x(k)+k3*h);
      x(k+1)=x(k)+(k1+2*k2+2*k3+k4)*h/6; 
  else 
      n=floor((t(k)-tau-t(1))/h+1); 
      k1=Df(x(n))-b*x(k); 
      k2=Df(x(n))-b*(x(k)+h*k1/2); 
      k3=Df(x(n))-b*(x(k)+2*k2*h/2); 
      k4=Df(x(n))-b*(x(k)+k3*h); 
      x(k+1)=x(k)+(k1+2*k2+2*k3+k4)*h/6; 
  end 
end
end

function y=Df(x)
a=0.2;
c=10;
y=a*x/(1+x^c);
end

MG17

[x,t] = MackeyGlass(10000,17)
plot(t,x)

在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

颹蕭蕭

白嫖?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值