• 大小: 2KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-11
  • 语言: Matlab
  • 标签: 程序  

资源简介

很好用的杜芬振子仿真的matlab程序,本人已经使用过

资源截图

代码片段和文件信息

function dx=duffing(tX)

global F wd  SigData iStep tStep Phase oSig;

%SigData       实测信号
%iStep         积分步计数器
%tStep         采样间隔
%Phase         相位
%oSig          实际每步积分加到振子上的外来信号序列
%              (由于积分步与采样间隔不等,因而oSig与Phase等长,但与SigData等价,相当于一次重采样过程)
%              (oSig序列应当与0.00003*cos(Phase)序列基本重合,只存在采样误差)
%r=0.168;
c=0.5;

x=X(1);

y=X(2);

psi=X(3);

dx=zeros(31);

iStep = iStep + 1; %记录积分步数

Phase(iStep) = psi;%记录每次积分时策动信号的相位

dx(1) = y;
%混沌振子本身
dx(2) = -wd*c*y + wd^2*(x*(1-x^2) + F*cos(psi));

%加入实测信号 
%dx(2) = -wd*c*y + wd^2*(x*(1-x^2) + F*cos(psi) + 0.00003*SigData( floor( t/tStep ) + 1));
%oSig(iStep) = SigData( floor( t/tStep ) + 1);

%加入模拟信号
%dx(2) = -wd*c*y + wd^2*(x*(1-x^2) + F*cos(psi) + 0.0003*cos(psi));
%%%%%%%dx(2)=-c*y+1/2*x*(1-x^2)+F*sin(psi);

%含有噪声
%dx(2)= -c*y + x*(1-x^2)+ F*cos(psi)+0.1*rand;

%含有信号和噪声
%dx(2)= -c*y + x*(1-x^2)+ F*cos(psi)+0.1*rand+0.00003*cos(psi);

dx(3) = wd;%角度的导数,通过t表达。


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1273  2008-03-14 21:44  duffing_bifurcation.m

     文件       1125  2008-05-27 14:57  Duffing.m

----------- ---------  ---------- -----  ----

                 2616                    3


评论

共有 条评论