找回密码
 注册
Simdroid-非首页
查看: 72|回复: 0

[刚体力学] 振动方程的数值解和理论解怎么验证的不一致呢

[复制链接]
发表于 2011-12-14 18:06:50 | 显示全部楼层 |阅读模式 来自 大连理工大学
本帖最后由 dongsheng01 于 2011-12-14 18:07 编辑

振动方程2x''+x=sin(0.1t)
数值解和理论解 见下面的matlab 程序
clc,clear
global I I_A  K F0

I=1;
I_A=1;
K=1;
f=0.1;
F0=1;

%解析解
x=F0/(K-f^2*(I+I_A))

%数值解

p0=[0 0];
[t p]=ode45('IRF1',[0 100000],p0);
p_dis=p(:,1)'; %将位移提取出来



Amp=zeros(1,1);
h=size(t,1);%t一共取了多少个
h1=fix(h/10*9); %t是x轴的变量,取其三分之二的位置,也就是后三分之一的开始点,但是要取个整数,因为正好第三分之二位置不一定有值
Amp(1)=(max(p_dis(1,h1:h))-min(p_dis(1,h1:h)))/2;
Amp

figure
plot(t,p_dis)
xlabel('Time(s)')
ylabel('surge(m)')


function pdot=IRF1(t,p)

global f
global I I_A  K F0

pdot=zeros(2,1);

pdot(1)=p(2);

pdot(2)=(F0*sin(f*t)-K*p(1))/(I+I_A);  


两者怎么就对应不起来了呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-4-28 22:36 , Processed in 0.025889 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表