Wavefronts.jl documentation

Functions

Wavefronts.rawphaseFunction
rawphase(intensity0, intensity1, intensity2, intensity3)

Compute the raw phase from four intensity of interference pattern. The reference in the pattern of intensity intensityi is assumed to be shifted of π/2.

See also: unwrapphase, retrievephase

source
Wavefronts.unwrapphaseFunction
unwrapphase(wrappedphase)

Unwrap the phase. The method used is inspired by the Standard Experiment Laboratory script from the MSc in Optics and Photonics at Imperial College London. The input is typically the output of rawphase.

See also: rawphase, retrievephase

source
Wavefronts.projectFunction
project(aberration, data; mask=(x,y)->1)

Project the data onto the Zernike polynomial corresponding to the aberration in order to get the fitting Aberration. A mask can be used to fit only in certain parts of the data (typically usefull if your interference pattern is only relevant in a circular region). The coordinates are assumed to be normalized such that (x,y) ∈ [-1;1]².

See also: correct

source
Wavefronts.intensityFunction
intensity(aberration, coordinates=:cartesian; mask=(x,y)->1)

Creates a function mapping the intensity in the given coordinates system (:cartesian or :polar). This is equivalent of building two Wavefront, one with no aberration and the other with the given aberration.

See also: phase, amplitude

source
intensity(wavefront)

Create a function mapping the intensity in the coordinates of the wavefront.

See also: field, amplitude, phase

source
intensity(wavefront, reference)

Create a function mapping the intensity of the interference pattern of the wavefront with the reference. Both should be in the same coordinate system.

See also: field, amplitude, phase

source

Types

Aberrations

Wavefronts

Index