Wave optics and ray tracing library for Python Author: Kaan Akşit Licence: GPLV2 Dependency: matplotlib, numpy Currently available methods inside source/lib/odak.py - Methods for Fresnel and Fraunhofer diffractions - Methods for creating apertures such as circular, rectangular, slits, sinusoidal amplitude grating, lens, retroreflector and two slits - Methods for plotting cross section, 2D & 3D data - Methods for diverging and converging spherical wave - Methods for diverging and converging gaussian beam - Methods for Jones Calculus: Linear polarizers, circular polarizers, quarter wave plates, liquid crystal cells (Nematic and ferroelectric) and birefringent plate - Methods for ray tracing, snell's law and reflecting using: * planar surfaces, * spherical surfaces, * quadratic surfaces, * meshed surfaces. - Methods for displaying using: * Matplotlib * Old school OpenGL - Methods for paraxial matrix theory: free space propagation, plotting paraxial rays