24小时热门版块排行榜    

CyRhmU.jpeg
南方科技大学公共卫生及应急管理学院2025级博士研究生招生报考通知
查看: 906  |  回复: 3
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

diandiantjjq

银虫 (小有名气)

[求助] matlab中正弦函数不能正常显示的原因。

f0=10;
fs=20;
N=101;
n=0:N-1;
t=n/fs;
x=sin(2*pi*f0*t);
subplot(211);
plot(t,x);%显示结果不对,不是正弦
t1=0:0.005:1;
x1=sin(2*pi*f0*t1);
subplot(212);
plot(t1,x1);
%为什么第一个图显示不是正弦,而间隔要设置在0.005才是正弦,从理论上来说,根据香农采样定理,对于信号y的采样频率>=2*f=20Hz;
采样间隔interT <= 0.05;即隔0.05S采样一次;则1S钟采样数据点数应该是20个;也就是说间隔定义在0.05应该就可以显示是正弦了呀?
回复此楼

» 猜你喜欢

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

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

diandiantjjq

银虫 (小有名气)

引用回帖:
2楼: Originally posted by libralibra at 2012-12-27 00:06:53
f0=10;
fs=20;
N=101;
n=0:N-1;
t=n/fs; %%%%%%%%% t是0:101,间隔为1的数列除以20的结果,
x=sin(2*pi*f0*t);  %%%%% x是sin(pi*N)也就是0,pi,2pi,......101pi的正弦值,画出来肯定都是0
subplot(211);
plot( ...

谢谢!明白了。
3楼2012-12-27 09:29:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 4 个回答

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
diandiantjjq: 金币+5, ★★★很有帮助, 谢谢。。 2012-12-27 09:31:07
CODE:
f0=10;
fs=20;
N=101;
n=0:N-1;
t=n/fs; %%%%%%%%% t是0:101,间隔为1的数列除以20的结果,
x=sin(2*pi*f0*t);  %%%%% x是sin(pi*N)也就是0,pi,2pi,......101pi的正弦值,画出来肯定都是0
subplot(211);
plot(t,x);%显示结果不对,不是正弦%%%%%%%%%%应该不是正弦才对
t1=0:0.005:1; %%%%%%%%%%% t1是0到1,间隔0.005,其实间隔只要足够小都行
x1=sin(2*pi*f0*t1); %%%%%%%%%%% x1是sin(20*pi*t1),也就是0,pi/10,pi/5,...20pi的正弦,不全为0,可以做出正弦图像

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
2楼2012-12-27 00:06:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

diandiantjjq

银虫 (小有名气)

那我再问个问题吧,
f0=10;
fs=20;
N=101;
n=0:N-1;
t=n/fs; %%%%%%%%% t是0:101,间隔为1的数列除以20的结果,
x=sin(2*pi*f0*t);  %%%%% x是sin(pi*N)也就是0,pi,2pi,......101pi的正弦值,画出来肯定都是0
那么取的这些点是不能拿来用香农做数据恢复的,因为他们本身都是0,要取的话也要将数据位置稍微移动一下:
n=0.05:N-1
t=n/fs;
x=sin(2*pi*f0*t);  
虽然取的总点数一样,只是数据位置不一样,这样才可以去恢复,是吧。
4楼2012-12-27 09:38:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见