Jones Calculus
Index
Polarisation.Jones.h
Polarisation.Jones.lcp
Polarisation.Jones.lhcp
Polarisation.Jones.rcp
Polarisation.Jones.rhcp
Polarisation.Jones.v
Base.:|
Polarisation.Jones.hwp
Polarisation.Jones.l
Polarisation.Jones.lp
Polarisation.Jones.qwp
Optical Beams
The Jones vector describes the polarisation of a light beam, defined as
\[\begin{pmatrix} E_{0x} e^{i\phi_x} \\ E_{0y} e^{i\phi_y} \end{pmatrix},\]
where $E_0$ are magnitudes of the electric field, and $\phi$ are phases of the wave, both in $x$ and $y$ directions.
Common normalised Jones vectors are included in the package:
Polarisation.Jones.l
— Functionl(θ)
Linearly polarised at $\theta$ angle.
Polarisation.Jones.h
— Constanth
Linearly polarised in $x$ direction (horizontal):
\[\begin{pmatrix} 1 \\ 0 \end{pmatrix}\]
Polarisation.Jones.v
— Constantv
Linearly polarised in $y$ direction (vertical):
\[\begin{pmatrix} 0 \\ 1 \end{pmatrix}\]
Polarisation.Jones.rhcp
— Constantrhcp
Right-hand circular polarised:
\[\frac{1}{2} \begin{pmatrix} 1 \\ -i \end{pmatrix}\]
Polarisation.Jones.lhcp
— Constantlhcp
Left-hand circular polarised:
\[\frac{1}{2} \begin{pmatrix} 1 \\ i \end{pmatrix}\]
Optical Elements
The Jones matrices are operators that act on the Jones vectors defined above. These matrices are implemented by various optical elements such as lenses, beam splitters, mirrors, etc. Each matrix represents projection onto a one-dimensional complex subspace of the Jones vectors.
Polarizers
The package specifies the following polarisers:
Polarisation.Jones.lp
— Functionlp(θ)
Linear polariser at angle $\theta$:
\[\begin{pmatrix} \cos^2(\theta) & (\theta)sin(\theta) \\ \cos(\theta)\sin(\theta) & \sin^2(\theta) \end{pmatrix}\]
Polarisation.Jones.rcp
— Constantrcp
Right circular polariser:
\[\frac{1}{2} \begin{pmatrix} 1 & i \\ -i & 1 \end{pmatrix}\]
Polarisation.Jones.lcp
— Constantlcp
Left circular polariser:
\[\frac{1}{2} \begin{pmatrix} 1 & -i \\ i & 1 \end{pmatrix}\]
Phase retarders
Phase retarders introduce a phase shift between the vertical and horizontal component of the field and thus change the polarization of the beam.
Polarisation.Jones.qwp
— Functionqwp(θ = 0)
Quarter-wave plate:
\[e^\frac{-i\pi}{4} \begin{pmatrix} \cos^2(\theta)+i \sin^2(\theta) & (1-i)\sin(\theta)\cos(\theta) \\ (1-i)\sin(\theta)\cos(\theta) & \sin^2(\theta)+i\cos^2(\theta) \end{pmatrix}\]
Polarisation.Jones.hwp
— Functionhwp(θ = 0)
Half-wave plate:
\[e^\frac{-i\pi}{2} \begin{pmatrix} \cos^2(\theta)-\sin^2(\theta) & 2\sin(\theta)\cos(\theta) \\ 2\sin(\theta)\cos(\theta) & \sin^2(\theta)-\cos^2(\theta) \end{pmatrix}\]
Custom operator
The Jones calculus requires matrix multiplication to happen in reverse, starting with the final element, and moving back to the beam. Since this is unintuitive, in Julia we can override operators and have a handy shortcut:
Base.:|
— Function|
Perform Jones matrix multiplication on a reversed list of arguments.
For example, let's take a left-handed circularly polarised beam of light, going through a quarter-wave plate, linear polariser, and another quarter-wave plate. Ordinarily, we would write it as:
qwp(90) * lp(45) * qwp * lhcp ≈ lhcp
But with |
operator, we can say:
lhcp | qwp(0) | lp(45) | qwp(90) ≈ lhcp
which is a more natural way to express it.