标题:急问:一个关于matlab的奇怪问题
只看楼主
iwanttobexo
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-7-4
 问题点数:0 回复次数:3 
急问:一个关于matlab的奇怪问题

一个极其简单的程序如下:
%the input script
prompt={'输入载波频率:','输入被调制的信号频率:','如果信号为正弦信号请输入s,如果是余弦信号请输入c:'};
title=['the input of info about signal'];
line=1;
%def{'200','45'};
input=inputdlg(prompt,title,line)
%%

fs=1000;
temp1=input{1}
fc=str2num(temp1);
N=1000;
n=0:N-1;
t=n/fs;
temp2=input{2}
if(input{3}=='s')
x=sin(2*pi*str2num(temp2)*t);
else
x=cos(2*pi*str2num(temp2)*t);
end
subplot(221)
plot(t,x);
xlabel('t(s)');ylabel('x');
title('Original Signal')
axis([0 0.1 -1 1])
%
nfft=1024;
window=hamming(512);
noverlap=256;
dflag='none';
[pxx,f]=psd(x,nfft,fs,window,noverlap,dflag);
subplot(222)
plot(f,pxx)
xlabel('Frequency(HZ)');
ylabel('Power Spectrum(X)');
title('Original Signal')
grid
%
y=modulate(x,fc,fs,'pm');
subplot(223)
plot(t,y)
xlabel('t(s)');ylabel('y');
axis([0 0.1 -1 1]);
title('Modulated Signal')
%
[pxx,f]=psd(y,nfft,fs,window,noverlap,dflag);
subplot(224)
plot(f,pxx)
xlabel('Frequency(HZ)');
ylabel('Power Spectrum(X)');
title('Modulated Signal')
grid
运行结果为:
??? Index exceeds matrix dimensions.

Error in ==> main at 24
title('Original Signal')

急问各位能人高手,这是怎么回事?????????

多谢!!!

搜索更多相关主题的帖子: matlab input 信号 prompt 频率 
2006-07-04 20:45
zhangenter
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:390
专家分:0
注 册:2006-6-5
得分:0 
和你gui的那个title冲突了,在写4个坐标轴的第一个title之前,加一句clear title就可以了

OldHandle = findobj( \'Name\', \'悲伤\' ) ;if ~isempty(OldHandle),delete(OldHandle) ;end for Time = \'现在\':\'每一天\':\'永远\',set( gco, \'心情\', \'快乐\');end % 这段代码为你天天快乐而存在
2006-07-04 21:05
iwanttobexo
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-7-4
得分:0 

楼上,拜托能讲清楚点吗?

2006-07-04 22:00
zhangenter
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:390
专家分:0
注 册:2006-6-5
得分:0 
%the input script
prompt={'输入载波频率:','输入被调制的信号频率:','如果信号为正弦信号请输入s,如果是余弦信号请输入c:'};
title=['the input of info about signal']; %受到了这个'title'的影响
line=1;
%def{'200','45'};
input=inputdlg(prompt,title,line)
%%

fs=1000;
temp1=input{1}
fc=str2num(temp1);
N=1000;
n=0:N-1;
t=n/fs;
temp2=input{2}
if(input{3}=='s')
x=sin(2*pi*str2num(temp2)*t);
else
x=cos(2*pi*str2num(temp2)*t);
end
subplot(221)
plot(t,x);
xlabel('t(s)');ylabel('x');
clear title;
title('Original Signal')
axis([0 0.1 -1 1])
%
nfft=1024;
window=hamming(512);
noverlap=256;
dflag='none';
[pxx,f]=psd(x,nfft,fs,window,noverlap,dflag);
subplot(222)
plot(f,pxx)
xlabel('Frequency(HZ)');
ylabel('Power Spectrum(X)');
title('Original Signal')
grid
%
y=modulate(x,fc,fs,'pm');
subplot(223)
plot(t,y)
xlabel('t(s)');ylabel('y');
axis([0 0.1 -1 1]);
title('Modulated Signal')
%
[pxx,f]=psd(y,nfft,fs,window,noverlap,dflag);
subplot(224)
plot(f,pxx)
xlabel('Frequency(HZ)');
ylabel('Power Spectrum(X)');
title('Modulated Signal')
grid

[此贴子已经被作者于2006-7-5 0:31:27编辑过]


OldHandle = findobj( \'Name\', \'悲伤\' ) ;if ~isempty(OldHandle),delete(OldHandle) ;end for Time = \'现在\':\'每一天\':\'永远\',set( gco, \'心情\', \'快乐\');end % 这段代码为你天天快乐而存在
2006-07-05 00:01



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-76554-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019890 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved