HartmannWfsDft is part of the WaveTrain system class library
HartmannWfsDft models a Hartmann-Shack wavefront sensor. For any incident wavefront, the complex field over each subaperture is propagated to the sensor plane (usually at the common focal plane of the subaperture lenslets) using a DFT, then the fields from all the subapertures are superposed and the net intensity is computed. Finally, the net intensity is integrated over the exposure length to produce an "integratedIntensity" output in units of J/m^2.
In addition to integratedIntensity in the sensor plane, HartmannWfsDft also computes subaperture centroids to yield noise-free, high-resolution subapertures slopes. See the WT User Guide for discussion of these slopes compared to noisy slopes obtained by appending further subsystems to HartmannWfsDft.
HartmannWfsDft can model any number of subapertures, in any geometry. Subaperture geometries are generally created using the WaveTrain suite's AOGeom GUI. That GUI can create a data file whose relevant subaperture specifications can be easily read into the {xSubap, ySubap} parameters of HartmannWfsDft.
The temporal triggering and exposure parameters of HartmannWfsDft are identical to those of those of the more basic WaveTrain sensors. See the WT User Guide for a detailed discussion of the triggering of sensor exposures. Note in particular that the input "sampleInterval" is only used to generate multiple samples within one "exposureLength". To obtain one sample per "exposureLength" (the typical practice), set "sampleInterval" to 0.0.
HartmannWfsDft also allows an optional delay used to model readout time: if this is set non-zero, then the output only becomes available at that delay after the end of the exposure length window.
Like all WaveTrain optical sensors, HartmannWfsDft works with both pulsed and continuous wave illumination. If multiple wavefronts (i.e., from separate sources) are received simultaneously they are assumed to be mutually incoherent, so their intensities add.
HartmannWfsDft is a complex module: the WT User Guide gives further guidance on its usage and the setting of parameters.
Note that two of the parameters are annotated as "Used ONLY with Wavesharing". For essentially all WaveTrain usage, these parameters have NO effect whatsoever: leave the values at their defaults (for advanced usage, see WT User Guide for details).
|
Parameters
|
wavelength |  float | Wavelength at which sensor is sensitive (m) | 1.0e-06 |
nxyPupil |  int | Used ONLY with Wavesharing (see WT User Guide) | 512 |
dxyPupil |  float | Used ONLY with Wavesharing (see WT User Guide) | 0.01 |
nxyDetector |  int | Number of sample points across FULL sensor plane | 512 |
dxyDetector |  float | Spacing of sample points in sensor plane (m) | 10.0e-06 |
subapWidth |  float | Width of subapertures in the pupil plane (m) | 0.1 |
detectorPlaneDistance |  float | (m) Usually equal to focalDistance, but allowed to differ. | 1.0 |
focalDistance |  float | Focal length of lenslets (m) | 1.0 |
magnification |  float | Magnification of lenslet array | 1.0 |
overlapRatio |  float | Controls overlap of propagated subaperture fields (0.0->abutting) | 0.0 |
xSubap |  Vector<float> | X-coordinates of the subap centers in the pupil plane (m) | Vector() |
ySubap |  Vector<float> | Y-coordinates of the subap centers in the pupil plane (m) | Vector() |
xSlope0 |  float | X slopes to be output prior to the first complete sample (rad) | 0.0 |
ySlope0 |  float | Y slopes to be output prior to the first complete sample (rad) | 0.0 |
Inputs
|
incident |  WaveTrain | Incident light | WaveTrain() |
on |  bool | on/off switch (on=true, off=false) | true |
exposureInterval |  double | Time between start of successive exposure windows (s) | 0.001 |
exposureLength |  double | Length of each exposure window (s) | 0.000001 |
sampleInterval |  double | Time between samples within one exposureLength (s) | 0.0 |
Outputs
|
integrated_intensity |  Grid<float> | Temporally-integrated intensity at focal plane (J/m^2) | |
slopes |  Vector<float> | Subaperture wavefront x-slopes followed by y-slopes (radians of tilt angle) | |
Subsystems |
|
|
Last Saved: Thu Mar 15 17:50:02 MDT 2007 by TVE version 2007B
|
|