初学matlab,这里是matlab的一段程序,

问题描述:

初学matlab,这里是matlab的一段程序,
clear all;
close all;
r=0.02;
t=-5:r:5;
N=200;
w=2*pi;
k=-N:N;
w=k*w/N;
f1= 1/2*exp(-2*t).*stepfun(t,0);
F=r*f1*exp(-j*t'*w);
F1=abs(F);
P1=angle(F);
subplot(3,1,1);
plot(t,f1);
grid on;
xlabel('t');
ylabel('f(t)');
title('f(t)');
subplot(3,1,2);
plot(w,F1);
xlabel('w');
grid on;
ylabel('F(jw)');
subplot(3,1,3);
plot(w,P1*180/pi);
grid;
xlabel('w');
ylabel('相位度');
画出f(t)=1/2*e^(-2t)*u(t),和f(t-1)的频谱图,观察信号时移对频谱的影响.
看不懂整段程序为什么这么写,大概地解释下,
顺便问下r=0.02,t=-5:r:5,相当于t=-5:0.02:5吧,改成t=-10:0.01:10其实一样吧
还有N=200,w=2*pi,k=-N:N,w=k*w/N这几句各是什么含义
1个回答 分类:综合 2014-11-23

问题解答:

我来补答
“顺便问下r=0.02,t=-5:r:5,相当于t=-5:0.02:5吧,改成t=-10:0.01:10其实一样吧”
这个确实是一样,但要注意t=-10:0.01:10取得点比t=-5:0.02:5多
“N=200,w=2*pi,k=-N:N,w=k*w/N”
这个有什么好研究的么,生成很多个点,类似于取好多个x值,以便之后去求Y
信号有学,但具体的函数没有刻意的去做过,只能这么给你解释了
clear all;
close all;
%--------------设定取点和初值
r=0.02;
t=-5:r:5;
N=200;
w=2*pi;
k=-N:N;
w=k*w/N;
%-------------------构造函数
f1= 1/2*exp(-2*t).*stepfun(t,0);
F=r*f1*exp(-j*t'*w);
F1=abs(F);
P1=angle(F);
%---------------------画图
subplot(3,1,1);
plot(t,f1); %画f(t)=1/2*e^(-2t)*u(t)的图
grid on;
xlabel('t');
ylabel('f(t)');
title('f(t)');
subplot(3,1,2);
plot(w,F1);
xlabel('w');
grid on;
ylabel('F(jw)');
subplot(3,1,3);
plot(w,P1*180/pi);
再问: 再问两个个问题 1.小数点是什么意思,什么时候要用什么时候不要用 比如这样的 f1=exp(-abs(t)).*cos(t); f1= 1/2*exp(-2*t).*stepfun(t,0); 2. 提问中的函数f1等式改为f1=sin(t)./t, t=-5:r:5;后面加t(251)=exp(-20); 就能求出sint/t的频谱图,其中t(251)=exp(-20);什么意思 t()里的数字251是怎么来的,exp()里的-20呢 还有小数点如果和上面的问题用法不一样也麻烦解释下 问题有点多,我提高悬赏了
再答: 1.点乘和叉乘的问题,可看线性代数的书,二十分钟可以看懂这部分。加点是点乘,不加是叉乘 2.没算错的话t(251)=exp(-20);,表示第251个点的值等于e的-20次方,就是x=0点的值。你自己可以推一下的。记住一点:matlab里函数自变量取的是散点值,所有的语言都是这样的
 
 
展开全文阅读
剩余:2000