程序如下:
t=0:0.001:2-0.001;
x=5*sin(2*pi*5*t)+5*sin(2*pi*20*t);
subplot(2,2,1);
plot(t,x);
title('原始时域信号')
N=1000;
w=hamming(N);
y=[zeros(1,500),w',zeros(1,500)];
p=x.*y;
subplot(2,2,2);
plot(t,p)
title('加窗后时域信号')
Hf=fft(x);
Hf=sqrt(Hf.*conj(Hf));
fs=1000;
detaf=fs/length(t);
subplot(2,2,3)
plot(detaf*(1:100),Hf(1:100))
title('原始信号频谱')
那能针对这个程序详细解释一下“程序中以1:100取出Hf中的部分数据绘图 ”吗?谢谢
追答Hf=fft(x);
Hf=sqrt(Hf.*conj(Hf));
对信号进行傅立叶变换,然后利用sqrt取其幅值
fs/length(t)*(1,:100)对求取频域频率范围
然后画出频率下的信号幅值了
麻烦解答一下matlab程序中plot(detaf*(1:100),Hf(1:100))是什么意思...
plot(x,y)用于绘制以X为横轴y为纵轴的图像 程序中以1:100取出Hf中的部分数据绘图
matlab 一个入门菜鸟级编程(求根公式)
disp('方程形式:a*x^2+b*x+c=0');a=input('a=');b=input('b=');c=input('c=');deta=b*b-4*a*c;x=[(-b+sqrt(deta))\/2\/a;(-b-sqrt(deta))\/2\/a]上面已经达到你的要求了 由于matlab在计算sqrt,就是根号的时候,自己会误别根号下的数,如果是负数的话,Matlab会自动生成复数...
matlab编写带有传输零点的chebyshev带通滤波器
求一个源程序:要求:用matlab编写,带有传输零点的chebyshev带通滤波器(参数不限),并能提取出耦合矩阵M,能给出幅频响应图。请不要从网上找东西粘贴在这,谢谢!... 求一个源程序:要求:用matlab编写,带有传输零点的chebyshev带通滤波器(参数不限),并能提取出耦合矩阵M,能给出幅频响应图。请不要从网上找东西粘贴...
我在做一个车辆路径问题,用遗传算法的,不会MATLAB编程,有人能帮我...
Max f(x1,x2)=10-x1*x1-x2*x2+x1*x2; -2.0480<=x1,x2<=2.0480 clc;clear all;format long;%Set the data format(设定数据显示格式)parameters Initialization (初始化参数)T=100;% Generation( 仿真代数)N=80;% Population size ( 群体规模)pm=0.05;pc=0.8;%Crossover and mutat...
利用matlab在同一坐标系中用不同颜色作图
你好!我试着编写了一下,发现有点像deta函数类似性质。代码如下:clccol=['r','b','m','g'];a=[1000,500,400,100];x=linspace(-0.1,0.5,10000);for i=1:4 fx=1.\/a(i)*exp(-a(i)*x).*(x>=0)+0.*(x<0); plot(x,fx,'color',col(i),'linewidth',1) ...