public class DoubleFresnelFourier extends DoublePropagator
Constructor and Description |
---|
DoubleFresnelFourier(int M,
int N,
double lambda,
double z,
double dx,
double dy)
Creates a new instance of DoubleFresnelFourier.
|
Modifier and Type | Method and Description |
---|---|
void |
diffract(double[][] field)
Performs numerical diffraction of the complex data in
field ,
leaving the result in field . |
double |
getDx() |
double |
getDxOut() |
double |
getDy() |
double |
getDyOut() |
double |
getLambda() |
int |
getM() |
int |
getN() |
double |
getZ() |
public DoubleFresnelFourier(int M, int N, double lambda, double z, double dx, double dy)
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.public void diffract(double[][] field)
DoublePropagator
field
,
leaving the result in field
. The physical layout of the
complex data must be the same as in JTransforms:
field[i][2 * j] = Re[i][j],
field[i][2 * j + 1] = Im[i][j]; 0 <= i < M, 0 <= j < N
diffract
in class DoublePropagator
field
- The complex field to diffract.public int getM()
public int getN()
public double getZ()
public double getLambda()
public double getDx()
public double getDy()
public double getDxOut()
public double getDyOut()