Jones Vectors and Visualizing Polarization

I recently had an assignment wherein I was presented with a handful of polarization states and asked to estimate the Jones vector for each one. Usually this isn't so bad, as there is only so much variation between linear, elliptical, and circular, however they also asked that I add the appropriate phase such to have the vector indicate a specific point in the trajectory. I spent some time thinking it through, but did finally decide to spend a bit of time writing a program to check my answers. Parametric plotting in Python turned out to be trivial, so it went quick. The result of that is this script, which creates two functions. One of them, jones_plot(), will take in a two-element Jones vector and generate a 2D plot of the trajectory of the tip of the electric field vector. That is, circular polarization will draw graphs of circles, and so on. The second of them, jones_check(), takes in the same Jones vector, but returns a string describing the nature of the polarization.


jones_check([exp(-1j*pi/2), -0.5j])
=> 'Linear polarization at 26.565051 degrees CCW from x-axis'
jones_check([exp(-1j*pi/4), -0.5j])
=> 'Right elliptical polarization, rotated with respect to the axes'

 

The jones_plot() output for [ exp(-1j*pi/4), -0.5j ]
The jones_plot() output for [ exp(-1j*pi/4), -0.5j ]. Red dot indicates phase = 0, green dot indicates phase = pi/5
The code is probably not bullet-proof, but it provided a good means for practicing manipulating the vectors and understanding how to interpret them. For the curious, the sign convention used is decreasing phase in the style of Hecht's Optics 4th edition.