📄 dft.c
字号:
void dft()
{
extern int inv;
extern long npt;
long k,n;
double WN,wk,c,s,XR[size],XI[size];
extern complex x[size];
WN=2*pi/npt;
if(inv==1)
WN=-WN;
for(k=0;k<npt;++k)
{
XR[k]=0.0;XI[k]=0.0;
wk=k*WN;
for(n=0;n<npt;++n)
{
c=cos(n*wk);s=sin(n*wk);
XR[k]=XR[k]+x[n+1].real*c+x[n+1].imag*s;
XI[k]=XI[k]-x[n+1].real*s+x[n+1].imag*c;
}
if(inv==1)
{
XR[k]=XR[k]/npt;
XI[k]=XI[k]/npt;
}
}
for(k=1;k<=npt;++k)
{
x[k].real=XR[k-1];
x[k].imag=XI[k-1];
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -