public class FloatFresnelBluesteinGPU extends FloatPropagatorGPU
Constructor and Description |
---|
FloatFresnelBluesteinGPU(int M,
int N,
float lambda,
float z,
float dx,
float dy,
float dxOut,
float dyOut)
Creates a new instance of FloatFresnelBluestein.
|
Modifier and Type | Method and Description |
---|---|
void |
diffract(jcuda.driver.CUdeviceptr devField)
Performs numerical diffraction of the complex data in
devField , leaving the result in devField . |
void |
diffract(float[] field)
Performs numerical diffraction of the complex data in
field ,
leaving the result in field . |
float |
getDx() |
float |
getDxOut() |
float |
getDy() |
float |
getDyOut() |
float |
getLambda() |
int |
getM() |
int |
getN() |
float |
getZ() |
void |
memFree() |
public FloatFresnelBluesteinGPU(int M, int N, float lambda, float z, float dx, float dy, float dxOut, float dyOut) throws java.io.IOException
M
- Number of data points on x direction.N
- Number of data points on y direction.lambda
- Wavelength.z
- Distance.dx
- Sampling pitch on x direction.dy
- Sampling pitch on y direction.dxOut
- X pitch on the output field.dyOut
- Y pitch on the output field.java.io.IOException
public void diffract(float[] field)
FloatPropagatorGPU
field
,
leaving the result in field
. The physical layout of the
complex data must be the same as in JTransforms:
field[i * 2 * N + 2 * j] = Re[i][j],
field[i * 2 * N + 2 * j + 1] = Im[i][j]; 0 <= i < M, 0 <= j < N
diffract
in class FloatPropagatorGPU
field
- The complex field to diffract.public void diffract(jcuda.driver.CUdeviceptr devField)
FloatPropagatorGPU
devField
, leaving the result in devField
.
devField
must be a pointer to the data on the GPU memory.
The physical layout of the complex data must be the same as in
JTransforms:
field[i * 2 * N + 2 * j] = Re[i][j],
field[i * 2 * N + 2 * j + 1] = Im[i][j]; 0 <= i < M, 0 <= j < N
diffract
in class FloatPropagatorGPU
devField
- The complex field to diffract.public void memFree()
public int getM()
public int getN()
public float getZ()
public float getLambda()
public float getDx()
public float getDy()
public float getDxOut()
public float getDyOut()