7 #pragma GCC system_header
10 #include "../../wfp/imagingArray.hpp"
11 #include "../../wfp/imagingUtils.hpp"
24 template<
typename _realT>
31 typedef Eigen::Array<_realT, Eigen::Dynamic, Eigen::Dynamic>
realImageT;
34 typedef wfp::imagingArray<std::complex<realT>, wfp::fftwAllocator<std::complex<realT> >, 0>
complexAmplitudeT;
void makeComplexPupil(arrayOutT &complexPupil, const arrayInT &realPupil, int wavefrontSizePixels)
Create a complex pupil plane wavefront from a real amplitude mask.
Structure containing the phase and amplitude of a wavefront
realT lambda
The wavelength at which the wavefront is specified.
realImageT amplitude
The wavefront amplitude.
Eigen::Array< _realT, Eigen::Dynamic, Eigen::Dynamic > realImageT
The data type of the real image, used to hold the phase and amplitude.
void setZero()
Zero the wavefront.
_realT realT
The floating point type used for all calculations.
realT iterNo
The iteration number of this wavefront.
realImageT phase
The wavefront phase.
wfp::imagingArray< std::complex< realT >, wfp::fftwAllocator< std::complex< realT > >, 0 > complexAmplitudeT
The wavefront data type.