发布网友
共4个回答
懂视网
matlab中disp就是屏幕输出函数,类似于c语言中的printf函数。disp用来展示变量的内容,可以是字符串,元胞,矩阵,结构体内。disp功能类似于c语言中的print;java语言中的System.out.println(),可以输出几乎任何类型的变量。
一个较大的程序一般应分为若干个程序块,每一个模块用来实现一个特定的功能。所有的高级语言中都有子程序这个概念,用子程序实现模块的功能。在C语言中,子程序的作用是由一个主函数和若干个函数构成。由主函数调用其他函数,其他函数也可以互相调用。同一个函数可以被一个或多个函数调用任意多次。
在程序设计中,常将一些常用的功能模块编写成函数,放在函数库中供公共选用。要善于利用函数,以减少重复编写程序段的工作量。许多程序设计语言中,可以将一段经常需要使用的代码封装起来,在需要使用时可以直接调用,所以,函数也可以说是许多代码的集合,这就是程序中的函数。
热心网友
matlab编写的fft源程序函数文件
虽然在matlab中用fft函数就可以实现fft变换,但是我们仍然可以自己编写一个程序,实现快速傅立叶变换,反变换,或者倒位序排列等。
以下为matlab编写的fft源程序的函数文件。
function Y=myfft(x)
n=size(x);
for l=0:12,
if 2^l>=n
N=2^l;
L=l;
break
end
end
for t=n(2)+1:N, %不足2^L的数在末尾补0
x(t)=0;
end
x %x为补0后的序列
nv2=N/2; %倒位序
nm1=N-1;
I=0;
J=0;
while I<nm1
if I<J
t =x(J+1);
x(J+1)=x(I+1);
x(I+1)=t;
end
K=nv2;
while K<=J
J=J-K;
K=K/2;
end
J=J+K;
I=I+1;
end
X=x %至此x为实现了输入序列的倒位序排列
%以下是基-2按时间抽选fft,输入倒位序,输出自然顺序。
%(按书上P187(《数字信号处理》,程佩青)流程图所编.)
M=1;
while M<=L
LE=2^M;
LE1=LE/2;
U=1;
W=exp(-j*pi/LE1);
J=0;
while J<=LE1-1
I=J;
while I<=N-1
IP=I+LE1;
T=x(IP+1)*U;
x(IP+1)=x(I+1)-T;
x(I+1)=x(I+1)+T;
I=I+LE;
end
U=U*W;
J=J+1;
end
M=M+1;
end
Y=x;
以下为反变换程序,用正变换函数实现。
function y=myIFFT(X); %用fft实现ifft变换
N=size(X);
X=conj(X);
x=myfft(X);
x=conj(x);
y=x/N(2)
参考资料:http://www.happyit8.cn/shownews.asp?news_id=306
热心网友
简单点说,matlab中disp()就是屏幕输出函数,就像c语言中的printf()函数
热心网友
b1=input('输入第一个系数b1=')
b2=input('输入第一个系数b2=')
disp(['y=',num2str(b1),'*z1+',num2str(b2),'*z2'])
加个中括号和逗号就行了