Python 在傅里叶空间中创建网格
我有一个代码,它创建了一个尺寸为4x4 arcsec的正方形图像,从-2 arcsec到+2 arcsec,并在80x80网格上创建。为此,我想添加另一个图像。 第二幅图像是通过80x80网格的FFT创建的,因此从傅里叶空间开始。在FFT之后,我希望图像在实空间中的维数与第一幅图像完全相同 因为傅里叶空间表示尺度,波数定义为k=2pi/x(尽管在本例中,numpy.fft使用了我认为k=1/x的定义),所以我认为最大尺度必须具有最小的k值,最小尺度必须具有最大的k值 因此,如果x_max=2(第一幅图像x方向上的尺寸)和dim_x=80(网格中的列数): k_x,max=1/(2*x_max/dim_x) k_x,最小值=1/(2*x_最大值) 让傅里叶空间中的网格从k_x,min运行到k_x,max(y方向相同) 我希望我解释得足够清楚,但我还没有在有关FFT的文献中找到对此的任何确认或解释,我真的很想知道这是否正确Python 在傅里叶空间中创建网格,python,numpy,fft,Python,Numpy,Fft,我有一个代码,它创建了一个尺寸为4x4 arcsec的正方形图像,从-2 arcsec到+2 arcsec,并在80x80网格上创建。为此,我想添加另一个图像。 第二幅图像是通过80x80网格的FFT创建的,因此从傅里叶空间开始。在FFT之后,我希望图像在实空间中的维数与第一幅图像完全相同 因为傅里叶空间表示尺度,波数定义为k=2pi/x(尽管在本例中,numpy.fft使用了我认为k=1/x的定义),所以我认为最大尺度必须具有最小的k值,最小尺度必须具有最大的k值 因此,如果x_max=2(第
提前感谢这是不正确的。k-空间值的范围从
-N/2*omega_0
到(N-1)/2*omega_0
,其中omega_0
是样本长度的倒数,由2*pi/(max(x)-min(x))
给出,N是样本数。因此,对于您的案例,您可以从以下几点中得到一些信息:
N = len(x)
dx = x[-1]-x[0]
k = np.linspace(-N*pi/dx, (N+1)*pi/dx, N)