谁能帮我注解一下这段MATLAB程序 万分感谢!!

尽量每步都能写出来啊~

wp=35;
ws=60;
rp=0.5;
rs=40;
Fs=360;
[N,Wn] = buttord(wp/(Fs/2),ws/(Fs/2),rp,rs);
[b,a]=butter(N,Wn);
I=filter(b,a,I);

for i=1:COUNT
[maxx lag]=max(abs(I((i-1)*STEP+1:i*STEP)));
if maxx>=0.4
n=n+1;
maxium(n)=maxx;
t(n)=(i-1)*STEP+lag;
f(n)=I((i-1)*STEP+lag);
end
end

m=1;
tt(1)=t(1);
ff(1)=f(1);
for j=2:n
if t(j)-t(j-1)<=80
if maxium(j)>=maxium(j-1)
tt(m)=t(j);
ff(m)=f(j);
end
else
m=m+1;
tt(m)=t(j);
ff(m)=f(j);
end
end

plot(I);
hold on
stem(tt,ff,'r*');

wp=35;
ws=60;
rp=0.5;
rs=40;
Fs=360;%%设置各个参数
[N,Wn] = buttord(wp/(Fs/2),ws/(Fs/2),rp,rs);%%wp/(Fs/2)通带拐点频率;ws/(Fs/2)阻带拐点频率;rp通带内最大允许衰减度,以分贝表示;rs从通带到阻带的最小衰减度;N为最小阶数;Wn为截止频率;
[b,a]=butter(N,Wn);%%设计滤波器,阶数为N,截止频率为Wn,b,a为最终滤波器的系数
I=filter(b,a,I);%%得到滤波器的系数b和a,并对数据I进行滤波

for i=1:COUNT%%COUNT应该是个数吧,还有STEP
[maxx lag]=max(abs(I((i-1)*STEP+1:i*STEP)));%%在I中取STEP大小的窗口,并计算窗口内的最大值,maxx是最大值,lag是最大值所在的列
if maxx>=0.4
n=n+1;%%如果最大值大于等于0.4
maxium(n)=maxx;%%把最大值赋给maxium的第n个元素
t(n)=(i-1)*STEP+lag;%%把最大值在I中所在的列赋给t的第n个元素
f(n)=I((i-1)*STEP+lag);%%在I中取窗口,并把窗口内的最大值赋给f的第n个元素
end
end

m=1;
tt(1)=t(1);
ff(1)=f(1);%%将f的第一个元素赋给ff的第一个元素
for j=2:n%%n为上面的循环结束后最终的n
if t(j)-t(j-1)<=80%%t中存的是最大值对应的列,如果相邻两列的差值小于等于80
if maxium(j)>=maxium(j-1)
tt(m)=t(j);
ff(m)=f(j); %%maxium中是最大值,如果第j个比第j-1个大,那么就把第j个最大值赋给tt(1),ff(1)
end
else%%如果t中存的是最大值对应的列,相邻两列的差值不小于等于80
m=m+1;%%m更新
tt(m)=t(j);
ff(m)=f(j);%%将第j个最大值赋给tt(2),ff(2)
end
end

plot(I);
hold on
stem(tt,ff,'r*');%%画tt和ff的离散图
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-05-05
这是MATLAB在数字信号处理中设计buttorth滤波器设计的应用!你好好看下有关方面的书就行了、很好懂啊!注解太费时间了!
第2个回答  2011-05-05
注解就是:天书。无字的。

谁能帮我注解一下这段MATLAB程序 万分感谢!!
rs=40;Fs=360;%%设置各个参数 [N,Wn] = buttord(wp\/(Fs\/2),ws\/(Fs\/2),rp,rs);%%wp\/(Fs\/2)通带拐点频率;ws\/(Fs\/2)阻带拐点频率;rp通带内最大允许衰减度,以分贝表示;rs从通带到阻带的最小衰减度;N为最小阶数;Wn为截止频率;[b,a]=butter(N,Wn);%%设计滤波器,阶数为N,...

求人帮我注解一下这段MATLAB程序
r=0是给定r的初值,在以后中进行叠加。function result=QRS(n,q,i,x) %%%%%%%%%%%%%%定义result函数,是n,q,i,x的函数。因此这四个量在数据计算中是给定的量。也就是已知量。r=0;%%%给定初值;for k=i:1:(i+q-1)%%%for循环;sum=0;%%%% 给定sum的初值;for j=1:1:n ...

...人帮注释一下这个MATLAB程序吧,最好每句都注释,急急急!万分感谢!
xlabel('频率'); %x轴表示‘频率’ylabel('幅度'); %y轴表示‘幅度’title('合适的采样频谱'); %这曲线标题为‘合适的采样频谱’后半部分我就没写,是一样的,其中subplot(212) %%是表示在第二幅图上作图

MATLAB 注解 下面是程序,主要注解下开头部分以及结构,重分感谢
function edit4_Callback(hObject, eventdata, handles)function pushbutton1_Callback(hObject, eventdata, handles)%添加按钮,在下面可以给出他的响应函数 figure;%点击按钮新建一个figure.set(gcf,'name','渐开线齿廓');%设置当前界面的名字 m=str2num(get(handles.edit1,'string'));%将用户输入e...

MATLAB程序段的注解
plot(I)%绘图 hold on%保持图像 stem(tt,ff,'r*')%绘制二维离散数据的火柴杆图,r*为曲线状态 H=fopen('D:\\bb\\jj\\b02.txt','w');%打b02文档,为写入状态 fprintf(H,'\\n%f',tt);%将tt写入文件 fclose(H);%关闭文件 toc%关闭计时器 只把每个函数的注释写了出来,不知道行不行?

谁能跟我讲解下下面的MATLAB代码?最好每一行都详细讲解下,特别是cfun...
cfun = fit(x,y,f) %其中x,y分别为拟合的自、因变量,f为前面定义的拟合函数原型 求出cfun即为所拟合后的符号函数 再定义一组xi 求出在xi为自变量时拟合函数所对应的yi,即 xi = 0:0.1:20;yi = cfun(xi)最后绘图,将原始数据用*表示,拟合函数用默认曲线绘出 ...

matlab 注解一下这个程序里的几个地方
close all,clear all,clc figure x=wavread('a.wav');%读取该音频文件前1024个采样点 plot(x);figure y=wavread('a.wav',1000);a1=hamming(1000);%设计长度1000的窗函数 a2=fft(y.*a1);%对语音信号加窗后求频谱 a3=real(a2);%取频谱的实部 plot(a3);figure z=wavread('a.wav',[1,...

请matlab高手帮忙分析一下这个程序。详细解释每一步什么意思!答案满意...
看来只能猜了,从最后画出的图来看,感觉这个程序的目的用逼近的方法得到一条分界线的样子,具体是什么算法,看不出来。你看看我的注解,自己研究一下吧。在网页里可能显得比较乱,你复制粘贴到matlab的编辑器了再看吧。w1=[0.1 6.8 -3.5 2.0 4.1 3.1 -0.8 0.9 5.0 3.9; 1.1 7....

matlab中这个方程式用fzero怎么求解,希望大神帮忙一下,万分感谢!急急...
2、设定x0初值,这里取 x0=1 3、然后用fzero函数求解 4、实现代码与结果 fun=@(x)100-(x*sqrt((x\/10)^2+1)*sqrt((x\/100)^2+1));%将原方程变形,f(x)=0 x0=1;[x,fval,exitflag] = fzero(fun,x0)x 所求的值,fval所求的函数值,exitflag用于表示求解是否成功,如数值为1...

matlab大神请进,万分感谢!
3、欠采样及其重构 令wm=1,wc=wm,ws=1.3*pi\/wm,这种采样信号被称为欠采样信号,这种信号的重构被称为欠采样信号的重构,具体程序如下:wm=1; wc=wm;Ts=1.3 *pi\/wm; ws=2*pi\/Ts;n=-170:170; nTs=n*Ts f=sinc(nTs\/pi);Dt=0.005;t=-45:Dt:45;fa=f*Ts*wc\/pi*sinc((wc...

相似回答
大家正在搜