%测试程序
clear; %清屏
clc;
Fs = 100; % Sampling frequency
t = -1:1/Fs:1; % Time vector
L = length(t); % Signal length
xn=2/(4*sqrt(2*pi*0.01))*(exp(-t.^2/(2*0.001))); %要转换的序列
n = 2^nextpow2(L);
M=nextpow2(L); %转换级数
subplot(2,2,1)
plot(t,xn);
title('Gaussian Pulse in Time Domain');
xlabel('Time (t)');
ylabel('xn(t)');
B=fft(xn,n); %matlab内置fft变换,用于对比
f = Fs*(0:(n/2))/n;
P = abs(B/n);
subplot(2,2,2)
plot(f,P(1:n/2+1))
title('Gaussian Pulse in Frequency Domain')
xlabel('Frequency (f)')
ylabel('|P(f)|')
H=testfft(xn,M); %手工编写函数
f = Fs*(0:(n/2))/n;
P = abs(H/n);
subplot(2,2,3)
plot(f,P(1:n/2+1))
title('Gaussian Pulse in Frequency Domain')
xlabel('Frequency (f)')
ylabel('|P(f)|')
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
function H=testfft(xn,M)
%DIT-FFT快速傅里叶变换程序
%程序名称:ditfft
%程序作者:grace_fight 2018/10/29
b=length(xn); %调整补零
if(b<2^M)
xn=[xn,zeros(1,(2^M)-b)];
end
b=length(xn); %补零后xn长度
A=zeros(1,b); %xn转换数组
N=2^M; %计算点数
nxd=bin2dec(fliplr(dec2bin([1:N]-1,M)))+1;%倒序排列序号
xn=xn(nxd); %倒序xn
for i=1:N %N个1点DFT,xn本身,赋值到数组A
A(i)=xn(i);
end
for L = 1:M %DIT-FFT变换,M级蝶形变换
B = 2^(L-1); %两个输入数据距离
for J = 0:B-1; %旋转因子处理
P=2^(M-L)*J;
for k=(J+1):2^L:N %本次蝶形运算跨越时间
W=exp(-j*2*pi*P/N); %对应旋转因子
T=A(k)+A(k+B)*W; %进行蝶形运算
A(k+B)=A(k)-A(k+B)*W;
A(k)=T;
end
end
end
H=A; %输出H为A
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
#include "stdio.h"
#include <math.h>
#define PI 3.141592653589793
#define Signal_length 201 //实际数据取样个数
#define Container_length 256 //只能是2的n次方大小(至少大于等于数据长度)
typedef struct
{
double shi;
double xv;
}plural;
double data_sequence[Container_length]={0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0001,0.0004,0.0015,0.0047,0.0134,0.0348,0.0813,0.1721,0.3297,0.5715,0.8963,1.2719,1.6331,1.8974,1.9947,1.8974,1.6331,1.2719,0.8963,0.5715,0.3297,0.1721,0.0813,0.0348,0.0134,0.0047,0.0015,0.0004,0.0001,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000,0.0000};
plural fft_results[Container_length]={0};//补零
//复数运算
plural complexExp(plural a)
{
plural result;
result.shi = exp(a.shi) * cos(a.xv);
result.xv = exp(a.shi) * sin(a.xv);
return result;
}
plural complexMultiply(plural a, plural b)
{
plural result;
result.shi = a.shi * b.shi - a.xv * b.xv;
result.xv = a.xv * b.shi + a.shi * b.xv;
return result;
}
plural complexAdd(plural a, plural b)
{
plural result;
result.shi = a.shi + b.shi;
result.xv = a.xv + b.xv;
return result;
}
plural complexSubtract(plural minuend, plural subtrahend)
{
plural result;
result.shi = minuend.shi - subtrahend.shi;
result.xv = minuend.xv - subtrahend.xv;
return result;
}
//转换级数
unsigned char my_nextpow2(int mydata)
{
unsigned char i=1;
unsigned int tmp=0.0;
for(i=1;;i++)
{
tmp=pow(2,i);
if(tmp>mydata)
return i;
}
}
//二进制倒置
unsigned int my_fliplr2bin(unsigned int mydata,unsigned char mybit)
{
unsigned int i=0,tmp2=0;
unsigned char tmp1=0;
for(i=0;i<mybit;i++)
{
tmp1=mydata&(0x01<<i);
if(tmp1>0)
tmp1=1;
else
tmp1=0;
tmp2=tmp2|tmp1<<(mybit-i-1);
tmp1=0;
}
return tmp2;
}
//快速傅里叶变换 对照MATLIB的fft函数
//参数一原始数据,参数二结果
void my_fft(double *data_sequence,plural *fft_results)
{
int fft_xl[Container_length]={0};
unsigned int i=0;
unsigned char L=0;//DIT-FFT变换,M级蝶形变换
unsigned int B=0;//两个输入数据距离
unsigned int J=0;//旋转因子处理
unsigned int P=0;
unsigned int K=0;//本次蝶形运算跨越时间
plural W,T;
plural tmp;
//创建倒置表
for(i=0;i<Container_length;i++)
fft_xl[i]=my_fliplr2bin(i,8);
//倒置数据
for(i=0;i<Container_length;i++)
fft_results[i].shi=data_sequence[fft_xl[i]];
for(L=1;L<(my_nextpow2(Signal_length)+1);L++)//DIT-FFT变换,M级蝶形变换
{
B=pow(2,L-1);//两个输入数据距离
for(J=0;J<=(B-1);J++)//旋转因子处理
{
P=pow(2,my_nextpow2(Signal_length)-L)*J;
for(K=J+1;K<=Container_length;K+=pow(2,L))//本次蝶形运算跨越时间
{
tmp.xv=0-(2*PI*P/Container_length);
tmp.shi=0;
W=complexExp(tmp);//对应旋转因子
tmp.shi=fft_results[K+B-1].shi;//进行蝶形运算
tmp.xv=fft_results[K+B-1].xv;
tmp=complexMultiply(tmp,W);
tmp=complexAdd(fft_results[K-1],tmp);
T.shi=tmp.shi;
T.xv=tmp.xv;
tmp.shi=fft_results[K+B-1].shi;
tmp.xv=fft_results[K+B-1].xv;
tmp=complexMultiply(tmp,W);
tmp=complexSubtract(fft_results[K-1],tmp);
fft_results[K+B-1].shi=tmp.shi;
fft_results[K+B-1].xv=tmp.xv;
fft_results[K-1].shi=T.shi;
fft_results[K-1].xv=T.xv;
}
}
}
for(i=0;i<256;i++)
printf("r is %f %f\n",fft_results[i].shi,fft_results[i].xv);
}
void main()
{
my_fft(data_sequence,fft_results);
//结果转换为频谱需做以下操作
//已知Fs采样频率
//补零后的数据个数n
//横坐标频率为FS*((0到n/2)/n)
//图像为每个数据除n后把复数取绝对值,取前频率个数个值
}
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
对照数据matlib版本为
C语言版本对比
C语言结果:
r is 15.811100 0.000000
r is -12.185395 -10.000295
r is 3.047659 15.321618
r is 7.254006 -13.571291
r is -13.920394 5.766016
r is 14.032978 4.256857
r is -7.881641 -11.795709
r is -1.337138 13.576185
r is 9.220172 -9.220172
r is -12.328808 1.214282
r is 9.727707 6.499846
r is -3.187999 -10.509424
r is -3.921453 9.467224
r is 8.381730 -4.480128
r is -8.593256 -1.709305
r is 5.093378 6.206299
r is 0.000000 -7.312985
r is -4.200343 5.118132
r is 5.844075 -1.162459
r is -4.700803 -2.512631
r is 1.813706 4.378674
r is 1.215966 -4.008502
r is -3.059838 2.044518
r is 3.198123 0.314988
r is -1.972423 -1.972423
r is 0.235898 2.395113
r is 1.146704 -1.716163
r is -1.683714 0.510749
r is 1.377369 0.570525
r is -0.591904 -1.107375
r is -0.205073 1.030969
r is 0.676145 -0.554898
r is -0.723456 -0.000000
r is 0.459758 0.377313
r is -0.094817 -0.476676
r is -0.186087 0.348145
r is 0.294444 -0.121963
r is -0.244743 -0.074242
r is 0.113340 0.169626
r is 0.015855 -0.160974
r is -0.090142 0.090142
r is 0.099387 -0.009789
r is -0.064660 -0.043204
r is 0.017472 0.057598
r is 0.017720 -0.042779
r is -0.031224 0.016689
r is 0.026387 0.005249
r is -0.012890 -0.015706
r is 0.000000 0.015251
r is 0.007219 -0.008796
r is -0.008282 0.001647
r is 0.005501 0.002940
r is -0.001758 -0.004244
r is -0.000982 0.003236
r is 0.002077 -0.001388
r is -0.001851 -0.000182
r is 0.000994 0.000994
r is -0.000106 -0.001080
r is -0.000478 0.000715
r is 0.000670 -0.000203
r is -0.000540 -0.000224
r is 0.000234 0.000437
r is 0.000083 -0.000416
r is -0.000278 0.000228
r is 0.000300 0.000000
r is -0.000187 -0.000153
r is 0.000036 0.000181
r is 0.000061 -0.000113
r is -0.000069 0.000029
r is 0.000025 0.000008
r is 0.000010 0.000014
r is 0.000005 -0.000053
r is -0.000058 0.000058
r is 0.000101 -0.000010
r is -0.000093 -0.000062
r is 0.000033 0.000109
r is 0.000041 -0.000098
r is -0.000080 0.000043
r is 0.000067 0.000013
r is -0.000025 -0.000030
r is -0.000000 0.000005
r is -0.000022 0.000026
r is 0.000073 -0.000015
r is -0.000102 -0.000055
r is 0.000059 0.000143
r is 0.000055 -0.000182
r is -0.000181 0.000121
r is 0.000237 0.000023
r is -0.000175 -0.000175
r is 0.000024 0.000243
r is 0.000127 -0.000190
r is -0.000192 0.000058
r is 0.000149 0.000062
r is -0.000053 -0.000100
r is -0.000011 0.000057
r is 0.000000 -0.000000
r is 0.000056 0.000000
r is -0.000083 -0.000068
r is 0.000029 0.000146
r is 0.000084 -0.000158
r is -0.000180 0.000074
r is 0.000186 0.000056
r is -0.000099 -0.000149
r is -0.000015 0.000149
r is 0.000077 -0.000077
r is -0.000060 0.000006
r is 0.000007 0.000005
r is 0.000013 0.000041
r is 0.000034 -0.000083
r is -0.000112 0.000060
r is 0.000151 0.000030
r is -0.000106 -0.000130
r is 0.000000 0.000168
r is 0.000099 -0.000121
r is -0.000131 0.000026
r is 0.000091 0.000049
r is -0.000026 -0.000063
r is -0.000009 0.000029
r is -0.000004 0.000003
r is 0.000037 0.000004
r is -0.000045 -0.000045
r is 0.000008 0.000082
r is 0.000053 -0.000079
r is -0.000098 0.000030
r is 0.000097 0.000040
r is -0.000049 -0.000092
r is -0.000020 0.000100
r is 0.000078 -0.000064
r is -0.000100 0.000000
r is 0.000078 0.000064
r is -0.000020 -0.000100
r is -0.000049 0.000092
r is 0.000097 -0.000040
r is -0.000098 -0.000030
r is 0.000053 0.000079
r is 0.000008 -0.000082
r is -0.000045 0.000045
r is 0.000037 -0.000004
r is -0.000004 -0.000003
r is -0.000009 -0.000029
r is -0.000026 0.000063
r is 0.000091 -0.000049
r is -0.000131 -0.000026
r is 0.000099 0.000121
r is 0.000000 -0.000168
r is -0.000106 0.000130
r is 0.000151 -0.000030
r is -0.000112 -0.000060
r is 0.000034 0.000083
r is 0.000013 -0.000041
r is 0.000007 -0.000005
r is -0.000060 -0.000006
r is 0.000077 0.000077
r is -0.000015 -0.000149
r is -0.000099 0.000149
r is 0.000186 -0.000056
r is -0.000180 -0.000074
r is 0.000084 0.000158
r is 0.000029 -0.000146
r is -0.000083 0.000068
r is 0.000056 0.000000
r is 0.000000 0.000000
r is -0.000011 -0.000057
r is -0.000053 0.000100
r is 0.000149 -0.000062
r is -0.000192 -0.000058
r is 0.000127 0.000190
r is 0.000024 -0.000243
r is -0.000175 0.000175
r is 0.000237 -0.000023
r is -0.000181 -0.000121
r is 0.000055 0.000182
r is 0.000059 -0.000143
r is -0.000102 0.000055
r is 0.000073 0.000015
r is -0.000022 -0.000026
r is -0.000000 -0.000005
r is -0.000025 0.000030
r is 0.000067 -0.000013
r is -0.000080 -0.000043
r is 0.000041 0.000098
r is 0.000033 -0.000109
r is -0.000093 0.000062
r is 0.000101 0.000010
r is -0.000058 -0.000058
r is 0.000005 0.000053
r is 0.000010 -0.000014
r is 0.000025 -0.000008
r is -0.000069 -0.000029
r is 0.000061 0.000113
r is 0.000036 -0.000181
r is -0.000187 0.000153
r is 0.000300 0.000000
r is -0.000278 -0.000228
r is 0.000083 0.000416
r is 0.000234 -0.000437
r is -0.000540 0.000224
r is 0.000670 0.000203
r is -0.000478 -0.000715
r is -0.000106 0.001080
r is 0.000994 -0.000994
r is -0.001851 0.000182
r is 0.002077 0.001388
r is -0.000982 -0.003236
r is -0.001758 0.004244
r is 0.005501 -0.002940
r is -0.008282 -0.001647
r is 0.007219 0.008796
r is 0.000000 -0.015251
r is -0.012890 0.015706
r is 0.026387 -0.005249
r is -0.031224 -0.016689
r is 0.017720 0.042779
r is 0.017472 -0.057598
r is -0.064660 0.043204
r is 0.099387 0.009789
r is -0.090142 -0.090142
r is 0.015855 0.160974
r is 0.113340 -0.169626
r is -0.244743 0.074242
r is 0.294444 0.121963
r is -0.186087 -0.348145
r is -0.094817 0.476676
r is 0.459758 -0.377313
r is -0.723456 -0.000000
r is 0.676145 0.554898
r is -0.205073 -1.030969
r is -0.591904 1.107375
r is 1.377369 -0.570525
r is -1.683714 -0.510749
r is 1.146704 1.716163
r is 0.235898 -2.395113
r is -1.972423 1.972423
r is 3.198123 -0.314988
r is -3.059838 -2.044518
r is 1.215966 4.008502
r is 1.813706 -4.378674
r is -4.700803 2.512631
r is 5.844075 1.162459
r is -4.200343 -5.118132
r is -0.000000 7.312985
r is 5.093378 -6.206299
r is -8.593256 1.709305
r is 8.381730 4.480128
r is -3.921453 -9.467224
r is -3.187999 10.509424
r is 9.727707 -6.499846
r is -12.328808 -1.214282
r is 9.220172 9.220172
r is -1.337138 -13.576185
r is -7.881641 11.795709
r is 14.032978 -4.256857
r is -13.920394 -5.766016
r is 7.254006 13.571291
r is 3.047659 -15.321618
r is -12.185395 10.000295
matlib结果:
1 至 6 列
15.8114 + 0.0000i -12.1856 -10.0005i 3.0477 +15.3219i 7.2541 -13.5715i -13.9205 + 5.7661i 14.0331 + 4.2569i
7 至 12 列
-7.8817 -11.7957i -1.3371 +13.5762i 9.2201 - 9.2201i -12.3288 + 1.2143i 9.7277 + 6.4998i -3.1880 -10.5094i
13 至 18 列
-3.9214 + 9.4672i 8.3817 - 4.4801i -8.5933 - 1.7093i 5.0934 + 6.2064i 0.0000 - 7.3131i -4.2004 + 5.1182i
19 至 24 列
5.8442 - 1.1625i -4.7009 - 2.5127i 1.8138 + 4.3788i 1.2160 - 4.0086i -3.0599 + 2.0446i 3.1982 + 0.3150i
25 至 30 列
-1.9724 - 1.9724i 0.2359 + 2.3951i 1.1467 - 1.7161i -1.6837 + 0.5107i 1.3774 + 0.5705i -0.5919 - 1.1074i
31 至 36 列
-0.2051 + 1.0310i 0.6762 - 0.5550i -0.7236 - 0.0000i 0.4599 + 0.3774i -0.0949 - 0.4769i -0.1862 + 0.3483i
37 至 42 列
0.2947 - 0.1221i -0.2450 - 0.0743i 0.1135 + 0.1698i 0.0159 - 0.1612i -0.0903 + 0.0903i 0.0995 - 0.0098i
43 至 48 列
-0.0648 - 0.0433i 0.0175 + 0.0577i 0.0178 - 0.0429i -0.0313 + 0.0167i 0.0265 + 0.0053i -0.0129 - 0.0158i
49 至 54 列
0.0000 + 0.0153i 0.0073 - 0.0088i -0.0083 + 0.0017i 0.0055 + 0.0030i -0.0018 - 0.0042i -0.0010 + 0.0032i
55 至 60 列
0.0020 - 0.0013i -0.0017 - 0.0002i 0.0009 + 0.0009i -0.0001 - 0.0009i -0.0003 + 0.0005i 0.0004 - 0.0001i
61 至 66 列
-0.0003 - 0.0001i 0.0001 + 0.0002i 0.0000 - 0.0001i -0.0001 + 0.0001i 0.0001 + 0.0000i -0.0000 - 0.0000i
67 至 72 列
0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 + 0.0000i -0.0000 - 0.0000i -0.0000 + 0.0000i
73 至 78 列
0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 + 0.0000i -0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 - 0.0000i
79 至 84 列
-0.0000 - 0.0000i 0.0000 + 0.0000i -0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 - 0.0000i
85 至 90 列
0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 + 0.0000i -0.0000 - 0.0000i 0.0000 + 0.0000i
91 至 96 列
0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 + 0.0000i -0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 - 0.0000i
97 至 102 列
-0.0000 + 0.0000i 0.0000 + 0.0000i -0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 - 0.0000i
103 至 108 列
0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 - 0.0000i 0.0000 + 0.0000i
109 至 114 列
0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 + 0.0000i -0.0000 - 0.0000i 0.0000 + 0.0000i 0.0000 - 0.0000i
115 至 120 列
0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 - 0.0000i 0.0000 + 0.0000i
121 至 126 列
-0.0000 - 0.0000i 0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 - 0.0000i
127 至 132 列
-0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 + 0.0000i -0.0000 - 0.0000i -0.0000 + 0.0000i
133 至 138 列
0.0000 - 0.0000i -0.0000 - 0.0000i 0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 - 0.0000i
139 至 144 列
-0.0000 + 0.0000i 0.0000 + 0.0000i -0.0000 + 0.0000i 0.0000 + 0.0000i -0.0000 + 0.0000i 0.0000 + 0.0000i
145 至 150 列
0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 - 0.0000i 0.0000 + 0.0000i 0.0000 - 0.0000i
151 至 156 列
-0.0000 + 0.0000i 0.0000 + 0.0000i -0.0000 - 0.0000i 0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 + 0.0000i
157 至 162 列
0.0000 + 0.0000i -0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 + 0.0000i
163 至 168 列
-0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 - 0.0000i 0.0000 + 0.0000i 0.0000 - 0.0000i
169 至 174 列
-0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 - 0.0000i 0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 + 0.0000i
175 至 180 列
0.0000 + 0.0000i -0.0000 - 0.0000i 0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 + 0.0000i
181 至 186 列
-0.0000 - 0.0000i -0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 - 0.0000i 0.0000 + 0.0000i -0.0000 - 0.0000i
187 至 192 列
-0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 - 0.0000i 0.0000 + 0.0000i 0.0000 - 0.0000i -0.0000 + 0.0000i
193 至 198 列
0.0001 + 0.0000i -0.0001 - 0.0001i 0.0000 + 0.0001i 0.0001 - 0.0002i -0.0003 + 0.0001i 0.0004 + 0.0001i
199 至 204 列
-0.0003 - 0.0005i -0.0001 + 0.0009i 0.0009 - 0.0009i -0.0017 + 0.0002i 0.0020 + 0.0013i -0.0010 - 0.0032i
205 至 210 列
-0.0018 + 0.0042i 0.0055 - 0.0030i -0.0083 - 0.0017i 0.0073 + 0.0088i 0.0000 - 0.0153i -0.0129 + 0.0158i
211 至 216 列
0.0265 - 0.0053i -0.0313 - 0.0167i 0.0178 + 0.0429i 0.0175 - 0.0577i -0.0648 + 0.0433i 0.0995 + 0.0098i
217 至 222 列
-0.0903 - 0.0903i 0.0159 + 0.1612i 0.1135 - 0.1698i -0.2450 + 0.0743i 0.2947 + 0.1221i -0.1862 - 0.3483i
223 至 228 列
-0.0949 + 0.4769i 0.4599 - 0.3774i -0.7236 - 0.0000i 0.6762 + 0.5550i -0.2051 - 1.0310i -0.5919 + 1.1074i
229 至 234 列
1.3774 - 0.5705i -1.6837 - 0.5107i 1.1467 + 1.7161i 0.2359 - 2.3951i -1.9724 + 1.9724i 3.1982 - 0.3150i
235 至 240 列
-3.0599 - 2.0446i 1.2160 + 4.0086i 1.8138 - 4.3788i -4.7009 + 2.5127i 5.8442 + 1.1625i -4.2004 - 5.1182i
241 至 246 列
-0.0000 + 7.3131i 5.0934 - 6.2064i -8.5933 + 1.7093i 8.3817 + 4.4801i -3.9214 - 9.4672i -3.1880 +10.5094i
247 至 252 列
9.7277 - 6.4998i -12.3288 - 1.2143i 9.2201 + 9.2201i -1.3371 -13.5762i -7.8817 +11.7957i 14.0331 - 4.2569i
253 至 256 列
-13.9205 - 5.7661i 7.2541 +13.5715i 3.0477 -15.3219i -12.1856 +10.000i
结果 一致,略有不同是因为数学运算C环境没有matl高的原因