Package ffx.numerics.fft
Class Complex3D
java.lang.Object
ffx.numerics.fft.Complex3D
Compute the 3D FFT of complex, double precision input of arbitrary dimensions via 1D Mixed Radix
FFTs.
The location of the input point [i, j, k] within the input array must be:
double real = input[x*nextX + y*nextY + z*nextZ]
double imag = input[x*nextX + y*nextY +
z*nextZ + 1]
where
int nextX = 2
int nextY = 2*nX
int nextZ = 2*nX*nY
- Since:
- 1.0
- Author:
- Michal J. Schnieders
- See Also:
-
Constructor Summary
ConstructorDescriptionComplex3D
(int nX, int nY, int nZ) Initialize the 3D FFT for complex 3D matrix. -
Method Summary
Modifier and TypeMethodDescriptionvoid
convolution
(double[] input) Perform a convolution.void
fft
(double[] input) Compute the 3D FFT.static int
iComplex3D
(int i, int j, int k, int nX, int nY) Determine the index of the complex number in the 1D array from the X, Y and Z indices.void
ifft
(double[] input) Compute the inverse 3D FFT.void
setRecip
(double[] recip) Setter for the fieldrecip
.
-
Constructor Details
-
Complex3D
public Complex3D(int nX, int nY, int nZ) Initialize the 3D FFT for complex 3D matrix.- Parameters:
nX
- X-dimension.nY
- Y-dimension.nZ
- Z-dimension.
-
-
Method Details
-
iComplex3D
public static int iComplex3D(int i, int j, int k, int nX, int nY) Determine the index of the complex number in the 1D array from the X, Y and Z indices.- Parameters:
i
- the index along the X-axis.j
- the index along the Y-axis.k
- the index along the Z-axis.nX
- the number of points along the X-axis.nY
- the number of points along the Y-axis.- Returns:
- the index of the complex number in the 1D array.
-
convolution
public void convolution(double[] input) Perform a convolution.- Parameters:
input
- The input array.
-
fft
public void fft(double[] input) Compute the 3D FFT.- Parameters:
input
- The input array must be of size 2 * nX * nY * nZ.
-
ifft
public void ifft(double[] input) Compute the inverse 3D FFT.- Parameters:
input
- The input array must be of size 2 * nX * nY * nZ.
-
setRecip
public void setRecip(double[] recip) Setter for the fieldrecip
.- Parameters:
recip
- an array of double.
-