声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1378|回复: 2

[编程技巧] 用Matlab计算简支梁受迫振动响应及频谱分析

[复制链接]
发表于 2010-10-30 22:25 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
题: QQ截图未命名1.png QQ截图未命名2.png QQ截图未命名3.png
这是我编的程序 感觉很对不对 刚学Matlab不久还不是很懂 忘指点
clc
clear all
syms t
E=2.06e11;
A=0.0815;
I=0.03622;
midu=1435.2/0.0815;
l=60;
P=1000;
x1=30;
x=15;
W=200;
ts=1;
fs=999;
t=0:1/fs:1;
for r=1:20
    Wn(r)=(r^2*pi^2/l^2)*sqrt(E*I/(midu*A));
end
double(Wn)
q=zeros(1,1000);
for j=1:20
    q=q+((2*P)/(midu*A*l))*(1/(Wn(j)^2-W^2))*sin(j*pi*x/l)*sin(j*pi*x1/l)*(sin(W*t)-(W/Wn(j))*sin(Wn(j)*t));
end
n=length(q);
Q=fft(q);
m=abs(Q);
f=(0:length(q)-1)*999/length(q);
subplot(2,1,1);
plot(f,m);
subplot(2,1,2);
plot(t,q);

如何画出响应的频谱图??求教

回复
分享到:

使用道具 举报

发表于 2010-11-21 17:03 | 显示全部楼层
本帖最后由 happy 于 2010-11-21 17:04 编辑
  1. subplot(2,1,1);
  2. plot(f,m);
复制代码
画的就是频谱图
发表于 2010-11-21 21:36 | 显示全部楼层
水平有限, 没空细看仅随便看下, 仅说些前面小问题, 後面懒得看了..:@L
1.syms t好像多馀
2.for r=1:20, Wn(r)=(r^2*pi^2/l^2)*sqrt(E*I/(midu*A));end的loop多馀, 改用Wnr=([1:20].^2*pi^2/l^2)*sqrt(E*I/(midu*A));
3.double(Wn)好像多馀
...
还是请LZ看下置顶帖或改明白些, 不然太...:@)
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-29 12:37 , Processed in 0.055993 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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