In the studies of Fourier optics, sound synthesis, stellar interferometry, optical tweezers, and diffractive optical elements (DOEs) it is often important to know the spatial frequency phase of an observed wave source. In order to reconstruct this phase the Adaptive-Additive Algorithm (or AA algorithm), which derives from a group of adaptive (input-output) algorithms, can be used. The AA algorithm is an iterative algorithm that utilizes the Fourier Transform to calculate an unknown part of a propagating wave, normally the spatial frequency phase (k space). This can be done when given the phase’s known counterparts, usually an observed amplitude (position space) and an assumed starting amplitude (k space). To find the correct phase the algorithm uses error conversion, or the error between the desired and the theoretical intensities.
The adaptive-additive algorithm was originally created to reconstruct the spatial frequency phase of light intensity in the study of stellar interferometry. Since then, the AA algorithm has been adapted to work in the fields of Fourier Optics by Soifer and Dr. Hill, soft matter and optical tweezers by Dr. Grier, and sound synthesis by Röbel.
For the problem of reconstructing the spatial frequency phase (k-space) for a desired intensity in the image plane (x-space). Assume the amplitude and the starting phase of the wave in k-space is A 0 {\displaystyle A_{0}} and ϕ n k {\displaystyle \phi _{n}^{k}} respectively. Fourier transform the wave in k-space to x space.
Then compare the transformed intensity I n f {\displaystyle I_{n}^{f}} with the desired intensity I 0 f {\displaystyle I_{0}^{f}} , where
Check ε {\displaystyle \varepsilon } against the convergence requirements. If the requirements are not met then mix the transformed amplitude A n f {\displaystyle A_{n}^{f}} with desired amplitude A f {\displaystyle A^{f}} .
where a is mixing ratio and
Note that a is a percentage, defined on the interval 0 ≤ a ≤ 1.
Combine mixed amplitude with the x-space phase and inverse Fourier transform.
Separate A ¯ n k {\displaystyle {\bar {A}}_{n}^{k}} and ϕ n k {\displaystyle \phi _{n}^{k}} and combine A 0 {\displaystyle A_{0}} with ϕ n k {\displaystyle \phi _{n}^{k}} . Increase loop by one n → n + 1 {\displaystyle n\to n+1} and repeat.
{{citation}}