Skip to content

magicknight/odak

 
 

Repository files navigation

Wave optics and ray tracing framework 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

Citation

If you use Odak in a research project leading to a publication, please cite the project. The BibTex entry is

@Misc{kaan12,  
      author =      {Kaan Ak\c{s}it},  
      title =       {Odak Framework: Wave optics and ray tracing},  
      year =        {2012},  
      month =       {07},  
      url =         {https://github.com/kunguz/odak},  
      note=         {\url{https://github.com/kunguz/odak}}  
     }

About

Scientific computing library for optical sciences

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TeX 71.7%
  • Python 26.1%
  • Jupyter Notebook 2.2%