Questions tagged [fourier-transform]
For questions about Fourier transforms, how they are used, and implementation details.
100
questions
1
vote
0
answers
26
views
Deconvolution of sinc function in spectrum calculation in FTS
In Fourier transform spectroscopy (FTS) I am calculating a broadband interferogram (e.m. frequency 190-300 GHz top-hat), then back-retrieving the spectrum by FT.
Here in the figure, you can see the ...
1
vote
1
answer
90
views
How to perform FFT from plane-wave basis function coefficients to real space?
I have a 3D grid in real space of grid spacing $L$ and say 21 grid points in each direction, containing e.g. a charge distribution. This is stored as a numpy array of shape ...
-1
votes
0
answers
122
views
How to use subsampled FFT to accelerate matrix multiplication?
Question
I would like to know how we can use subsampled FFT to accelerate matrix multiplication with a gaussian-randomized matrix.
Detail
$A$ is a $n \times n$ given matrix and $\Omega$ is a $n \times ...
1
vote
1
answer
127
views
Numerical solution of 2D wave equation using Fourier transform and finite differences
This is the $2$-dimensional wave equation
$$ u_{tt} = u_{xx} + u_{yy} $$
with initial condition $u(x,y,0)=f(x,y)$ and $u_{t}(x,y,0) = 0$.
The inverse Fourier transform used is
$$ u(x,y,t) = \iint \hat{...
4
votes
3
answers
479
views
Why not use the convolution theorem for explicit timestepping?
Consider the advection equation
\begin{equation}
\frac{\partial C}{\partial t} + u\frac{\partial C}{\partial x} + v\frac{\partial C}{\partial y} = 0
\end{equation}
I want to do a forward time, center ...
3
votes
1
answer
42
views
Bounds condition for IFT to obtain a $1/f$ time-series
I am coding a function to obtain a randomized time-series from a given $\frac{1}{f}$ law.
The randomization is obtained by introducing a random phase in the function.
I experience a problem in the ...
0
votes
0
answers
35
views
Gridline cutouts after FFT and iFFT on Python
EDIT: I think I messed up on the coordinates of $(p,q)$. Num was missing a multiple of $2\pi/N$. Assuming my interpretation of DFT isn't wrong.
I am currently using FFT to run Fresnel Diffraction as ...
0
votes
0
answers
30
views
Fast nonuniform DFT works for complex frequencies (damping), more or less. How to improve?
A variety of algorithms for the fast evaluation of the nonuniform DFT is available, both in theory, and in libraries like
NFFT3
NUFFT
FINUFFT
I need to evaluate $a_k=\sum_{j=0}^{m-1} A_j \exp(2\pi i ...
1
vote
0
answers
52
views
How do people deal with resized grid steps while numerically integrating using discrete Fourier Transform?
I am trying to simulate light propagation on python using FFT following the Fresnel diffraction equation given on Wikipedia:
The problem with this is that the output matrix from the DFT would be ...
1
vote
0
answers
55
views
How do you correctly implement Scipy's FFT procedures to produce a low-pass filter - image processing
I'm following this low-pass filter example in the text "Image Operators: Image Processing in Python 1st Edition" by Jason M. Kinser, but can't seem to duplicate their results.
The text's ...
3
votes
0
answers
40
views
3D Cooley-Tukey FFT
To compute the $N$-point DFT
$$ X[k] = \sum_{n=0}^{N-1} x[n] W_N^{kn} $$
where $N = N_1 N_2$, we can write the indices as $n = N_2 n_1 + n_2$ and $k = k_1 + N_1 k_2$, (effectively packing the data ...
1
vote
0
answers
66
views
2D DFT for lower frequencies only; is there something significantly faster than numpy.fft.fft2 (throwing away high frequencies)?
I do a lot of 2D discrete FFT in python using np.fft.fftshift(np.fft.fft2(y)), then throw away 90% or more of the array, keeping only the central low-frequency area....
1
vote
0
answers
117
views
Fast evaluation of trigonometric polynomials
Suppose you have a trigonometric polynomial of the form
\begin{equation*}
x(t) = \sum_{k = 0}^N a_k \cos(2 \pi k f_0 t).
\end{equation*}
Using Clenshaw algorithm, one can evaluate this polynomial in $...
2
votes
1
answer
141
views
1
vote
1
answer
177
views
Solving Poisson-like PDE with FFT
Problem
I have an $n\times n$ grid, and each point on the grid is assigned two values: a score, and an (inverse) speed factor. There is a "turtle" moving along the grid, and it's goal is to ...
-1
votes
1
answer
172
views
How to obtain the exact value of wavelength from a 2D FFT amplitude vs wavenumber plot like it is obtainable from 1D FFT amplitude vs wavenumber plot?
I have a two dimensional multi modal spatial signal generated from a MATLAB code using sinusoidal functions of different wave numbers, amplitudes and phases. What I want to know is that if I have the ...
1
vote
1
answer
83
views
Improving efficiency of FFT for large time window and single frequency pulses
Spectral methods for pulse propagation usually require at least one FFT and one iFFT for each step. In my case I have a two-dimensional radially symmetric electric field (one dimension in space, one ...
1
vote
1
answer
531
views
Reason behind different outputs for Fast Fourier Transform in Numpy and Matlab
Here is the output of Numpy
np.fft.ifft([0, 4, 0, 0])
array([ 1.+0.j, 0.+1.j, -1.+0.j, 0.-1.j]) # may vary
Here is the output of Matlab
...
1
vote
0
answers
50
views
Fourier transform in finite element
I have a finite element solver where I am using tetrahedral elements. I am solving for electric potentials and then calculate the current densities in each element, which are constant in each element. ...
1
vote
2
answers
282
views
The derivative of a gauss function via FFT and IFFT in Python
I have a problem with computing a derivative of a Gauss function using FFT and IFFT from NumPy library. I use the fact that
$$
\begin{equation}
\frac{d}{dx}f(x) = \frac{1}{\sqrt{2\pi}}\int{ike^{ikx}\...
1
vote
1
answer
3k
views
Understanding why scipy.fft.fft (fast Fourier transform) doesn't work as expected
I write the following fast Fourier transform code into my Python notebook expecting to see a plot wherein there's a spike at $1/2\pi$ since that's the frequency of the sin function, but instead I get ...
0
votes
0
answers
401
views
How to take convolution of two arrays in Python by using NumPy?
Generally, we know that if we have this relation between Fourier transforms of three functions in frequency domain as:
$$\mathfrak{F}\{\mathsf{P}(t)\} = \mathfrak{F}\{\mathsf{Z}(t)\}\mathfrak{F}\{\...
1
vote
0
answers
71
views
Problems with simulation of a spatial filter 4f setup (Python)
I have a question about my code which computes numerically the output field of a 4f setup with a pinhole in the middle which works as a spatial filter.
My setup consists of two lenses with 50mm focal ...
6
votes
3
answers
2k
views
Computing numeric derivative via FFT - SciPy
I wrote the following code to compute the approximate derivative of a function using FFT:
...
4
votes
1
answer
169
views
How to define a dimensionless Objective function for determining how peaked a curve is?
I have attached 2 plots for FFT spectra. One is considered good and one is bad.
The good one is classified on the basis of how closely spaced the frequencies and the bad is based on how multiple ...
1
vote
0
answers
35
views
Solving a spectral system by reducing it to a single frequency - Feasability of approach?
I'm trying to solve the linear non-paraxial pulse propagation equation
$$\partial_z\hat{E}=ik_z\hat{E}$$
for a field defined as $$E=E(r, t, z)$$
The equation given above uses $$\hat{E}=\hat{E}(k_\perp,...
3
votes
1
answer
202
views
Problem implementing convolutions exactly with the FFT
I'm trying to perform convolutions as defined mathematically $f \star g (\tau)= \int_{\mathcal{R}}f(t-\tau)g(t) dt$ in a numerical simulation. Hence, my signal is a sampling of points $f(x_i)$.
I ...
2
votes
1
answer
118
views
Fourier spectral method for coordinate transformed heat equation
As the title said, I want to solve a coordinate transformed heat equation using fourier spectral method. In particular, I am interested in transforming an uniform grid into an adaptive non-uniform ...
1
vote
0
answers
65
views
Advantage of fractional Fourier transform over multiscale wavelet?
What could be the arguments of using fractional Fourier transform instead of multiscale wavelet for data analysis ?
Optimization of the good time-frequency domain parameter? good in the sens of best ...
4
votes
1
answer
176
views
Computation of triple nested loops as a convolution product?
I'm trying to compute efficiently the following
\begin{equation}
A_j = \sum_{l'=1}^{\infty}\sum_{k= 0}^{K-1} L_{l'}T_ke^{2\pi i \frac{k}{K}j}\epsilon_{l',k}
\end{equation}
for $j = 0,1, \ldots, K-2,K-...
1
vote
0
answers
43
views
FFT convolution works only with certain domain length
in my quest to understand how I can use FFT to compute integrals (see my other question click, still no answer there), I came across the fact that a convolution of two functions can be calculated by ...
1
vote
0
answers
69
views
1
vote
0
answers
134
views
Calculate integrals using numpy.fft
Good evening,
I would like to understand why I do not get the correct result:
I assume that I know my function on discrete data points and expand it as a discrete Fourier transform: $\text{sin}(x)=\...
3
votes
2
answers
475
views
Chebyshev differentiation via FFT with a domain [a,b]
I want to ask something about Chebyshev differentiation via FFT, which can be used to obtain with spectral accuracy the derivative of a smooth function. See for instance this code in python, which ...
2
votes
0
answers
18
views
Normalising DFTs Correctly
I have been playing around with convolutions in scipy's signal package:
...
4
votes
1
answer
719
views
How to use matlab command 'fft' to solve Ax=b arising from Poisson equation?
I want to ask a question about fast solver to the Poisson equation with Homogenous boundary conditions as follows:
$$-\Delta u = f.$$
After centered difference using $n+2$ equidistance points in all ...
0
votes
0
answers
111
views
Smoothing FFT result
I am trying to calculate the spectrum of Bremmstrahlung, which involves calculating the Fourier transformed acceleration. I am solving a non-linear ODE to numerically calculate the acceleration in the ...
4
votes
1
answer
174
views
Differences between Discrete Fourier Transform and Continuous Fourier Transform?
I am trying to visualize the time dependence of a free particle given an initial wave-function using Python and I just wanted to know if I could use the in built FFT implementation from NumPy to find ...
2
votes
0
answers
30
views
Palmprint Identification - Why do we align the images before we use the Fourier Transform?
I am currently reading the paper PALMPRINT IDENTIFICATION BY FOURIER TRANSFORM by WENXIN LI, DAVID ZHANG and ZHUOQUN XU about identifying persons based on an image of their palm, one version of the ...
1
vote
1
answer
70
views
Obtain velocity from imposed energy spectrum using the inverse FFT
I am trying to obtain the spatial representation of $u(x)$ (e.g. velocity) from its energy spectrum $E(k)=k^4\exp(-(k/k_0)^2)$, which is given in the frequency domain, provided $|u(k)|=\sqrt{2E(k)}$. ...
2
votes
0
answers
87
views
Fusing callbacks with FFTs: an open-source GPU FFT implementation?
I'm using cuFFT to do some 2D FFTs on matrices of size 2048x2048 or larger. The FFTs are preceded and followed by various scaling operations.
These scaling operations are memory-bound, so they take ...
3
votes
1
answer
172
views
Calculating the Convolution Using DFT (FFT)
I have the following convolution as part of a numerical simulation.
$$T(r)=\int \mathrm{d}^3r_2\, p(r_2)f(r_2)\alpha(r-r_2)\, .$$
My problem is that the analytical expressions for $f$ and $p$ do ...
1
vote
2
answers
622
views
Numpy FFT gives me a pulse shorter than it should be. Not sure what I am doing wrong
I've created a code (Python, numpy) that defines an ultrashort laser pulse in the frequency domain (pulse duration should be 4 fs), but when I perform the Fourier Transform using DFT, my pulse in the ...
0
votes
0
answers
31
views
Simulating Anderson model, have problem with momentum representation (MATLAB)
I want to change from real-space representation to momentum-space representation I have a Hamilton-operator (Anderson-model), and I calculated some kind of entropy of its eigenstates (this is working, ...
1
vote
1
answer
2k
views
Split-step Fourier method applied on Schrodinger equation
I'm trying to solve a Schrodinger equation of the form $i\frac{\partial}{\partial t}\psi=-\frac{\partial^2}{\partial x^2}\psi + (V(x)+\alpha|\psi|^2)\psi$ using the split-step Fourier method ...
0
votes
1
answer
146
views
Specifying mesh spacing for DFT in numpy
I was testing the .fft package of numpy 1.16.1 in Python 3.7.2. In particular I was trying to verify that the transform resembles the analytical one for: $$f(x) = \mathrm{exp}\left[-\left(\frac{x-5}{2}...
2
votes
1
answer
501
views
Incorporating a potential barrier in a wave-packet simulation (Fourier Transform method)
I'm trying to simulate the scattering of a wave-packet at a potential barrier in Python. I'm using a Fourier Transform method (not sure if its the same as the Split-Step method), where I apply Fourier ...