24小时热门版块排行榜    

查看: 817  |  回复: 6

shuishui1988

铜虫 (小有名气)

[求助] Matlab程序求助已有1人参与

Matlab初学者,仿真程序报错,实在不知如何解决,希望高手帮忙~
程序比较简单,附件中包含以下主程序和f30.txt文件
%--------频谱分析程序------%
%--------采样频率计算: 256×256
%39.5Hz,则256×2所用的时间为1/39.5,采样频率为1/((1/39.5)/512)=20224Hz

clear;
close all;
clc
a=load('f30.txt');
y=a-mean(a);   %第几行进行分析
plot(y)
Y=fft(y,1147);
pyy=Y.*(conj(Y))./1147;
f=20224.*(0:573)./1147;
figure;
plot(f,pyy(1:574))
出现的错误如下:
错误使用  -
矩阵维度必须一致。

出错 pingpufenxi_zhengti (line 9)
y=a-mean(a);   %第几行进行分析Matlab程序求助
matlab报错图片.png
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : f30.txt
  • 2015-01-27 21:00:02, 558.94 K

» 本帖已获得的红花(最新10朵)

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
CODE:
a 是一个11447行 3列的数组
mean(a)求a的每列求平均值,这样mean(a)就是一个1行 3列的数组
y=a-mean(a)  是用一个11447行 3列 减 一个1行 3列的数组,显然维数不匹配。
如果mean(a)是单个的数,y=a-mean(a)自然没问题。

CODE:
clear;
close all;
clc
a=load('f30.txt');
[m n]=size(a);
b=mean(a);

y=[a(:,1)-b(1) a(:,2)-b(2) a(:,3)-b(3)];   %第几行进行分析

figure(11)
plot(y)
Y=fft(y,1147);
pyy=Y.*(conj(Y))./1147;
f=20224.*(0:573)./1147;
figure(22);
plot(f,pyy(1:574))

Matlab程序求助-1
附图1.png

MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
2楼2015-01-27 21:27:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

另外,原代码中:
pyy=Y.*(conj(Y))./1147;   其中,第一个.*是必要的;后面的./ 是不必要的
f=20224.*(0:573)./1147;  其中, .*和./都是不必要的

» 本帖已获得的红花(最新10朵)

MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
3楼2015-01-27 21:33:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shuishui1988

铜虫 (小有名气)

送红花一朵
非常感谢您的解答!!内容详见,解答充分,真的非常感谢!!
4楼2015-01-28 08:44:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shuishui1988

铜虫 (小有名气)

送红花一朵
引用回帖:
3楼: Originally posted by 月只蓝 at 2015-01-27 21:33:11
另外,原代码中:
pyy=Y.*(conj(Y))./1147;   其中,第一个.*是必要的;后面的./ 是不必要的
f=20224.*(0:573)./1147;  其中, .*和./都是不必要的

非常感谢您的解答!!内容详见,解答充分,真的非常感谢!!
5楼2015-01-28 08:45:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

shuishui1988

铜虫 (小有名气)

送红花一朵
引用回帖:
3楼: Originally posted by 月只蓝 at 2015-01-27 21:33:11
另外,原代码中:
pyy=Y.*(conj(Y))./1147;   其中,第一个.*是必要的;后面的./ 是不必要的
f=20224.*(0:573)./1147;  其中, .*和./都是不必要的

非常感谢您的解答!!内容详见,解答充分,真的非常感谢!!
6楼2015-01-28 08:45:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jzceng

木虫 (小有名气)

不错哦
7楼2015-09-17 12:27:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 shuishui1988 的主题更新
信息提示
请填处理意见