wofryimpl.propagator.propagators2D.fraunhofer
Fraunhofer2D — 2-D far-field (Fraunhofer) propagator via 2-D FFT.
Note: phases are approximate; not suitable for compound beamlines or in combination with lenses.
Classes
- class wofryimpl.propagator.propagators2D.fraunhofer.Fraunhofer2D[source]
- HANDLER_NAME = 'FRAUNHOFER_2D'
- do_specific_progation(wavefront, propagation_distance, parameters, element_index=None)[source]
Propagate a 2-D wavefront using the Fraunhofer (far-field) approximation.
- Parameters:
wavefront (GenericWavefront2D) – Input wavefront.
propagation_distance (float) – Propagation distance [m]. If zero, the output abscissas are in angle [rad].
parameters (PropagationParameters) – Propagation parameter container (may include
shift_half_pixel).element_index (int, optional) – Index of the beamline element being propagated through.
- Returns:
Propagated wavefront on the far-field grid.
- Return type:
GenericWavefront2D
- do_specific_progation_after(wavefront, propagation_distance, parameters, element_index=None)[source]