这个代码有误,用序列(1,2,3,4)计算,算出来的结果是[(10,0),(-2,-2),(-2,0),(-2,2)],但是正确答案应该是[(10,0),(-2,2),(-2,0),(-2,-2)]
这段代码 没有错误!!! 变换的时候,数学公式上有个i(虚数单位), 其实也可以用-i,只要正向的变换和返回的时候一致就可以了. 要是想和Matlab中计算的一致, 你自己修改 x(itmp) = ctmp * exp( forback * cmplx( 0.0_DP , e*(j-1),kind=DP ) ) 为 x(itmp) = ctmp * exp( forback * cmplx( 0.0_DP , -e*(j-1),kind=DP ) ) 即可!
这个代码有误,用序列(1,2,3,4)计算,算出来的结果是[(10,0),(-2,-2),(-2,0),(-2,2)],但是正确答案应该是[(10,0),(-2,2),(-2,0),(-2,-2)]