2024年5月8日发(作者:洛妙双)
非线性动力学、分岔 Matlab 程序实现
弹簧质量系统在简谐激励作用下的受迫振动,弹簧的恢复力F与变形x的关系为
3
F
0
coswt
其中,给定参数,
m=1
,
c=0.3
,
k=1.0
,F=kx
,动力学方程为
mx+cx+kx=
3
...
w=1
,初始条件为
x(0)=3.0
,
x(0)=4.0
设系统的动态参数为F
0
,绘出系统状态变量随
参数变化分岔图,绘图参数对应的系统各周期及混沌状态的时间历程图、相轨迹图、
Poincare映射图。
解答:系统状态变量位移和速度随参数F
0
变化分岔图,见下图,F
0
∈[20,40];下图为Q8400
四核计算机运算39分钟所得结果。
.
速度分岔图
相应程序:
[1]
d=20:0.01:40;
w=1.0;
T=2*pi/w;
hold on
for j=1:length(d)
[t,y]=ode23('dbfun',[0:T/100:70*T],[4,4],[],d(j));
plot(d(j),y(500:100:1400,2),'linewidth',5)
title('分岔图二')
xlabel('参数 F0')
ylabel('位移')
end
[2]
d=20:0.01:40;
w=1.0;
T=2*pi/w;
上海交通大学 陈建稳
位移分岔图
hold on
for j=1:length(d)
[t,y]=ode23('dbfun',[0:T/100:70*T],[4,4],[],d(j));
plot(d(j),y(500:100:1400,1),'linewidth',5)
title('分岔图一')
xlabel('参数 F0')
ylabel('速度')
end
M函数文件:dbfun.m
function ydot=dbfun(t,y,flag,d)
w=1;c=0.3;
ydot=[y(2);
-y(1)^3-c*y(2)+d*cos(w*t)];
上海交通大学 陈建稳
2024年5月8日发(作者:洛妙双)
非线性动力学、分岔 Matlab 程序实现
弹簧质量系统在简谐激励作用下的受迫振动,弹簧的恢复力F与变形x的关系为
3
F
0
coswt
其中,给定参数,
m=1
,
c=0.3
,
k=1.0
,F=kx
,动力学方程为
mx+cx+kx=
3
...
w=1
,初始条件为
x(0)=3.0
,
x(0)=4.0
设系统的动态参数为F
0
,绘出系统状态变量随
参数变化分岔图,绘图参数对应的系统各周期及混沌状态的时间历程图、相轨迹图、
Poincare映射图。
解答:系统状态变量位移和速度随参数F
0
变化分岔图,见下图,F
0
∈[20,40];下图为Q8400
四核计算机运算39分钟所得结果。
.
速度分岔图
相应程序:
[1]
d=20:0.01:40;
w=1.0;
T=2*pi/w;
hold on
for j=1:length(d)
[t,y]=ode23('dbfun',[0:T/100:70*T],[4,4],[],d(j));
plot(d(j),y(500:100:1400,2),'linewidth',5)
title('分岔图二')
xlabel('参数 F0')
ylabel('位移')
end
[2]
d=20:0.01:40;
w=1.0;
T=2*pi/w;
上海交通大学 陈建稳
位移分岔图
hold on
for j=1:length(d)
[t,y]=ode23('dbfun',[0:T/100:70*T],[4,4],[],d(j));
plot(d(j),y(500:100:1400,1),'linewidth',5)
title('分岔图一')
xlabel('参数 F0')
ylabel('速度')
end
M函数文件:dbfun.m
function ydot=dbfun(t,y,flag,d)
w=1;c=0.3;
ydot=[y(2);
-y(1)^3-c*y(2)+d*cos(w*t)];
上海交通大学 陈建稳