📄 twoff.cpp
字号:
void twofft(double data1[], double data2[], double fft1[],
double fft2[], int& n)
{
int j,n2,j2;
double c1r,c1i,c2r,c2i,conjr,conji,h1r,h1i,h2r,h2i;
c1r = 0.5;
c1i = 0.0;
c2r = 0.0;
c2i = -0.5;
for (j = 1; j<=n; j++)
{
fft1[2 * j - 1] = data1[j];
fft1[2 * j] = data2[j];
}
four1(fft1, n, 1);
fft2[1] = fft1[2];
fft2[2] = 0.0;
fft1[2] = 0.0;
n2 = 2 * (n + 2);
for (j = 2; j<=n / 2 + 1; j++)
{
j2 = 2 * j;
conjr = fft1[n2 - j2 - 1];
conji = -fft1[n2 - j2];
h1r=c1r*(fft1[j2-1]+conjr)-c1i*(fft1[j2]+conji);
h1i=c1i*(fft1[j2-1]+conjr)+c1r*(fft1[j2]+conji);
h2r=c2r*(fft1[j2-1]-conjr)-c2i*(fft1[j2]-conji);
h2i=c2i*(fft1[j2-1]-conjr)+c2r*(fft1[j2]-conji);
fft1[j2 - 1] = h1r;
fft1[j2] = h1i;
fft1[n2 - j2 - 1] = h1r;
fft1[n2 - j2] = -h1i;
fft2[j2 - 1] = h2r;
fft2[j2] = h2i;
fft2[n2 - j2 - 1] = h2r;
fft2[n2 - j2] = -h2i;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -